From a9ffff8f1b968947bc08eaac771fd70972ffb24b Mon Sep 17 00:00:00 2001 From: Joshua Allen McCoy Date: Tue, 24 Sep 2024 15:29:13 -0700 Subject: [PATCH 01/10] Update README.md Updated basic course and engine information --- README.md | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index a92392d..f3d6bde 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,6 @@ # ECS179 - Gameplay Programming -## UPDATES FOR WINTER 2024 -Update from the topic course listing ECS189L to full elective status as ECS179! -CRNs are no longer required for the course. +## UPDATES FOR FALL 2024 +The course is moving from Unity to Godot. # Syllabus ## Basic Information @@ -16,16 +15,14 @@ http://joshmccoy.com https://faculty.engineering.ucdavis.edu/mccoy/ ~~https://www.twitter.com/deftjams~~ -### TA -Kyle Mitchell -Email: kdmitch at ucdavis dot edu -Office Hours: TBD +### TA Team + ### Course -Lecture Meeting Time: Tuesdays and Thursdays at 1:40-3:00 PM in YOUNG 184 -Discussion: Tuesdays at 8:00-8:50 AM ~~in YOUNG184~~ +Lecture Meeting Time: Tuesdays and Thursdays at 1:40-3:00 PM in Cruess 1003 +Discussion: Tuesdays at 6:00-6:50 PM in Holiday: -Final Examination Period: Thursday, March 21st at 3:30 PM +Final Examination Period: ## Course Description @@ -33,9 +30,7 @@ This course is about the design and development of nuanced and highly contextual ## Materials -Unity version 2022.3.16. Download it directly [here](https://unity.com/releases/editor/whats-new/2022.3.16) or get it with Unity Hub putting the following URI in your browser: -unityhub://2022.3.16f1/d2c21f0ef2f1 -You can download Unity Hub [here](https://unity3d.com/get-unity/download). +Godot Engnine version 4.3stable. Down load is [here](https://godotengine.org/download/archive/4.3-stable/). ## Grading and Assessment From 771a516e8896593bad13065ae476e76bfd365ed0 Mon Sep 17 00:00:00 2001 From: Joshua Allen McCoy Date: Tue, 24 Sep 2024 15:29:51 -0700 Subject: [PATCH 02/10] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f3d6bde..9c96440 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ This course is about the design and development of nuanced and highly contextual ## Materials -Godot Engnine version 4.3stable. Down load is [here](https://godotengine.org/download/archive/4.3-stable/). +Godot Engnine version 4.3-stable Standard. Down load is [here](https://godotengine.org/download/archive/4.3-stable/). ## Grading and Assessment From c6228c0cd4d169d83298257ccfd4a00b2c722252 Mon Sep 17 00:00:00 2001 From: Joshua Allen McCoy Date: Tue, 24 Sep 2024 16:01:35 -0700 Subject: [PATCH 03/10] Update README.md Removed Unity exercise details. --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 9c96440..78e0042 100644 --- a/README.md +++ b/README.md @@ -91,10 +91,10 @@ AttendanceGrade = Min(5, 5 * (SubmittedAttendanceCodes / (ClassesWhereAttendance Week | Topic | Reading | Discussion Plan | Assignments and Due Dates ----- | ----- | ----- | ----- | ----- -1 | Overview of the course, game engines, anatomy of game development, command pattern. | Salen and Zimmermen ch. 4 & 5 | Dissecting Unity projects. | [Getting started with Unity materials](https://github.com/dr-jam/GameplayProgramming#preparing-for-projects) -2 | Unity structures, Code standards, best practices, style guides, camera systems, lerp. | [Command Pattern](https://gameprogrammingpatterns.com/command.html), [Style Guide and Best Practices](./StyleGuides.md), [Scroll Back: The Theory and Practice of Cameras in Side-Scrollers](https://docs.google.com/document/d/1iNSQIyNpVGHeak6isbP6AHdHD50gs8MNXF1GCf08efg/pub) by Itay Karen. | Overview of Programming Exercise 1: Command Pattern | [Exercise 1: Command Pattern](https://github.com/dr-jam/CommandPatternExercise) -3 | Gameplay mechanics, Game Events and the Observer Pattern.Data-driven game systems.| [Defining Game Mechanics](http://gamestudies.org/0802/articles/sicart) by Miguel Sicart, [Pubsub](https://gameprogrammingpatterns.com/event-queue.html) | Overview of Exercise 2: Camera Controllers | [Exercise 2: Cameral Control](https://github.com/dr-jam/CameraControlExercise),
Exercise 1 Implementation -4 | Mechanics, rules, gameplay systems, component systems. | Salen and Zimmermen ch. 11, 12, 13, [Component design pattern](https://gameprogrammingpatterns.com/component.html) | Overview of Exercise 3 | [Exercise 3: Observer Pattern](https://github.com/dr-jam/ObserverExercise)
Exercise 2 Peer Review
Exercise 1 Peer Review,
Exercise 2 +1 | Overview of the course, game engines, anatomy of game development, command pattern. | Salen and Zimmermen ch. 4 & 5 | Dissecting Godot projects. | [Getting started with Goto materials](https://github.com/dr-jam/GameplayProgramming#preparing-for-projects) +2 | Unity structures, Code standards, best practices, style guides, camera systems, lerp. | [Command Pattern](https://gameprogrammingpatterns.com/command.html), [Style Guide and Best Practices](), [Scroll Back: The Theory and Practice of Cameras in Side-Scrollers](https://docs.google.com/document/d/1iNSQIyNpVGHeak6isbP6AHdHD50gs8MNXF1GCf08efg/pub) by Itay Karen. | Overview of Programming Exercise 1: Command Pattern | [Exercise 1]() +3 | Gameplay mechanics, Game Events and the Observer Pattern.Data-driven game systems.| [Defining Game Mechanics](http://gamestudies.org/0802/articles/sicart) by Miguel Sicart, [Pubsub](https://gameprogrammingpatterns.com/event-queue.html) | Overview of Exercise 2: Camera Controllers | [Exercise 2: Cameral Control](),
Exercise 1 Implementation +4 | Mechanics, rules, gameplay systems, component systems. | Salen and Zimmermen ch. 11, 12, 13, [Component design pattern](https://gameprogrammingpatterns.com/component.html) | Overview of Exercise 3 | [Exercise 3]()
Exercise 2 Peer Review
Exercise 1 Peer Review,
Exercise 2 5 | Interactivity, factory pattern. | Salen and Zimmermen ch. 6, Crawford [The Art of Game Design, ch. 1, INTERACTION section](https://www.digitpress.com/library/books/book_art_of_computer_game_design.pdf)| | Exercise 4,
Exercise 3,
Exercise 2 Peer Review 6 | Game combat algorithms, game design documents.| [The Craft of Game Systems](https://craftofgamesystems.wordpress.com/) by Daniel Achterman 7 | The Jump. | [Game Feel by Steve Swink](http://www.game-feel.com/) | | From 43b87ff693067f869615950407034913b093a74f Mon Sep 17 00:00:00 2001 From: Joshua Allen McCoy Date: Tue, 24 Sep 2024 16:02:28 -0700 Subject: [PATCH 04/10] Update README.md typo fixes --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 78e0042..ca2e2b7 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ This course is about the design and development of nuanced and highly contextual ## Materials -Godot Engnine version 4.3-stable Standard. Down load is [here](https://godotengine.org/download/archive/4.3-stable/). +Godot Engine version 4.3-stable Standard. Download [here](https://godotengine.org/download/archive/4.3-stable/). ## Grading and Assessment @@ -56,7 +56,7 @@ D- | 60 F | 0 ### Exercises -The programming exercises consist of projects in Unity in which you must implement significant game systems or capabilities. These exercises are to be completed individually and will be worth equal points. Each will have two components, which are described below with a typical amount of grade points they are worth: +The programming exercises consist of projects in Godot in which you must implement significant game systems or capabilities. These exercises are to be completed individually and will be worth equal points. Each will have two components, which are described below with a typical amount of grade points they are worth: 1. [70] The individual programming assignment. 2. [30] Peer-reviewing the work of another pseudo-randomly assigned student. From e33f0da295079b58141121258a8ef984a6418478 Mon Sep 17 00:00:00 2001 From: Joshua Allen McCoy Date: Thu, 26 Sep 2024 10:30:10 -0700 Subject: [PATCH 05/10] Update README.md typo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ca2e2b7..52eaa3b 100644 --- a/README.md +++ b/README.md @@ -91,7 +91,7 @@ AttendanceGrade = Min(5, 5 * (SubmittedAttendanceCodes / (ClassesWhereAttendance Week | Topic | Reading | Discussion Plan | Assignments and Due Dates ----- | ----- | ----- | ----- | ----- -1 | Overview of the course, game engines, anatomy of game development, command pattern. | Salen and Zimmermen ch. 4 & 5 | Dissecting Godot projects. | [Getting started with Goto materials](https://github.com/dr-jam/GameplayProgramming#preparing-for-projects) +1 | Overview of the course, game engines, anatomy of game development, command pattern. | Salen and Zimmermen ch. 4 & 5 | Dissecting Godot projects. | [Getting started with Godot materials](https://github.com/dr-jam/GameplayProgramming#preparing-for-projects) 2 | Unity structures, Code standards, best practices, style guides, camera systems, lerp. | [Command Pattern](https://gameprogrammingpatterns.com/command.html), [Style Guide and Best Practices](), [Scroll Back: The Theory and Practice of Cameras in Side-Scrollers](https://docs.google.com/document/d/1iNSQIyNpVGHeak6isbP6AHdHD50gs8MNXF1GCf08efg/pub) by Itay Karen. | Overview of Programming Exercise 1: Command Pattern | [Exercise 1]() 3 | Gameplay mechanics, Game Events and the Observer Pattern.Data-driven game systems.| [Defining Game Mechanics](http://gamestudies.org/0802/articles/sicart) by Miguel Sicart, [Pubsub](https://gameprogrammingpatterns.com/event-queue.html) | Overview of Exercise 2: Camera Controllers | [Exercise 2: Cameral Control](),
Exercise 1 Implementation 4 | Mechanics, rules, gameplay systems, component systems. | Salen and Zimmermen ch. 11, 12, 13, [Component design pattern](https://gameprogrammingpatterns.com/component.html) | Overview of Exercise 3 | [Exercise 3]()
Exercise 2 Peer Review
Exercise 1 Peer Review,
Exercise 2 From 39e701ebcd05340df6a85d4bb3e158be5176bc43 Mon Sep 17 00:00:00 2001 From: Joshua Allen McCoy Date: Thu, 26 Sep 2024 11:36:56 -0700 Subject: [PATCH 06/10] Update README.md Added Godot texts available from the UC Davis library. --- README.md | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 52eaa3b..11c5d6a 100644 --- a/README.md +++ b/README.md @@ -149,7 +149,34 @@ Day | Material * [Scripting](https://docs.unity3d.com/Manual/ScriptingSection.html) - The entry point into scripting in Unity. * [Scripting Tutorials](https://unity3d.com/learn/tutorials/s/scripting) - An index of beginner, intermediate, and topical scripting tutorials and lessons. -### C# +### Additional Texts +Vanhove, Sander. Learning GDScript by Developing a Game with Godot 4: A Fun Introduction to Programming in GDScript 2. 0 and Game Development Using the Godot Engine. 1st ed. Birmingham: Packt Publishing, Limited, 2024. Print. +https://search.library.ucdavis.edu/permalink/01UCD_INST/1hjlc2p/cdi_proquest_ebookcentral_EBC31290475 +Entry-level text to basic Godot constructs and GDScript. + +Bradfield, Chris. Godot 4 Game Development Projects : Build Five Cross-Platform 2D and 3D Games Using One of the Most Powerful Open Source Game Engines. Second edition. Birmingham, England: Packt Publishing Ltd, 2023. Print. +https://search.library.ucdavis.edu/permalink/01UCD_INST/9fle3i/alma9920761168606531 +Entry-level text to basic Godot constructs and GDScript. + +Wang, Wally, and Tonnetta Walcott. Programming for Game Design : A Hands-On Guide with Godot. 1st ed. 2024. Berkeley, CA: Apress, 2024. Web. +https://search.library.ucdavis.edu/permalink/01UCD_INST/9fle3i/alma9920512123506531 +Entry-level text focusing on programming and GDScript suitable for those with a programming background in another language. + +Bradfield, Chris. Godot 4 Game Development Projects : Build Five Cross-Platform 2D and 3D Games Using One of the Most Powerful Open Source Game Engines. Second edition. Birmingham, England: Packt Publishing Ltd, 2023. Print. +https://search.library.ucdavis.edu/permalink/01UCD_INST/9fle3i/alma9919503225306531 +Series of small game projects. + +Johnson, Jeff. Godot 4 Game Development Cookbook : Over 50 Solid Recipes for Building High-Quality 2D and 3D Games with Improved Performance. 1st ed. Birmingham, England: Packt Publishing Ltd., 2023. Print. +https://search.library.ucdavis.edu/permalink/01UCD_INST/9fle3i/alma9919344194606531 +More advanced topics like shaders and multiplayer. + +Campos, Henrique. ESSENTIAL GUIDE TO CREATING MULTIPLAYER GAMES WITH GODOT 4.0 : Harness the Power of Godot Engine’s GDScript Network API to Connect Players in Multiplayer Games. 1st edition. Birmingham, UK: Packt Publishing Ltd., 2024. Print. +https://search.library.ucdavis.edu/permalink/01UCD_INST/9fle3i/alma9920561598006531 +A more advanced text for learning Godot's networking libraries. + +Pitt, Christopher. Procedural Generation in Godot : Learn to Generate Enjoyable Content for Your Games. Berkeley, CA: Apress, 2023. Print. +https://search.library.ucdavis.edu/permalink/01UCD_INST/9fle3i/alma9918897363706531 +A collection of entry-level PCG techniques mixed with reconstructions of existing games. #### Learning C# * [Getting started with C#](https://docs.microsoft.com/en-us/dotnet/csharp/getting-started/) from Microsoft .NET documentation. From 83e05346fe5974ad102bb870b174e78e543c5d65 Mon Sep 17 00:00:00 2001 From: Joshua Allen McCoy Date: Thu, 26 Sep 2024 11:38:14 -0700 Subject: [PATCH 07/10] Update README.md Academic title change :) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 11c5d6a..c3fc640 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ The course is moving from Unity to Godot. ## Basic Information ### Instructor -Dr. Joshua A. McCoy, Assistant Professor +Dr. Joshua A. McCoy, Associate Professor Computer Science & Cinema and Digital Media Departments Email: jamccoy at ucdavis dot edu Office: 3033 Kemper Hall From 52cf738e927a6ad8a6a3916caf240821c104a4ca Mon Sep 17 00:00:00 2001 From: Joshua Allen McCoy Date: Thu, 26 Sep 2024 11:49:17 -0700 Subject: [PATCH 08/10] Update README.md Finals time, discussion location, and holidays. --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index c3fc640..13c0abd 100644 --- a/README.md +++ b/README.md @@ -19,10 +19,10 @@ https://faculty.engineering.ucdavis.edu/mccoy/ ### Course -Lecture Meeting Time: Tuesdays and Thursdays at 1:40-3:00 PM in Cruess 1003 -Discussion: Tuesdays at 6:00-6:50 PM in -Holiday: -Final Examination Period: +Lecture Meeting Time: Tuesdays and Thursdays at 1:40-3:00 PM in Cruess 1003 +Discussion: Tuesdays at 6:00-6:50 PM in TLC 3215 +Holidays: Thursday, November 28th (Thanksgiving Day) [Academic Calenar](https://registrar.ucdavis.edu/calendar/master) +Final Examination Period: Tue. Dec.10 at 8:00am ## Course Description From 3947ccfd294e86f22574f204165c1652053dba29 Mon Sep 17 00:00:00 2001 From: Joshua Allen McCoy Date: Thu, 26 Sep 2024 13:01:02 -0700 Subject: [PATCH 09/10] Update README.md Updated assignment 0 information. --- README.md | 38 ++++++++++++++++++++++---------------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 13c0abd..26df522 100644 --- a/README.md +++ b/README.md @@ -21,8 +21,8 @@ https://faculty.engineering.ucdavis.edu/mccoy/ ### Course Lecture Meeting Time: Tuesdays and Thursdays at 1:40-3:00 PM in Cruess 1003 Discussion: Tuesdays at 6:00-6:50 PM in TLC 3215 -Holidays: Thursday, November 28th (Thanksgiving Day) [Academic Calenar](https://registrar.ucdavis.edu/calendar/master) -Final Examination Period: Tue. Dec.10 at 8:00am +Holidays: Thursday, November 28th (Thanksgiving Day) [Academic Calendar](https://registrar.ucdavis.edu/calendar/master) +Final Examination Period: Tue. Dec.10 at 8:00 PM ## Course Description @@ -112,27 +112,33 @@ Week | Topic | Reading | Discussion Plan | Assignments and Due Dates *You are not prepared!* -- [Illidan Stormrage](https://youtu.be/IBHL_-biMrQ?t=142) -Illidan's words may resonate with you as computer science and game development are both difficult disciplines whose surrounding communities are laced with high expectations and elitism. Below are resources that can cut through assumptions and feeling though self-examination. +Illidan's words may resonate with you as computer science and game development are both difficult disciplines whose surrounding communities are laced with high expectations and elitism. (Materials for Godot are under development.) -Introductory practice exercises for C# and game systems (you can run these in Unity, .Net, or MonoDevelop): -1. [Final Fantasy VI Combat System](https://docs.google.com/document/d/144-2AXOJX79Sw03EwPXGYxdZJOk0zqVZRnSgKHiStA0/edit?usp=sharing) -2. [Crystal Warriors](https://docs.google.com/document/d/1lvsscM-no1C31GW-NSpH_a2u4a2PGHmWhGRHpY7cxyk/edit?usp=sharing) -3. [Fantasy Fight](https://docs.google.com/document/d/1DX_LwKX4Yg7oCnHDdarZkJdcausVmn9BE9hKh_D-Fac/edit?usp=sharing) +~~Below are resources that can cut through assumptions and feeling though self-examination.~~ -[Unity and C# Practice Exam for New Programmers](https://docs.google.com/document/d/1_GUQKvwa-ZqboAhgp63pToQQvR6WdVvVJ3kcRDQ1qR0/edit?usp=sharing) +~~Introductory practice exercises for C# and game systems (you can run these in Unity, .Net, or MonoDevelop):~~ +~~1. [Final Fantasy VI Combat System](https://docs.google.com/document/d/144-2AXOJX79Sw03EwPXGYxdZJOk0zqVZRnSgKHiStA0/edit?usp=sharing)~~ +~~2. [Crystal Warriors](https://docs.google.com/document/d/1lvsscM-no1C31GW-NSpH_a2u4a2PGHmWhGRHpY7cxyk/edit?usp=sharing)~~ +~~3. [Fantasy Fight](https://docs.google.com/document/d/1DX_LwKX4Yg7oCnHDdarZkJdcausVmn9BE9hKh_D-Fac/edit?usp=sharing)~~ + +~~[Unity and C# Practice Exam for New Programmers](https://docs.google.com/document/d/1_GUQKvwa-ZqboAhgp63pToQQvR6WdVvVJ3kcRDQ1qR0/edit?usp=sharing)~~ ### Preparing for Projects -This is a 5-day regimen of training tutorials to learn the basics of Unity for use in this course. Each day consists of between 2 and 3 hours of material per day. +Below is a set of training tutorials to learn the basics of Godot for use in this course. You should spend bewteen 5 and 10 hours on these tutorials depending on your experience level to prepare for the first exercise. -Day | Material ------- | ----- -1 | [Create Unity Student Account](https://unity.com/products/unity-student) - [Start Creating](https://learn.unity.com/project/start-creating-1) - [Exploring the Editor Layout](https://learn.unity.com/tutorial/exploring-the-editor-layout-2019-3?uv=2022.3) - [Microsoft .NET Interactive Introduction to C#](https://docs.microsoft.com/en-us/dotnet/csharp/tutorials/intro-to-csharp/) (ignore *101 Linq Samples*) -2 | [Roll-a-ball Tutorial](https://learn.unity.com/project/roll-a-ball) - [Scripting Overview](https://docs.unity3d.com/Manual/ScriptingConcepts.html), -3 | [Beginner Scripting](https://learn.unity.com/project/beginner-gameplay-scripting) (You can use nearly any 3D project with this tutorial.) -4 | [Intermediate Scripting Tutorial](https://learn.unity.com/project/intermediate-gameplay-scripting) (You can use nearly any 3D project with this tutorial.) -5 | [Unity Tips](https://learn.unity.com/tutorial/unity-tips) (This is long; watch as many as you can or care to.) +Here is the [Godot Tutorials for Gameplay Programming playlist](https://www.youtube.com/playlist?list=PLwfiwgNTrxLuE2X2bdBGHdwvJ5ZVF9my1). +You should be comfortable with the following to begin the first exercise: +* How to create a project +* How assets are stored on the filesystem. +* The basic properties of the Godot editor's interface. +* Node and scene relationships and how to use them to compose basic game elements. +* GDScript's basic syntax, data structures, and use. This includes arrays, classes, and importing libraries. +* Godot's built-in functions (e.g., `_process` and `_ready`). +* The ability to add and alter input signals. +* Git and GitHub. While these systems are expected of you coming in to the class, you can find some tutorials later in the syllabus. + ### Unity [Unity User Manual](https://docs.unity3d.com/Manual/index.html) From 64b994468f34a3cb1f748f875c9eb5ed7f188185 Mon Sep 17 00:00:00 2001 From: Joshua Allen McCoy Date: Thu, 26 Sep 2024 13:10:23 -0700 Subject: [PATCH 10/10] Update README.md Updated informational links for Godot. --- README.md | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 26df522..f4c3efd 100644 --- a/README.md +++ b/README.md @@ -137,23 +137,26 @@ You should be comfortable with the following to begin the first exercise: * GDScript's basic syntax, data structures, and use. This includes arrays, classes, and importing libraries. * Godot's built-in functions (e.g., `_process` and `_ready`). * The ability to add and alter input signals. +* Simple animation and motion. * Git and GitHub. While these systems are expected of you coming in to the class, you can find some tutorials later in the syllabus. ### Unity -[Unity User Manual](https://docs.unity3d.com/Manual/index.html) -[Unity Tutorials](https://unity3d.com/learn/get-started) +[Godot Engine Documentation](https://docs.godotengine.org/en/stable/index.html) +[Godot Gettings Started Tutorials](https://docs.godotengine.org/en/stable/getting_started/introduction/index.html) #### Learning the Basics -* [Important Classes](https://docs.unity3d.com/Manual/ScriptingImportantClasses.html) - Basic descriptions and links to MonoBehavior, Transform, and RigidBody(2D). -* [Unity C# class relationship diagram](resources/UnityClassHierarchy.png) (originally from this [Reddit post](https://www.reddit.com/r/Unity3D/comments/70ra7b/after_surprising_response_from_the_first_thread_i/)) -* [Vector Cookbook](https://docs.unity3d.com/Manual/VectorCookbook.html) - A basic introduction to vector operations in Unity. -* [2D or 3D projects](https://docs.unity3d.com/Manual/2Dor3D.html) - A guide to the differences between 2D and 3D projects in Unity. -* [Graphics](https://docs.unity3d.com/Manual/Graphics.html) - The entry point to the graphics capabilities of Unity. -* [Physics](https://docs.unity3d.com/Manual/PhysicsSection.html) - The entry point to Unity's physics system. -* [Scripting](https://docs.unity3d.com/Manual/ScriptingSection.html) - The entry point into scripting in Unity. -* [Scripting Tutorials](https://unity3d.com/learn/tutorials/s/scripting) - An index of beginner, intermediate, and topical scripting tutorials and lessons. +* [Editor Introduction](https://docs.godotengine.org/en/stable/tutorials/editor/index.html) +* [Troubleshooting the Editor](https://docs.godotengine.org/en/stable/tutorials/troubleshooting.html) +* [Nodes and Scenes](https://docs.godotengine.org/en/stable/getting_started/step_by_step/nodes_and_scenes.html) +* [Instances](https://docs.godotengine.org/en/stable/getting_started/step_by_step/instancing.html) +* [GDScript reference](https://docs.godotengine.org/en/stable/tutorials/scripting/gdscript/gdscript_basics.html) +* [Best Practices](https://docs.godotengine.org/en/stable/tutorials/best_practices/index.html) +* [2D Capabilities](https://docs.godotengine.org/en/stable/tutorials/2d/index.html) +* [3D Capabilities](https://docs.godotengine.org/en/stable/tutorials/3d/index.html) +* [Animation Tools](https://docs.godotengine.org/en/stable/tutorials/animation/index.html) +* [Asset Pipeline](https://docs.godotengine.org/en/stable/tutorials/assets_pipeline/index.html) ### Additional Texts Vanhove, Sander. Learning GDScript by Developing a Game with Godot 4: A Fun Introduction to Programming in GDScript 2. 0 and Game Development Using the Godot Engine. 1st ed. Birmingham: Packt Publishing, Limited, 2024. Print. @@ -184,12 +187,6 @@ Pitt, Christopher. Procedural Generation in Godot : Learn to Generate Enjoyabl https://search.library.ucdavis.edu/permalink/01UCD_INST/9fle3i/alma9918897363706531 A collection of entry-level PCG techniques mixed with reconstructions of existing games. -#### Learning C# -* [Getting started with C#](https://docs.microsoft.com/en-us/dotnet/csharp/getting-started/) from Microsoft .NET documentation. -* [Mastering C# : a beginner's guide](https://search.library.ucdavis.edu/permalink/01UCD_INST/9fle3i/alma9917226567406531) -* [Simple and Efficient Programming with C#: Skills to Build Applications with Visual Studio And .NET](https://search.library.ucdavis.edu/permalink/01UCD_INST/1hjlc2p/cdi_askewsholts_vlebooks_9781484287378) -* [C# 12 Pocket Reference](https://search.library.ucdavis.edu/permalink/01UCD_INST/1hjlc2p/cdi_safari_books_v2_9781098147532) - ### Game Design ##### How Games are Made