We have a hack that improves it at higher resolutions (Vertex Rounding Hack) but I don't think it's perfect at most resolutions. iwubcode (the same dev who finished HybridXFB) was looking into it though.
The game would not try to use the extra ram (or modify a bigger image) even if we could give it the extra memory to work with. I think it could be possible via HLE to do what Brawl needs (instead of taking a screenshot in game, we take a screenshot in Dolphin, and we just detect what it's doing and insert our own image?) but even then it'd be a huge effort and I'm not sure it'd work.
You missed the point I was trying to make completely. Hybrid XFB copy to Texture and RAM (the accurate options) always copy to RAM as well, even if the CPU isn't going to use the RAM copies of the image in that frame. What I was saying is Dolphin could just copy to Texture, and *only* copy frames to RAM as well when the CPU is about to read/write to the XFB. That way you'd get better performance while using the most accurate option. Unless checking for memory reads and writes once per frame (once you've detected the CPU using the XFB and copied the frame to RAM once, you don't have to check for accesses to the XFB region again in that same frame) proves too intensive, this could increase performance. You wouldn't even have to bother feeding a fake solid color picture to RAM if you know whatever could be there won't matter... I'd also allow the operations to just downscale the arbitrary-resolution output instead of always rendering a 1x version as well.
We don't know when it'll need it currently. A game will read the moment it wants it, not before. So, let's say in Brawl we want to turn it on the moment it uses RAM, right? Well, we're too late! There's nothing there. What you want is another feature that's being worked on called "Locking", but, it's still in early developmental stages. And, due to OS limitations, it'll never be as effective as we had originally hoped.
jmc4789 Well what I expected is kind of what debugger breakpoints do. Use the texture cache of the XFB without copying to RAM and whenever the next instruction the CPU will hit *would* use the XFB/EFB, halt the emulation *before letting it run.* Copy and downscale the last frame from the texture cache and only then let emulation move onwards. I figure doing that would be quick enough to actually increase performance, provided checking every next instructions for memory accesses to the XFB region isn't too intensive, and we're capable of anticipating what the next instruction will be in the first place... Also, what's the idea behind Locking?
Is there any general guide I can follow for set up? I have a pretty nice PC but I dont think im getting good performance out of Dolphin. Note: What I'm asking for is just ways to improve performance and utilize what I have, not the titles themselves. CPU is i9-9900k Nvidia RTX 2060 Super GPU 32 GB ram. Windows 10.
My calibration went from 0 in Rock Band 2, to -20 in Rock Band 3. I know a couple other players who experienced the same thing. Did you test that actual console on a CRT was actually 0? I'm curious how your latency tests would compare between the two games.
That's not exactly correct. Enabling storing to RAM will make the game slower period, but allow the game to modify/read the XFB when needed. The big gain in Hybrid XFB is that we no longer need to use RAM access for game that render scenes with the CPU. Those games will see huge boosts in performance.
Too bad rogue leader is broken since 5.0.373 It is super slow and switching camera cause a 2 seconds freezes. Are you guys gonna try to fix performance for this game? It ran well before the build that came after 5.0.373
Unfortunately I don't see that happening. Rogue Squadron 2 (and MMU games in general) need some serious work. The problem is that our old way of handling the MMU worked for most games, but not all games. The new (correct) method is slower, but works for all titles. Both solutions can't exist at once, so, performance has dropped until we find a way to make the new method faster. To my knowledge no one is investigating it. The speedups would likely be in trying to optimize MMU emulation (namely a lot of fallback to interpreter stuff...)
Plzzz improve Dolphin/android's VULKAN backend....PPSSPP/android's VULKAN backend is far more way better than Dolphin/android.....Really Shame on a 14 yr old emu!Upcoming Snapdragon 845 with Adreno 630 is powerfull enough to handle plenty of wii games....Just made the optimatisations perfect for android
I really appreciate how clearly you explain the situation - and the solution that you have come up with.
Yep, and it's more complex than this. If you want more information, check their post on their official website
You guys really work hard to make this the best emulator it can be. Thanks for your hard work!
you guys are wizards
You Dolphin devs are so informative after implementing your incremental changes. That's why I rock w/ you guys
You guys are heroes. Keep up the great work!
Hybrid shaders
Hybrix xfb
I like where development is going
It's Ubershaders - Hybrid Ubershaders is just a sub option. I can say pretty confidently the next big one won't have Hybrid in the name.
You forgot Hybrid Wiimote
Nice explanation, Otacon.
"We forgot to turn on XFB emulation for this video." (disables XFB) "There we go."
So...
Battle for Bikini Bottom will finally be playable in HD without that box, right?
Right???
Alex Musick I was just trying to fix that problem like a week ago. I really hope this solves it.
this is completely unrelated to XFB emulation. That game relies on sub pixel shenanigans that don't translate well to higher resolutions.
Battle for Bikini Bottom is like my own personal Rogue Squadron. Doesn't seem like it will EVER work correctly.
We have a hack that improves it at higher resolutions (Vertex Rounding Hack) but I don't think it's perfect at most resolutions. iwubcode (the same dev who finished HybridXFB) was looking into it though.
And don’t forget spongebob the movie
Its awesome that you guys keep fighting the good fight, after all these years. Good work, and thank you.
Dolphin 6.0 hype
Green Mario ikr
Green Mario wait 4 more years
Dolphin 6.0 Hype-brid
Hey, 2021 here. I should say, dolphin latesy build is great!
lol 6.0 never happened
wow such a professional way to inform us about changes. thanks
I was trying to figure out how to fix the Brawl issue, and this video covers it perfectly!
Great work team! Accuracy and performance!!!!
Is there anything you guys didn't do yet?
Dolphin devs = superior human beings
They managed to get online on Dragon Quest X before it shut down. So I can be sure they can do anything they want
Thank you
Congratulations for the great work.
The metroid prime trillogy is going to be so much better now!
Not as great of an improvement as Hybrid Ubershaders, but still pretty big improvement
Oh Boy, can't wait for this being released
Excellent work
Great work, Dolphin devs!
Is this feature already in the newest dev build?
aeee! so does that mean that Metroid prime 2 acts well when trying to scan things with the visor now?
dolphin aka the only good emulator! plays nes, snes, n64, gcn and wii
Dolphin best ever emulator i tested.
Great work again!
I wonder if you could hack stuff like smash to use a larger image.
The game would not try to use the extra ram (or modify a bigger image) even if we could give it the extra memory to work with. I think it could be possible via HLE to do what Brawl needs (instead of taking a screenshot in game, we take a screenshot in Dolphin, and we just detect what it's doing and insert our own image?) but even then it'd be a huge effort and I'm not sure it'd work.
jmc4789 That's what I meant. I know the game wouldn't be able to use it at all. Hence "hack".
Great work. Open Source goodness.
Awesome work. Time to test some games. =D
Hype
How to enable widescreen on Android?
Wait, but why can't Dolphin *only* copy it's XFB/EFB texture buffers to RAM whenever the game code attempts to read or write to it in any way?
3l H4ck3r C0mf0r7 i think that is what the real xfb is doing. If i am correct, that means that you can't have high resolution that way
You missed the point I was trying to make completely. Hybrid XFB copy to Texture and RAM (the accurate options) always copy to RAM as well, even if the CPU isn't going to use the RAM copies of the image in that frame. What I was saying is Dolphin could just copy to Texture, and *only* copy frames to RAM as well when the CPU is about to read/write to the XFB. That way you'd get better performance while using the most accurate option. Unless checking for memory reads and writes once per frame (once you've detected the CPU using the XFB and copied the frame to RAM once, you don't have to check for accesses to the XFB region again in that same frame) proves too intensive, this could increase performance. You wouldn't even have to bother feeding a fake solid color picture to RAM if you know whatever could be there won't matter... I'd also allow the operations to just downscale the arbitrary-resolution output instead of always rendering a 1x version as well.
3l H4ck3r C0mf0r7 Just realized I didn't read your comment in its entirety. Sorry
We don't know when it'll need it currently. A game will read the moment it wants it, not before. So, let's say in Brawl we want to turn it on the moment it uses RAM, right? Well, we're too late! There's nothing there.
What you want is another feature that's being worked on called "Locking", but, it's still in early developmental stages. And, due to OS limitations, it'll never be as effective as we had originally hoped.
jmc4789 Well what I expected is kind of what debugger breakpoints do. Use the texture cache of the XFB without copying to RAM and whenever the next instruction the CPU will hit *would* use the XFB/EFB, halt the emulation *before letting it run.* Copy and downscale the last frame from the texture cache and only then let emulation move onwards. I figure doing that would be quick enough to actually increase performance, provided checking every next instructions for memory accesses to the XFB region isn't too intensive, and we're capable of anticipating what the next instruction will be in the first place...
Also, what's the idea behind Locking?
Is there any general guide I can follow for set up? I have a pretty nice PC but I dont think im getting good performance out of Dolphin. Note: What I'm asking for is just ways to improve performance and utilize what I have, not the titles themselves.
CPU is i9-9900k
Nvidia RTX 2060 Super GPU
32 GB ram.
Windows 10.
Fantastic
My calibration went from 0 in Rock Band 2, to -20 in Rock Band 3. I know a couple other players who experienced the same thing. Did you test that actual console on a CRT was actually 0? I'm curious how your latency tests would compare between the two games.
Pls, add DJ HERO Turntable support
Take a shot every time this video says XFB.
on me android dosent work these emulator
So if i want to play in high res what setting should i use?
All settings work in high resolution now. You don't need to worry about picking one.
Avatar game intro don't show proper....please fix This!!!
Pls New update İTS not WORKİNG pls emulator with Android
my dolphin android emulator if no installed
And Performance?
That's not exactly correct. Enabling storing to RAM will make the game slower period, but allow the game to modify/read the XFB when needed. The big gain in Hybrid XFB is that we no longer need to use RAM access for game that render scenes with the CPU. Those games will see huge boosts in performance.
Make versions for 32 bit tablets/phones please
If that will happend send me a link
The team dropped 32-bit support in May 2014, as it became detrimental to the emulator's development.
Too bad rogue leader is broken since 5.0.373
It is super slow and switching camera cause a 2 seconds freezes.
Are you guys gonna try to fix performance for this game?
It ran well before the build that came after 5.0.373
Unfortunately I don't see that happening. Rogue Squadron 2 (and MMU games in general) need some serious work. The problem is that our old way of handling the MMU worked for most games, but not all games. The new (correct) method is slower, but works for all titles. Both solutions can't exist at once, so, performance has dropped until we find a way to make the new method faster. To my knowledge no one is investigating it. The speedups would likely be in trying to optimize MMU emulation (namely a lot of fallback to interpreter stuff...)
Android 6.0 plzzzzz
Please remove box xfb and lowress pixelated because force use xfb or dont use get black screen.
Woooooow
I dont understand, im spanish
Wont install
thanks open source
When launch dolphin 6.0 😃
Nitzsche Crossing
Plzzz improve Dolphin/android's VULKAN backend....PPSSPP/android's VULKAN backend is far more way better than Dolphin/android.....Really Shame on a 14 yr old emu!Upcoming Snapdragon 845 with Adreno 630 is powerfull enough to handle plenty of wii games....Just made the optimatisations perfect for android
>pronounces "2MB" as "two emm bee"
This guy reminds me of the guy from BehindTheMeme, and thats a bad thing