讲解 data编程、辅导 Python/c++程序
Assessment Task 3: 3D Animation
Introduction
For this assignment you will create a short animation to showcase you knowledge of animation techniques, lighting and textures.
Assessment Details
Due Date: Friday, 1st November, 11:55pm
Weight: 50%
This assignment consists of four tasks. All students must complete tasks 1, 2; all students will also complete either task 3 or task 4. There will be no additional marks for completing both tasks 3 and 4. Task 3 is intended for students who are more technically minded, while task 4 is for more creative students.
Task 1: Animated Movie 50%
For this task you will create a short animated movie. The movie should contain approximately 30 seconds of animation. Extended periods with little animation will not count towards the 30 seconds (if you need periods like this for dramatic effect, extend the overall length of the movie).
The specific requirements for the movie are:
30 seconds of animation using procedural (script-based) animation techniques.
Camera positioning and movement must be automated - no user input.
Tells a “story” (not just random animation).
Includes one or more sweep objects. This object may be the same as used in Task 1 from Assignment 1 (or an improved version) or a new object of similar complexity.
Includes one or more animated composites. This object may be the same as used in Task 2 from Assignment 1 (or an improved version) or a new object of similar complexity.
Your animation may include any other objects and animations (e.g. objects and animations constructed using 3D modelling software), but these will not contribute to your marks. In other words, only your C# scripts will be marked.
Put your animation in a Unity scene called Movie.
Task 2: Textured Object 25%
For this task you must create a textured object. You may use any image for the texture, or create the image yourself. This object does not have to be included in the movie (for example, you may feel that the texture spoils the aesthetics of the movie). If the object is not included in the Movie scene, make a new Unity scene called Extras that contains the object.
The specific requirements for the textured object are:
The object should consist of at least six polygons that are not co-planar (i.e. more complex than a cube).
Texture coordinates must be calculated manually or procedurally in your object creation script. This should be new code, not using one of the existing texture coordinate methods or cylinder code.
The texture(s) must contain recognisable details, not just a plain colour, or “noise”, or a repeating pattern. This will enable the marker to determine the accuracy of the texture application.
Task 3: Technical Project 25%
For this task you will complete a significant programming/technical project on a topic of your choice. The specifics of your extension should be negotiated with the lecturer. Some examples of extensions that would be considered “significant” are:
Implementation of advanced lighting shaders (vertex and/or fragment shaders, not Unity surface shaders etc.).
Other shader-based effect.
Mesh deformation (e.g. skinning or mesh animation).
Animated textures.
Inverse kinematics or other animation technique.
This new feature may be used in your movie, but it is also recommended that you include a demonstration in your 'extras' scene.
You will find that almost anything you can think to implement has already been done by someone and available on the Unity Asset Store or described in an online tutorial. You may use these for inspiration, but the submitted code should be largely your own work. The first thing that the marker will do is check the asset store and online tutorials. In any case, it is usually difficult to find something that does exactly what you want, and a solution that does do exactly what you want is often simpler than a multi-use-case solution.
The purpose of this task is to learn about a new technical graphics and animation technique, not just applying someone else's code. A simpler solution that you have developed yourself to help you understand the technique is preferable to a more impressive solution that does not demonstrate what you have learned.
You should discuss your proposed extension with your tutor and or the unit coordinator to ensure that the extension will be achievable and meet requirements. You may use other resources with proper acknowledgement, but it is only your scripts that will contribute to your mark.
Task 4: Extended Movie 25%
This is not an additional movie. Extended movies will be assessed for both Task 1 and Task 4, but it will be assessed differently for each task.
To be assessed for this task, your movie should include approximately 45-60 seconds of animation, plus meet the following additional requirements:
Include at least one additional animated composite. This object may be the same as used in Task 5 in Assignment 1 (or an improved version) or a new object of similar complexity.
Must have a sound track (music and/or sound effects).
The extended movie shouldn't just be longer it also needs to be 'better'. It should showcase not just your technical ability to animate a scene, but also your creative ability to use lighting, camera work, animation, scene composition, atmospheric effects to add emotion and feeling to your movie.
It is entirely possible that your extended movie will receive a good mark for Task 1 (because it is technically correct), but a poor mark for Task 4.
Submission
Your main submission should be via GitHub. Ensure that your repository is always private and that the unit coordinator is added as a contributor. Make sure you use sensible commit comments. Make sure that you don't do any commits after the due date.
In addition, you should submit a brief document on MyLO that contains a link to your GitHub repository and also briefly describes your contributions for each task.
Assignment Individuality
You are encouraged to use relevant code from lectures or tutorials as the starting point for any new classes or functions that you create, but you must clearly acknowledge the origin of such code (in the comments). Similarly, if you find code-snippets or other helpful information on-line, this also needs to be acknowledged in the comments.
In addition, AI programming tools such as ChatGPT or Copilot may be used, but you must clearly identify blocks of code that have been developed with the use of these tools.
However, this is an individual assignment, which should otherwise be your own individual work. It is expected that you will work with and get (limited) help from other students, but may not use any part of their code or the code of previous students in your solution.
Any work that is not your own and not properly acknowledged is a breach of academic integrity and will be prosecuted as such.
Please note that enabling another student by sharing your work in any way is also a breach of academic integrity and typically attracts similar penalties. Working online can present particular problems in this regard. For example, you might only show your code to another student for a few seconds in an online chat, but that is long enough for the other student to take a screenshot of your code!
Assessment
The assignment is worth 50% of the unit mark.
All testing of code will be done using Unity on Windows. Your code will be tested both by running the scenes that you submit and by viewing your code.
This assignment will be used to assess your attainment of the following learning outcomes:
LO1 Apply programming paradigms for storing and displaying graphical images efficiently.
LO2 Manipulate graphics data using mathematics techniques.
LO3 Apply lighting and shading techniques to achieve simple effects.
Please see the marking rubric for more detail.
UTAS Logo