That's generally how low -> high resolution ends up looking
Whoa so that's what all those colorful pixels in Fzero were meant to be!
So how does this work? Is it interpolating data to fill in more pixels, or is this data that's already present but obscured via Mode 7? Look at the Pilotwings comparison - there's a ton of detail on the landing strip that doesn't appear to exist no matter how hard you squint. Surely that can't be interpolation.
Even just that, it looks bad as is.I'm pretty sure only the mine cart portion was Mode-7, correct of wrong of course.
I would love to see Hyperzone. That game gives me a headache usually lolFrom wikipedia:
"Mode 7 games include the titles F-Zero, Terranigma, Pilotwings, Yoshi's Safari, Teenage Mutant Ninja Turtles IV: Turtles in Time, Super Castlevania IV, Secret of Mana, Secret of Evermore, Final Fantasy IV, Final Fantasy V, Final Fantasy VI, Super Mario RPG: Legend of the Seven Stars, DinoCity, HyperZone, Super Mario Kart, Super Mario World, Super Metroid, the Super Robot Wars series, Super Star Wars, Chrono Trigger, ActRaiser, Exhaust Heat, Skyblazer, 7th Saga, Mega Man 7, Kirby Super Star, Axelay, SOS, NCAA Basketball, NHL Stanley Cup, Al Unser Jr.'s Road to the Top, Rendering Ranger: R2, The Legend of Zelda: A Link to the Past, and Zoku: The Legend of Bishin."
They're scaling the tiles before applying the mathematical skew and distortion that achieves rotation and scaling. There is no interpolation being done. Consider the following tile:
This is at a native resolution, where each pixel of the tile is equal to a single pixel on the screen. When we rotate at this low resolution, distortion happens because pixels in the rotation fall between boundries, but can't be represented except at pixel resolution:
By scaling the tiles in memory so they take multiple pixels, you can subdivide a single texel in the tile into sub-pixels:
This is a 1:16 scale, a single texel of the tile map takes 16 pixels on screen to represent. When I rotate the tile, the edges of the pixels now have more granularity to represent falling between boundries:
The higher you pre-scale the tiles:
The smoother the subpixel rotation:
All of the above images are done 100% with interpolation turned off.
Update: the spiral tower in Super Castlevania IV works. You need to disable "Optimize pseudo 3D perspectives". This option is part of BSNES, it is not related to this mod.
Another reason why I don't really care for cycle accuracy in emulation anymore. Would rather just use the real hardware. When it comes to emulation, give me "better-than-real" any day
They're scaling the tiles before applying the mathematical skew and distortion that achieves rotation and scaling. There is no interpolation being done. Consider the following tile:
This is at a native resolution, where each pixel of the tile is equal to a single pixel on the screen. When we rotate at this low resolution, distortion happens because pixels in the rotation fall between boundries, but can't be represented except at pixel resolution:
By scaling the tiles in memory so they take multiple pixels, you can subdivide a single texel in the tile into sub-pixels:
This is a 1:16 scale, a single texel of the tile map takes 16 pixels on screen to represent. When I rotate the tile, the edges of the pixels now have more granularity to represent falling between boundries:
The higher you pre-scale the tiles:
The smoother the subpixel rotation:
All of the above images are done 100% with interpolation turned off.
They're scaling the tiles before applying the mathematical skew and distortion that achieves rotation and scaling. There is no interpolation being done. Consider the following tile:
This is at a native resolution, where each pixel of the tile is equal to a single pixel on the screen. When we rotate at this low resolution, distortion happens because pixels in the rotation fall between boundries, but can't be represented except at pixel resolution:
By scaling the tiles in memory so they take multiple pixels, you can subdivide a single texel in the tile into sub-pixels:
This is a 1:16 scale, a single texel of the tile map takes 16 pixels on screen to represent. When I rotate the tile, the edges of the pixels now have more granularity to represent falling between boundries:
The higher you pre-scale the tiles:
The smoother the subpixel rotation:
All of the above images are done 100% with interpolation turned off.
yes, sure, I know BSNES is cycle accurate. my point was: if i had to choose between cycle accuracy and improvements to the base game, I'd prefer the latter. having both is the ideal scenario though, cycle accurate + rewind + reduced latency + improved visuals, etc. I wonder when we'll get a classic console that can take an original cartridge and accomplish all of that?
Absolute brilliant explanation. Much appreciated.They're scaling the tiles before applying the mathematical skew and distortion that achieves rotation and scaling. There is no interpolation being done. Consider the following tile:
This is at a native resolution, where each pixel of the tile is equal to a single pixel on the screen. When we rotate at this low resolution, distortion happens because pixels in the rotation fall between boundries, but can't be represented except at pixel resolution:
By scaling the tiles in memory so they take multiple pixels, you can subdivide a single texel in the tile into sub-pixels:
This is a 1:16 scale, a single texel of the tile map takes 16 pixels on screen to represent. When I rotate the tile, the edges of the pixels now have more granularity to represent falling between boundries:
The higher you pre-scale the tiles:
The smoother the subpixel rotation:
All of the above images are done 100% with interpolation turned off.
I wonder if this could also be achieved on GBA. The ROI might be smaller because of the lower resolution, but IQ on GBA games can be really bad when mixed with Mode7.
High res mode 7 has been in ZSNES since maybe the later 90s early 2000s. That said, it looks not where near as impressive as this.
fwiw, bsnes has also had high res mode 7 for a long time. Just not this high res.High res mode 7 has been in ZSNES since maybe the later 90s early 2000s. That said, it looks not where near as impressive as this.
Tested on Super Castlevania IV.
Sadly the spiral tower doesn't work, in fact the whole effect dies. I think is because this is not technically a Mode 7 effect, but the same technical stuff Konami used on Axelay.
Kinda disappointing.
What? I don't think DKC2 made big use of Mode 7 if any.
Tested on Super Castlevania IV.
Sadly the spiral tower doesn't work, in fact the whole effect dies. I think is because this is not technically a Mode 7 effect, but the same technical stuff Konami used on Axelay.
Kinda disappointing.
And map.I'm pretty sure only the mine cart portion was Mode-7, correct of wrong of course.
You can already get something like this on PC with a source port like ECWolf: http://maniacsvault.net/ecwolf/Also I would try Wolfenstein 3D though I doubt it would change much considering Krejlooc explanation.
They're scaling the tiles before applying the mathematical skew and distortion that achieves rotation and scaling. There is no interpolation being done. Consider the following tile:
This is at a native resolution, where each pixel of the tile is equal to a single pixel on the screen. When we rotate at this low resolution, distortion happens because pixels in the rotation fall between boundries, but can't be represented except at pixel resolution:
By scaling the tiles in memory so they take multiple pixels, you can subdivide a single texel in the tile into sub-pixels:
This is a 1:16 scale, a single texel of the tile map takes 16 pixels on screen to represent. When I rotate the tile, the edges of the pixels now have more granularity to represent falling between boundries:
The higher you pre-scale the tiles:
The smoother the subpixel rotation:
All of the above images are done 100% with interpolation turned off.