Okay well my current coding project is named Phantom for the moment. I wont go into detail at this time about the project. I wanted to talk about a timer I've started using. Since cutting out WOW and other time crunchers I've installed a timer that times the amount of time Visual Studio is open and receiving input. In short it tracks the amount of NON idle time. So this means it effectively times your time spend coding.
So I'm going post code updates and state how much time each iteration has taken. Thus giving me a good DEV diary of sorts.
First bit of timer code was working out some input and billboard issues.
A simple task really once you've ad it explained to you. There are different options but in this case I chose spherical billboarding. Simple put the object ALWAYS is perfect. This results in a very "flat" look. The method I'm using resets the model view matrix top 3x3. This resets scaling and rotation while leaving position "intact".
A lot of time has been spent on this because the game has a slightly different view on its combat system. Without going into detail the play rotates around a fixed point as is always focused on said point. The play then has a movable HUD and targeting system. There is no artificial HUD but rather one projected into the 3D world. This lead me to experiment with various input strategies.
In the end I resorted to a simple Unprojection method. I had also developed several vector based approaches. I might go back to them however as they were interesting. I would need to spend a lot of time and resources getting the "feel" right. Most the vector solutions felt disjointed. The system would work wonderfully on a analogue stick on a gamepad controller its trying to relate it to a mouse that's the problem.
Next Code: Building ICE and mapping out combat function calls.