Platform Based Development: Game Platforms and Programming Languages
Course Information and Learning Objectives
Institutional Context: - Department: Information Technology. - Institution: Durban University of Technology (DUT) / Inyuvesi Yasethekwini Yezobuchwepheshe. - Values: Envision 2030 initiatives emphasize fairness, professionalism, commitment, compassion, excellence, transparency, honesty, integrity, respect, and accountability.
Course Details: - Subject Name: Platform Based Development. - Subject Code: PBDV301 | PBDE401. - Lecturer Name: Freedom. - Primary Topic: Types of Game Platforms & Programming Languages.
Learning Objectives: - Develop a thorough understanding of the components and functions of a game platform. - Explore various types of game platforms, identifying their distinct features and use cases. - Acquire knowledge of programming languages commonly used in game development and understand their specific roles. - Gain insight into the entire game development lifecycle, including the use of game engines and the key roles involved in creating a game.
Defining the Game Platform
Definition: A game platform is the environment or system on which a video game runs. - It comprises both the hardware (physical device) and the software ecosystem (operating system, APIs, and tools). - It refers to the underlying technology or infrastructure that supports the games and allows them to be played.
Determinants of Platform Importance: - Performance: Influences graphics and processing speed. - Controls: Defines input methods such as keyboard, controller, or touch interfaces. - Audience: Dictates targeting for casual versus hardcore gamers. - Development Complexity: Specific optimization is required based on the hardware; for example, a game designed for a smartphone must be optimized differently than one for a high-end gaming PC.
Benefits and Categorization of Video Games
Cognitive and Social Benefits of Video Games: - Improvement of cognitive skills. - Enhancement of coordination. - Encouragement of teamwork and social connections. - Reduction of stress. - Boosting of creativity. - Therapeutic uses. - Facilitation of learning and education.
Game Categorization by Genre: - Action Games. - Adventure Games. - Role-Playing Games (RPGs). - Simulation Games. - Strategy Games. - Sport Games. - Puzzle Games.
Game Categorization by Player Mode: - Single-Player. - Multiplayer. - Online Multiplayer (MMO).
Taxonomic Breakdown of Gaming Platforms
Platform Functions: - Determine how games are played. - Shape game design. - Affect accessibility. - Influence cost and development. - Define the gaming experience. - Impact distribution and reach. - Drive innovation.
Major Platform Groupings: - PC Platforms: Examples include Windows PC and Mac. - Console Platforms: Examples include Sony PlayStation, Microsoft Xbox, and Nintendo Switch. - Mobile Platforms: Examples include Android and iOS. - Web-Based Platforms. - Cloud Gaming Platforms. - Virtual Reality Platforms.
Specific Hardware Models and Entities Listed: - Microsoft Family: Xbox, Xbox 360 Arcade, Xbox 360 Elite, Xbox 360 E, Xbox 360 (, , , ), Xbox One . - Sony Family: Sony PlayStation, PlayStation 1, PlayStation 2, PlayStation 3, PlayStation 4, PlayStation Portable (PSP). - Nintendo Family: Nintendo, Nintendo DS, Nintendo 3DS, Nintendo Wii, Wii U, Nintendo Switch, Game Boy, Game Boy Color, Game Boy Advance, Virtual Boy, Game & Watch. - PC Manufacturers: HP, Alienware, Razor, Asus, Dell. - Mobile/Stores: Android Playstore, iOS Apple.
Platform-Specific Characteristics and Use Cases
PC (Personal Computer): - Defined as gaming computers offering high customizability and superior performance. - Support multiple distribution platforms such as Steam and Epic Games Store.
Consoles: - Dedicated gaming machines designed primarily for home use. - Known for high-quality graphics and exclusive titles.
Mobile Platforms: - Played on smartphones and tablets. - Characteristics: Simpler mechanics, touch controls, and accessible to a broad audience (casual to complex titles).
Cloud Gaming Platforms: - Latest addition to the landscape; allows streaming games over the internet. - Eliminates the need for dedicated local hardware. - Examples: Google Stadia and Nvidia GeForce Now.
Virtual Reality (VR) Platforms: - Requires a special head-mounted unit. - Provides stereoscopic screens and motion tracking to immerse the player in a virtual environment that responds to head movements.
Global Games Market Analysis and Statistics
2023 Total Global Market Revenue: $183.9\,Bn$ ().
Revenue Segmentation per Platform (2023): - Mobile Games: (); accounts for of the global market. - Console Games: (); accounts for of the market. - Downloaded/Boxed PC Games: (); accounts for of the market. - Browser PC Games: (); accounts for of the market.
Reporting Scope Notes: - Revenues encompass consumer spending: physical and digital copies, in-game spending, and subscriptions (e.g., Xbox Game Pass). - Mobile revenues exclude advertising. - Estimates exclude taxes, second-hand trade, secondary markets, B2B services, and the online gambling/betting industry.
Top 10 Gaming Markets (Revenue in Billion U.S. Dollars 2021 vs. 2025 Estimated): 1. China: (2021) / (2025). 2. U.S.: (2021) / (2025). 3. Japan: (2021) / (2025). 4. South Korea: (2021) / (2025). 5. UK: (2021) / (2025). 6. India: (2021) / (2025). 7. France: (2021) / (2025). 8. Russia: (2021) / (2025). 9. Germany: (2021) / (2025). 10. Mexico: (2021) / (2025).
The Gaming Business Opportunity
New Professional Avenues: - Streaming. - Content Creation. - Esports. - Game Testing.
Game Programming Languages and Specific Utility
Core Languages: - C++: High performance, full hardware control; used for AAA development (PlayStation, Xbox, Switch) and engines like Unreal Engine. - C#: Easy-to-learn, fast development, strong engine support (Unity); used for indie, mobile, and 2D/3D games across PC, Mobile, and Consoles. - Java: Used for cross-platform apps and Android development; suitable for mobile and casual 2D games. - Python: Used for game prototypes, scripting, and AI systems; primarily used for development tools. - JavaScript: Used for web browsers to create HTML5 games and interactive casual online games. - GDScript: Simple scripting for game logic used in the Godot engine for PC and Mobile indie games. - HLSL / GLSL: Graphics and shader programming for advanced visual effects, lighting, and performance on all platforms via engines.
Additional Languages Listed: SQL, Lua, Rust, HTML, UnrealScript.
Technical Infrastructure: Game Engines
Definition: A software framework used to build and run video games, providing ready-made systems to avoid building from scratch.
Core Systems Provided by Game Engines: - Graphics Rendering System. - Physics Engine. - Audio System. - Scripting Support. - Cross-platform support. - Asset management tools. - Real-time editing.
The Game Development Lifecycle
Planning: Defining the project (What are we building?), budgeting, identifying audience, and platform selection.
Pre-production: Storyboarding, storytelling, assessing technological capabilities, early prototyping, and milestone scheduling.
Production: Modeling, designing, audio/visual effects development, physics and mechanics programming, and rendering.
Testing: Bug identifying, feature exploitation, difficulty assessment (too easy/hard), and checking the "fun" factor.
Pre-launch: Major bug squashing, Alpha/Beta releases, and marketing hype (conventions, independent advertising).
Launch: Minor bug squashing, final polishing, and Master release.
Post-production: Continued bug squashing, game patching, balancing adjustments, and new content development.
Key Professional Roles in Game Creation
Management: Delivery Managers, Development Managers.
Design & Logic: Game Developers, Game Designers, Level Designers.
Art & Animation: Game Artists, 3D Artists, Animators.
Audio & Quality: Sound Designers, QA (Quality Assurance) Testers.