June 16, 2011
Exil : Walking on Wall
Hello again !
Since a long time now, I develop my own game which is called "EXIL". It’s an acrobatic game in the way of Prince of Persia, Tomb Raider and Mirror’s Edge. I plan a fight system like in prince of persia with combos and use of double swords.
Okay, so I’m working on the wall walking system. Something like in Prey. Do you remember the wall walking system in prey ? I talk about that :
I don’t think the portal scale (when the player enter in a portal and go out smaller than before) can be done in the UDK in a easy way. Maybe with a full source code of the unreal engine 3. Anyway, it’s not the feature that I want to make. My current purpose is to walk on wall. It’s not easy in the udk because the gravity system is "hardcoded", it’s mean that we have no access to the code which control the gravity. In fact, we need to make a gravity system by our own ! It’s not perfect and not well optimized.
The UDK provide different type of physics, like falling, walking, flying, and so on. There is one which is called "spider", it’s purpose is to walk not only on a floor like the physic walking but even on ceiling and wall. The problem is that this physic is a little bugged and the camera system need to be completely redone. With the help of one other udk user I have achieved this feature :
I don’t have made the code which applies in the video. This code use the physic spider that I don’t like. I have already read a lot of concept and code on the udk and a lot of programmer deprecate this physic, they prefer instead the flying physics. I have tried to make my own wall walking with flying physics but that doesn’t work.
I have also worked on physics object, to change their gravity, and it’s work !
So now I need to work on my default camera for make it compatible with the wall walking. It’s hard for me because I’m always lost with vectors.
Okay, there is still a bug in this physics wall walking : when the player touch a wall, he is not directly blocked and he moves along this wall. I think it’s a problem with the hit detection of walls. I’m going to fix that later, currently my focus is to fix the camera.