Capstone - Semester 2 Week 6

By: James Keats | 23 February 2018

I’m writing this week’s blog post in a bit of a hurry, so unfortunately we won’t have as many visuals as usual. Here’s what I accomplished last week:

  • Implementing two new weapon parts: the “X-ray/tag” sight, and the “laser” mechanism

The “tag” sight was implemented as a special Aim-Down-Sights effect; essentially, after aiming at a player for a certain amount of time, they are drawn with a yellow outline around them that is visible through walls. This required the use of CommandBuffers in Unity and a lot of time spent in shaders. Overall, the effect came out nice.

The laser mechanism required a modification to our core hitscan projectile code. The idea for lasers was that they would be able to hit players through walls. As such, hitscan projectiles now have the ability to travel through a certain number of static objects and a certain number of target objects, both of which are designer-tweakable in the inspector.

  • Implementing a new third-person model and hitboxes, and first-person animations

The new shader I wrote for colormasking last week for the first-person hand was reused for the third-person model that Tyler has redone. During the process of implementing the new model (and animations coming next sprint!), we also added hitboxes and damage modification to finally allow for headshots to do extra damage. This is something that players have been wanting for a very, very long time, so I’m glad I finally had a chance to add it.

I also helped support Tyler by implementing some of the new first-person animations, which include responses of the hand to recoil and fire-rate. It’s been a little difficult so far, but we are working through making sure that all the animations look good for all the part combinations.

  • Reflecting durability visually on the weapon

Tyler provided an emissive texture map with all of the new weapon part models that have been implemented. This emissive section lerps from a desaturated green to a bright red and then blinks as each part’s durability falls and it eventually breaks. This effect has so far helped QA testers understand durability significantly better, since the effect is large and obvious in their viewport instead of being relegated to a UI element.

Back to blog