Florida Department of Education
Curriculum Framework 

Program Title:	Game Development Design
Career Cluster:	Information Technology

AS	
CIP Number	1550041100	
Program Type	College Credit	
Program Length	60 credit hours	
CTSO	PBL	
SOC Codes (all applicable) 	Please see the CIP to SOC Crosswalk located at the link below.	
CTE Program Resources 	http://www.fldoe.org/academics/career-adult-edu/career-tech-edu/program-resources.stml	

Purpose

The purpose of this program is to teach students the fundamentals of Game Development as a viable career option.  The program will also give students an opportunity to learn the basic knowledge in specific fields such as level designers, mobile applications developer, programming, and game designers. Coursework covers aspects of learning multiple programming languages, project management, virtual reality and augmented reality development, and multiple game engines needed for success.

The content includes but is not limited to practical experiences in virtual and augmented reality development, design, storyboarding, development methodologies, essential programming techniques, prototype development, production processes and implementation challenges. Science, Computer Programming, Math, 2D and 3D development are embedded throughout the program to emphasize the relationship between these areas and the field of Simulation and Production.  

The content includes but is not limited to developing 2D and 3D games, scripting, narrative storytelling, storyboarding, basic computer animation skills, problem solving, mobile development, character design, virtual and augmented deployment, game engines, designing and implementing computer animation projects, and producing 2D/3D games in multiple game engines.

Additional Information relevant to this Career and Technical Education (CTE) program is provided at the end of this document.

Program Structure

This program is a planned sequence of instruction consisting of 60 credit hours.

Standards

After successfully completing this program, the student will be able to perform the following:

01.0	Demonstrate an understanding of the game development industry.    
02.0	Identify the tools used in game development.    
03.0	Describe the game development process.    
04.0	Create simple 3D game environments.    
05.0	Analyze the different uses of textures.    
06.0	Design game levels using creation tools and editors.    
07.0	Code, compile, and execute programs.    
08.0	Demonstrate knowledge of object oriented programming and design concepts.
09.0	Design and develop interfaces for games.    
10.0	Embed artificial intelligence (AI) methods and algorithms to create and modify games.    
11.0	Evaluate artificial intelligence (AI) Path Planning.    
12.0	Apply principles of stimulus-response agents.    
13.0	Utilize agent architectures.    
14.0	Create decision-making systems.    
15.0	Apply neural networks.
16.0	Utilize genetic algorithms.    
17.0	Create virtual reality environments.    
18.0	Create a complete working animated game or film.    
19.0	Develop VR/AR Games.   
20.0	Demonstrate an understanding of Game Systems.   

Florida Department of Education
Student Performance Standards

Program Title:	Game Development Design
CIP Number:		1550041100
Program Length:	60 credit hours

At the completion of this program, the student will be able to:	
01.0	Demonstrate an understanding of the game development industry.  The student will be able to:	
01.01	Evaluate game concepts.	
01.02	Compare different game concepts.	
01.03	Compose a game concept document. 	
01.04	Present and justifying the game concept.	
01.05	Identify and compare the different genres of games.	
02.0	Identify the tools used in game development.  The student will be able to:	
02.01	Identify different computer programming languages used for game development.	
02.02	Review different development environments for game development.	
03.0	Describe the game development process.  The student will be able to:	
03.01	Distinguish the different stages of the game development process.	
03.02	Create a generic plan for developing a game.	
04.0	Create simple 3D game environments.  The student will be able to:	
04.01	Reproduce simple objects in different coordinate systems.	
04.02	Manipulate screen coordinates to create new game levels.	
04.03	Convert and export objects and levels between different 3D environments.	
04.04	Create simple shapes and structures that can be exported to games or game editors.	
04.05	Modify an existing level in a game using editing tools.	
04.06	Create a level that can be ported to an existing game engine or editor.	
04.07	Create conditional statements and loops for games.	
04.08	Modify sprites to add simple motion to games.	
04.09	Develop a simple 2D side scrolling game using a game development software kit.	
05.0	Analyze the different uses of textures.  The student will be able to:	
05.01	Create texture maps for objects in games.	
05.02	Modify existing texture maps to work with new designs.	
05.03	Apply new textures for changing the look and feel of existing game levels.	
05.04	Distinguish between the different types of texture mapping.	
06.0	Design game levels using creation tools and editors.  The student will be able to:	
06.01	Distinguish the different level building tools.	
06.02	Examine the game development process and application to help design new tools for building levels.	
06.03	Distinguish the different types of levels in terms of fun factor.	
06.04	Discuss how to decrease and increase the difficulty for players in each type of game level.	
06.05	Create a new level for an existing game that is going to address all the issues of difficulty.	
06.06	Create building blocks for game level editors and existing engines.	
06.07	Create program that will be able to convert and export levels into game engines and level editors.	
06.08	Modify existing items to make them exportable into game engines and level editors.	
07.0	Code, compile, and execute programs.  The student will be able to:	
07.01	Write pseudocode and flow charts. 	
07.02	Apply the techniques of functional decomposition to break a programming design problem into smaller pieces. 	
07.03	Write code documentation.	
07.04	Create programs that use all data types (float points, integers, long, double, Boolean, characters, and strings) and operators. 	
07.05	Create programs that use all existing operators.	
07.06	Explain the properties of a variable, such as its name, value, scope, persistence, and size.	
07.07	Create programs that use if, else if, and else statements to evaluate conditions.	
07.08	Create programs that use logical operators (and, not, or), functions, conditional statements, structured and unstructured data types, and loops.	
07.09	Write programs that use classes, data abstraction, encapsulation and polymorphism. 	
07.10	Test and design tests of software solutions.	
07.11	Debug program code.	
08.0	Demonstrate knowledge of object oriented programming and design concepts.  The student will be able to:	
08.01	Apply principles of object-oriented programming (OOP).	
09.0	Design and develop interfaces for games.  The student will be able to:	
09.01	Analyze existing games and applications for interface usability and intuitiveness.	
09.02	Compare the requirements and limitations of games and application interfaces.	
09.03	Compare the requirements and limitations of PC games and console games interfaces.	
09.04	Use existing libraries to create new interfaces.	
09.05	Create reusable libraries for new interfaces.	
09.06	Create new interfaces for existing applications.	
09.07	Create new interfaces for PC and console games.	
09.08	Analyze existing input devices with respect to usability for different game genres.	
09.09	Analyze the restriction created by using different hardware for input such as, but not limited to: mice, trackballs, joysticks, and game pads.	
09.10	Write small games that use different input interfaces such as: mice, trackballs, joysticks, and game pads.	
09.11	Analyze existing output devices with respect to usability for different game genres.	
09.12	Analyze the restrictions created by using different hardware for output such as, but not limited to: touch screens, 3D glasses, sound, and motion simulation devices.	
09.13	Write small games that use different output interfaces such as: touch screens, 3D glasses, sound, and motion simulation devices.	
09.14	Analyze the programming and interface limitations of the console.	
09.15	Analyze different libraries and development tools for different game consoles.	
09.16	Write code that takes advantage of the console hardware for improving performance.	
09.17	Use existing programming libraries to communicate with hardware.	
09.18	Create new reusable programming libraries and classes for handling hardware input and output.	
09.19	Research past interface hardware.	
09.20	Analyze the failures of past computer input/output hardware.	
09.21	Research current developments in interface hardware.	
09.22	Research trends regarding the future of interfaces and game consoles.	
10.0	Embed artificial intelligence (AI) methods and algorithms to create and modify games.  The student will be able to:	
10.01	Examine the origins of artificial intelligence for games, and the first games to use artificial intelligence.	
10.02	Analyze how AI is used in games.	
10.03	Distinguish the different methods used to create AI for games.	
10.04	Modify existing AI methods for games.	
10.05	Create new AI methods games.	
10.06	Discuss at what level of programming AI starts.	
11.0	Evaluate artificial intelligence (AI) Path Planning.  The student will be able to:	
11.01	Research path planning.	
11.02	Discuss the advantages and disadvantages of path planning.	
11.03	Modify existing path planning code to change the behavior of the game’s computer controlled characters.	
11.04	Enhance existing games by creating computer-controlled characters.	
12.0	Apply principles of stimulus-response agents.  The student will be able to:	
12.01	Modify code for different stimulus-response agent.	
12.02	Create computer-controlled characters using stimulus-response agents.	
12.03	Combine aspects of stimulus-response agents systems with other artificial intelligence methods to create new systems for computer controlled characters.	
12.04	Modify code for different stimulus-response agents.	
12.05	Create computer-controlled characters using stimulus-response agents.	
12.06	Combine aspects of stimulus-response agents systems with other artificial intelligence methods to create new systems for computer controlled characters.	
13.0	Utilize agent architectures.  The student will be able to:	
13.01	Modify code for different agent architectures.	
13.02	Create computer-controlled characters using agent architectures.	
13.03	Combine aspects of agent architectures systems with other AI methods to create new systems for computer controlled characters.	
14.0	Create decision-making systems.  The student will be able to:	
14.01	Modify code for different decision-making systems.	
14.02	Create computer-controlled characters using decision-making systems.	
14.03	Combine aspects of decision-making systems with other AI methods to create new systems for computer controlled characters.	
15.0	Apply neural networks.  The student will be able to:	
15.01	Modify code for artificial neural networks (ANNs).	
15.02	Create computer-controlled characters using ANNs.	
15.03	Combine aspects of neural networks systems with other AI methods to create new systems for computer controlled characters.	
16.0	Utilize genetic algorithms.  The student will be able to:	
16.01	Modify code for genetic algorithms systems.	
16.02	Create computer-controlled characters using genetic algorithms.	
16.03	Combine aspects of genetic algorithms systems with other AI methods to create new systems for computer controlled characters.	
17.0	Create virtual reality environments.  The student will be able to:	
17.01	Modify programs that use different graphics libraries. 	
17.02	Use different graphics libraries in the final project and programming assignments. 	
17.03	Develop libraries to use with 3D software development.	
17.04	Modify existing programs that use sound and music to add realism in game development.  	
17.05	Modify sound systems to add direction and distance to sound effects. 	
17.06	Use sound effects in programming assignments. 	
17.07	Distinguish different sound file formats with respects to quality, and size. 	
17.08	Use sound effects and music in the final project.	
17.09	Modify existing programs that use different types of input devices in game development. 	
17.10	Use different input devices in the final project and programming assignments. 	
17.11	Use forced feedback devices for input. 	
17.12	Summarize papers on the future of input devices.	
17.13	Create 3D transparent objects. 	
17.14	Summarize papers on alpha blending programming methods. 	
17.15	Use transparency or fog in the final project.	
17.16	Distinguish partial systems in terms of their uses such as fire and explosions. 	
17.17	Modify and write programs that use partial systems for special effects. 	
17.18	Apply physics to particle systems for realism.	
17.19	Distinguish different methods for creating shadows. 	
17.20	Experiment with different lighting effects. 	
17.21	Modify 3D programs to include lighting and shadow effects in a 3D world. 	
17.22	Apply light and shadow effects in games to add realism. 	
17.23	Create light sources and shadows in the final project.	
17.24	Modify existing programs that use reflection and refraction. 	
17.25	Develop programs that use light reflection and refraction. 	
17.26	Use light reflection and refraction in the final project.	
17.27	Modify programs that use texture mapping. 	
17.28	Create 3D texture-mapped surfaces.  	
17.29	Use texture mapping in the final project.	
17.30	Modify programs that use collision detection and reaction. 	
17.31	Compare different collision detection algorithms in terms of CPU usage and accuracy. 	
17.32	Use collision detection in the final project. 	
17.33	Discuss advantages of different collision methods.	
17.34	Modify programs that use visible-surface determination. 	
17.35	Apply different algorithms for visible-surface determination to determine their effect on the performance of games and the game engines.	
17.36	Modify programs that use hidden line removal. 	
17.37	Apply different algorithms for hidden line removal to determine their effects on the performance on games and the game engines.	
17.38	Apply basic physics to a 3D game environment. 	
17.39	Create simplified calculations to mimic real life physics. 	
17.40	Manipulate physics functions to be applied to existing data structures that store the 3D world.	
18.0	Create a complete working animated game or film.  The student will be able to:	
18.01	Distinguish game development projects.	
18.02	Discuss case studies on game development projects.	
18.03	Evaluate different types of projects in game development.	
18.04	Create a game proposal document for a game development project.	
18.05	Present and justifying the final completed project to the class.	
18.06	Distinguish different team structures used in game development.	
18.07	Work on a team project to experience a project management environment to develop a game from start to finish. 	
18.08	Discuss case studies on team game development structures.	
18.09	Develop a game in teams from start to finish.	
18.10	Subdivide a game development project into parts.	
18.11	Research different game development processes.	
18.12	Apply one of the existing processes to develop a game from start to finish.	
18.13	Justify the game development process that was chosen for the project.	
18.14	Distinguish the stages of game development.	
18.15	Develop a game from start to end and working through all the stages of game development.	
18.16	Create a fully working game using all the skills gained in the game programming courses.	
18.17	Use all aspects of game programming development including graphics, sound, networking, software analysis, level building and design.	
18.18	Create a timeline, and meeting deadlines on their project.	
18.19	Use professional scheduling tools to communicate with the project team.	
18.20	Prepare progress reports.	
18.21	Use existing code from previous projects and publicly available code.	
18.22	Give credits or request permission to use codes.	
19.0	Develop VR/AR Games. The student will be able to:	
19.01	Examine the origins, history, and future of VR/AR applications for games.	
19.02	Recognize the key milestones in the evolution of Virtual Reality and Augmented Reality.	
19.03	Discuss the advantages and disadvantages of VR/AR applications.	
19.04	Recognize the hardware used to acquire and display VR/AR content	
19.05	Explain the protocols, principals, and techniques that are necessary to design VR/AR games to work on different platforms	
19.06	Evaluate a variety of VR/AR game development topics, including basic game design, layout, and controls.	
19.07	Identify the best-case and worst-case scenarios when producing VR/AR applications	
19.08	Examine the process of how VR/AR applications are designed for a specific end user.	
19.09	Conduct a project management process to complete the development of a VR/AR application	
19.10	Discuss issues of quality assurance, detect application errors, bug fixes, and overall application improvement.	
19.11	Use a game engine to create a cross-platform VR/AR application.	
19.12	Researching different VR/AR platforms.	
19.13	Develop the basics of 3D graphics, how to create objects, and how to lay them out to create a VR/AR environment.	
19.14	Identify devices that can be used to experience VR/AR	
19.15	Identify the key differences between VR/AR.	
19.16	Evaluate why VR is now more successful than it was during its initial conception.	
20.0	Demonstrate an understanding of Game Systems. The student will be able to:	
20.01	Explain the different types of game systems and their effect on gameplay. 	
20.02	Explain the importance of balance in systems.	
20.03	Explain the importance of the metagame to elder players and how balance can be broken over the short term to create better metagaming experiences over the long term	
20.04	Identify the differences between game parameters, rules, and content. 	
20.05	Identify the monetization strategies available for mobile games.	
20.06	Explain how to design for mobile resolutions, touch screen and mobile form factors	
20.07	Explain player progression and game state management in mobile games.	
20.08	Explain the different roles of probability within game systems and why it is in the best interest of the designer to be able to predict the outcomes of player actions.	
20.09	Explain common fallacies associated with probability in games, with a special emphasis on the fallacy of equipartition.	
20.10	Explain independent and related events in probability, and conditional probability.	
20.11	Explain the game core loops and how systems are related to the greater play experience. 	
20.12	Identify different types of systems that exist in games and discussing how these systems affect each other.	
20.13	Identify data from systems and discuss how data can be used to inform balancing and future design.	
20.14	Explain contemporary techniques to use external game analytic APIs to measure pleasure progress and validate game design choices	
20.15	Explain the relationship between balancing parts and balanced game mechanics.	
20.16	Model a game system using probability and discussing the likelihood events will occur given certain conditions.	
20.17	Test systems with a significant sample and verifying that systems behaviors are predictable.	
20.18	Collect data and discussing the results.	
20.19	Create workbooks of spreadsheets that model systems.	
20.20	Develop spreadsheets with scripts that allow a user to predict the outcome of a system given certain player actions.	
20.21	Test and balance their system models.	
20.22	Explain how the creation of iterative prototypes aid in validating gameplay design choices.	
20.23	Explain how mechanics can be used to tell a story in games and the “do, don’t show” principle of game storytelling. 	
20.24	Explain cussing an interest curve in games and how mechanics can be used to maintain interest over time as well as how these concepts fit in with different storytelling models.	
20.25	Analyze an existing game and discussing how mechanics and systems could be used to tell the story more effectively through player action.	
20.26	Discuss player progressions and immersion in games and how these concepts relate to mechanics and systems.	
20.27	Modify an existing design document to incorporate balanced mechanics that add to gameplay. 	
20.28	Develop system documentation for a game design document.	
20.29	Reference systems documentation effectively and using models to justify game design choices.	
20.30	Create technical documentation that gives developer’s insight into their systems design (such as relevant equations and interrelationships) so that systems can be effectively developed.	

Additional Information

Laboratory Activities

Laboratory investigations that include scientific inquiry, research, measurement, problem solving, emerging technologies, tools and equipment, as well as, experimental, quality, and safety procedures are an integral part of this career and technical program/course. Laboratory investigations benefit all students by developing an understanding of the complexity and ambiguity of empirical work, as well as the skills required to manage, operate, calibrate and troubleshoot equipment/tools used to make observations. Students understand measurement error; and have the skills to aggregate, interpret, and present the resulting data. Equipment and supplies should be provided to enhance hands-on experiences for students.

General Education Course Requirements for AS and AAS Degrees

State Board of Education Rule 6A-14.030(4), F.A.C., identifies 15 credit hours as the minimum amount of general education coursework required in the Associate of Science (AS) degree and the Associate of Applied Science (AAS) degree.  In addition, Rule 6A-14.0303, F.A.C., implements s. 1007.25, F.S., and requires students entering a technical education degree program in the 2022-2023 academic year, and thereafter, to complete at least one identified core course in each subject area as part of the general education course requirements (15 credit hours total) before a degree is awarded) The core subject areas include: 
•	Communication. 
•	Humanities.
•	Mathematics. 
•	Natural Sciences.
•	Social Sciences.

Career and Technical Student Organization (CTSO)

Phi Beta Lambda (PBL) is the co-curricular career and technical student organization providing leadership training and reinforcing specific career and technical skills. Career and Technical Student Organizations provide activities for students as an integral part of the instruction offered.

Accommodations

Federal and state legislation requires the provision of accommodations for students with disabilities to meet individual needs and ensure equal access. Postsecondary students with disabilities must self-identify, present documentation, request accommodations if needed, and develop a plan with their counselor and/or instructors. Accommodations received in postsecondary education may differ from those received in secondary education. Accommodations change the way the student is instructed. Students with disabilities may need accommodations in such areas as instructional methods and materials, assignments and assessments, time demands and schedules, learning environment, assistive technology and special communication systems. Documentation of the accommodations requested and provided should be maintained in a confidential file.

Certificate Programs

A College Credit Certificate consists of a program of instruction of less than sixty (60) credits of college-level courses, which is part of an AS or AAS degree program and prepares students for entry into employment (Rule 6A-14.030, F.A.C.). This AS degree program includes the following College Credit Certificates:

Virtual and Augmented Reality Technologies (0550041118) -- 19 credit hours

Standards for the above certificate programs are contained in separate curriculum frameworks.