Coconote
AI notes
AI voice & video notes
Export note
Try for free
Full Game Development Lecture Notes
Jul 20, 2024
Full Game Development Lecture Notes
Overview of the Project
Objective
: Build a 3D game from scratch based on a simplified version of Nazi Zombies.
Goal
: Fast learning process to understand game development complexities and avoid common pitfalls.
Tools Required
Blender
: For 3D modeling of environment and characters.
GIMP (GNU Image Manipulation Program)
: For texturing models and the environment.
Gdau (game engine)
: For coding and building the game.
Downloads
: Latest versions from their official sites; Gdau from
gdau engine.org
and Blender from
blender.org
.
Project Structure
3D Modeling in Blender
: Create games environment and characters.
Texturing
: Apply textures using GIMP.
Export Models
: From Blender to gdau game engine.
Coding the Game
: Implement game mechanics and functionality in gdau.
Building Mechanics
: Create FPS gameplay with enemies and player interactions.
User Interface (UI)
: Develop an intuitive FPS interface.
Blender Basics
Blender Setup and Navigation
Fundamentals
:
Mouse scroll to zoom in/out.
Middle Mouse click to rotate.
Shift
+ Middle Mouse click to pan.
Object Manipulation
Selecting
: Left-click to select objects, drag to select multiple.
Transformation
:
G
to move,
R
to rotate,
S
to scale.
Axis constraints:
X
,
Y
,
Z
keys lock movement to that axis.
Local axis constraints: Double tap axis key during transformation.
Reset Transformations
:
Alt+G
resets location.
Alt+S
resets scale.
Alt+R
resets rotation.
Applying Transformations
:
Ctrl+A
apply specific transformations (location, rotation, scale).
Editing Meshes
Edit Mode
: Enter with tab key, manipulate vertices, edges, and faces.
Editing Tools
:
Extrude (E)
,
Inset (I)
,
Bevel (Ctrl+B)
, and others for detailed mesh work.
Knife tool for custom cuts.
UV Mapping and Texturing in Blender
UV Unwrapping
Purpose
: Map 2D textures onto 3D models properly.
Steps
:
Mark seams to guide unwrapping.
Ctrl+E
->
Mark Seams
.
A
to select all,
U
to unwrap.
Use smart UV project for simpler models.
Shader Editor and Material Application
Adding Materials
:
Use Nodes to create complex material attributes.
Add textures and normal maps for detailed surfaces.
Creating Game Logic and Interactions in Gdau
Setting Up Gdau
Download and set up the latest Gdau engine version.
Interface Walkthrough
: Scene panel, Inspector, Viewport, Node system, etc.
Adding 3D Objects
Mesh Instance
: Add as 3D nodes.
Transformations and materials
: Adjust using Inspector.
Camera setup
: Add and orientate a camera to view the scene.
Script Introduction
: Basic GD script for object interaction.
Player Control and Movement
FPS Setup
: Implement character body, collision setup.
Script for Movement and Input Handling
: Apply gravity, check button input, and update player position.
Mouse Look
: Implement camera rotation for looking around.
Advanced Functionality and Game Mechanics
Weapon System
Modeling Weapons
: Basic modeling and animating weapon firing actions in Blender.
Import Weapons
: Integrate into Gdau, set up firing, reloading animations.
Raycasting
: For bullet collision detection.
UI Updates
: Ammo count and weapon status.
Enemy AI and Interaction
Enemy Pathfinding
: Use navigation meshes for enemy movement.
State Machine
: Implement enemy idle, chase, and attack behaviors.
Damage System
: Enemies take and react to damage.
Game UI
Add FPS HUD
: Health, ammo, and current weapon displays.
Weapon Pickup System
: Implement interactions to collect new weapons.
Final Touches and Polishing
Texture Refinements
: Optimize game visuals with Blender and GIMP.
Level Design
: Enhancements and game aesthetics.
Play Testing
: Ensure all mechanics work seamlessly together and adjust as necessary.
Conclusion
Resources Provided
: Download example projects from Itch.io.
Further Learning
: Experiment with GD script, Blender modeling, and texture creation.
Game Development Fundamentals
: Important to start simple, increasing complexity over time.
Final Notes
Practice and iteration are key to mastering game development.
Ensuring clear code structure helps in expanding and troubleshooting the game mechanics.
📄
Full transcript