Comments (6)
This will be very hard to do in a non-glitchy way without a big rework. Any idea how bsnes is doing it?
from zelda3.
This looks like the bsnes commit DerKoun/bsnes-hd@f4e0df6 and this might help https://github.com/DerKoun/bsnes-hd#widescreen-technical. Given that the source code exists, a mod similar to https://github.com/VitorVilela7/wide-snes would be better . Not saying it'll be an easy task....
from zelda3.
A somewhat related topic that I won't create a new issue for is expanding vres to 240. SNES overscan masking is mostly a superficial limitation that no longer applies to modern screens. But to retain the ability to compare to rom, it would have to be made an ini option because several parts of the rendering code would have to be adjusted to work with it.
from zelda3.
Been working on an implementation on a fork that might be out of scope for this project. But since the PPU is constrained to the same parameters as the SNES (which I presume is to keep things as accurate as possible), there's a lot of restrictions. The big one being OAM, which restricts X & Y positions to 8-bit values. And since all these values are kept on the RAM to have parity with the SNES, it's not as simple as making X & Y be bigger values.
The approach I took was to completely decouple OAM (and potentially the BGs & Windows) to keep it out of the SNES RAM. That gives OAM the freedom to be able to be expanded (and eventually implement the flags into their own bools, or potentially add new features such as opacity & rotation). This is why I mention it might be out of scope for this project.
It's been a lot of rework but on my fork, I have decoupled OAM and integrated it into the PPU properly. There's bound to be bugs introduced somewhere but it's been pretty stable so far. I've even turned X & Y into uint16s without issue. There's still work to be done in expanding all the truncations in sprite_main.c
and such, and a lot of testing to make sure all the sprites appear as expected, hah.
from zelda3.
A WIP PR is here #71
from zelda3.
Thanks @snesrev for making this the definitive edition!!!
from zelda3.
Related Issues (20)
- boomerang bug HOT 1
- Disabling EnhancedMode7 leads to broken map rendering HOT 1
- A proper widescreen Ui layout HOT 1
- Zelda (G) Rom HOT 3
- Link's shadow is missing when using the magic cape in widescreen modes
- Can't throw boomerang diagonally south when Y is bound to certain Keypad keys HOT 2
- Error/warning while building in VS HOT 3
- Error while building with MSYS2 on Windows HOT 2
- Error while running python scripts HOT 1
- Super Bomb not working HOT 1
- Audio regression, sound effects get quieter near right screen edge
- MSYS build depends on libwinpthread-1.dll HOT 19
- Bug with Master Sword! HOT 6
- Good Bee sale bug
- Certain sprites aren't rendered in the extended view (bombs and its explosion for example)
- Shader error: Unknown key HOT 1
- 32-bit builds are broken on MSYS2 HOT 7
- Possible audio issues with replay HOT 3
- TCC build crash when carrying items for an unusually long time
- Possibility for Gamecube/Wii Port?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from zelda3.