LEVEL DESIGN
I feel today was a pretty productive day. I finished the basic blockout and added key components to my designer set. The ledges were tested numerous times and reworked inside Maya so that one of the player's feet wouldn't be floating in emptiness. I also took previous pieces and made them just a little smaller (in terms of height) so I could do a precise equalization of the ceiling on the whole level. I still need to cram in some pieces for the 45 degrees angled ledges that I haven't taken in consideration. But still ! The level blockout is in a pretty good state. Gameplay can happen.
TECH STUFF
The other part of the day was taken to refine/polish a little the player controller. I finally found what was keeping me from accessing the FOV of the player camera component. I needed to change its tag to "Camera" instead of "Default". So only then could I access the "set field of view" node from the Player Blueprint. I used that to widen a bit the FOV when the player is sprinting (a classic). The transition was pretty harsh so I found a way to blend between the FOV values of "I'm walking" and "I'm sprinting". I had a weird set-up with two Timelines at first but discard that quickly. I simply used a single Timeline (float track) and plugged the Update into the set FOV node. Whenever the player releases the shift key, the timeline will Reverse the playback where it was left and would go back to the original value creating a smooth blend between the two FOV states no matter how many times you mash the Left Shift key (sprint key bind). Another thing I did was creating a series of simple boolean logic to indicate in which state the player is (running, crouching, walking, etc). If the player is not walking, but simply standing still you don't want the Left Shift key to activate the FOV transition or change the Player Speed. If the player is walking backwards you don't want the player to be able to press the Left Shift (well in my case). It's pretty rare to see anyone sprinting backwards. To do that I just did a comparison between the Axis Input MoveForward Value (either "W" or "S" in that case) and 0. If the Axis Value is positive then you're able to sprint (walking forward - "W") if the axis Input is negative (walking backwards -"S") then don't allow sprinting. Pressing Left Shift also puts you out of Crouch state when walking forward.
Some really simple algorithms that really are necessary to foolproof the game.
See you tomorrow :) !
Some really simple algorithms that really are necessary to foolproof the game.
See you tomorrow :) !