I think fast melee combat at low FPS is a known issue, so I’m planning ahead and hope to have it solved when the time comes to actually implement it.
I figured that i can use sockets attached to the skeleton to read the position of the tip and base of the weapon.
Tho, during low FPS situations they can move quite a bit, especially for long staffs!
A potential solution to this would be to check the distance between current (0) and previous (-1) frame and then construct the poses for in-between times (if you are allowed to do this in Unreal) and get the socket positions for those in-between times as well, to do extra “ghost” collision checks.
An alternative to the previous idea could be to save the positions for 4 frames in a row and do catmull-rom interpolation to get a curved trail to follow for the time-span between previous frame (-1) and the one before the previous one (-2), having the collisions lag 1 frame.
Then for the fun part:
How to actually check for collision given those points from earlier step?
- triangles vs capsule
- capsule vs capsule
- tons of rays vs capsule
As I’m using C++ so I guess I’m allowed to write my own collision checks, so it gets so hard to choose what to pick!
Is there anyone who got a melee system that works at low FPS?
This is the level of craziness I’m going for, still making it playable at low FPS:
I’m working on a different solution now, check post #14 for more info