melonDS-emu / melonDS

DS emulator, sorta
https://melonds.kuribo64.net
GNU General Public License v3.0
3.15k stars 516 forks source link

Flickering Textures #728

Open C4J3 opened 4 years ago

C4J3 commented 4 years ago

https://drive.google.com/file/d/1Ch0rYJqJZot4F5RY3BGyMt8HTbqsA56w/view?usp=sharing

All the lines are constantly flickering. I think this is just the result of the game rendering things weirdly because the DS can't handle it and will make it look fine with big blocky lines or if some rounding thing is causing the issue but it is quite unpleasant to play like this.

Update details:

Build : c29e6303140af7aa7744d4bc4650399e286a3ac1 (I'm assuming, last commit that passed and I built from source like 30 mins ago) Game: Spectrobes (EUR) Renderer: OpenGL @ 4096x3072 (16x)

Happens at any upscaled internal res with or without V-Sync. Not at 1x or with Software rendering.

RayyanAnsari commented 4 years ago

can't see whatever the link is because it asks me to log in to Google. Could you attach it directly?

C4J3 commented 4 years ago

Flickering Textures.zip

it's just an flv video file,

RayyanAnsari commented 4 years ago

Is this on OpenGL or software renderer? If OpenGL, what resolution are you using? also what game is this?

C4J3 commented 4 years ago

Updated post with details.

C4J3 commented 4 years ago

Also Google drive link should work without login now.

RafaelTrepaUnCarballo commented 4 years ago

I think this is the same bug that affects any game with dual screen 3D graphics.

434 #521

for games that use dual screen 3D, it will flicker between the hi-res scene and a low-res version of it, due to how dual-screen 3D is done on the DS. I'm thinking about ways to work around that without introducing potential bugs Originally posted by @Arisotura in https://github.com/Arisotura/melonDS/issues/434#issuecomment-498238773

RSDuck commented 4 years ago

I think this is the same bug that affects any game with dual screen 3D graphics.

434 #521

for games that use dual screen 3D, it will flicker between the hi-res scene and a low-res version of it, due to how dual-screen 3D is done on the DS. I'm thinking about ways to work around that without introducing potential bugs Originally posted by @Arisotura in #434 (comment)

it's not. This issue here stems from the interpolation happening because we can't pass the entire polygons to to the gpu but instead we have to split them into triangles (which then aren't interpolated across the same way).

The issue with the dual screen 3d is completely different. It happens because the only way 3d graphics are currently displayed at an higher resolution is if they're displayed immediately, while games capture each 3d frame and display it using the 2d engine the next frame (switching the screen where the currently rendered 3d and last frame's 3d is displayed each frame).

GilbertSpore commented 2 years ago

I think this is the same bug that affects any game with dual screen 3D graphics.

434 #521

for games that use dual screen 3D, it will flicker between the hi-res scene and a low-res version of it, due to how dual-screen 3D is done on the DS. I'm thinking about ways to work around that without introducing potential bugs Originally posted by @Arisotura in #434 (comment)

it's not. This issue here stems from the interpolation happening because we can't pass the entire polygons to to the gpu but instead we have to split them into triangles (which then aren't interpolated across the same way).

The issue with the dual screen 3d is completely different. It happens because the only way 3d graphics are currently displayed at an higher resolution is if they're displayed immediately, while games capture each 3d frame and display it using the 2d engine the next frame (switching the screen where the currently rendered 3d and last frame's 3d is displayed each frame).

I’m having this exact issue with a game I’m attempting to emulate on melonds. Is there any way to fix this? I want to have both screens in HD at once instead of the constant flickering from frame to frame.