![]() I think these improvements are a big useability jump for Dolphin VR! Here’s a run down of what the new features do: I think we’ll have to find some more 60fps codes before this is clear! More research is needed…Ģeyeguy recently added Roll/Pitch/Yaw correction! I spent some time working on fixing some of the odd glitches and then added “Keyhole” and “Keyhole Snap” as additional options. Also, do you attempt to force the memory locations, searching for 60, 30, 2 and floating point versions of these numbers? Is it better to go through the actual functions are try and force values there? How do you detect when the frame rate has changed? You could check the frame rate indicator, but some games slow down instead (requiring the frame limit to be doubled), so that wouldn’t work for everything. A bruteforcer like this would be somewhat tricky. It requires a lot of extra work to fix that! Also, games without a variable frame rate can’t be found this way! One idea I had was to force the easier to find NTSC frame rate in Super Mario Sunshine to a higher value, but that caused crash on initialization, so that was a failure.Īnyway, someday I think it would be worth it to figure out a way to bruteforce these codes. Some games have side effects due to lazy programming, and have issues when the frame rate is changed. ![]() This website can calculate the floating point values for you by they way:, if you’d like to find some on your own. Forcing the value to 1.00 or 0.80 gives you a frame rate of 60fps and 75fps respectively. Searching for the floating point “0x3f800000” (1.00) during the 60fps menus and “0x40000000” during the 30fps games can net you the addresses needed. Final Fantasy Fables: Chocobo’s Dungeon uses this scheme. There are other games that use a similar principle, but instead use floating point values. #Dolphin vr settings slow games codeThen you can write an Action Replay code to force the memory value to 1 for a solid frame rate of 60fps. Doing this enough will give you the memory positions of a couple of places where the code could go. Finding the codes is as simple as searching for “2” in the Dolphin cheat manager when the game runs at 30fps, then “1” when the game is running at 60fps. Good examples of this are Pikmin 1 and Pikmin 2, ExciteBots for Wii and both N64 Legend of Zelda games. Most games that run below 60fps first poll the NTSC frame rate (60fps) then divide it by 2 or 3 to get the desired final frame rate. ![]() In some games it is very easy to find these codes, because they have a variable frame rate. #Dolphin vr settings slow games how toI’ve been working on figuring out how to hack 30fps games to run at 60fps or faster the past two days with some success. So much to do still, but I’m glad I’m making progress on it again!Įdit: Many of the hacks I’ve made can be found here: Some synchronization issues persist (Super Mario Sunshine objects bouncing, start of game lockup), and I still haven’t implemented it when the XFB is enabled, or in deterministic dual core mode. ![]() ini though, so end users don’t have to worry about figuring out the correct settings! Eventually I hope to fix this so the game works either way, but it’s a solid workaround for now. I’ve forced off the synchronization in the. The only game I’ve found that has issues with it being enabled is Zelda: Wind Waker. I’ve found that this fixes judder issues, synchronous timewarp issues, as well opcode replay errors, crashes and warnings. Generally now, it is always recommended to run with “Enable Idle Skipping” on. This helps fix issues on a bunch of games. The discovery of a CPU->GPU synchronization option hidden in the “Enable Idle Skipping” section of the code was also a big win. Will the other bullet points help at all? I’m not sure, but there’s only one way to find out! I also need to add options to correct the rest of the bullet points. My fix has only been implemented for Direct3D, so I still have to figure out how to do the same thing in OpenGL. This fixes a bunch of games that had terrible flashing and corruption making them unplayable with the Opcode Replay Buffer enabled. So far I’ve implemented fixes for the Vertex Buffer and Vertex Shader Constants. I didn’t know too much about the Direct3D 11 rendering pipeline before this week, so it was a good way to ramp up on Direct3D at the same time. I’d overlooked the fact that the CPU could decide to change a bunch of things in memory midframe. It’s really starting to come along, and I’ve fixed a lot of issues with it. I’ve been working every night on the opcode replay buffer for about a week now.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |