Basics of Game Development
33 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

What is the main reason to become a game developer, according to the course?

To make a career out of helping people have fun

What is the predicted dominant platform for gaming by 2025?

Streaming

What is another predicted trend in the gaming industry?

Mixed reality

What is a challenge that game developers face when working on a project?

<p>Dealing with remote teams across time zones</p> Signup and view all the answers

What is another challenge that game developers face when working on a project?

<p>Cloud-based development</p> Signup and view all the answers

What is an important aspect of web development that web developers need to keep up with?

<p>Latest technologies and trends in web design</p> Signup and view all the answers

What is one of the roles involved in a game project?

<p>Artist</p> Signup and view all the answers

What is another role involved in a game project?

<p>Producer (PM)</p> Signup and view all the answers

What is a question that can help you choose a major that suits you best?

<p>What are your passions and hobbies?</p> Signup and view all the answers

What is the main purpose of the game loop in game development?

<p>The game loop is responsible for initialisation and loading of resources, time-based update, and controlled shutdown.</p> Signup and view all the answers

What are the two main methods of 2D collision detection mentioned in the curriculum?

<p>AABB and circle</p> Signup and view all the answers

What is the purpose of scene management in game development?

<p>To manage and organize the game's scenes and levels</p> Signup and view all the answers

What is the primary focus of the graphical user interface (GUI) in game development?

<p>Creating menus, heads-up displays, and other graphical elements</p> Signup and view all the answers

What is the main objective of the game development module described in the curriculum?

<p>To develop simple, interactive 2D games using an existing game engine</p> Signup and view all the answers

What is the significance of affine transformations in game development?

<p>They are used to manipulate objects and camera viewpoints</p> Signup and view all the answers

What is the total workload for this module in hours?

<p>62.5 hours</p> Signup and view all the answers

How many ECTS credits are allocated to this module?

<p>2.5 ECTS</p> Signup and view all the answers

What is a game engine primarily designed for?

<p>The development of video games</p> Signup and view all the answers

What is the core functionality provided by a game engine?

<p>Rendering engine, physics engine, sound, scripting, animation, AI, networking, etc.</p> Signup and view all the answers

What is the purpose of a rendering engine in a game engine?

<p>To provide 2D or 3D graphics</p> Signup and view all the answers

What is the advantage of reusing a game engine?

<p>To economize on the process of game development</p> Signup and view all the answers

What is the term used to describe the development software that utilizes a game engine?

<p>Game engine</p> Signup and view all the answers

What is the role of physics engine in a game engine?

<p>Collision detection and collision response</p> Signup and view all the answers

What is the benefit of using a game engine for game development?

<p>Simplified development process and reduced development time</p> Signup and view all the answers

What is the range of devices that can be supported by a game engine?

<p>Video game consoles and other types of computers</p> Signup and view all the answers

What is the main purpose of the 'File System and Resource Caching' component in a game application?

<p>To manage memory and resources</p> Signup and view all the answers

What is the main focus of the 'Game View – Human Perspective' component?

<p>Usability and Human-Computer Interaction (HCI)</p> Signup and view all the answers

What is SFML, and what does it provide?

<p>A library that provides a simple interface to various PC components</p> Signup and view all the answers

What is the goal of building a simplified game engine in this course?

<p>To increase understanding of game engine internal processes</p> Signup and view all the answers

What are the five modules of SFML?

<p>System, Window, Graphics, Audio, Network</p> Signup and view all the answers

What is the significance of the 'Init, Main Loop, Shutdown' component?

<p>It manages the game's lifecycle</p> Signup and view all the answers

What is the role of the 'Dedicated Process Manager' in the 'Game View – Human Perspective' component?

<p>To manage interface-actions such as animation and streaming</p> Signup and view all the answers

What is the primary difference between SFML and a game engine?

<p>SFML is a library, not a game engine</p> Signup and view all the answers

Study Notes

Basics Game Development

  • The course is taught by Radomir Dinic and Samuel Arzt.
  • The course covers the basics of game development, including:
    • Game loop (initialization and loading of resources, time-based update, controlled shutdown)
    • 2D graphics skills (sprites, sprite animation, tile maps, occlusions)
    • Input methods (e.g. keyboard, mouse)
    • Basic affine transformations and coordinate spaces (e.g. for manipulating objects or game camera)
    • 2D collision detection (e.g. AABB, circle)
    • Scene management
    • Graphical user interface (e.g. menus, heads-up displays)
  • The course is based on the C# programming language and uses the SFML (Simple and Fast Multimedia Library) framework.

Module Description

  • The course aims to teach students to:
    • Explain the basic structures and processes of a game engine in their own words
    • Develop simple interactive applications using an existing game engine
    • Implement simple, interactive 2D games based on an existing game engine
    • Design and develop the software architecture and program flow in the code
    • Use 2D graphics for representation (e.g. animated sprites, tile maps, GUI) and implement occlusions
    • Switch between coordinate spaces and use vectors and affine transformations to manipulate objects and camera viewpoints
    • Implement simple methods of 2D collision detection to realize game logic

Workload

  • The course has a total workload of 62.5 hours, consisting of:
    • 2 SWS (lectures and lab sessions)
    • 10.5 hours of lectures
    • 10.5 hours of lab sessions
    • 41.5 hours of assignments and autonomous studying (approximately 4-5 hours per week)

Grading

  • The course is graded based on:
    • 70% of the final grade comes from three tests (see Wiki)
    • 30% of the final grade comes from three "bigger" assignments:
      • Basic SFML setup (game loop, transformations, time)
      • Basic engine (asset handling, sprite animation, sound, input)
      • Final engine (components, collisions, and basic physics)

Sources

Why to become a game developer?

  • Reasons to become a game developer include:
    • Using creative and analytical skills
    • Working in an enthusiastic and casual environment
    • Enjoying a steady career in a dynamic industry
    • Earning a competitive salary
    • Making a career out of helping people have fun
    • Having international job opportunities
    • Having the possibility to easily change the branch of industry if desired

The World of Game Development

  • Roles in a game development project include:
    • Artist
    • Game engineer
    • Designer
    • Quality assurance
    • Producer
  • Game development involves various aspects, including:
    • Gameplay
    • Game world
    • Game mechanics
    • Characters
    • Quest
    • Atmosphere
    • Story
    • Animation
    • Graphics
    • Input
    • Network
    • Artificial intelligence
    • Physics
    • Audio

Game Engines

  • A game engine is a software framework primarily designed for the development of video games.
  • It typically includes relevant libraries and support programs.
  • Game engines can also refer to the development software utilizing this framework, offering a suite of tools and features for developing games.
  • The core functionality of a game engine may include:
    • Rendering engine (renderer) for 2D or 3D graphics
    • Physics engine or collision detection (and collision response)
    • Sound
    • Scripting
    • Animation
    • Artificial intelligence
    • Networking
    • Streaming
    • Memory management
    • Threading
    • Localization support
    • Scene graph
    • Video support for cinematics

SFML – Simple and Fast Multimedia Library

  • SFML is not a game engine, but a library that provides a simple interface to the various components of a PC.
  • It is composed of five modules:
    • System
    • Window
    • Graphics
    • Audio
    • Network
  • SFML is multi-platform, supporting Windows, Linux, and macOS (with plans to support Android and iOS).
  • SFML is multi-language, with official support for C++ and C#, and unofficial bindings for other languages.

Practical Part of this Course

  • The practical part of the course involves building a simplified game engine using SFML.
  • This will help students understand the internal processes of a game engine.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Description

This quiz covers the basics of game development, including the game loop, 2D graphics, input methods, and affine transformations. It is a part of the MultiMediaTechnology curriculum at FH Salzburg.

More Like This

Use Quizgecko on...
Browser
Browser