ICTGAM508
Develop complex 3-D software for games and interactive media


Application

This unit describes the skills and knowledge required to employ multiple 3-D frameworks or libraries, and build an appropriate graphical user interface (GUI) to develop complex 3-D applications with documentation generated using appropriate tools.

It applies to individuals working as games programmers who support the design, development and programming of 3-D media and digital games as part of a larger development team.

No licensing, legislative or certification requirements apply to this unit at the time of publication.


Elements and Performance Criteria

ELEMENT

PERFORMANCE CRITERIA

Elements describe the essential outcomes.

Performance criteria describe the performance needed to demonstrate achievement of the element.

1. Build complex 3-D applications using multiple frameworks provided or engines

1.1 Employ integrated development environment facilities to include existing 3-D, audio and physics libraries suitable for games or interactive media production

1.2 Configure a 3-D environment compatible with a specified platform by using existing library facilities and appropriate language

1.3 Instantiate virtual objects in a complex 3-D environment

1.4 Import complex pre-constructed models retrieved from persistent storage into a 3-D environment using scripts or library routines

1.5 Use code to animate 3-D objects required by game play

1.6 Use code to handle collisions between objects in a 3-D environment

1.7 Use code to manipulate the texturing and other attributes of models during run-time execution

1.8 Incorporate environmental elements to enhance user experience

1.9 Select and use appropriate exception handling techniques to ensure program stability in a complex 3-D environment that uses multiple libraries

2. Create a complex graphical user interface (GUI) for a 3-D environment

2.1 Employ integrated development environment facilities to include existing 3-D compatible GUI controls suitable for complex games or interactive media production

2.2 Combine predefined GUI elements to create a complex interface for a 3-D environment

2.3 Modify scripts or code to customise existing GUI elements for a complex interface

2.4 Write code that processes events raised by a complex GUI in a 3-D environment

2.5 Use GUI events to modify the configuration of a complex 3-D environment

3. Debug a complex 3-D application

3.1 Use stand-alone debugging tools or tools provided by an integrated development environment to examine variables and trace running code across multiple libraries

3.2 Employ debugging facilities, such as log windows or files to detect logical and coding errors

4. Use documentation tools

4.1 Identify and choose suitable integrated or third-party documentation tools

4.2 Create and maintain code documentation for a complex 3-D project using selected integrated or third-party tools

Evidence of Performance

Evidence of the ability to:

employ multiple 3-D frameworks, engines and libraries

build a complex graphical user interface (GUI) for a 3-D environment

create and maintain code documentation, using appropriate tools.

Note: If a specific volume or frequency is not stated, then evidence must be provided at least once.


Evidence of Knowledge

To complete the unit requirements safely and effectively, the individual must:

provide a detailed explanation of complex 3-D application development

outline debugging techniques

summarise documentation techniques

explain object-oriented 3-D programming concepts

describe object-oriented 3-D programming language

discuss techniques for using a GUI to interact with a user

describe techniques for using multiple games-oriented libraries.


Assessment Conditions

Gather evidence to demonstrate consistent performance in conditions that are safe and replicate the workplace. Noise levels, production flow, interruptions and time variances must be typical of those experienced in the game development field of work, and include access to:

suitable 3-D equipment

software and hardware

technical manuals

existing multiple frameworks, search engines or games-oriented libraries.

Assessors must satisfy NVR/AQTF assessor requirements.


Foundation Skills

This section describes language, literacy, numeracy and employment skills incorporated in the performance criteria that are required for competent performance.

Skill

Performance Criteria

Description

Reading

1.1, 1.4

Interprets and comprehends instructions, briefs, technical and conceptual information, to inform job requirements

Writing

1.2, 1.5, 1.6, 1.7, 2.3, 2.4, 4.2

Writes and customises precise code using specialised language, industry-approved coding techniques, and programming practices

Numeracy

1.5-1.7, 2.3, 2.4

Uses whole numbers, decimals, and percentages when manipulating measurement, scale, ratio, coordinates, colour, shading and other variables

Get the work done

1.1-1.9, 2.1-2.5, 3.1, 3.2, 4.1, 4.2

Plans, organises and completes work according to defined requirements and schedules taking responsibility for decisions, and sequencing tasks to achieve efficient outcomes

Actively sources, analyses and evaluates applications, or tools, with the potential to meet development and coding requirements

Understands the purposes and uses key features of specific digital systems and tools, and operates them effectively to complete complex development tasks

Takes responsibility for data integrity and management


Range Statement

This section specifies different work environments and conditions that may affect performance. Essential operating conditions that may be present (depending on the work situation, needs of the candidate, accessibility of the item, and local industry and regional contexts) are included.

Configure a 3-D environment must include:

device selection

game resolution

screen colour depth

output performance including:

anti-aliasing

level of detail

filtering

caustics and refraction.

Virtual objects must include:

audio managers

cameras

lights

physics managers

viewports.

Animate must include:

animation selection/playback for pre-constructed models

based on user input

driven by code

dynamic camera movement as required by game play.


Sectors

Game development