SIT756: Development For Virtual Reality VR Development Challenge Note that you do not need to complete previous assessment task before starting work on this challenge. You should start planning your solution from the first week of the unit, firming up your ideas and integrating components as we cover key concepts in each week of the unit. This will maximize your opportunities to get suggestions and feedback from the teaching staff prior to submission. This challenge is an opportunity to integrate the various skills learned throughout the unit. You will develop a virtual reality experience based around one of the concept areas that will be provided to use. Your solution must incorporate the elements listed below in this document in order to meet all of the criteria for assessment. This is a significant element that should be incorporated into your professional portfolio. The material may also be demonstrated and shared with your peers and industry representatives at showcase sessions at the end of trimester. Submission Details Due Date End of week 10. Format of submission Each submission should contain:  The project file (a zip archive containing all of the resources, scripts and other assets required to build, deploy and test your solution).  A document containing: 1. A human readable description of the approach taken. This section should also include any discussion relevant to justifying your choice of solution strategy. 2. A presentation of the relevant, commented and well-structured code used to solve the challenge. While the complete source code should be included in your project file, this presentation will present the most significant portions in-line with the steps of the description provided. 3. Evidence that the solution has been tested and works. Screenshots can be used, with captions explaining the significance of the material presented. 4. Any special instructions required to run the solution (such as details of controls used).  Any further material specified explicitly in the task description. Submission method Submit materials to the appropriate unit site assignment dropbox. Working arrangements Individual submissions. Discussions with peers and teaching are encouraged but solutions must be individually developed. Solutions should acknowledge all sources of assistance, and formally cite and reference any external materials used. Task description Select one of the concepts provided in the concept document provided and build a virtual reality application to achieve one or more of the goals stated. Your solution needs to incorporate a minimum set of functionality as per the list below in order to demonstrate achievement of the learning outcomes for this unit. Concepts from other VR and AR units can be incorporated to further improve the quality of the resulting product and increase the likelihood that your skills will be valued by our external partners and stakeholders. Discuss your plans with the teaching staff, particularly if you need any clarification on whether a feature you have planned meets the required level of functionality. This task is intended to allow you to practice your development skills in creating VR applications. You would need to augmented existing third party components or built-in facilities to provide additional functionality if you wish to claim those elements towards satisfying requirements. You may freely use (subject to valid licensing and acknowledging sources) such components, or third party art assets, to support your applications in ways that you do not designate for assessment purposes. Required functionality: 1. Scripts that provide various form of control: a. Some form of movement involving change of position of one or more objects (which can include the viewer). Simple forms of this include movement along one of the principle axes. More sophisticated movement would follow a curve, or respond dynamically to other factors (e.g. cross winds and wind resistance) b. Some form of direction (attitude) control allowing objects to be rotated. Simple forms of this include rotations around a single axis. More sophisticated use involves rotation to track a particular object or person. 2. The application should support a task that involves a sequence of steps that have to be undertaken by the users. The users should be provided with some feedback regarding their progress through a user interface element (in 3D or a 2D HUD). The goal of this requirement is to demonstrate management of state, and transitions between different states. 3. The application should support a tool that allows the user to interact with the environment in some way. An appropriate representation is needed for the tool, and to shows its effects. Control of the tool will involve managing input from an appropriate controller. An example would be a magic wand for teleporting to a particular location, but would ideally be a mechanism unique to the context for which the application is developed. 4. Visual, auditory and other sensory cues need to be provided to give feedback to the user and to increase the value of using a virtual reality solution towards solving these task. This requirement evaluates the mechanisms required to use such media resources. 5. Key parameters of the application must be assessable via a user interface provided to the user while in the virtual environment. There needs to be at least one parameter (such as difficulty level, or speed of interaction) that the user can manipulate and which will have an effect on some clearly identifiable property of the virtual world. 6. Some part of the virtual environment needs to include an autonomous simulation. This may be moving blood cells through a circulatory system in a medical simulation, or having a bath filling with water while showing off real estate. This simulation need not be affected by user behavior, but interaction can be included to achieve a high quality solution. 7. The application needs to include a start screen, with title and author details, a brief overview of the purpose and the controls or controller configuration to be used. The application must have an option to exit back to this start screen and reset the experience. Prepare a report describing your solution to the task, particularly with respect to the VR/AR development aspects of the process. Your report should contain the following sections, corresponding to the assessment criteria in the rubric: 1. List the requirements (as per the above list) and describe how your solution satisfies these. In particular mention the key challenges you encountered and give a description of strategies or design patterns that are used to address these challenges. 2. You are advised to undertake further research into ways to deal with any challenges identified. Mention alternative approaches you discovered and considered, and how you adapted any potential solutions discovered to work within the development environment chosen. 3. Describe briefly how your solution is implemented, with detail on any significant contributions that you have provided (screenshots and code fragments can be included here). 4. Include material showing the application in action (screenshots, videos) and discuss how you evaluated the implementation. This includes showing that the applications works correctly, but also that it achieves its goal of providing training (provide feedback when testing with other people). Marking Rubric Applied to each of the task requirements: Criteria ULO GLO Inadequate 0 Minimal 1-2 Adequate 3 Good 4 Excellent 5 Challenges identified and solutions proposed. 2 4,5 No submission, no requirements/ch allenges Most of the significant challenges in developing the identified, or no algorithm/data structures presented as a design pattern. solution are explicitly identified. Plausible strategies for addressing these using techniques covered in the unit are described. Research into solutions to support VR/AR component development 2 3 No submission, mechanical reporting of externally sourced material, material provided out of context. Evidence of identifying reputable sources of information and correctly extracting relevant points. Processes adapted to the problem context. Explicit evaluation of alternative strategies 2, 3 1,4, 5 No submission. Invalid or inconsistent arguments presented Critical thinking and problem solving demonstrated through reasoned consideration of alternatives. Quality of implementatio n (repeated for each of the 7 requirements listed) 1,2, 3 1 No submission, non-functional solution or implementation does not correspond with reported design. Effective solution implemented, using clean and well documented code, which efficiently uses the available facilities. Quality of evaluation 1,2 1,4, 5 No submission, no attempt to validate solution. Requirements of problem task are systematically validated. The application is shown to work, meet its goals, and to provide a usable experience.