{"id":22158104,"url":"https://github.com/windjammer6/16.-csharp-and-unity-learning","last_synced_at":"2025-06-10T20:36:32.858Z","repository":{"id":195372446,"uuid":"692786893","full_name":"WindJammer6/16.-Csharp-and-Unity-Learning","owner":"WindJammer6","description":"My learning journey of the C# programming language and the Unity game development framework. ","archived":false,"fork":false,"pushed_at":"2024-07-20T17:38:46.000Z","size":1105,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-29T19:49:07.030Z","etag":null,"topics":["csharp","unity"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/WindJammer6.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-09-17T15:26:26.000Z","updated_at":"2024-07-20T17:38:50.000Z","dependencies_parsed_at":null,"dependency_job_id":"f386d5f4-ea8e-4309-a340-6cb5b1451de6","html_url":"https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning","commit_stats":null,"previous_names":["windjammer6/16.-csharp-learning-and-unity-prototype-2d-game","windjammer6/16.-csharp-and-unity-learning"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WindJammer6%2F16.-Csharp-and-Unity-Learning","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WindJammer6%2F16.-Csharp-and-Unity-Learning/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WindJammer6%2F16.-Csharp-and-Unity-Learning/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WindJammer6%2F16.-Csharp-and-Unity-Learning/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WindJammer6","download_url":"https://codeload.github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245294755,"owners_count":20591899,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["csharp","unity"],"created_at":"2024-12-02T03:18:33.261Z","updated_at":"2025-03-24T14:48:44.167Z","avatar_url":"https://github.com/WindJammer6.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 16.-Csharp-and-Unity-Learning [![My Skills](https://skillicons.dev/icons?i=cs)](https://skillicons.dev)[![My Skills](https://skillicons.dev/icons?i=unity)](https://skillicons.dev)\nAfter working with Python for quite a while, I wanted to adopt a second programming language to further hone my programming skills. In addition to this, a friend of mine (Github account: [WolfPark](https://github.com/wolfparktaerim)) always wanted to create a video game of his own, and recommended me one of the many powerful game development engines/framework, [Unity](https://unity.com/download). However, the main issue is that Unity uses the C# language, rather than Python. Hence, I decided to take this opportunity to while helping out on making a video game on Unity, to also learn the C# programming language, as well as some of the Unity C# syntax.\n\nApparently the C# programming language is also an object-oriented programming language, like Python.\n\nApart from the '[Unity C# Syntax learn code archives](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20learn%20code%20archives)' folder's sources where I learnt Unity C# syntax, I also made reference from this popular 'The Unity Tutorial For Complete Beginners' Youtube tutorial video (link: https://www.youtube.com/watch?v=XtQMytORBmM\u0026t=1s (Game Maker's Toolkit)) to get a general grasp on how the Unity editor/software looks like and work, which helped tremondously in my understanding of the Unity editor/software.\n\nAn example of what this 'The Unity Tutorial For Complete Beginners' Unity Youtube tutorial video by Game Maker's Toolkit taught, on the terminology of the 4 most important panels of the Unity editor/software:\n\u003cp align=\"center\"\u003e \n  \u003cimg src=\"https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/blob/main/Image%20and%20labelling%20of%20the%204%20important%20panels%20of%20the%20Unity%20software.png\"  width=\"350\" height=\"200\"\u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\n## Table of Contents:\nHere is a directory to the explanations of what each folder contains in this C# and Unity learning journey repository:\n1. [C# environment in VS code (to run C# code)](#csharpenvironmentinvscode)  \n2. [C# learn code archives](#csharpcodearchives)\n   + [C# basics](#csharpbasics)\n   + [C# built-in data structures](#csharpbuiltindatastructures)\n   + [C# OOP](#csharpoop)\n   + [C# short projects](#csharpshortprojects)\n   + ['Setting_up_C#_in VScode.txt' text file](#settingupcsharpinvscode)\n3. [Unity C# Syntax learn Unity project](#unitycsharpsyntaxlearnunityproject)  \n4. [Unity C# Syntax learn code archives](#unitycsharpsyntaxlearncodearchives)  \n\n\u003cbr\u003e\n\n## [1. C# environment in VS code (to run C# code)](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20environment%20in%20VS%20code%20(to%20run%20C%23%20code)) \u003ca name = \"csharpenvironmentinvscode\"\u003e\u003c/a\u003e [![My Skills](https://skillicons.dev/icons?i=cs)](https://skillicons.dev)\n\nThis is the C# environment that you need to set up in VS code in order to run your C# files in VS code. In this C# environment in VS code folder, you can modify the 'run_code_here.cs' C# file to whatever C# code you want to run in VS code. Don't modify anything else in this C# environment in VS code folder as it might introduce bugs to your C# environment in VS code.\n\nThis is Youtube video where I learnt how to set up this C# environment in VS code, and how to use it to run C# code in VS code: https://www.youtube.com/watch?v=CO4BGZOuUkM (Tech Decode Tutorials)\n\nI'm not sure if this C# environment works for other IDE/compilers... I have only ever used it for VS code and it works for VS code.\n\n*Source(s):*  \n+ https://www.youtube.com/watch?v=CO4BGZOuUkM (Tech Decode Tutorials) (Youtube video labelled 'How to Run C# in Visual Studio Code on Windows 10 2022' by Tech Decode Tutorials) for the setting up c# in vscode section stuffs   \n\n\u003cbr\u003e\n\n## [2. C# learn code archives](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20learn%20code%20archives) \u003ca name = \"csharpcodearchives\"\u003e\u003c/a\u003e [![My Skills](https://skillicons.dev/icons?i=cs)](https://skillicons.dev)\nThis folder contains all the C# files during my C# programming language learning journey, segregated into 4 folders, '[C# basics](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20learn%20code%20archives/1.%20C%23%20basics)', '[C# built-in data structures](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20learn%20code%20archives/2.%20C%23%20built-in%20data%20structures)', '[C# OOP](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20learn%20code%20archives/3.%20C%23%20OOP)' and '[C# short projects](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20learn%20code%20archives/4.%20C%23%20short%20projects)', organised based on the  programming concept of each C# file. Most of the information in the C# files in this folder is taken from this 3 hour long Youtube video: https://www.youtube.com/watch?v=GhQdlIFylQ8\u0026t=12271s (freeCodeCamp), while I split its lessons myself to the individual folders.\n\nFor the information in the C# files in the [C# basics](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20learn%20code%20archives/1.%20C%23%20basics) folder, '[920. What_are_namespaces_in_C#_and_namespace_statements_and_using_statements_and_their_applications_in_the_C#_programmiing_language.txt](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/blob/main/C%23%20learn%20code%20archives/1.%20C%23%20basics/920.%20What_are_namespaces_in_C%23_and_namespace_statements_and_using_statements_and_their_applications_in_the_C%23_programmiing_language.txt)', '[921. namespace_statements.cs](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/blob/main/C%23%20learn%20code%20archives%2F1.%20C%23%20basics%2F921.%20namespace_statements.cs)', and '[922. using_statements.cs](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/blob/main/C%23%20learn%20code%20archives%2F1.%20C%23%20basics%2F922.%20using_statements.cs)', regarding about Namespaces in the C# programming language, 'namespace' and 'using' statements as well as their applications in the structure of the C# programming language, their sources are taken separately from https://www.youtube.com/watch?v=1BYEC1ZENSg\u0026t=1s (Matt Noone) (this Youtube short provides a very concise and clear summary of what are Namespaces in the C# programming language, 'namespace' and 'using' statements as well as their applications in the structure of the C# programming language) and https://stackoverflow.com/questions/11427223/what-is-the-difference-between-a-class-library-and-a-namespace (Stack Overflow). I had to source the information from other sources due to the higher complexity of these concepts, that they aren't explained in the 3 hour long Youtube video by freeCodeCamp, and that they aren't present in Python programming language as well.\n\n*How to use the C# files in this folder?*  \nThe C# files in this folder need to be used along with the '[C# environment in VS code (to run C# code)](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20environment%20in%20VS%20code%20(to%20run%20C%23%20code))' folder in order to run them in VS code.\n\n\u003cbr\u003e \n\n**[C# basics](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20learn%20code%20archives/1.%20C%23%20basics) \u003ca name = \"csharpbasics\"\u003e\u003c/a\u003e**  \nThis folder contains all the C# files that deals with the basic syntax and structure in the C# programming language.\n\n**[C# built-in data structures](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20learn%20code%20archives/2.%20C%23%20built-in%20data%20structures) \u003ca name = \"csharpbuiltindatastructures\"\u003e\u003c/a\u003e**  \nThis folder contains all the C# files that deals with the built-in data structures in the C# programming language.\n\n**[C# OOP](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20learn%20code%20archives/3.%20C%23%20OOP) \u003ca name = \"csharpoop\"\u003e\u003c/a\u003e**  \nThis folder contains all the C# files that deals with Object-Oriented Programming (OOP) concept in the C# programming language.\n\n**[C# short projects](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20learn%20code%20archives/4.%20C%23%20short%20projects) \u003ca name = \"csharpshortprojects\"\u003e\u003c/a\u003e**  \nThis folder contains all the C# files that deals with some guided mini-projects, from the same [freeCodeCamp Youtube video](https://www.youtube.com/watch?v=GhQdlIFylQ8\u0026t=12271s), including, creating a calculator, a mad-lib game, and a guessing game, in the C# programming language.\n\n**['Setting_up_C#_in VScode.txt' text file](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/blob/main/C%23%20learn%20code%20archives/Setting_up_C%23_in%20VScode.txt) \u003ca name = \"settingupcsharpinvscode\"\u003e\u003c/a\u003e**  \nThis file contains information from the Youtube video on how to set up a C# environment in VS code, and how to use it to run C# code in VS code. (link: https://www.youtube.com/watch?v=CO4BGZOuUkM (Tech Decode Tutorials))\n\nThis file is in this folder, rather than the previous folder, '[C# environment in VS code (to run C# code)](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20environment%20in%20VS%20code%20(to%20run%20C%23%20code))' because it might introduce bugs to the '[C# environment in VS code (to run C# code)](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/C%23%20environment%20in%20VS%20code%20(to%20run%20C%23%20code))' folder if this file is added to it.\n\n\u003cbr\u003e\n\n*Source(s):*  \n+ https://www.youtube.com/watch?v=GhQdlIFylQ8\u0026t=12271s (freeCodeCamp) (Youtube video labelled 'C# Tutorial - Full Course for Beginners' by freeCodeCamp)  \n+ https://www.youtube.com/watch?v=1BYEC1ZENSg\u0026t=1s (Matt Noone) (Youtube short labelled 'How to use namespaces in C#?' by Matt Noone)\n+ https://stackoverflow.com/questions/11427223/what-is-the-difference-between-a-class-library-and-a-namespace (Stack Overflow) (Stack Overflow discussion on 'What is the difference between a class library and a namespace?')  \n+ https://www.youtube.com/watch?v=CO4BGZOuUkM (Tech Decode Tutorials) (Youtube video labelled 'How to Run C# in Visual Studio Code on Windows 10 2022' by Tech Decode Tutorials) \n  \n\u003cbr\u003e\n\n## [3. Unity C# Syntax learn Unity project](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/Unity%20C%23%20Syntax%20learn%20Unity%20project) \u003ca name = \"unitycsharpsyntaxlearnunityproject\"\u003e\u003c/a\u003e [![My Skills](https://skillicons.dev/icons?i=unity)](https://skillicons.dev)\nThis is the Unity C# syntax learn project folder, which you can treat as the 'environment' to run the Unity C# scripts on the Unity editor/software, since these Unity C# scripts cannot be run on other IDEs, such as VS code, only in the Unity editor/software's terminal as a Unity project.\n\nI did not refer to any sources in order to create this folder since the Unity editor/software automatically generates a Unity project folder like this one whenever you create a Unity game, which stores all the information of your Unity game, and allows you to run/edit your Unity game and the C# scripts inside it in the Unity editor/software when you import this Unity project folder into the Unity editor/software.\n\nRefer to my seperate repository, [19.-2D-Unity-Game](https://github.com/WindJammer6/19.-2D-Unity-Game) to see what does each seperate folder within this '[Unity C# syntax learn project folder](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/Unity%20C%23%20Syntax%20learn%20Unity%20project)' does. And also, how to download this '[Unity C# syntax learn project folder](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/Unity%20C%23%20Syntax%20learn%20Unity%20project)' 'Unity project' (or any other Unity projects) from Github, as well as using it in the Unity editor/software's terminal, in the section *'How to download and use this Unity source code on Github in your Unity editor/software?'* in *'Technicalities between Unity and Github'* of the repository's 'README.md' file.\n\n*Source(s):*  \nnil\n\n\u003cbr\u003e\n\n## [4. Unity C# Syntax learn code archives](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/Unity%20C%23%20Syntax%20learn%20code%20archives) \u003ca name = \"unitycsharpsyntaxlearncodearchives\"\u003e\u003c/a\u003e [![My Skills](https://skillicons.dev/icons?i=unity)](https://skillicons.dev)\nThis folder contains all the C# files during my Unity C# syntax learning journey, organised roughly according to the order of the Unity's Youtube playlist's videos on Unity C# syntax. (link: https://www.youtube.com/playlist?list=PLX2vGYjWbI0S9-X2Q021GUtolTqbUBB9B (Unity)) Most of the information in this folder is taken from this Unity Youtube playlist: https://www.youtube.com/playlist?list=PLX2vGYjWbI0S9-X2Q021GUtolTqbUBB9B (Unity), with a lot of assistance from [ChatGPT](https://chat.openai.com/) and Googling due to how poor Unity's Youtube videos tutorials on Unity C# syntax are at teaching haiz... I did skip some of the videos from the Unity Youtube playlist as well, did not follow all of them exactly.\n\n*How to use the C# files in this folder?*  \nThe C# files in this folder needs to be used along with the '[Unity C# Syntax learn Unity project](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/Unity%20C%23%20Syntax%20learn%20Unity%20project)' folder in order to run them in the Unity editor/software's terminal, since these Unity C# scripts cannot be run on other IDEs, such as VS code. (which these C# files already are added to the [Unity C# Syntax learn Unity project](https://github.com/WindJammer6/16.-Csharp-and-Unity-Learning/tree/main/Unity%20C%23%20Syntax%20learn%20Unity%20project))\n\n*Source(s):*  \n+ https://www.youtube.com/playlist?list=PLX2vGYjWbI0S9-X2Q021GUtolTqbUBB9B (Unity) (Youtube playlist labelled 'Beginner-friendly scripting tutorials' by Unity, consisting of various videos teaching the basic C# syntax for Unity) \n+ https://chat.openai.com/ (ChatGPT)  \n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwindjammer6%2F16.-csharp-and-unity-learning","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwindjammer6%2F16.-csharp-and-unity-learning","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwindjammer6%2F16.-csharp-and-unity-learning/lists"}