So, without any sort of consistency to this blog, here's another post!
Lately I've been obsessed with getting sword combat in VR just right. BUT, when I say "just right," I don't mean the most realistic. GORN's combat is great but it isn't realistic in any way. Blade and Sorcery's combat is also great, but it's too realistic for what I'm going for, so I have to work right between those two.
Any humans in my game use guns to fight, but can still be killed by a sword or a stealth kill. What will have melee weapons, however, are the robots. They are sort of like the Lightsaber-Weilding robots in Vader Immortal (which I highly recommend!), but fit more into the world I am creating.
With some help from some inspiring articles on VR combat on the internet, I think I've found a good middle ground.
Essentially, enemy sword weapons detect players' swords in a specified range and position themselves in such a way that effectively blocks the player from hitting/stabbing them.
In each blocking movement, the enemy tries to swipe their sword across the player to damage him/her, and it's up to the player to block the enemy back.
None of this would work without a good sword physics collision system, and with a bit of work, I've got a pretty good way of doing that too. I won't get into it in too much detail for reasons I will get into,*** but the gist of it is that when the player picks up the hilt of the sword, the blade follows it with a configurable joint that is setup to collide with objects while still not moving away from the player's hand unless it really has to.
Right now the swords just kinda hover in front of the placeholder enemy bodies, but when I'm finished with it, the swords will be hooked up to an inverse kinematics arm system attached to the body. Because these are robots we're talking about, I can have the arms look like whatever I want, coming out of whatever I want, this isn't a problem, but what's so cool about my system is that when paired with something like Final IK from the Asset Store, this can easily be applied to human enemies as well.
*** Now, the reason why I don't want to get into it too much right now is because I'm considering taking my entire VR Combat system, including the robot IK arm, the combat, the player sword, and a few other bonuses (including my collision sound system for VR and more) and putting them up on the assetStore for anyone to use, which is pretty exciting! :D
The only problem is that right now everything is deeply connected to VRTK 3.x. While this works great for me, it might not be so great for anyone else using a different VR interaction system. So if I want to publish it anywhere, I have to make it VR-Framework-Agnostic, which is a little more work. In any case, we will see!
One more thing: I'm considering turning all previous blog posts that show major features into a few video devlogs with clips of what they look like in game. So be on the look out for that!
Thanks for reading!