Categories
3D Computer Animation Fundamental

Week 12: Final Submission

Immersion & Animation Showreel

Regarding my final submission for the Unreal Engine (UE) project, I am not entirely satisfied with the outcome and recognize there are significant areas for improvement. These include enhancing the smoothness of the fish’s animation, improving lighting, and refining the sound design, among other aspects. I intend to address these shortcomings not only in this project but also in future endeavors.

That said, the project has been an invaluable learning experience. While we covered the fundamentals of Unreal Engine in class, I found the knowledge insufficient, particularly for animating characters and transferring files into the engine. Consequently, I undertook extensive self-directed learning and resolved numerous challenges, which enabled me to acquire new skills that will be beneficial in the future. Looking ahead, I plan to expand my technical expertise by learning software such as ZBrush, Blender, and other 3D applications to broaden my creative capabilities.

With regard to the Maya fundamental animation projects, I have developed a heightened sensitivity to the finer details of animation after completing the course. During my undergraduate studies in Animation and Digital Arts, critiques were often focused on general impressions rather than providing specific, actionable feedback. For example, key principles such as using arcs, adding hand swings, or incorporating weight shifts were not emphasized. Moving forward, I will consistently keep these essential principles in mind to improve the quality of my future animations.

Design Proposal

(Please turn on the subtitles on the right bottom corner. )

Categories
3D Computer Animation Fundamental animation

Week 11: Body Mechanics Polish

Previous Blocking Animation Issues

(1) Fingers should be animated

Initially, I did not realize that animating the fingers was essential for creating curves similar to those depicted in the yellow illustrations of the animation above. At first, I focused solely on animating the arms. However, this approach lacked the necessary detail. I soon realized that to achieve a more refined and comprehensive animation, I would need to incorporate greater detail and push my skills further by animating the fingers as well.

(2) Shape changing of the body

While animating, I overlooked the rotation of the body, which resulted in the animation lacking smoothness. To improve this, I will need to incorporate these rotational changes into the blocking animation and refine the movement further during the spline phase.

(3) Anticipation before standing up

Anticipation serves to provide the audience with cues regarding upcoming actions. For a more detailed explanation, please refer to the final section of the Blog from Week 2. Therefore, it would be beneficial to incorporate an anticipatory movement before the character stands.

(4) More Clearer Poses

For this frame, I should clarify the pose by reducing the twist of the shoulder in relation to the camera, while maintaining the triangular shape between the arms and the body. Additionally, I must ensure that the left hand makes contact with the leg.

(5) Extension of the Hands

It appears that the hands are missing keyframes. Instead of only keyframing the character’s position before and after standing, I should include additional in-betweens. For more information on keyframes and in-betweens, please refer to the Blog from Week 1. By incorporating more in-betweens, the animation will have greater extensions, resulting in smoother motion.

Outcome of Changes and Spline Animation

Categories
3D Computer Animation Fundamental immersion

Week 11: Final Polish

Project Progress

Animation

I have been working on completing the animation in Unreal Engine (UE), though there are still several aspects that require refinement. Specifically, the movements of the fish, including spinning, swimming, eye rotation, and fin movement, need further adjustments. The shark animation, in particular, presents challenges as its movements appear slightly laggy, with certain sequences exhibiting unnatural or awkward behavior.

Enhancing Visual Coherence in UE

Additionally, I am considering modifying the color of the shark. Its current color scheme does not harmonize well with the surrounding environment, and this change aims to enhance visual coherence and overall aesthetic appeal.

Realigning the Narrative: Refining Story and Animation Adjustments

An interesting realization emerged after reviewing the current version of my animation: the storyline has inadvertently diverged from my original concept. Initially, the narrative aimed to depict a fish venturing into a new world, grappling with its fear of unfamiliar fish, and ultimately overcoming this fear to form a friendship.

However, by replacing the “stranger fish” with a shark, the story’s tone shifted significantly. The shark’s behavior now suggests a predatory pursuit, emphasizing a chase rather than the fish’s journey of overcoming internal fears. This adjustment has unintentionally altered the focus of the narrative.

To address this, I have decided to modify the ending slightly. By incorporating a friendly smile and wave from the shark, I aim to realign the story with the original theme of overcoming fear and fostering connection. Although the animation for this adjustment is currently somewhat laggy, I plan to refine and smooth it in the next stages of development.

Progress on the Cape

For the final step of my animation, I needed to incorporate a transparent cape for the fish. Initially, I attempted to create this effect in Unreal Engine (UE), but I encountered difficulties in editing it within the Sequencer, which hindered my ability to synchronize it with the animation. As a result, I decided to use nCloth in Maya to simulate the cape. Afterward, I exported the cape to UE using a process similar to the one I used for transferring the animations of the fish and shark. This involved first exporting the cape as a skeletal mesh without animation from Maya and importing it into UE. Then, I imported the version with animation by referencing the same skeletal mesh.

Rendering

During my experimentation with rendering, I tested various settings, including 4K and 16K resolutions, and explored options such as the “Game Override” setting to evaluate performance. I was particularly impressed by Unreal Engine’s rendering efficiency. It completed the rendering of a 30-second animation within a few minutes, even at higher resolutions. This speed is remarkable compared to Maya, which, despite utilizing a network of 10 computers simultaneously, can require 5–6 hours or even an entire day for a similar task. Reflecting on my undergraduate studies in Hong Kong, I recall spending entire nights in the computer lab waiting for renders to finish. The efficiency of Unreal Engine is truly transformative in comparison.

Categories
3D Computer Animation Fundamental animation

Week 10: Body Mechanics Polish

Previous planning for Body Mechanics

After reflecting on the planning process for body mechanics last week, I identified several key aspects that require careful attention. Additionally, considering the complexity of the animation and the need for thorough testing, I have decided to focus on animating a body mechanics sequence involving a character yawning and transitioning to a standing position.

(1) Final Frame: Standing Upright

Ensure that the final frame of the animation depicts the character standing upright, with a balanced posture. Avoid any forward lean that might suggest the character is about to lose balance and fall. Additionally, incorporate a visible weight shift to convey the upward transfer of the body’s mass during the transition to a standing position.

(2) Use the Perspective View

The perspective view refers to the angle between the front and side views, providing a more dynamic representation of the object. Below is an example showcasing different views of the helicopter model.

Fig 1. Front view from Maya Help website

Fig 2. Side view from Maya Help website

Fig 3. Perspective view from Polycount website

In the image above, both the front and side views of the model are visible simultaneously, providing a 45-degree angle of the model. This view is referred to as the perspective view.

Fig 4. Perspective view from Maya Help website

The image above is one of the tests I conducted last week. Although it is in perspective view, the side view of the model is barely visible. To improve this, it would be better to rotate the camera slightly to the left to achieve a more optimal perspective view.

This yawning stand-up animation serves as a better example of the perspective view.

(3) If the Arms Are Too Difficult to Animate, Hide the Arms and Focus on the Body

Animating in detail can be quite challenging, as the complexity increases with each additional body part involved. Therefore, I will focus on animating the body and legs of the model first. If time allows, I will also animate the character’s arms.

(4) Change the Starting Pose for a Smoother Animation

At the beginning of the animation, the reference shows different starting poses. While the first pose may be more visually appealing, animating the transition from the hand below the chin to placing it on the lap could be quite challenging. Therefore, starting the animation with both hands resting on the lap might be a more practical and effective option.

Blocking Animation of My Yawning Stand-Up Animation

Categories
3D Computer Animation Fundamental immersion

Week 10: Post Processing& Rendering in UE

Lesson Today

In today’s lesson, we explored several post-processing techniques that can be used to enhance the final render:

1. Post-Processing Adjustments

  • Temperature: Adjusting the warmth or coolness of the scene.
  • Color Grading: Modifying the overall color tone to achieve the desired look.
  • Shadowing: Refining shadows for a more realistic appearance.
  • Bloom: Adding a glow effect, particularly useful when light sources such as the sun are present in the scene.
  • Lens Flare: Visible when strong light sources (like the sun) are included in the scene.
  • Grain: Applied to fix noise issues in the render.
    • Plugins can be used for de-noising to enhance render quality.

2. Rendering Settings

  • Console Commands (CMD): These commands allow you to frequently change render settings.
    • Example: To render a high-resolution shot, use the command cm: highresshot 1920 x 1080.
  • Photoshop for Color Fixing: Once the screenshot is captured, you can use Photoshop to fine-tune the color settings:
    • Steps:
      1. Import the screenshot into Photoshop.
      2. Adjust the colors using a layer mask (e.g., saturation, contrast).
      3. After completing the adjustments, apply the layer mask to the LUT (Look-Up Table).
      4. Export the LUT as a PNG for further use in the project.

3. Render Quality Settings

  • Spatial Sample Count & Temporal Sample Count (default value: 8):
    • Spatial Sample Count: Increased for environments or when the camera is static but the character moves quickly. Higher values improve the rendering quality but also increase render time.
    • Temporal Sample Count: Increased for scenes with character movement to reduce motion blur and improve smoothness. This can be adjusted via the command r.TemporalAASamples 464.
  • Render Warm-up Count: This setting allows the system time to prepare before the actual rendering starts, improving overall render quality.
  • Game Overrides: Console variables are used to control various settings, such as motion blur quality or other visual aspects. These variables allow you to define percentage values for specific features.

4. Additional Render Settings

  • Cinematic Settings: Setting everything to Cinematic results in higher rendering quality.
    • This can be done under the Scalability Settings in the rendering menu.
  • Frame Rate: Adjust the frame rate within the settings menu for smoother animation.
  • Render Output Location: You can change the location where the render output is saved, ensuring your files are organized.

5. Rendering Locally

  • For efficiency and speed, it is recommended to render locally rather than over the network.

Project Progress

Animation

As previously mentioned, I attempted to animate using Unreal Engine due to issues encountered when attempting to convert the file from Maya to Unreal Engine.

Challenges in Unreal Engine Animation and Transitioning Back to Maya

The video above illustrates the challenges I faced while working with Unreal Engine, as I was only able to produce a result like this.

I encountered several constraints and difficulties when animating in Unreal Engine. Given my limited familiarity with the software, I struggled to locate certain settings and functions, such as animating the fish’s tail within a hierarchy or controlling the graph editor. Additionally, there is a lack of comprehensive animation tutorials for Unreal Engine in comparison to Maya. As a result, I decided to revert to animating in Maya and then converting the files for use in Unreal Engine.

I attempted to select the skeleton root of the fish rig in Maya, bake the animation, and then export the animations to Unreal Engine.


Although further modifications are still required, the result appears improved compared to the previous version.

Shark Model

This image has an empty alt attribute; its file name is Screenshot-2024-11-25-at-3.47.05-PM.png

Shark: Choice of Colour

I modeled a new shark and performed initial texture tests to evaluate its appearance and fit with the design. Further refinements are planned based on testing outcomes.

Initially, I textured the shark in purple to match the background environment. However, this made it difficult to differentiate the shark from the background, reducing its visibility.

I experimented with various brush strokes in Procreate and found one particularly interesting. However, the result did not align with the overall animation style or the appearance of the other fish.

I opted for a plain texture in a lighter blue, ensuring better contrast with the environment in Unreal Engine.

Categories
3D Computer Animation Fundamental animation

Week 9: Body Mechanics

Body Mechanics

This week’s lesson focuses on Body Mechanics, which refers to the study of how the body moves. Below are some examples:

Although different characters exhibit unique movements, they must all adhere to certain principles to ensure the animation appears smooth and logical. These principles are collectively referred to as mechanics. Effective mechanics ensure that a character’s weight shifts, poses, positions, pacing, and timing are executed appropriately and cohesively.

Referencing

In today’s lesson, we also discussed the concept of Referencing. Although I had previously filmed references of myself for the Weight Shift homework, I am still not entirely familiar with how it works in practice. During the lesson, we received valuable tips from a video, which emphasized the importance of maintaining the same camera angle for both the reference footage and the animation. This consistency allows for more effective utilization of the reference when creating the animation.

For example, in the 2D blocking animation I created (shown on the right), the animation uses the exact same angle as the reference on the left—specifically, a perspective view positioned between a front and side view. This alignment ensures that I can accurately reference each pose step by step, without needing to imagine poses that might otherwise be obscured.

In other words, if I were to use a side-view reference for my animation, I would need to visualize certain poses that are not clearly visible. For instance, I would have to imagine the exact placement of the character’s hands when she stretches them.

In addition to the reference mentioned above, I conducted further testing with references, assisted by Technician Roos.

Front and Side views of Standing Up from a Chair

Perspective View of Standing Sp from a Chair

Front and Side Views of Jumping Over Obstacles

2D Blocking animation and Testing

I began by sketching the key poses from the reference to create the blocking for the 2D animation. Then, I used a polygon to roughly animate the character’s body in Maya. I plan to further refine this by incorporating the character into the polygonal body and using it as a reference for the timing and pacing when I begin my actual 3D animation.

Categories
3D Computer Animation Fundamental animation

Week 8: Further Polishing Walk Cycle

Previous Walk Cycle

Based on the feedback received for my previous walk cycle assignment, I must incorporate the following adjustments.

Issues and Explanation

(Front View)

For the front view, it is essential to ensure that the body of the “Walker” model follows a motion resembling the shape of the number eight to maintain a proper Arc.

Arcs

As outlined in Week 1’s blog, Arcs are a fundamental aspect of most animations.

Figure-1: I Want to be…an Animator Website

from the movement of the hands to the table,

Figure-2: I Want to be…an Animator Website

or the movement of the legs from the center to the right,

Figure-3: I Want to be…an Animator Website

or even the swinging motion of an arm, these movements often follow arcs. Animating along arcs results in smoother and more realistic motion. The image above illustrates arm movement forming a shape similar to the number eight, which I aim to replicate in my animation.

I attempted to reference this woman’s hand movement to observe whether a “figure-eight” arc is achieved.

Figure-4: I Want to be…an Animator Website

Furthermore, the nature of arcs also varies depending on the amount of force applied to the movement.

(Side View)

I also need to address the issue of the heel not maintaining the same position as in the previous frame. If left uncorrected, this could give the impression that the model’s foot is sliding, potentially making it appear as though the model is about to trip.

Additionally, there was an issue with Knee Popping in my animation.

Knee Popping

Video-1: Alexander Williams(How to Fix Knee Pops in a Walk Cycle)

This occurs when the knee bends in one frame and then abruptly straightens and extends in the next, creating a jarring, unnatural effect in the animation. To resolve this, it is important to ensure that the knee maintains a slight bend throughout the animation, preventing any sudden or harsh transitions.

Another issue with my animation is that the foot lifts off the floor too quickly. In a natural walk, the foot remains in contact with the ground for a bit longer before lifting, with the toe staying in contact longer than the heel. Therefore, the foot in this segment of the animation should be positioned as indicated by the blue line.

Further Polish Result

In the revised version, I resolved the previously identified issues and incorporated additional refinements to enhance the animation’s fluidity. For instance, when the heel makes contact with the ground, the entire foot does not touch the surface simultaneously in the subsequent frame. Instead, the heel contacts first, followed by the toes, creating a subtle flipping motion that adds a slightly exaggerated, cartoon-like effect to the walk.

Nevertheless, some instances of knee popping remain problematic. For example, as the foot touches the ground, the knee transitions abruptly from a straight position to a bent one. I am uncertain whether this appears unnatural and intend to seek clarification from my tutor.

Categories
3D Computer Animation Fundamental immersion

Week 8: Dynamic Lighting UE

Lesson Today

In today’s lesson, we explored various lighting techniques in Unreal Engine (UE), alongside some modeling methods.

Although I have previously studied lighting in my prior courses, I continue to find it fascinating, as it encompasses more than just the light we perceive. When creating or adjusting lighting, several factors must be considered, including:

  • Shadowing (with softer angles)
  • Ray tracing
  • Reflections
  • Source angles
  • Direct lighting & Indirect lighting
  • Bounced light

Each of these elements plays a critical role in achieving a realistic and dynamic lighting environment.

Project Progress

Environment

I tried to modify the colours of the environment to make it look more vibrant.

Before

After

Animation

I did some brief animating in UE specially for position and timing. All the details will be fixed afterward.

Categories
3D Computer Animation Fundamental immersion

Week 7: UE catchup

Lesson Today

Since today was designated for feedback, I implemented revisions based on my tutor’s guidance and recommendations.

Project Progress

The changes and progress of my project are outlined as follows.

Model and Rigging for the other character

For the secondary fish interacting with the main character, I conducted online research to determine suitable fish models. Initially, I aimed to select more realistic fish models to contrast with the main character. This distinction helps convey to the audience that the main fish, feeling different from the others, is anxious about its unfamiliar environment. The following are a few models I have considered.

However, even if the other fish have different styles or color schemes from the main character, their similar species may make it challenging to convey the protagonist’s fear effectively, especially within a 30-second animation. Therefore, I decided to use a shark as the other character to communicate this idea more directly.

Animation

I tested the timing and positioning of the fish in Maya. To assist with this, I saved the UE environment as an FBX file and imported it into Maya, using it as a reference for the distance the fish need to move and the appropriate scaling.

However, I encountered several issues:

  1. I struggled to achieve accurate sizing and positioning for the fish.
    • Despite adjustments, the camera angle in Maya remains noticeably different from the one in UE.

2. I was unable to import the animation from Maya into UE.

  • There seem to be issues with the rig or model that prevent me from importing the fish into UE (with the rig and animation separately), as it repeatedly flags naming issues.

  • I attempted several methods in Maya, such as combining meshes, deleting history, adjusting skeleton hierarchy naming or namespaces, and modifying various settings. Despite these efforts, the animation still cannot be imported into UE.

After multiple attempts to resolve this issue without success, I decided to create the animations directly in UE. I am now in the process of re-rigging the fish within UE.

Categories
3D Computer Animation Fundamental animation

Week 7: Polishing my Walk cycle

Walk Cycle(Blocking)

After receiving feedback on my previous walk cycle assignment, I need to implement the following changes.

Fig-1: Animator’s Survival Kit P.108

Before addressing the necessary adjustments, it is essential to review the content covered in last week’s blog. Specifically, we examined the different poses that constitute a walk cycle, including:

  1. Contact
  2. Down
  3. Pass Pos
  4. Up
  5. Contact

In an effective walk cycle, it is essential to maintain a well-defined curve.

Fig-1: Animator’s Survival Kit P.103

As illustrated in this screenshot from the book, curves are visible above the model’s head and at the feet. This imaginary curve should remain consistent throughout the walk cycle to ensure smooth and natural motion.

In my previously submitted assignment, the Contact Poses and Down Poses did not descend sufficiently to maintain a consistent curve. Additionally, the poses were not adequately spaced, resulting in a lack of clarity. Addressing these two issues will be my primary focus for improvement.

Contact Poses

Down Poses

Another issue with my blocking animation is that the feet are either not fully in contact with the floor or are sinking below it, which creates an unnatural appearance. To resolve this, I adjusted the foot positioning to ensure proper contact with the ground.

Walk Cycle(Spline)

After addressing the issues mentioned above, I made additional refinements, such as ensuring the feet remained stable and did not move in unintended directions. The result of these adjustments is as follows.