ADVANCED MODELING AND ANIMATION:FINAL ASSIGNMENT
ADVANCED MODELING AND ANIMATION:FINAL ASSIGNMENT
———
Ding Jiaqi/0379388
Advanced Modeling And Animation/ Bachelor of interactive spatial design
———
Introduction:
The task is to create a fun, immersive VR experience for a futuristic theme park.
Design process:
At first, I made two very simple structures. When the teacher explained the last assignment, I felt it didn't quite meet the standards, so I decided to change the model.
Design stage:
I searched for many pictures online and created a mood board to help me brainstorm ideas. I believe the combination of blue and stainless steel silver creates a futuristic, high-tech vibe, so I chose to incorporate these two elements.
Modeling stage:
Initially, I created models of a roller coaster and a pirate ship in Blender. However, I felt they were too simplistic, and the main reason I wanted to recreate them was that my first version lacked complexity.
UE stage:
I imported the model into UE and created a Material. Next, I used different nodes to define the material's appearance. To adjust variable parameters, I used Material Instances. I also further refined the material's effects using texture mapping. For glowing or other special effects, I used Emissive Color.
In this blueprint, I trigger the Event BeginPlay when the game starts to begin the sway effect. Then, I use Set Play Rate to slow down the animation by setting the timeline speed to 0.3.
Next, I create the sway effect with the Sway Timeline. I use the Lerp node to smoothly move the angle from -40.0 to 40.0, and I control the speed of the transition by adjusting the Alpha, which shows how far along the timeline the effect is.
Finally, I apply the calculated rotation to the object using Set Relative Rotation. I adjust the Roll to control the X-axis sway, while keeping Pitch and Yaw at 0, so the sway only happens on the X-axis.
Roller coaster animation:
In this blueprint, I use the Event BeginPlay to start moving the object when the game begins.
I get the total length of the path with the Get Spline Length node, which helps me figure out how far the object can travel along the path.
Then, I use Get Location and Rotation at Distance Along Spline to get the position and rotation of the object at a certain point along the path. I track how far the object has moved based on the distance.
Finally, I use Lerp to smoothly move the object from one point to another.
In this blueprint, I use the On Component Begin Overlap event to trigger when the VR player touches a component. I get the player character with Get Player Pawn, then use Cast To VRPawnto make sure it's a VR player.
I set up a timer with Start Timer by Event to update the player’s position and rotation every 0.02 seconds. I get the total path length with Get Spline Length, then get the player’s position and rotation along the path using Get Location and Rotation at Distance Along Spline.
Finally, I apply the position and rotation to the player using Set Actor Location and Rotation, so the player moves correctly along the path. When certain conditions are met, I stop the updates and end the timer. At first, I tried other methods to create VR animations, but they didn’t work. Then, I found this method online and it worked.
Planet animation:
In this blueprint, I use the Event BeginPlay to start the object's movement when the game begins. Then, I set the timeline speed to 0.2 using the Set Play Rate node to slow it down.
Next, I use the Move node to control the object's movement and the Rotating Movement node to make it spin as it moves.
I use the Lerp node to smoothly move the object from one spot to another. By adjusting Alpha, I control how the object moves between two points.
Environment:
I first set up an environment and then imported the amusement park assets from there.
After importing, I found that the decorative lights next to it were too bright, which didn't match the feeling I initially envisioned. So I turned down the brightness of the decorative lights.
I created it based on the step-by-step video uploaded by the teacher's teams.
Reflection:
This task taught me a lot of new skills. I am very grateful for Mr. Nedu's help, from starting over at the beginning to adding more details. Although I encountered many troublesome issues during the process, such as APK packaging failures and the inability to move properly after importing the VR headset, I feel a great sense of achievement in the outcome I’ve reached.
I am very thankful to Mr. Nedu. He patiently and meticulously helped me solve the problems step by step. Throughout the process, I not only learned technical skills but also improved my problem-solving abilities. Each challenge allowed me to better understand the complexities and details of VR development. Despite the many difficulties, through continuous adjustments and improvements, I was able to complete the project and feel a great sense of accomplishment. I will continue to work hard and apply the experience from this project to future ones. I’m grateful for all the support and help I’ve received.
——————————————————————————————————————————
Comments
Post a Comment