Resume Download
carlos_gutierrez_resume.docx |
carlos_gutierrez_resume.pdf |
Skills & Software
Core Skills
|
Languages
|
Software
|
Professional Experience
Unannounced Project (Multiplayer FPS)
Ongoing
Role: Senior AI/Gameplay Engineer
PREY MOONCRASH (Immersive Sim Roguelike)
2018
Role: AI/Gameplay Engineer
PREY (Immersive Sim)
2017
Role: AI/Gameplay Engineer
Ongoing
Role: Senior AI/Gameplay Engineer
- Owned and implemented NPC Behavior Action System
- Governs how all NPCs behave when spawned, scripted, or in reaction to stimuli and game state
- Written in an expressive and easy to understand format with a data driven front end and visual debugger
- Allows programmers and designers to implement and use behaviors through Blueprint or C++
- Enables combining and prioritizing of existing implemented actions to rapidly implement new NPC behavior sets
- Closely collaborated with designers to rapidly iterate based on evolving needs of system and their feedback
- Elegantly handles both systemic behaviors and designer scripted behaviors as well as transitions between the two
- Created system proactively instead of continuing iteration on existing systems that weren’t working for games needs
- Governs how all NPCs behave when spawned, scripted, or in reaction to stimuli and game state
- Collaborated with third party vendors, integrating their updates, setting direction for next deliverables, testing changes
- Implemented NPC abilities with Gameplay Ability System, including logic, animation/VFX hookups, and gameplay cues
- Implemented jumping and ledge drop navigation and pathing for NPCs
- Primary owner and point of contact for several unique NPCs different locomotion, body types, behaviors, and more
PREY MOONCRASH (Immersive Sim Roguelike)
2018
Role: AI/Gameplay Engineer
- Owned and implemented all behaviors and abilities for new NPC - the Moonshark
- Implemented systemically blind NPC that senses players who make noise or step on the Moon’s surface
- Developed underground pursuit movement and above-ground emerge and attack movement
- Implemented all abilities, include ground slams and levitating/throwing physics enabled boulders
- Primary point of contact and owner of programming needs for remaining NPCs
PREY (Immersive Sim)
2017
Role: AI/Gameplay Engineer
- Collaborated with designers and producers to establish feature requirements, set deliverables, and iterate on features
- Primary Owner and point of contact for programming needs related to Phantoms, Technopath, Weaver, and Human NPCs
- Owned and implemented numerous core NPC behaviors, including Combat, Search, Hunt
- Implemented behaviors and special attributes for Phantom, Mimic, Technopath, Telepath, Human, Weaver, and Nightmare
- Developed and owned combat abilities and ability logic for all NPCs
- Owned and implemented Combat Role Manager to manage multiple NPCs roles fighting a target
- Owned and developed Unreachable Targeting System - finds attack position when target moves to an unreachable location
- Added hotloading and multi-select functionality to CryEngine Library editor, improving designer iteration time
- Implemented numerous scripting and behavior interfaces for designers to use when scripting NPCs
- Set up interfaces and integrated work from other departments (such as animation, sound, VFX) into NPCs
- Guided ramp-up for new contractors learning NPC behavior, perception, special attribute, and ability systems
Student Team Game Experience
Project Island (Survival Real Time Strategy) - Team of 15
6 Months, 2014
Engine: UDK
Role: Game Designer / Programmer
6 Months, 2014
Engine: UDK
Role: Game Designer / Programmer
- Selected to be Creative Lead for the project & facilitated overall game vision
- Designed majority of game systems, including items, upgrades, enemies, and environment
- Handled balancing for enemy damage, player damage, item costs & effects, and character upgrades
- Implemented inventory system, items, and upgrades
- Added initial Fog of War system
- Created custom Kismet nodes for Level Designers to use in the level and tutorial
- Wrote character dialog and story log combat
Sky Knights (First Person Shooter) - Team of 6
Role: Lead Programmer
Engine: UDK
4 Months, 2014
Role: Lead Programmer
Engine: UDK
4 Months, 2014
- Designed the game concept, mechanics, and weapons
- Developed the physics based Grappling Hook
- implemented customizable controls and user settings
- Created rocket launcher tyle weapon with remote detonation of projectile
- Created auto turret with target leading for superior accuracy
- Balanced weapon behavior and damage
Ethereality (2D Side-Scrolling "Metroidvania" Platformer) - Team of 5
Sole Programmer
Sole Programmer
- Developed original game design
- implemented double jump, wall jump, phase shift, and hover mechanics
- Designed and implemented Enemy AI and combat system
- Implemented multi-level support and minimap with exploration history
- Added support for multiple endings based on player actions
Individual Projects
Individual Projects done at The Guildhall, adding new components and features to my custom C++ Game Engine.
Thesis: Fuzzy Fitness Scoring for Companion AI Strategy Selection
Engine: Custom C++ Engine
AI using Goal Oriented Action Planning
Engine: Custom C++ Engine
Data-Driven Roguelike
Engine: Custom C++ Engine
Custom Vertex/Fragment Shader & Framebuffer Effects
Engine: Custom C++ Engine
Newton’s Cradle Physics Simulation
Engine: Custom C++ Engine
Custom 3DS Max Model, Animation, and Skinning Exporter Plugin
Engine: Custom C++ Engine
Engine: Custom C++ Engine
- Used fuzzy fitness scoring to determine which action a companion AI would choose based on the current scenario
- Actions scored based on state of player, companion, and enemies, with the highest scoring action being selected, without need for actions to know about each other for special case handling
- Companion AI tasked with managing its health, position, and mana to optimally benefit itself and the player, with the helping the player being prioritized
AI using Goal Oriented Action Planning
Engine: Custom C++ Engine
- Real time planning, decision-making, and execution of multi-step plans for autonomous AIs
- AI plan and execute Actions based on assigned Action List
- Allows for rapid AI development by creating Actions and assigning them to Actors
- A* pathfinding to goal location, with obstacles and variable-cost terrain
Data-Driven Roguelike
Engine: Custom C++ Engine
- Creation of Tiles, Enemies, Entities, Items, and Maps done entirely with XML
- Smooth interpolated movement, and multiple movement speed support (relative to player)
- Fog of War, A* pathfinding for enemies , and line of sight for enemy visibility and aggro
Custom Vertex/Fragment Shader & Framebuffer Effects
Engine: Custom C++ Engine
- Supports Diffuse, Normal, Bump, Parallax, Specular, Noise, and Emissive textures
- Distortion and Travelling Wave vertex effects.
- “Toon”, Warp, Underwater, Greyscale Frame Buffer Effects
Newton’s Cradle Physics Simulation
Engine: Custom C++ Engine
- Precise handling of multiple collisions on same frame through rollback and integration up to collision points.
- “Velocity” Verlet and Euler Integration
- Adjustable time step, forces, coefficients, and number of weights
Custom 3DS Max Model, Animation, and Skinning Exporter Plugin
Engine: Custom C++ Engine
- Custom dll plugin to export 3DS Max 2013 scenes, models, and animation
- Importer to handle vertex data, bones, animation frames, and textures for playback
Additional Professional Experience
Software Engineering Intern – Lattice Semiconductor, San Jose, California 2012)
- Implemented and tested new message APIs for proprietary Lattice Diamond© environment
- Automated removal of legacy code and replaced with new APIs for Lattice Diamond© environment
- Developed an algorithm and its implementation for Lattice’s wire Place & Route utility
- Created utility scripts and programs for more efficient work flow and data management
Education
- Master's of Interactive Technology at The Guildhall at SMU, Plano, Texas, 2014
- Bachelor’s of Science in Computer Science from Southern Methodist University with Honors in Liberal Arts, Dallas, Texas, 2012