Wednesday, November 30, 2016

2D Class Week 14 Concept Round (Value Pass 04)

For this week I added the corn stalk geometry to the environment that was created by Matt Trupiano. I reviewed his asset and optimized its poly count for LOD use and fewer polygons because the object will always be at a distance. The UVs of the corn stalk had to be redone to allow the corn stalk to be manipulated by the wind material also used for wheat field.


I was also tasked with updating the windmill model. I extruded the wooden panels of the windmill, added windows, and created a stone base for the windmill. Below is an image of the windmill in Maya and another with the windmill in the UE4 level.




Tuesday, November 22, 2016

2D Class Week 13 Concept Round 03 (Thumbnails)



For this week I rigged the proxy bird we have living in the scarecrow's hat to be used to build upon the animation set up last week.

 



I also assisted with updating the in game assets. The main one of note was the windmill that Bailey used to instance around the environment. 


After integrating the interaction feature used in VR and setup by the Tinman Team with the pitchfork for the scarecrow environment, I decided to expand the idea and make the wagon interactable. Unfortunately the blueprint to be more challenging than expected. As of now the blueprint allows the entire wagon to be lifted. After more research, the wagon will be able to raise the handle bar and be pulled by the player.
 
 


Tuesday, November 15, 2016

2D Class Week 12 Concept Round 02 (Thumbnails)

 For this week: I looked into how to simulate wind for the wheat field in UE4. To my surprise there is a built in material node that manipulates the vertices of mesh its applied to. Based on tutorials I referred to develop this material, black and white textures were used as an alpha to control which vertices were effected. No matter what the values of texture, some vertices were to seemingly impossible to control. After speaking to Chris Roda he simplified and improved the control of the effected vertices by using linear gradient node, which creates a black and white gradient based on the U or V direction.The material's node structure and gif of wind simulation in action. Fortunately this simulation does not cause performance issues. The FPS of the game barely drops. While there are a lot of wheat geometry, this may be a benefit of the 3 tiers of LODs.

I also started developing an extension of the motion controller pawn that takes advantage of XYZ values generated when teleporting. Based on the combined level of the 4 environments, the Y axis is the direction where the player progresses across the VR experience. I determined this by printing the XYZ values to the screen after each teleportation. The Y value was the one to increase linearly and positively as progress is made. After this was determined, I developed a branch system to determine if the player is progressing through the world and this would data would control the rotation of the directional light that serves as the sun. This implementation would control the progression of the dusk to night but the directional light would only rotate if the player is moving towards the next environment and not if they decide to go backwards to explore further.


Tuesday, November 8, 2016

2D Class Week 11 Concept Round 01 (Thumbnails)

For this week, I was assigned to rig the scarecrow proxy.  I conferred with Ryan to address any issues that developed making it an iterative process to learn from.

The rig features IK legs to allow for easier walk animations


To add secondary animations, the proxy bird was rigged to move its bed up and down and rotate its head. The scarecrow's head was also set up to decompress that could be used to emphasize a bounce in the scarecrow's step.


Tuesday, November 1, 2016

2D Class Week 10 Concept Discovery With 3D

For this week, I was tasked with learning more about the nav mesh volume and how paths are generated for the player to be able to teleport around the environments. I began the process by merging all the current level designs to determine how each level design interacts with each other. By doing this I was able to start determining commonalities as to why nav meshes paths could be inconsistent in different areas.


Nav mesh volumes generate bounds around actors based on the actors volumes. When blueprints are used to combine meshes, the overall volume of the blueprint is used rather than the respective individual volumes. This can be seen by the forest blueprint developed in the tin man level.


By enabling the "Draw Path Colliding Geometry" in the Project Settings > Nav Mesh the volume bounds of actors become visible to help visualize how actors affect the nav mesh


As shown above the grey volume encompasses the entire blueprint and obstructs the nav mesh. When the blueprint is removed, the nav mesh can cover the entire space as expected. 


Matt Young developed a yellow brick road geometry and textures that were integrated into the scene by using splines. The spline generates the geometry along the spline path and adapts to the path as the spline is edited.The spline is generated on the same surface created by UE4 that is used to place and paint foliage. Both the foliage and the splines inherit the scaling proportions of the surface. Neither the foliage or the spline seems to affect the nav mesh's generation.

After noticing the how the blueprints forests volume in the TinMan area, I spoke with the team they were confused because the nav mesh worked with them. Slightly adjusting the Z axis will either block the nav mesh entirely or allow the nav mesh to generate but still produces a gapbecause of the end of the blueprints volume.