Destiny 2
by Bungie Inc.
Ambient Life NPCs
https://bungie.net/
Role: Test Engineer (primary), VFX/Character Artist
Shipped titles include: Destiny: The Taken King, Destiny 2, D2: Curse of Osiris, and D2: Forsaken
2014-2015
Destiny 2 Ambient Life
I worked on Destiny 2 as a QA Engineer, but also had opportunities to contribute to making the world of Destiny feel more alive by teaming up with some character artists to create more ambient life critters during our annual "Carnival" hackathon.
I produced the below creatures from start to finish (including the time to learn our tools!), working with a lead artist on art direction.
Shipped titles include: Destiny:The Taken King, Destiny 2, D2: Curse of Osiris, and D2: Forsaken.
A significant accomplishment at Bungie was the creation of ambient life for Destiny 2. This involved creating owls for the farm social space, and the sea monster visible on the surface of Titan, both visible in the live game. Additionally, I developed a reactive character NPC with custom animations and VFX, and prototyped an interactive bee hive obstacle in a demo game environment.
As a Test Engineer on the Public Events team, I developed the skills to deep-dive into problems and create solutions. I studied content workflows, identified the causes of issues, and proactively prevented problems before they needed fixing. I also developed tools and documentation to aid in automated and manual testing, bolstering productivity for the team and enabling us to perform testing that once would have been impractical if not impossible. Additionally, I became the specialist point of contact for not only Public Events, but also for VFX and runtime memory issues. I participated in and led agile rituals and bug triage for the development team, and maintained an excellent collaborative rapport with developers.
I produced the below creatures from start to finish (including the time to learn our tools!), working with a lead artist on art direction.
Shipped titles include: Destiny:The Taken King, Destiny 2, D2: Curse of Osiris, and D2: Forsaken.
A significant accomplishment at Bungie was the creation of ambient life for Destiny 2. This involved creating owls for the farm social space, and the sea monster visible on the surface of Titan, both visible in the live game. Additionally, I developed a reactive character NPC with custom animations and VFX, and prototyped an interactive bee hive obstacle in a demo game environment.
As a Test Engineer on the Public Events team, I developed the skills to deep-dive into problems and create solutions. I studied content workflows, identified the causes of issues, and proactively prevented problems before they needed fixing. I also developed tools and documentation to aid in automated and manual testing, bolstering productivity for the team and enabling us to perform testing that once would have been impractical if not impossible. Additionally, I became the specialist point of contact for not only Public Events, but also for VFX and runtime memory issues. I participated in and led agile rituals and bug triage for the development team, and maintained an excellent collaborative rapport with developers.
"Vex" Enemy Jump Scare
In January 2019 I prototyped an interactive ambient character NPC with custom animations and VFX, using
existing sounds and character models/textures. I then applied feedback to polish the asset to game-ready.
The asset is awaiting an appropriate release vehicle, but will hopefully be scaring the light out of countless guardians someday "soon".
Process :
- Took an existing NPC character pattern and made a branched version whose behavior and animations could be customized.
- Added interactivity components to trigger certain animations based on player state/proximity. Removed superfluous components that had been inherited from the base pattern to save on memory.
- Created custom animation clips in Maya using existing character rig. Ensured that the clips would blend together smoothly.
- Made a custom timeline sequence that would trigger certain animation clips depending on the state of the interactivity components.
- Made it loopable for testing purposes with a simple removal for finalizing the asset.
- Received feedback from lead character animator and then iterated on the animation clips to get it within style guide targets.
- Used world building tools to create an environment vignette for demo
existing sounds and character models/textures. I then applied feedback to polish the asset to game-ready.
The asset is awaiting an appropriate release vehicle, but will hopefully be scaring the light out of countless guardians someday "soon".
Process :
- Took an existing NPC character pattern and made a branched version whose behavior and animations could be customized.
- Added interactivity components to trigger certain animations based on player state/proximity. Removed superfluous components that had been inherited from the base pattern to save on memory.
- Created custom animation clips in Maya using existing character rig. Ensured that the clips would blend together smoothly.
- Made a custom timeline sequence that would trigger certain animation clips depending on the state of the interactivity components.
- Made it loopable for testing purposes with a simple removal for finalizing the asset.
- Received feedback from lead character animator and then iterated on the animation clips to get it within style guide targets.
- Used world building tools to create an environment vignette for demo
Sea Monster on Titan
This creature haunts the waters of Titan, visible just behind the destination's NPC, Sloane.
Its inception came about because of my desire to see some sea life on the ocean planet. The vast waters were begging for some kind of life to crest its surface. I prototyped a simple version of its design during some down time, and then completed it with art direction to fit within the world for Destiny 2.
Fan-made video of the creature showing itself: https://youtu.be/ZV2z_B4s9R8?t=56
Popular Youtube artist "My name is Byf" did an entire lore video about this creature: https://www.youtube.com/watch?v=WFWffu9kazg
The technical set up for this thing is pretty simple and cheap. It's roughly a donut shaped model with fins around the edges (click for screenshot from a Youtube user who managed to glitch under the water). It rotates and rises at a certain speed to appear as though it's swimming. There's about 3 of the donuts that rise at separate intervals to give a serpentine appearance.
The delay between the animation's rise has to time right with the waves falling before it becomes visible. Due to the randomness of the waves and the interval of its rise, this happens fairly rarely (as intended).
I designed, modeled, rigged, animated, and made the shader for this creature using existing textures. I also did all the technical set up for it to be dropped in the engine and it would "just work".
Its inception came about because of my desire to see some sea life on the ocean planet. The vast waters were begging for some kind of life to crest its surface. I prototyped a simple version of its design during some down time, and then completed it with art direction to fit within the world for Destiny 2.
Fan-made video of the creature showing itself: https://youtu.be/ZV2z_B4s9R8?t=56
Popular Youtube artist "My name is Byf" did an entire lore video about this creature: https://www.youtube.com/watch?v=WFWffu9kazg
The technical set up for this thing is pretty simple and cheap. It's roughly a donut shaped model with fins around the edges (click for screenshot from a Youtube user who managed to glitch under the water). It rotates and rises at a certain speed to appear as though it's swimming. There's about 3 of the donuts that rise at separate intervals to give a serpentine appearance.
The delay between the animation's rise has to time right with the waves falling before it becomes visible. Due to the randomness of the waves and the interval of its rise, this happens fairly rarely (as intended).
I designed, modeled, rigged, animated, and made the shader for this creature using existing textures. I also did all the technical set up for it to be dropped in the engine and it would "just work".
Owls at The Farm
The owls were my first ambient life project in Destiny 2. You can find them in one of four possible locations in the Farm social space on Earth.
I modeled, rigged, animated, and UV'ed it to fit an existing bird texture for the prototype (the final texture/shader was then added by another artist prior to shipping). I also completed all the technical setup for it to select randomly from its idle animations, and designed it to react to player presence and fly away. However, art direction wanted it to be stationary, so we ultimately removed the "fly away" feature.
I modeled, rigged, animated, and UV'ed it to fit an existing bird texture for the prototype (the final texture/shader was then added by another artist prior to shipping). I also completed all the technical setup for it to select randomly from its idle animations, and designed it to react to player presence and fly away. However, art direction wanted it to be stationary, so we ultimately removed the "fly away" feature.
Awoken Bee Hive (unreleased) designed for Dreaming City
This was a gameplay prototype for an interactive ambient life type that was designed and implemented by myself. The hive was swarming with bees and dripping with glimmer-honey, and players could shoot it to agitate the bees and cause damage over time on nearby players. If they caused enough damage, the hive would explode into crystal shards and drop glimmer (currency).
It was conceptually and visually designed to fit within the Dreaming City world, but did not ship with the Forsaken expansion.
My goal in this project was to learn about VFX gameplay object workflows with Bungie tools. I started the project with a spec that described the object's intended functionality and visual design goals. I chose a bee hive concept because it would offer a challenge of implementing gameplay elements such as linking the bees' particle speed to the health of the hive object so that bees would become agitated when the hive took damage. I included stretch goals for additional elements if I was able to implement the base design quickly. I completed the project with nearly all of the stretch goals met. For example, I linked up a DoT volume that would activate in concert with the bee particle speed. This project took 1 week to plan, research, implement, and test. I then gathered feedback for a future iteration.
In playtests, players found the gameplay very intuitive. Players would pick up with controller and start shooting at it without prompting, and it provided a very satisfying audio and visual feedback to indicate this was an intended action. When the player started taking damage, they quickly ran away from the bee hive and stopped taking damage. Some would move forward again to find where the threshold was. They seemed satisfied when it exploded into shards if they kept shooting.
I wrote the encounter script for the demo to respawn the hive after a short cooldown period to allow players to try it again without reloading the map.
It was conceptually and visually designed to fit within the Dreaming City world, but did not ship with the Forsaken expansion.
My goal in this project was to learn about VFX gameplay object workflows with Bungie tools. I started the project with a spec that described the object's intended functionality and visual design goals. I chose a bee hive concept because it would offer a challenge of implementing gameplay elements such as linking the bees' particle speed to the health of the hive object so that bees would become agitated when the hive took damage. I included stretch goals for additional elements if I was able to implement the base design quickly. I completed the project with nearly all of the stretch goals met. For example, I linked up a DoT volume that would activate in concert with the bee particle speed. This project took 1 week to plan, research, implement, and test. I then gathered feedback for a future iteration.
In playtests, players found the gameplay very intuitive. Players would pick up with controller and start shooting at it without prompting, and it provided a very satisfying audio and visual feedback to indicate this was an intended action. When the player started taking damage, they quickly ran away from the bee hive and stopped taking damage. Some would move forward again to find where the threshold was. They seemed satisfied when it exploded into shards if they kept shooting.
I wrote the encounter script for the demo to respawn the hive after a short cooldown period to allow players to try it again without reloading the map.