Comments (4)
I ended up taking a closer look. Unfortunately when it comes to DuckStation, I don't think these two settings can reveal anything that detailed about the interaction between specific polygons and textures.
I tried chasing another idea: Hex-editing memory directly with Bizhawk to see how textures react to vertex colors. Bizhawk can only render at 1x resolution, making it harder to check the details. But from a glance, it seemed that maybe textures are unaffected by vertex colors.
In the Steam release, pixel.hlsl multiplies vertex colors with textures. Line 28, color *= texture_color;
By altering this to color.rgb = texture_color.rgb;
to force textures to render unlit, this should feasibly render a correct result. But a couple more problems arise.
- Even with unlit textures, PC's textures appear too dark.
Seeing this, I finally dug into FF7's textures to check what the ground truth was, and wouldn't you know it, the texture is exactly as dark as it appears on PC.
- PS1's textures might actually be receiving shading after all.
The texture appears brighter on PS1, and it turns out there is actually a subtle gradient over the texture. I haven't dug into the model myself, so I don't know if the eye texture is directly on the vertex-colored polygon, or if it's floating above the vertex colors on a separate polygon. Either way, I'm guessing this gradient is a result of the game's lighting calculation.
I'm reminded that there are PS1 games that have used vertex colors to produce overbrightness. Vagrant Story is one such game, another Square title. It's possible that this is what's happening here: Vertex colors are interacting with textures in such a way that they can become overbright, but this detail isn't being reflected in the PC version for some reason.
from ffnx.
@CosmosXIII any help on this part is appreciated. Thanks a lot
from ffnx.
Thanks for the report. Not sure it is as simple as multiplying things by 2. Could it be that lighting was not applied to the textured parts in the PSX version and therefore making it brighter?
from ffnx.
I wonder if with DuckStation we could capture this detail, although it would be difficult to spot. Probably enabling Show VRAM
and Show GPU State
should be enough to detect if the emulator applies Shadows on the textures
If anyone wants to help troubleshooting is welcome.
from ffnx.
Related Issues (20)
- [ FF7 ] Aerith Eye Texture HOT 2
- [ FF7 ] World model vertex colors appear to be inverted HOT 3
- [ FF7 ]"Filled" bar UI graphics are upside-down HOT 2
- [ FF7 ] Spotted some missing background in widescreen Mt Nibel HOT 1
- [ FF7 ] Submarine minigame runs at half speed / 15 FPS
- [ FF7 ] Character name screen does not work correctly when using a gamepad in Steam Input mode
- [ FF7 ] Softlock when selecting "Normal" in the Controller option in game' Config menu
- [ Final Fantasy VII Steam ] Steam Achievements do not work on Steam Deck with FF7_SYW_Unified Mod HOT 1
- [ Core ] Auto HDR support on Windows 11 HOT 2
- Camera in field and battle
- [ FF VII ] Black screen (no crash) after using cable car to Gold Saucer with FFNx 1.17.1 HOT 2
- [ FF7 ] After Ctrl + R, the screen may darken during battle
- [ FF7 ] Ground beneath Ifrit: color inverted
- [ FF7 ] Hyper Jump limit (cid) random crash on boss fight HOT 2
- [FF7 Steam] Corrupted ff7input.cfg HOT 2
- [ FF7 Steam ] Save files getting deleted HOT 1
- [ FF8 ] Please add Ambient layer to FFNx for FF8
- [ FF8 ] Please help resolve issue with SFX/Config
- [ FF7 ] Adding new facial expression to NPC models doesn't update the blinking animation.
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 ffnx.