VR Problem Solving
SIT283 Development for Virtual Reality - Assessment 1
Each week during the class/practical sessions you will be asked to undertake a number of activities to support your learning in this unit. You are expected to prepare for these activities by attempting the exercises prior to the practical sessions. You are expected to complete these activities yourself as you will not achieve the learning outcomes for this unit by directly copying solutions from peers or external resources. A number of these will be designated as problem solving challenges which will be assessed towards this particular assessment task.
The learning outcomes that you are expected to demonstrate with your solutions include:
ULO1: Create functional solutions to typical VR/AR problems within a VR development environment. Achieve this outcome when problem solving by considering which VR/AR problem category you are dealing with, and outline your problem solving strategy in the form of a series of steps, and diagram such as a flow chart. This representation will assist your teacher in helping you develop and debug your solution, and is a recommended strategy for novice programmers learning to translate problem solutions into working scripts.
ULO3: Represent and manipulate information required for VR/AR systems using appropriate algorithms and data structures. Scripts used in VR/AR systems do not manipulate reality directly but instead modify the informational representation of a virtual world. Achieve this outcome by utilizing the scene graph representation of the virtual world, identifying which fields are relevant to the particular problem and describe the sequence describing the order in which values must be changed in response to particular events.
In addition you should consider how your solution contributes to ULO2: Apply existing design patterns to solve VR development problems, by making use of the patterns identified, described and demonstrated during classes.
These tasks are marked during class time, as they often require some demonstration of a solution using equipment located in the virtual reality laboratory. You will need to demonstrate your solution and be able to answer questions about the solution, including being able to correctly make minor modifications to scripting elements. Please alert your teacher when you have an assessable element ready for marking. Once grading is complete please verify that your mark is correctly recorded against your name on the mark sheet.
We also recommend that you collate all the outcomes of these activities in a form that you can use in a professional portfolio. Such a portfolio will be a requirement for undertaking work placements so you should collect and present this evidence of your abilities as you proceed through this and related units. The form of evidence may be specific to the task, but you should consider collecting videos, images, screenshots, screen-recordings, testimonials, documents prepared and the electronic files required to recreate the result. Acknowledge any materials that were provided but also be clear on the value that you have added. Occasionally teaching staff may ask your permission to add particularly outstanding or interesting work that you have done to the social media channels used to promote the course.
Submission targets exist in Weeks 2, 4, 5, 7 and 9. Please submit weekly exercises in the class on or before the week indicated in the table below:
Week in which the exercise is started Last week of submission
1 Week 2
2 Week 4
3 Week 4
4 Week 5
5 Week 7
6 Week 7
7 Week 9
8 Week 9
9 Week 9
Format of submission
Each exercise should be demonstrated during a class session on or before the indicated due date as per the table above. The demonstration should show how the solution meets or exceeds the requirements of the exercise, and the student should be able to describe the key steps of the process during this demonstration, and answer any questions posed to ensure that they have achieved the desired learning outcome.
Should an in-class demonstration not be feasible for a reason agreed on by both student and teacher then an online submission option will be made available via a CloudDeakin assignment dropbox. Since there will not be the opportunity for interaction this form of submission needs to contain sufficient detail to validate that it demonstrates the required learning.
Such a submission should contain:
• The project file (all materials required to build, run and deploy the solution).
• Instructions to follow in order for the marker to test the solution. This should include details of any special steps required, or controls to be used.
• A document containing:
1. A presentation of the relevant, commented and well-structured code used to solve the challenge (summarize the relevant portions in an order which matches the description).
2. Evidence that the solution has been tested and works. Screenshots can be used, with captions explaining the significance of the material presented.
3. Details of any materials used that were not developed by the student. This needs to be very specific.
• Any further material specified explicitly in the task description.
Demonstration, verbal discussion, and marking in class. You may ask for formative feedback in class prior to the deadline, or to have a previously marked submission remarked (subject to deadlines). Given the limited class time, priority will be given to first time submissions.
Individual submissions. Discussions with peers and teaching are encouraged but solutions must be individually developed. Problem solving solutions can take many forms and it is considered unusual to achieve exactly the same solution discovered by others. When exact duplicates or clear derivatives are encountered by markers, credit will be given for the first received and all other submissions receive 0 marks i.e. share your ideas, not your code.
Solutions should acknowledge all sources of assistance, and formally cite and reference any external materials used. This includes any material sourced from others, including fellow members of the class.
Students are required to prepare solutions to the designated weekly challenge tasks. Students are encouraged to discuss their solutions with teaching staff for formative assessment and feedback. These tasks will need to be submitted to teaching staff for summative assessment prior to the deadline associated with each task.
Please see the challenge tasks listed for each week. Note that only challenge tasks designated as required for assessment need be submitted for marking. Teaching staff will be happy to provide formative feedback on the other tasks.
One or more of the following criteria will be applied as determined by the context of the particular problem solving challenge. In the interest of efficient grading the rubric may be used implicitly during the assessment discussion but students are encouraged to request explicit grading relative to rubric criteria at the time of assessment should they desire.
Criteria ULO GLO Inadequate 0 Minimal 1-2 Adequate
4 Excellent 5
A: Functional solution that achieves the task requirements. 1 1,5 No submission, non-working solution, or completely ignores task requirements. Student is unable to find appropriate script, explain
demonstrate effectively or answer questions. Solution only works in a subset of scenarios. Student is unable to explain solution accurately, or describe how solution would be adapted to minor changes in problem context. Solution functional but restricted in usefulness (for example, using hardcoded values rather than configurable parameters, use of nonextensible or robust
problem solving strategy). Solution works adequately for demonstration purposes, and student can explain how this would be extended to apply in a
application. Scripting style is readable and maintainable. Solution works, elegantly achieves requirements, and is appropriate for use in a VR/AR environment. Problem solving skills clearly
demonstrated through wellstructured and
script, or supporting documentation. Evidence of testing of edge cases or of extensions
but in the spirit of the exercise.
B: Solution demonstrates professional software development practices. 1,3 1,4,5 No submission, unreadable, or indecipherable. Submission is not design for readability: poor indenting, variable naming, and inconsistent layout. Submission is readable, and uses appropriate naming for readability. External and internal parameters are used to support code extensibility. Solution is neatly laid out and readable. Problem is decomposed into appropriate functions, using language features for
portability, robustness and extensibility. Solution well structured (semantically and
syntactically), contains meaningful comments, documentation and coding styles. Shows other exemplary practices appropriate to the task.
C: Solution demonstrates practices appropriate to the creation of virtual and 1 1,5 No submission, solution that is non-functional, or using practices explicitly discouraged. Approach
used is only partially functional or is not extensible to other VR/AR scenarios. Not effectively Information elements appropriate to the VR/AR environment description are manipulated, but in an adhoc or non- Patterns covered for VR/AR system use are applied and
explicitly mentioned in comments and discussion. Solution would be usable in a VR/AR system. Solution demonstrates
appropriate to this area.
reality software. manipulating information or relying on side-effects. systematic manner.
D: Solution demonstrates use of appropriate data structures and
algorithms for VR/AR systems. 3 1,4,5 No submission, no consideration of algorithmic process or data representation. Partial solution constrained by ineffective use of data types or inappropriate use of scene graph elements. Not using basic flow of control operations correctly. Data representation and algorithmic manipulation at a primitive
level (i.e. not using robust or wellintegrated elements) but sufficient to achieve a workable solution. Evidence of data representation and algorithmic
the individual problem context. Algorithms and data structures employed would be acceptable in a VR/AR system.
Ability to analyze and generate
solutions is demonstrated.