Thursday, November 7, 2024

Medusa VR Week 11

  •  First I worked on adding some ambiance to the world.
    • I mixed together birds and wind ambiance, fire burning, torch wooshes, and falling stones
    • The birds might have too much of a positive association for the environment we're in, so I may need to look into a different wind ambiance.
    • The fire burning sfx are to match the torches that light up the area
    • The falling stones are representative of the decrepit nature of medusa's temple, fragments of fallen victims chipping off
    • I panned some sfx to the left and others to the right to create a bit of audible depth
      • Hopefully I can replace it with events that will cue sfx to replace the ones in the ambiance

  • Next, I started to work on a material that would become Medusa's eyes.
    • Simply,  a Fresnel function does most of the work, with some vector parameters to set the color, and scalar parameters to control the scaling of the fresnel, the glow amount, and the emissive multiplier.
    • I quite like how creepy it looks! Since the fresnel is made up of annular sections, when placed on a sphere, its appearance remains the same from all angles, creating an illusion of a set of pupils following you
    • I'd love to see if I can mend it to stretch the center to make her eyes appear more snake-like.
Material Function Graph of Glowing Eye Material

Testing Material

Testing Material on a Proxy Medusa
  • Now, while working on the gaze functionality, I've been working with my professor on a new methodology that should hopefully be a bit more optimized.
    • Essentially, I'll be creating two vectors, one from Medusa, and one from the VR camera. We'll take the XYZ values of Medusa's vector and respectively subtract them from the VR camera's vector. Then we'll normalize the vector from the result and the original VR camera vector. Between these two vectors is an angle we'll call Theta. To get theta, we'll take the two normalized vectors and find the DOT product from the two of them. This will create a value between 0 and 1. If the value is close to 1, it means the angle is really small, and you're most likely looking at or close to Medusa. If, say, the angle is greater than 0.9, we'll make that the trigger for Medusa to turn you into stone. 
  • I've also been working on some destruction deformations for our stone head
    • To create this, I first attached an attribute expression node, and left the constant value at (0,0,0) to then add an attribute paint node, which allowed me to paint areas that will be more sensitive to fracturing. From there a scatter node was added, that creates points along the mesh, with points being more condensed in areas I painted in the attribute paint node. Then, I added a Voronoi fracture node, and for the sake of testing, exposed the fragments using an exploded view node.
    • A bit after, I felt that it looked a bit off that all the points stemmed from the outside of the statue, and it seemed a little unrealistic. So to curb that, I appended an iso offset node off of the attribute paint node, and took in the original fbx file. I merged that with the scatter node, and fed that into the Voronoi node. That then allowed me to get some geo clusters inside of the statue head!
    • From there, I added some nodes for UV's and Materials, and appended an RBD bullet solver node, and ending it with a null node that I reference with the RBD to FBX node in the outputs network.
  • Lastly, I got a stone tablet modeled

Here's my work in perforce


No comments:

Post a Comment

Lighting Workshop Week 2