Course Overview
Welcome to "Learn 2D Game Development: Godot 4.5+ & C# from Scratch" – an engaging video course designed to equip aspiring developers with the skills and knowledge needed to create incredible games and applications using the powerful and versatile C# programming language.
** Note: Godot 4.5 update is being edited and uploaded, it'll all be complete end January 2026 **
In this comprehensive course, you'll embark on an exciting journey through a variety of projects, each carefully designed to enhance your understanding of essential programming concepts, object-oriented design, and practical problem-solving techniques. Whether you're a complete beginner or have some coding experience, this course provides a solid foundation for building games, applications, and more with C#.
Throughout the course, you will:
Create a Flappy Bird-style game: Discover the fundamentals of scene creation, handle user inputs, implement collision detection, and add parallax scrolling effects to enhance visual depth.
Recreate the gameplay of Angry Birds: Dive into physics-based mechanics, develop projectile motion, and design levels featuring destructible environments to master the essentials of game physics and level construction.
Design a memory game: Gain hands-on experience with UI-focused game development by building an intuitive and visually engaging memory game interface.
Bring back the nostalgia of 80s platformers with CJ Elephant Antics: Develop intricate level designs, animate characters, and create responsive controls to build obstacle-filled stages. Learn to use Godot's built-in State Machine to design and implement an exciting end-of-level boss!
Tackle puzzle game development with a Sokoban-inspired project: Learn to dynamically load levels from files, implement challenging puzzle mechanics, and apply programming design patterns to create elegant and efficient solutions.
Build a fast-paced space shooter: Craft a thrilling intergalactic adventure by designing enemy AI with path-following behaviors, creating dynamic enemy waves, integrating power-up systems, and enhancing visuals with particle effects and other aesthetic touches.
Develop an immersive artifact-collection escape game: Utilize 2D navigation AI to program guard behaviors, strategize player escapes, and create tension-filled gameplay moments.
By the end of the course, you'll have built an impressive portfolio of C# projects that highlight your skills in both programming fundamentals and game development. You'll be ready to craft engaging gameplay experiences and advance confidently in the world of C# and game development.
Enroll now and take your first step into the exciting world of C# development!
FAQ
FAQ area empty
Course curriculum
-
Godot version for this section
Xem trước -
01 - About this section
424 Xem trước -
02 - Editor
411 Xem trước -
03 - Scenes
1513 Xem trước -
04 - Aspect Ratios
747 Xem trước -
05 - Grid Snapping
310 Xem trước -
06 - Draw Order
411 Xem trước -
07 - Position and Rotation
748 Xem trước -
08 - Scripting C# and Debug
692 Xem trước -
09 - Accessing Nodes
984 Xem trước -
10 - Moving Nodes
380 Xem trước -
11 - Input
521 Xem trước -
12 - Rotate
187 Xem trước -
13 - Translate
234 Xem trước -
14 - Move Towards
564 Xem trước
-
Godot version for this section
-
01 - C# Introduction
370 Xem trước -
02 - Creating a Project
683 Xem trước -
03 - Variables
926 Xem trước -
04 - Arithmetic Operators
572 Xem trước -
05 - Conditionals
907 Xem trước -
06 - Conditionals Challenge
119 Xem trước -
07 - Conditionals Challenge Solution
427 Xem trước -
08 - Lists and Loops
1840 Xem trước -
09 - Dictionaries
471 Xem trước -
10 - Dictionaries Challenge
43 Xem trước -
11 - Dictionaries Challenge Solution
295 Xem trước -
12 - Functions
722 Xem trước -
13 - Classes, Definitions and Properties
1412 Xem trước -
14 - Classes, Static and Constants
351 Xem trước -
15 - Classes Inheritance
840 Xem trước -
16 - Partial Classes, Program Main
470 Xem trước -
16a - Classes Singleton
1016 Xem trước -
17 - Attributes
138 Xem trước -
18 - String Formatting
251 Xem trước -
19 - Events Delegates
442 Xem trước -
20 - Enums
252 Xem trước
-
Godot version for this section
-
Dice Catcher - Intro
20 Xem trước -
01 - Project Setup
398 Xem trước -
02 - Dice Scene
1085 Xem trước -
03 - Off Screne
434 Xem trước -
04 - Fox Scene
853 Xem trước -
05 - Collision Detection
440 Xem trước -
06 - Scoring Points
560 Xem trước -
07 - Spawning Dice
432 Xem trước -
08 - Game Over
407 Xem trước -
09 - Manual Pause
635 Xem trước -
10 - Tree Pause
335 Xem trước
-
Godot version for this section
-
Tappy Intro
18 -
01 - Setting a Project
434 -
02 - Plan of Attack
302 -
03 - Plane Scene
1014 -
04 - Plane Movement
1224 -
05 - Barrier
630 -
06 - Pipes
1137 -
07 - Pipes Spawning
968 -
08 - Plane Dies
655 -
09 - Main Scene
1019 -
10 - Globals
1139 -
11 - Game Ui
612 -
12 - Input Handling
1040 -
13 - Game Over
1478 -
14 - Scoring
956 -
15 - Score Persistence
903 -
16 - Parallax
588 -
17 Note
-
17 - Transitions
1452
-
Godot version for this section
-
Angry Animals Intro
16 -
01 - Project Setup
350 -
02 - Rigidbody2D Introduction
1396 -
03 - Animal Scene
358 -
04 - Animal Select
407 -
05 - Animal Drag Movement
359 -
06 - Animal Release
342 -
07 - Water
381 -
08 - Animal Regen
665 -
09 - Attempts
477 -
10 - Cup Scene
799 -
11 - Level Complete
516 -
12 - Scene Inheritence
416 -
13 - Level Button
651 -
14 - Persisting Scores
1057 -
15 - Arrow
411 -
15a - Hiding the Arrow
-
16 - Sounds
423 -
17 - Optional Lesson - Input Handling
1174
-
Godot version used in this section
-
Memory Intro
21 -
01 - Project Setup
222 -
02 - Approach
182 -
03 - Main Scene Layout
464 -
04 - Game Scene Layout
709 -
05 - Level Data Resources
720 -
06 - Level Select
417 -
07 - Tile Layout
350 -
08 - Complete Navigation
230 -
09 - Image Resource
780 -
10 - Front Sprite Tweens
689 -
11 - Memory Tiles
212 -
12 - Level Data Selection
552 -
13 - Scorer Selections
881 -
14 - Scorer Pairs
318 -
15 - Tracking Score
330 -
16 - Game Over
569 -
17 - Tile Tweens
245 -
18 - Sound Controller Scene
515
-
01 - Overview
357 -
02 - Project Setup
427 -
03 - Main Scene
358 -
04 - Tile Maps
1865 -
05 - Player
1417 -
06 - Player Animations
361 -
07 - Animation Tree
930 -
08 - Editor Tools, Enemy Base
1061 -
09 - Snail
1243 -
10 - Frog Part 1
708 -
11 - Frog Part 2
1111 -
12 - Eagel
661 -
13 - Bullets
698 -
14 - Object Maker
488 -
15 - Shooter Scene
805 -
16 - Explosion
680 -
17 - Pick Up
706 -
18 - Player Hurt
514 -
19 - Player Invincible
608 -
20 - Boss
1182 -
21 - Boss Attack
511 -
22 - Boss Damage
814 -
23 - Checkpoint
1072 -
24 - Game Hud Visuals
448 -
25 - Level Complete
608 -
26 - Scoring
422 -
27 - Player Lives
1180 -
28 - Ball Spikes
877 -
29 - Moving Platform - Path Follow
472 -
30 - Moving Platform - Animated
593 -
31 - High Scores
727 -
32 - High Score Display
489 -
33 - Persisting Scores
514 -
34 - Multiple Levels
1048 -
35 - Parallax
1297 -
36 - Camera Limits and Shake
649
-
Intro!
44 -
01 - Project Setup
382 -
02 - Tile Map Layer API
833 -
03 - Level Data Review
296 -
04 - JSON Parsing
914 -
05 - Tile Layer Conversion
420 -
06 - Building a Level 1
545 -
07 - Building a Level 2
537 -
08 - Player Scene
403 -
09 - Moving Tiles
549 -
10 - Level Select Button
566 -
11 - Level Navigation
394 -
12 - Game Ui
438 -
13 - Scoring
696
-
01 - Project Setup
278 -
02 - Particles
1219 -
03 - Stars
493 -
04 - Space Fog
352 -
05 - Player Scene
398 -
06 - Player Movement
282 -
07 - Bullet Scene Plan
294 -
08 - Bullet Scene Visuals
429 -
09 - Bullet Scene Basics
594 -
10 - Bullet Scene Collisions
252 -
11 - Scene Pool
1820 -
12 - Scene Activation
382 -
13 - Explosions
943 -
14 - Spawning Explosions
832 -
15 - Enemy Ships
956 -
16 - Health Bars
1389 -
17 - Asteroid
470 -
18 - Asteroid Explosion
1059 -
19 - Spawner Scene
921 -
20 - Homing Missile
401 -
21 - Homing Missile Logic
824 -
22 - Enemy Waves
897 -
23 - Sound and Timers
504 -
24 - Spawning Missiles
253 -
25 - Player Health
627 -
26 - Collisions
619 -
27 - Power Up
793 -
28 - Points
284 -
29 - Explosions
512
-
Godot version used in this section
-
Introduction
55 -
01 -Game Outline
350 -
02 - Paths and Terrains
323 -
03 - Navigation 2D Outline
251 -
04 - Navigation 2D implementation
924 -
05 - Navigation Obstacles
358 -
06 - Navigation Links
453 -
07 - Tileset Navigation
208 -
08 - Patrolling
761 -
09 - Detecting
520 -
10 - Field Of View
319 -
11 - Chasing Searching
642 -
12 - NPC Visuals
310 -
13 - Bullet
493 -
14 - NPC Shoot Challenge
31 -
15 - NPC Shoot Challenge Solution
350 -
16 - Pick Up Scene
458 -
17- Exit Scene
290 -
18 - Counting Pickups
175 -
19 - Game Over Logic
830 -
20 - Collision With Npc
233 -
21 - Variable FOV and Speed
303 -
22 - Avoidance, final map
542
-
Ready...
19 -
01 - Introduction
146 -
02 - Game Scene
502 -
03 - Nodes, Classes, Instances
1034 -
04 - Paddle Scene
566 -
05 - Global Position
553 -
06 - Gem Challenge
31 -
07 - Gem Challenge Solution
170 -
08 - UI Features
654 -
09 - Scene Life Cycle
801 -
10 - Moving Paddle
900 -
11 - Restricting Paddle
602 -
12 - Gem Falling Challenge
22 -
13 - Gem Falling Challenge Solution
339 -
14 - Viewport and Tree
352 -
15 - Signals
686 -
16 - Signals in Code
259 -
17 - Custom Signals
276 -
18 - Custom Signals Challenge Solution
343 -
19 - Referencing Nodes
546 -
20 - Spawning A Gem
573 -
21 - Spawning Gems Challenge
195 -
22 - Spawning Gems Challenge Solution
323 -
23 - Game Over Detection Challenge
93 -
24 - Game Over Detection Challenge Solution
327 -
25 - Stopping The Game
226 -
26 - Keeping Score Challenge
354 -
27 - Keeping Score Challenge Solution
165 -
28 - Music
244 -
29 - Sound Effects
518 -
30 - Aspect Ratios
459 -
31 - Project Files
448 -
01 - Coming Soon
-
Godot version used in this section
-
Introduction
56 -
01 - Outline and goals
203 -
02 - Setup Challenge
127 -
03 - Setup Challenge Solution
982 -
04 - Tile Map Layers
883 -
05 - Player Scene
723 -
06 - Player Animations
201 -
07 - Player Movement
788 -
08 - Player State
571 -
09 - Enemy Outline
200 -
10 - Base Enemy
593 -
11 - Snail Visuals
553 -
12 - Snail Logic
600 -
13 - Frog Visuals
372 -
14 - Frog Logic
1139 -
15 - Eagle Visuals
444 -
16 - Eagle Logic
621 -
17 - Bullets
356 -
18 - Bullets Logic
418 -
19 - Object Maker
761 -
20 - Shooter Scene
565 -
21 - Eagle Shoot Challenge
19 -
22 - Eagle Shoot Challenge Solution
251 -
23 - Explosion
457 -
24 - Fruit Pickup
773 -
25 - Ball Spikes Path Folllow
935 -
26 - One way, Alternative Tiles
243 -
27 - Player Invincible and Hurt Outline
306 -
28 - Player Invincible and Hurt Challenge / Solution
588 -
29 - Player Hurt
458 -
30 - Player Lives
219 -
31 - Hud Challenge
227 -
32 - Hud Challenge Solution
382 -
33 - Hud Score And Lives
704 -
34 - Boss Intro
267 -
35 - Animation Trees and Determinism
1459 -
36 - Boss Logic
1227 -
37 - Checkpoint
390 -
38 - Checkpoint Challenge
43 -
39 - Checkpoint Challenge Solution
695 -
40 - Main Scene
954 -
Pre-41 - Pixel Snap
-
41 - Moving Platform Approaches, PathFollow and Tween
1599 -
42 - Scene Navigation
655 -
43 - Hud Navigation
566 -
44 - Shake Cam
674 -
45 - Parallax
1241 -
46 - Stopping Things
499 -
47 - Pausing the Tree
413 -
47a - Terrains (Autotiling)
592 -
48 - Final thoughts and thank you
194
-
Godot version used in this section
-
Introduction
52 -
01 - Learning Outline
180 -
02 - Project Setup
174 -
03 - Level Data Structure
407 -
04 - Level Data Read
438 -
05 - Main Scene
188 -
06 - Level Button Scene
222 -
07 - Main Scene Level Buttons Challenge
59 -
08 - Main Scene Level Buttons Challenge Solution
239 -
09 - Level and Player Scenes
508 -
10 - Tile Map Layer Api
205 -
11 - Building The Level
610 -
12 - Placing Camera and Player
245 -
13 - Level Button Navigation
496 -
14 - Player Movement
269 -
15 - Pushing Boxes
362 -
16 - Game State
197 -
17 - Game ui
373 -
18 - Game Over ui
422 -
19 - Completed Game
466
-
Godot version used in this section
-
Introduction
58 -
01 - Introduction, this is different :D
133 -
02 - Project Review
891 -
03 - Ui Button Challenge
48 -
04 - Ui Button Challenge Solution
203 -
05 - Scenes Overview
382 -
06 - Inheritance Overview
214 -
07 - Player Movement
258 -
08 - Player Movement Challenge
43 -
09 - Player Movement Challenge Solution
213 -
10 - Hit Box
231 -
11 - Bullet Challenge
136 -
12 - Bullet Challenge Solution
440 -
13 - Bullet Movement
237 -
14 - Bullet Creation Challenge
206 -
15 - Bullet Creation Challenge Solution
265 -
16 - PowerUp Scene
374 -
17 - Power Up Challenge
53 -
18 - Power Up Challenge Solution
254 -
19 - Shield Challenge
343 -
20 - Shield Challenge Solution
257 -
21 - Player Powerup Shield
128 -
22 - Explosion Challenge
250 -
23 - Explosion Challenge Solution
176 -
24 - Enemy Base Challenge
151 -
25 - Enemy Base Challenge Solution
692 -
26 - Enemy Shoots Challenge
481 -
27 - Enemy Shoots Challenge Solution
284 -
28 - Health Bar
706 -
29 - Enemy Death Challenge
82 -
30 - Enemy Death Challenge Solution
153 -
31 - Power Up Spawn Challenge
422 -
32 - Wave Manager Resource Challenge
156 -
33 - Wave Manager Resource Challenge Solution
281 -
34 - Wave Manager Scene
798 -
35 - Game ui
281 -
36 - Player Health Challenge
108 -
37 - Player Health Challenge Solution
605 -
38 - Scoring
95 -
39 - Game Over
377 -
40 - Saucer Intro
132 -
41 - Saucer Scene
1178 -
42 - Saucer Manager Scene
329 -
43 - Homing Missile Scene
330 -
44 - Homing Missile Logic
704 -
45 - Homing Missile Complete
171 -
46 - Wave Manager Tweaks, Game Complete
245
-
01 - Intro
379 -
02 - Creating and Running a Project
743 -
03 - Variables
1011 -
04 - Arithmetic Operators
592 -
05 - Conditionals and Comparisons
907 -
06 - Conditionals Challenge
119 -
07 - Conditionals Challenge Solution
477 -
08 - Lists And Loops
1923 -
09 - Dictionaries
477 -
10 - Dictionaries Challenge
43 -
11 - Dictionaries Challenge Solution
298 -
12 - Functions
815 -
13 - Classes, Definitions and Properties
1523 -
14 - Classes, static and constants
441 -
15 - Class Inheritance, protected, override
868 -
16 - Partial Classes, Program Main
567 -
16a - Singletons, this keyword
1046 -
17 - Attributes
135 -
18 - String Formatting
251 -
19 - Events and Delegates
460 -
20 - Enums
252
-
Introduction
53 -
01 - Section Goals
169 -
02 - Project Setup Challenge
63 -
03 - Project Setup Challenge Solution
424 -
04 - Development Approach
313 -
05 - Physics Nodes
577 -
06 - Plane Scene
999 -
07 - Plane Falling
574 -
07a - FPS Notes
350 -
08 - Plane Flying Challenge
47 -
09 - Plane Flying Challenge Solution
173 -
10 - Animation Player
1046 -
11 - Animation Player Challenge
112 -
12 - Animation Player Challenge Solution
159 -
13 - Static Body Barrier
179 -
14 - Pipe Scene Challenge
79 -
15 - Pipe Scene Challenge Solution
180 -
16 - Laser Scene Challenge
105 -
17 - Laser Scene Challenge Solution
464 -
18 - Pipes Scene
661 -
19 - Pipes Scrolling Challenge
79 -
20 - Pipes Scrolling Challenge Solution
282 -
21 - Pipes Random Position
289 -
22 - Pipes Spawning Challenge
176 -
23 - Pipes Spawning Challenge Solution
474 -
24 - Plane Hits Floor
233 -
25 - Plane Signal Challenge
33 -
26 - Plane Signal Challenge Solution
166 -
27 - Stop The Pipes Challenge
30 -
28 - Stop The Pipes Challenge Solution
256 -
29 - Pipes Laser Collision
744 -
30 - Main Scene And UI
1480 -
31 - Main Scene Challenge
35 -
32 - Main Scene Challenge Solution
235 -
33 - Scene Navigation
316 -
34 - Scene Navigation Challenge
70 -
35 - Scene Navigation Challenge Solution
342 -
36 - Autoloads / Globals
290 -
37 - Game Manager
512 -
38 - Event Bus Pattern
368 -
39 - Singleton Challenge
31 -
40 - Singleton Challenge Solution
514 -
41 - Pipes Stopping Challenge
53 -
42 - Pipes Stopping Challenge Solution
246 -
43 - Score Manager Outline
80 -
44 - Score Manager Challenge
172 -
45 - Score Manager Challenge Solution
540 -
46 - Hud, Ui, Canvas Layers
720 -
47 - Score Signal
232 -
48 - Score Update Challenge
36 -
49 - Score Update Challenge Solution
376 -
50 - High Score Label Challenge
12 -
51 - High Score Label Challenge Solution
134 -
51a - High Score Persistence
772 -
52 - Game Over UI Challenge
285 -
53 - Game Over UI Challenge Solution
641 -
54 - Intro to Parallax
482 -
55 - Parallax 2D Node
322 -
56 - Parallax Scene
610 -
57 - Sound, Stopping Parallax
320 -
58 - Simple Scene Transition
585 -
59 - Complex Scene Transition
520 -
60 - Summary
72 -
Extras 1 - Using Godot to disconnect signals
252 -
Extras 2 - Dean's double score bug!
378
-
Introduction
63 -
01 - Section Goals
322 -
02 - Project Setup Challenge
63 -
03 - Project Setup Solution
274 -
04 - Rigidbody2D Introduction
1434 -
05 - Scenes Outline
246 -
06 - Animal Scene Challenge
104 -
07 - Animal Scene Challenge Solution
431 -
08 - Animal Scene Logic
307 -
09 - Animal Scene Logic Challenge
44 -
10 - Animal Scene Logic Challenge Solution
115 -
11 - Animal Scene Logic Flow
283 -
12 - Animal Scene Setup Challenge
186 -
13 - Animal Scene Setup Challenge Solution
382 -
14 - Drag Detection
468 -
15 - Drag Movement
874 -
16 - Release
395 -
17 - Flight
593 -
18 - Water Challenge
118 -
19 - Water Challenge Solution
449 -
20 - Animal Regen Challenge
118 -
21 - Animal Regen Challenge Solution
501 -
22 - Cup Scene
763 -
22a - Cup Collisions Intro
238 -
23 - Cup Collisions
795 -
24 - Overall Flow
163 -
25 - Main Scene, Score Manager Challenge
69 -
26 -Main Scene, Score Manager Challenge Solution
510 -
27 - Level Button Scene
671 -
28 - Level Button Logic Challenge
127 -
29 - Level Button Logic Challenge Solution
394 -
30 - Scene Inheritence
384 -
31 - Navigation Challenge
41 -
32 - Navigation Challenge Solution
244 -
33 - Game Ui Challenge
98 -
34 - Game Ui Challenge Solution
493 -
35 - Scorer Scene Logic
372 -
36 - Scorer Scene Logic, Groups In Code
416 -
37 - Scorer Scene Level Complete Challenge
49 -
38 - Scorer Scene Level Complete Solution
242 -
39 - Scorer Scene Attempts Challenge
34 -
40 - Scorer Scene Attempts Solution
127 -
41 - GameUi Logic Challenge
99 -
41a - GameUi Logic Solution
792 -
42 - Score Persistence Approach
155 -
43 - Score Persistence #1
960 -
44 - Score Persistence #2
589
-
Introduction
49 -
01 - Approach
257 -
02 - Outline
253 -
03 - Project Setup
65 -
04 - Project Setup Labels
228 -
05 - Master Scene
232 -
06 - Custom Resources Intro
349 -
07 - Custom Resources Example
341 -
08 - Custom Resources Challenge
32 -
09 - Custom Resources Challenge Solution
513 -
10 - Image Files List Resource Setup
128 -
11 - Image Files List Resource Challenge
54 -
12 - Image Files List Resource Challenge Solution
711 -
13 - Level Data Resources
307 -
14 - Image Manager Image Load
550 -
15 - Image Manager Image Functions Challenge
23 -
16 - Image Manager Image Functions Challenge Solution
222 -
17 - Level Button Outline
119 -
18 - Level Button UI
95 -
19 - Level Button Logic
831 -
20 - Main Screen Layout
357 -
21 - Front Sprite Intro
127 -
22 - Front Sprite Tweens
1171 -
23 - Game Screen Layout
163 -
24 - Game Screen Layout Challenge
117 -
25 - Game Screen Layout Challenge Solution
403 -
26 - Memory Tile Ui
240 -
27 - Level Building Logic Outline
254 -
28 - Level Building Logic Implementation
943 -
29 - Level Building Logic Challenge
32 -
30 - Level Building Logic Challenge Solution
252 -
31 - Navigation Outline
358 -
32 - Navigation Challenge
73 -
33 - Navigation Challenge Solution
558 -
34 - Scorer Logic Outline
485 -
35 - Tile Logic
923 -
36 - Scorer Scene
592 -
37 - Scorer Logic 1
346 -
38 - Scorer Logic 2
258 -
39 - Tile Tweens
347 -
40 - Game Over Challenge
57 -
41 - Game Over Challenge Solution
317 -
42 - Game Over UI Complete
543 -
43 - Sound Manager
544 -
44 - Updates, End Of Section
190
Requirment
-
Computer with Adequate Specifications: A computer capable of using the Vulkan renderer is required to work on the projects effectively - the course contains a free video to make a check!
-
This course assumes no prior knowledge of the C# but does assume a basic understanding of programming concepts. However, even individuals without programming experience can benefit from the course.
-
A 64 bit machine. The lastest .NET does not work with 32 bit machines.
Outcomes
-
Master Godot 4 with C#: Learn scene creation, input handling, collision detection, and more using the power of C# in the Godot 4 game engine.
-
Create Diverse Games: Develop Flappy Bird, Angry Birds, memory games, platformers, puzzles, space shooters, and maze escapes.
-
Acquire Game Dev Skills: Gain level design, animation, enemy AI, power-ups, UI design, and apply design patterns like singletons and event buses.
-
Explore Mechanics & Patterns: Understand parallax scrolling, physics-based gameplay, pathfinding AI, state machines, and dynamic level loading.
1 Student
1 Course
0 review