Author Topic: [FF7PC-98/Steam] Smoother 60FPS Battles (v0.93)  (Read 53709 times)

NFITC1

  • No life
  • *
  • Posts: 2324
  • Karma: 34
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: Battles playing at 60fps
« Reply #50 on: 2014-07-15 16:23:20 »
The function that calls all of these is the "Draw_Frame" function. If we're increasing the frequency at which that is called then we have to reduce the values it manipulates or create a new timer that handles all these "per frame" functions.

DLPB

  • No life
  • *
  • Posts: 5457
  • Karma: 109
  • The King of the Rumbling Spires
    • View Profile
Re: Battles playing at 60fps
« Reply #51 on: 2014-07-15 20:10:25 »
Well, my easier way, which isn't what you and obese are doing...mostly...  is to just use code that pause values use...  basically skip major functions 3 of every 4 frames.  I've gotten it working to a large extent already.

More work needed tho.

obesebear

  • Administrator
  • No life
  • *
  • Posts: 3017
  • Karma: 20
  • King of Model Importing
    • View Profile
    • Modders Haven
Re: Battles playing at 60fps
« Reply #52 on: 2014-07-15 21:18:48 »
'nother take-back. Undo the turn timer changes

change these back
0x5CFBC2 (0x1CEFC2) 04 -> 01
0x5CFBE8 (0x1CEFE8) 0E -> 32

Keep the rest.
That seems to have done the trick for the party and enemy wait times!

The names still flash very fast along with the yellow indicator, and the menu access is still super fast, but maybe those are things DLPB has already fixed?

DLPB

  • No life
  • *
  • Posts: 5457
  • Karma: 109
  • The King of the Rumbling Spires
    • View Profile
Re: Battles playing at 60fps
« Reply #53 on: 2014-07-15 21:29:39 »
No, but they should be super easy to fix..  along with the coin scrolling background of course.

NFITC1

  • No life
  • *
  • Posts: 2324
  • Karma: 34
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: Battles playing at 60fps
« Reply #54 on: 2014-07-15 21:53:19 »
Well, my easier way, which isn't what you and obese are doing...mostly...  is to just use code that pause values use...  basically skip major functions 3 of every 4 frames.  I've gotten it working to a large extent already.

More work needed tho.

I think a combination of all of our efforts will be needed to fully realize this project. I'm glad to be a part of it.

That seems to have done the trick for the party and enemy wait times!

Heh. The Turn Timer increase was actually undoing the good the VTimer edit did. Since Turn Timer is based on VTimer it would be fixed when VTimer is and not need any alterations.

The C-Timer is an estimation. You can't divide 34 by 4 and get an integer so I just SHR by 2. It's a fair enough approximation, but things might be imperceptibly slower than they should be. I think this only affects timed statuses anyway and I don't know if anyone would complain about longer-laster barriers. :)

DLPB

  • No life
  • *
  • Posts: 5457
  • Karma: 109
  • The King of the Rumbling Spires
    • View Profile
Re: Battles playing at 60fps
« Reply #55 on: 2014-07-15 22:30:55 »
 see the flashing menu stuff isnt too difficult at all...

The active character text is at 6DD415 and you can easily see which timer that's using.

mov eax,[00DC1F44]


edit...

setting 41BDE8 to 1 should sort all flash timings?  No?

edit 2.


That's more global... and affects everything including the slots.  Which we dont want slowing this way.
« Last Edit: 2014-07-15 22:45:42 by DLPB »

NFITC1

  • No life
  • *
  • Posts: 2324
  • Karma: 34
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: Battles playing at 60fps
« Reply #56 on: 2014-07-15 22:46:22 »
see the flashing menu stuff isnt too difficult at all...

The active character text is at 6DD415 and you can easily see which timer that's using.

mov eax,[00DC1F44]


edit...

setting 41BDE8 to 1 should sort all flash timings?  No?

Does that fix the "Limit" strobing as well?

DLPB

  • No life
  • *
  • Posts: 5457
  • Karma: 109
  • The King of the Rumbling Spires
    • View Profile
Re: Battles playing at 60fps
« Reply #57 on: 2014-07-15 22:50:40 »
Does that fix the "Limit" strobing as well?

It will fix everything... including the AI timings and char timings..  Problem is...  it also means the slots will then have the same issue they did at 15fps... so that way is a no go :P  Unless you can work something out.

DLPB

  • No life
  • *
  • Posts: 5457
  • Karma: 109
  • The King of the Rumbling Spires
    • View Profile
Re: Battles playing at 60fps
« Reply #58 on: 2014-07-15 23:03:20 »
You know what, maybe not...

Maybe it's fixed the slots too.

I can't be 100% because I can't get this to record at 60fps... but I'm excited here... because that 1 value might have fixed everything.  It is certainly what the main timing function uses.

edit 2.

No... it's fixed the lot [didn't bother recording... realized all i need to do is advance the game using breakpoints haha].  That one value is the main one.   You can see how it's used in the function that comes after  :-D  The porting team must have set on purpose so the menu/camera etc could work at 15fps.
« Last Edit: 2014-07-16 07:39:20 by DLPB »

obesebear

  • Administrator
  • No life
  • *
  • Posts: 3017
  • Karma: 20
  • King of Model Importing
    • View Profile
    • Modders Haven
Re: Battles playing at 60fps
« Reply #59 on: 2014-07-15 23:30:12 »
You know what, maybe not...

Maybe it's fixed the slots too.

I can't be 100% because I can't get this to record at 60fps... but I'm excited here... because that 1 value might have fixed everything.  It is certainly what the main timing function uses.

edit 2.

No... it's fixed the lot.  That one value is the main one.   You can see how it's used in the function that comes after  :-D  The porting team must have set on purpose so the menu/camera etc could work at 15fps.
Verified.   The camera is clearly running as it would at 15fps, so it's not as smooth as the interpolated one, but this seems to be the best way to go for now.

Now onto .s files?

DLPB

  • No life
  • *
  • Posts: 5457
  • Karma: 109
  • The King of the Rumbling Spires
    • View Profile
Re: Battles playing at 60fps
« Reply #60 on: 2014-07-15 23:39:25 »
The camera is running at 30fps, as it does on PSX... one frame dupe.  8)  So that's another bonus.

obesebear

  • Administrator
  • No life
  • *
  • Posts: 3017
  • Karma: 20
  • King of Model Importing
    • View Profile
    • Modders Haven
Re: Battles playing at 60fps
« Reply #61 on: 2014-07-16 20:00:58 »
My first order of business once I finish this is to boot up a save near Emerald and just rape his strawberries.

DLPB

  • No life
  • *
  • Posts: 5457
  • Karma: 109
  • The King of the Rumbling Spires
    • View Profile
Re: Battles playing at 60fps
« Reply #62 on: 2014-07-16 22:55:39 »
I've successfully made the battle 60fps (completely finished and fully working).  Had to add in my own small hack to make it dupe 3 of 4 frames, but that along with the menu fix I discovered has done it.

I'm happy with the results but also look forward to your interpolated version.   8)

obesebear

  • Administrator
  • No life
  • *
  • Posts: 3017
  • Karma: 20
  • King of Model Importing
    • View Profile
    • Modders Haven
Re: Battles playing at 60fps
« Reply #63 on: 2014-07-16 23:15:04 »
I've successfully made the battle 60fps (completely finished and fully working).  Had to add in my own small hack to make it dupe 3 of 4 frames, but that along with the menu fix I discovered has done it.

I'm happy with the results but also look forward to your interpolated version.   8-)
*throws confetti*  Finally making some real progress on my end.  Got held up forever on emerald

obesebear

  • Administrator
  • No life
  • *
  • Posts: 3017
  • Karma: 20
  • King of Model Importing
    • View Profile
    • Modders Haven
Re: Battles playing at 60fps
« Reply #64 on: 2014-07-16 23:52:24 »
Is anyone willing to manually fix models?   I'll be doing most of the work, but when I come across some I don't feel like doing they'll go in KNOWN PROBLEMS.  If someone else would like to fix those, let me know.

KnifeTheSky77

  • Insane poster
  • *
  • Posts: 304
  • Karma: 8
  • Somnambulistic Paraphile
    • View Profile
Re: Battles playing at 60fps
« Reply #65 on: 2014-07-17 00:56:24 »
Just when I thought I had seen everything, I am pretty pumped to try this mod. Any plans for 60 fps field/world map?  :wink: ;)

obesebear

  • Administrator
  • No life
  • *
  • Posts: 3017
  • Karma: 20
  • King of Model Importing
    • View Profile
    • Modders Haven
Re: Battles playing at 60fps
« Reply #66 on: 2014-07-17 01:17:41 »
Just when I thought I had seen everything, I am pretty pumped to try this mod. Any plans for 60 fps field/world map?  ;-) ;-)
Yes and no.  The method they used to speed down the battle scenes is likely the same thing for the field and world map.  So reverting them back to 60fps will be pretty simple (so to speak). 

However, at this time I have no plans to interpolate and fix the animations used there.  Were I to get some help finishing up the battle side of things...well then maybe we can talk about branching out further. After all, it is likely the field and world map animations are exponentially easier than the battle ones.

KnifeTheSky77

  • Insane poster
  • *
  • Posts: 304
  • Karma: 8
  • Somnambulistic Paraphile
    • View Profile
Re: Battles playing at 60fps
« Reply #67 on: 2014-07-17 03:31:43 »
Write up on the process and I'll jump in, this mod seems like it is gonna be awesome

Hellbringer616

  • No life
  • *
  • Posts: 1876
  • Karma: 9
    • View Profile
Re: Battles playing at 60fps
« Reply #68 on: 2014-07-17 03:46:53 »
So long as i don't have to buy fancy equipment to generate the animations, I also don't mind trying it out. I get the feeling we won't have as many animations as we have enemies. I'm sure a ton use the same animations (lets hope anyway..)

KnifeTheSky77

  • Insane poster
  • *
  • Posts: 304
  • Karma: 8
  • Somnambulistic Paraphile
    • View Profile
Re: Battles playing at 60fps
« Reply #69 on: 2014-07-17 04:59:12 »
I imagine it is all a matter of quadrupling the number of animation points in kimera, spreading out each instance four frames apart, and improvising the inbetween frames. It's probably a pita but will make everything look much smoother

Kaldarasha

  • No life
  • *
  • Posts: 1190
  • Karma: 74
  • Prince of Model Editing
    • View Profile
Re: Battles playing at 60fps
« Reply #70 on: 2014-07-17 08:04:44 »
We need a Google sheet so we can see who is working on what model. My question is how many frames are needed to interpolate and how do look chained animations together? If they look to cut apart then we may need to add a help frame. I hope that this won't be needed, because this would slow down the process.

So long as I don't have to buy fancy equipment to generate the animations, I also don't mind trying it out. I get the feeling we won't have as many animations as we have enemies. I'm sure a ton use the same animations (lets hope anyway..)

Haha...   :lol: No it's not that easy. Every enemy has his own set of animations. Something between 10 and 14 animations.  :evil:
But fear not Kimera can interpolate animations in a good manner so only fine adjustments needs to be done. However the save button should be your best friend, I have made the experience that 'Crashimera' doesn't like to play animations of battle models for a longer time.

EDIT:
I have made the sheet
https://docs.google.com/spreadsheets/d/1C7jyrSu4Kmwvyp51eJJIcPGXEX-KZz5GufMEBpUT-EI/edit#gid=0
Send me a PM if you want the link to edit it.
« Last Edit: 2014-07-17 14:49:25 by Kaldarasha »

obesebear

  • Administrator
  • No life
  • *
  • Posts: 3017
  • Karma: 20
  • King of Model Importing
    • View Profile
    • Modders Haven
Re: Battles playing at 60fps
« Reply #71 on: 2014-07-17 14:54:16 »
Check the first post for animation files download.

You'll need

Kimera v.97a
ULGP

Instructions
Extract your battle.lgp using ULGP (you can extract them wherever)
Once that's done copy all the files I uploaded into your newly extracted folder and make sure to overwrite
Boot up Kimera.  OPEN MODEL, and pick anything ending in **aa.
In the lower left corner you'll see "battle animation".  At the very bottom you'll see < and >, these let you cycle through the frames of the current animation selected in "battle animation".
0 is the idle animation for every enemy.  These should all be silky smooth, meaning once you reach the very end of the animation, the difference between that frame and frame 0 should be very, very slight.

As for the rest of the animations, I need people to go through every animation frame of every model by holding the > at the bottom of kimera and make sure they aren't doing anything weird (for example: when enemies do tail whips or flips the model usually collides with itself, anything that should rotate like a wheel usually just stutters back and forth)

Please make sure to document EVERY problem you find in the same manner that I did on the first post (HRAA animation 5 frame 37 for example).  If you're good enough with kimera, feel free to fix it on your own.  But if you do decide to fix it, please make sure to send me that model's **da file and don't forget to hit SAVE MODEL.

I've already done AAAA through BNAA, but you're more than welcome to check behind me.


Kaldarasha

  • No life
  • *
  • Posts: 1190
  • Karma: 74
  • Prince of Model Editing
    • View Profile
Re: Battles playing at 60fps
« Reply #72 on: 2014-07-17 15:28:54 »
Ok I will check obaa to ofaa. Again please sent me a PM if you want access to edit the document. It's better to reserve the model before you check its animation. This way we don't do the work twice.
https://docs.google.com/spreadsheets/d/1C7jyrSu4Kmwvyp51eJJIcPGXEX-KZz5GufMEBpUT-EI/edit#gid=0

Hellbringer616

  • No life
  • *
  • Posts: 1876
  • Karma: 9
    • View Profile
Re: Battles playing at 60fps
« Reply #73 on: 2014-07-17 17:05:06 »
I've got BOAA to BVAA for now

obesebear

  • Administrator
  • No life
  • *
  • Posts: 3017
  • Karma: 20
  • King of Model Importing
    • View Profile
    • Modders Haven
Re: Battles playing at 60fps
« Reply #74 on: 2014-07-17 17:10:03 »
I just wanted to clarify, not all animations should be silky smooth during the transition from the final frame to the beginning one.  Only ones that are supposed to loop like idle animations and barret's victory pose.   Some enemies like zemzelett will have 2 idle animations, so you need to have a sharp eye to find which ones they are.

As for me, I'm spending my day burning my old floor and installing the new one.