COURSE OBJECTIVES y - Full Sail University · yyCompile game code for multiple platforms ......

3
COURSE SYLLABUS CONTACT INFORMATION Catalog Course Code: MBG 541 Three-Letter Course Abbreviation: GDF-O Instructor: Nick Penney Telephone: 407.679.0100 ext. 8902 Email: [email protected] iChat: [email protected] Hours: Office hours will be updated and published monthly Email preferred COURSE DESCRIPTION Students in the Game Development Frameworks Course will connect mobile and micro-console technologies to vari- ous platforms and operating systems to analyze how they influence the design, functionality, and delivery of a game. Students will also evaluate the limits various technologies place on game design, with special attention given to hard- ware resource contention and software stack limitations. COURSE MATERIALS y MacBook Pro y Xcode for programming on iOS y Additional programming software (IDEs, SDKs, APIs) as requested and/or provided by instructor COURSE OBJECTIVES Students will accomplish these course objectives by com- pleting the tasks specified: y Create 2-D games with Cocos2d-x y Animate sprites y Implement physics principles y Create sound effects y Create 3-D games with Unity 3D y Design user interfaces and game scenes y Build game objects and employ collision detection y Add gravity, torque, and other forces y Connect to multiplayer game services y Log in players y Implement multiplayer functionality y Post high scores to leaderboards y Compile game code for multiple platforms y Deploy a Cocos2d-x game to iOS and Android y Deploy a Unity3D game to mobile and web platforms y Access device hardware sensors y Implement the accelerometer y Recognize gestures with the proximity sensor y Respond to ambient light and sound y Use GPS and location data in games y Incorporate Google Maps or Apple Maps into a game y Update the player experience with custom location- based information y Create a simple app for each platform that uses the native map service y Research the impact of writing testable code y Discover libraries that facilitate unit and integration tests y Test code from their game projects using one of the libraries they discover COURSE OUTCOMES By the end of this course, students will be able to: y Create native Android and iOS apps that include a GUI, respond to touch events, and use graphics and sound y Employ GPS and location data in Android and iOS y Implement multiplayer game services in Android and iOS y Use cross-platform IDEs for mobile game creation DEGREE CONNECTION Game Development Frameworks is the fourth course in the Mobile Gaming Master of Science degree program. Students will learn the basics of Android and iOS, which are touched on in the previous Computer Science for Engineers course. GAME DEVELOPMENT FRAMEWORKS—ONLINE

Transcript of COURSE OBJECTIVES y - Full Sail University · yyCompile game code for multiple platforms ......

COURSE SYLLABUS

CONTACT INFORMATION

Catalog Course Code: MBG 541

Three-Letter Course Abbreviation: GDF-O

Instructor: Nick Penney

Telephone: 407.679.0100 ext. 8902

Email: [email protected]

iChat: [email protected]

Hours: Office hours will be updated and published monthly Email preferred

COURSE DESCRIPTION

Students in the Game Development Frameworks Course will connect mobile and micro-console technologies to vari-ous platforms and operating systems to analyze how they influence the design, functionality, and delivery of a game. Students will also evaluate the limits various technologies place on game design, with special attention given to hard-ware resource contention and software stack limitations.

COURSE MATERIALSyy MacBook Pro

yy Xcode for programming on iOS

yy Additional programming software (IDEs, SDKs, APIs) as requested and/or provided by instructor

COURSE OBJECTIVES

Students will accomplish these course objectives by com-pleting the tasks specified:

yy Create 2-D games with Cocos2d-x

yy Animate sprites

yy Implement physics principles

yy Create sound effects

yy Create 3-D games with Unity 3D

yy Design user interfaces and game scenes

yy Build game objects and employ collision detection

yy Add gravity, torque, and other forces

yy Connect to multiplayer game services

yy Log in players

yy Implement multiplayer functionality

yy Post high scores to leaderboards

yy Compile game code for multiple platforms

yy Deploy a Cocos2d-x game to iOS and Android

yy Deploy a Unity3D game to mobile and web platforms

yy Access device hardware sensors

yy Implement the accelerometer

yy Recognize gestures with the proximity sensor

yy Respond to ambient light and sound

yy Use GPS and location data in games

yy Incorporate Google Maps or Apple Maps into a game

yy Update the player experience with custom location-based information

yy Create a simple app for each platform that uses the native map service

yy Research the impact of writing testable code

yy Discover libraries that facilitate unit and integration tests

yy Test code from their game projects using one of the libraries they discover

COURSE OUTCOMES

By the end of this course, students will be able to:

yy Create native Android and iOS apps that include a GUI, respond to touch events, and use graphics and sound

yy Employ GPS and location data in Android and iOS

yy Implement multiplayer game services in Android and iOS

yy Use cross-platform IDEs for mobile game creation

DEGREE CONNECTION

Game Development Frameworks is the fourth course in the Mobile Gaming Master of Science degree program. Students will learn the basics of Android and iOS, which are touched on in the previous Computer Science for Engineers course.

GAME DEVELOPMENT FRAMEWORKS—ONLINE

Course projects will give students the opportunity to create their first mobile games. Although students are encouraged to keep their games simple, they will encounter logic, data structures, algorithms, cross-platform development, and other topics covered in Computer Science for Engineers.

Topics covered in this course will also be useful in later courses in the program. In Usability Engineering, students will learn about game and interface design and will need to know concepts covered in GDF, such as the basics of UI controls, audio, and scene transitions for the game develop-ment framework of their choice. Students in this course will gain experience with two very popular game frameworks and begin to settle on a particular technology stack to use during their capstone project.

INDUSTRY CONNECTION

The technologies and IDEs learned in this course will build a strong foundation for students throughout their careers. After reinforcing native development, students will learn a host of useful, relevant, and widely used technologies, such as using location data and multiplayer game services. Students will also learn to use popular game IDEs that are already widely used in the game industry. These IDEs use the same lan-guages students will find in any custom-made game engine; therefore, students will be able to adapt easily.

RESEARCH COMPONENT

Students will use the resources provided to research ar-ticles relating to topics about writing testable code. They will use online resources to perform less-formal research that will result in discussion board posts designed to enhance

their knowledge of test-driven development and reinforce their ability to collaborate with their peers in a constructive manner.

ADDITIONAL RESOURCESyy Android developer SDK: http://developer.android.com

yy iOS developer SDK: https://developer.apple.com

yy Unity 3D: http://unity3d.com/learn

yy Cocos2d-x: http://www.cocos2d-x.org/

yy Full Sail Library’s online research database

TOPICS COVEREDyy Native Android and iOS Development

yy Using GPS and Location Data for Android and iOS

yy Using Multiplayer Game Services

yy Unity 3D

yy Cocos2d-x

LEARNING ACTIVITIES

Reading RecommendationsThe primary source of background knowledge for each framework or API will be official documentation, presenta-tions, and tutorials provided by the companies that create the software. Students will use these materials, other materials available on the Internet, and the Course Director’s assis-tance to complete each programming assignment.

GAME DEVELOPMENT FRAMEWORKS—ONLINE  Degree Connection

Research AssignmentsStudents will complete several informal online re-search assignments and may take advantage of the online research database section of the Full Sail Library. Each assignment will be turned in as a dis-cussion board post.

Programming AssignmentsStudents will be given programming assignments that will emphasize various game frameworks, de-vice features, connectivity data, and key technologies currently used in the gaming industry. For each as-signment, students will create a code repository that the Course Director will have cloned. Students are expected to make full use of the repository by doing many commits and using the issue tracker. Students should choose to cover one framework and two tech-nologies for each assignment.

ScreencastsEvery assignment will be accompanied by a scre-encast. Screencasts should show each requested feature of the game working and the corresponding code. The code should be readable on-screen.

Discussion BoardsStudents will use online community discussion boards throughout the course to participate in re-search assignments and collaborate with fellow classmates as well as the instructor. Some discus-sions will be required assignments, while others will be provided solely to raise awareness or promote collaboration.

Online Live Classroom DiscussionsStudents will be encouraged to attend live online sessions to discuss course material and assignments and address any questions they may have “face-to-face” with their instructor.

GRADE WEIGHTS

Assignments 43%

Discussions (2 at 5% each) 10%

Key Technologies (4 at 8% each) 32%

Mastery Journal 5%

GPS 10%

Total 100%

STRATEGIES FOR SUCCESSFUL LEARNING

yy Please feel free (you are encouraged) to send the instructor questions via email.

yy Attempt assignments early, perhaps days before submission deadlines, so that all questions can be answered with enough time to still com-plete the assignment. In other words, try to ask questions about an assignment at least one day before it’s due.

yy Manage time wisely. For example, if you work during the day, consider bringing research as-signments to work, if possible, so they can be completed (or at least started) during breaks. This will give you more evening time to dedicate to programming assignments and quizzes.

yy The Internet is your friend. Use any resources you can find to help you overcome programming hurdles, including searching for a very specific compiler error. Websites such as stackoverflow.com are great for pointing developers in the right direction.

yy You should be a competent programmer, as this is a prerequisite for this degree program. However, if you feel you are rusty or could use additional programming practice, please do so as soon as possible. Search the web, visit w3schools.com, or use your provided lynda.com account to brush up on basic C, Java, and C++ syntax.

COURSE-SPECIFIC RUBRICS

Late submissions will not be accepted. Makeup/redo submissions will be handled on a case-by-case basis. In general, there will be a point reduction for redo submissions.

Programming AssignmentsSubmissions are required to be on each student’s Git repo before the deadline. Every submission will be accompanied by a screencast that will show the code running on a device or emulator and a tour of the code by the student.

GAME DEVELOPMENT FRAMEWORKS—ONLINE  Learning Activities