Computer Science: Game Development
Is your dream to create the hottest new video game? Do you want to build interactive systems that solve problems? Maybe you'd like to help create better ways of teaching and learning?
Whatever your dreams in game development, Drury's game development program can help make them a reality. This cutting edge program helps prepare graduates for careers in game development and/or graduate work in digital media.
About the Program
The Bachelors of Science in Computer Science-Game Development is designed for those wishing to find positions as game developers or to pursue graduate work in either computer science or a related digital media program. It is one component of Drury’s media production program. The program requires a core of computer science courses (23 hours) covering essential elements of the Computer Science Body of Knowledge that all computer science graduates must master. In addition to the core computer science courses, 15 additional hours of computer science course work in game development is required. An additional 12 hours of supporting course work from media arts courses is required, along with 11 hours of mathematics.
The Computer Science-Game Development major requires a minimum of 58 credit hours.
Students may not pursue both the Bachelor of Science in Computer Science-Game Development and the Bachelor of Science in Computer Science-Software Engineering.
A grade of C or higher must be achieved in CSCI 251.
A grade of C or higher must be achieved in CSCI 261 and MATH 231/MATH 236 in order to proceed to CSCI 262.
Required Courses (38 hrs.)
Prerequisite: MATH 211; MATH 231; or MATH 236. This course includes propositional logic, induction and recursion, number theory, set theory, relations and functions, graphs and trees, and permutations and combinations.
An introduction to computer science through applications such as media. A major component is programming design and development using a language such as Python or Java. A disciplined approach to problem solving methods and algorithm development will be stressed using top-down design and stepwise refinement. Topics included are syntax and semantics, input and output, control structures, modularity, data types, and object-oriented programming. Recommended for students with previous programming experience or a strong mathematical background (math ACT score of 24 or above).
Prerequisite: CSCI 251 with a grade of C or higher. Students must receive a grade of C or better in the prerequisites. An in-depth study of data structures, including arrays, records, stacks, queues, lists, trees, heaps and hash tables. The study includes the definition, specification, and implementation of these structures, as well as examples of their uses. Also included is an introduction to the internal representation of information.
Prerequisite: CSCI 261 with a grade of C or higher; and MATH 231 or MATH 236 with a grade of C or higher. Students must receive a grade of C or better in the prerequisites. This course examines the design and efficiency of sequential and parallel algorithms. The algorithms studied include sorting and searching, pattern matching, graph algorithms and numerical algorithms. Standard algorithmic paradigms are studied such as divide and conquer, greedy methods and dynamic programming. We will consider the time and space complexity analysis of sequential and parallel algorithms and proofs of algorithm correctness.
Prerequisite: CSCI 251. An examination of both web-based and mobile applications. The course covers the design of client-server architectures, client side scripting, user interface design, and application and database interaction.
Prerequisite: CSCI 251. An introduction to game development. Topics explored in the course include game genres, game concepts, game design principles, the game development process, the actors in the game development process, 2D game design and scripting. This course includes a 2D game development project.
Prerequisite: CSCI 282. An examination of the development of 3-dimensional games using a game engine. Topics include basic 3D computer graphics, the graphics pipeline, 3D game scripting, game development using a game engine, physic engines, incorporating external models and media. This course includes a 3D game development project.
Prerequisites: CSCI 261 and CSCI 277. A detailed examination of secure client-server application development. Topic include data driven applications, database design and access, data transfer, data services and network protocols.
Prerequisite: CSCI 262. Systems engineering concepts for the design and implementation of computing projects. Project life cycle studies include rapid prototyping paradigms as well as the classical cycle of requirements, design and implementation phases. Project management is discussed, including considerations in selecting hardware platforms. The methodologies are reinforced through a group project. Must be taken in the junior year.
Prerequisite: CSCI 351. A survey of the main applications of artificial intelligence includes natural language processing, robotics and expert systems. The principles of artificial intelligence are studied, including such topics as search strategies, deduction systems and plan generation systems. Labs use a version of the LISP language.
Prerequisite: CSCI 371 and CSCI 474.
The first semester of a studio based interdisciplinary game development project. The course brings students from a variety of disciplines together to participate in a game development project. Students work under the direction of a team of faculty from the Computer Science and Applied Media program. Students fill game development roles on the project such as game designer, producer, programmers, animator, visual effects artist, special effects artist, 3D modeler, screen writer, audio composer (engineer), QA testing, advertising and marketing.
Prerequisite: CSCI 475. The second semester of a studio based interdisciplinary game development project. This course is a continuation of CSCI 475. CSCI 475 and CSCI 476 must be taken in consecutive semesters during the same academic year.
Support Courses (11 hrs.)
Prerequisite: ANIM 101. This course introduces students to the many areas and aspects of computer animation. Students will be introduced to basic 3D tools and techniques of modeling, surfacing, lighting, rendering, rigging, animating and compositing various elements. Students are introduced to the group production environment. This course emphasizes the wide range of talents and disciplines within 3D computer animation.
It is strongly recommended that students have completed two years of high school algebra and one semester of high school trigonometry in order to be successful in this course. A study of the fundamental principles of analytic geometry and calculus with an emphasis on differentiation.
Students will learn about linear, integrated, and nonlinear storytelling approaches using multiple multimedia formats, including short-form video/animation, photo stories, and Web posts. Students will develop individual projects, one for each medium, as well as an integrated project over the course of the semester. This digital foundations course will expose students to basic video/animation and photo editing, Web design, and storyboarding.
Prerequisite: DAY-None. CCPS-ENGL 150. Students learn techniques for and practice in writing fiction. The course focuses on student workshops.
Creative and Technical Electives (8-11 hrs.)
Choose three from the list below:
Prerequisite: ANIM 121 and ANIM 101. Building on acquired animation principles and computer animation knowledge and techniques, this course challenges students to expand their computer animation sills and to continue developing a sense of timing. Students learn organic modeling techniques, basic rigging skills and intermediate compositing techniques. Students will continue to develop interpersonal communication and leadership skills while working in a group environment.
Prerequisite: ANIM 221. Building on acquired animation and computer animation knowledge and techniques, this course seeks to advance students’ knowledge in cinematic design and execution to better understand animation as applied to performance, emotion, and believability as it applies to computer animation. Students are introduced to rigging with bones, motion effectors and modifiers, advanced surfacing and special effects work through lectures and practical demonstrations. Students will continue to develop interpersonal communication and leadership skills while working in a group environment.
Prerequisite: Candidacy in Animation Program. This course builds on the foundational skills students have already mastered and explores more complex rigging techniques and how to apply dynamics such as collisions and fluids. Mechanical and organic rigs, ‘hard body’ and ‘soft body’ will be covered. Students will research, analyze, and design fully functional and physically accurate rigs for both mechanical and organic models. Students will produce 2-4 projects.
Prerequisite: CSCI 261. An integrated introduction to computer systems fundamentals. Topics include computer architecture and major components, operating system concepts and implementation techniques (processes, threads, memory management, and distributed systems), and network theory, concepts and techniques.
Prerequisite: MATH 231 or MATH 236. It is recommended that students receive a grade of C or better in MATH 231 or MATH 236 to be successful in this course. Continuation of Calculus I including techniques of integration and infinite series.
Prerequisite: MATH 232. It is recommended that students receive a grade of C or better in MATH 231 to be successful in this course.
Functions of two variables, partial differentiation, applications of multiple integrals to areas and volumes, line and surface integrals, and vectors.
Prerequisite: MATH 232. Study of linear transformations, matrices and vector spaces.