Angel Gonzalez

ANGEL GONZALEZ - PROGRAMMER

Angel Gonzalez

As an Engine and Gameplay Programmer, my main focus in this project has been to ensure the engine worked as efficiently as possible and to implement the Animation System. Fully utilizing the Animation System's capabilities to bring forward the best possible in-game results has also been one of my core responsibilities.

During this project I had to maintain thourough communications with the Design and Art teams to ensure the features and assets they were envisioning could be employed in the game without any issues. Overall, this project has been an incredible learning experience, both in the programming and team communication departments.


PROJECT CONTRIBUTION

Engine: Engine Base
Provided the base engine upon which Missclick Engine was built. One of its most notable features would be the Resource Manager, capable of keeping track of which resources are being used in runtime and keeping memory usage to the minimum.

Engine: Animation System
Implemented an Animation System capable of importing fbx files into the Engine, loading them into the scene and reproducing the animations.

On one hand, it features a Clip Management System, which allows the user to pick and animation and "cut" it into multiple separate segments.

On the other hand, it features a Track Management System, which allows the user to define which bone of the model's rigging will act as the Root Bone.

Engine: Backend Features

  • Sharing Scenes: Improved the Resource Manager so scene files could be correctly shared between devices.
  • Transform Dirty Flags: Implemented the Dirty Flag Pattern on the Game Object's World Transform.
  • Resource Bases: Implemented a class that stores the data of meta files at runtime to speed up Resource Manager ops.
  • Render Order: Implemented a sort by Y position value to all Game Object rendering operations (meshes, particles, etc).
  • Gameplay: Torso/Legs System
    Implemented a system in the player's script that modified the player's animations depending on the direction in which they are moving and aiming taking advantage of the Animators Track System.

    Gameplay: Player Interaction System
    Implemented a system that managed all the possible interactions that the player can have (Talking, Opening a Chest, etc).

    Gameplay: Player Features

  • Walk: Implemented the possibility of making the player walk instead of run depending on the received input.
  • Slowed while Shooting: Implemented a reduction of the player's movement speed while shooting.
  • Aiming UI: Implemented the behaviour of the Aiming UI, which appears when the player is aiming, shooting, etc.
  • Gameplay: Weapon Item Rotation and Hover
    Implemented a script that rotates and hovers over time all Weapon Items (Weapon Selection Elements).

    QA:
    Tested the game and reported all bugs found and participated in the bugfixing of both the engine and the game.

    Animation System Showcase
    Animation Gameplay Showcase
    Interactions Feature
    Aim UI Feature
    Walk Feature
    Slowed while Shooting Feature
    Weapon Item Hover And Rotation