web3d代写: Web3D Assignment 1

Web3D Assignment 1.

Due Date: 9pm Friday April 6th 2018

Hoppy the Frog!


Side View

Top View

Rear View

Isometric View

Textured Frog

Simple Animated Frog

Slightly More Complex Animated Frog

Clarifications and Changes

  • 19/3/2018: Added textured frog picture and link to texture.
  • 27/3/2018: Clarified submission instructions regarding files and pairs.

Overview

In this assignment, you will write an X3D scene embedded in an html file using the X3Dom library to draw a hierarchical model of a frog model made up of simple polygon mesh shapes: octahedrons (polyhedron with 8 faces, also known simply as diamonds) for legs and head, a decahedron (polyhedron with 10 faces) for the body, a simple triangle for the feet and spheres for the eyes. The model will need to perform a jumping animation.

The assigment may be done as individuals, or in pairs.

The tutorials will teach the fundamentals required in construction of the assignment and it is recommended that you follow the tutorial exercises. This assignment counts for 30% of your final grade for this course.

Later assignments in this course build on the ideas in this assignment. Performing well in this assignment will make future assignments easier to understand and complete.

Decahedron and Octahedron Shapes

The suggested dimensions for the decahedron and octahedron shapes are shown in the diagrams (if not working in Firefox, try Chromium)

decahedron.svg
octahedron.svg

The decahedron is more specifically a pentagonal bipyramid and the octahedron a square bipyramid (or just a “diamond”).

Hierarchy

Use the following hierarchy in your model. Note that there is four parts to the rear legs, and no neck. You may add further joints and segments (shapes) if you wish.

hierarchy.svg

Details

  • The figure should consist of a torso, a head with eyes, four legs with the rear legs having four segments and the front legs having three segments. The torso is a decacahedron, the legs and head are made from octahedrons and the front feet and rear toes from a triangle.
  • You will create polygon mesh shapes for the body segments using the IndexedFaceSet X3D node. To show the joints, sometimes also called pivot points, transform nodes should include a set of axes as one of their children. An optional extra is to provide the ability to enable/disable rendering them using e.g. a touch sensor node.
  • You will create a semi-transparent plane on which the frog jumps back and forth. Optionally you will create a pond for the turtle and water using planes and/or an indexed face set, and possibly round water lily leaves for the frog to jump on and stay afloat.
  • The X3D ‘USE’ and ‘DEF’ elements should be applied to minimise duplicate markup/code in the file.
  • Proper transforms including scale/rotation/translation should be applied to minimise the number of IndexedFaceSets that are defined.
  • The figure should be properly constructed according to a hierarchy/scene graph as shown in the diagram above. Each joint will require a transform node, and should have a set of axes.
  • Proper colouring should be applied using the Appearance and Material X3D elements.
  • A texture should be applied to the torso. The texture is here. Note: if using the chrome/chromium browser extra command line arguments are needed: --allow-file-access-from-files --disable-web-security --user-data-dir (and see the extra information in the texturing tutorial).
  • A simple jumping animation will have the legs moving directly vertically only, and the frogs mouth opening. A better, more complex animation will include the knee, ankle and tarsametarsal (TMT) joints also rotating, and the legs stretching out.
  • Optionally use a touch sensor on the turtle body/shell to start the animation.

These requirements hold for all assignments:

  • The markup/code must be valid X3D (errors/warnings will result in less marks).
  • Your assignment is assessed using recent versions of chrome or firefox and X3DOM, make sure your assignment runs correctly on them.

Due Date and Late Submissions

The assignment deadline is as above. Late submissions receive a 10% per day penalty (calculated hourly on a pro rata basis, starting 9:00am next working day, i.e. Mon). Any assignment not submitted by 9:00pm the next Friday will receive 0 marks.

Submission

Submission will be performed using Canvas. Assignments link in the lefthand navigation bar, then on assignment 1, the submission link shoul show as a red oval.

Instructions:

  • If working in pairs, just one submission. However, make sure both names are in the submission comments, and in the .xhtml file
  • Fewer files is better. For example: (1) if everything works including animation triggered by touch sensor then just one xhtml file. (2) if only static model done then just one xhtml file (3) if started on animation but not really working or no touch sensor then possibly two xhtml files, the static model and the animated model.
  • We (of course) have x3dom, and the texture file, so don’t submit them.

Marking guide

How well features are implemented will determine whether an assignment is in the upper or lower range of its mark.

Note: marking guide is subject to (usually only minor) change

  • PA: Static frog model with torso and limbs displayed as described using indexed face sets for shapes. Water.
  • CR: Use of colour. Reduced code duplication via proper use of ‘USE’ and ‘DEF’ tags. Texture mapping.
  • DI: Basic animation. Touch sensor to control animation.
  • HD: A correctly constructed hierarchy/scene graph. Complex animation including joint rotations. A pond.