Programming in Unity
Resources and workflows for creating C# scripts in Unity to control elements of your application.
Read time 2 minutesLast updated 5 days ago
Programming in Unity refers to authoring your project's functionality in code rather than through the Unity Editor UI. This allows you to go beyond what can be done in the Editor UI alone. Interacting directly with the public Unity APIs allows for finer control and a greater degree of customization.
Learning to program in particular languages is beyond the scope of this section. However, there are many books, tutorials, and other resources for learning how to program with Unity. Refer to Unity Learn for further details.
Topic | Description |
|---|---|
| Get started with programming in Unity | Get started with creating, naming, and editing your first Unity scripts. |
| Environment and tools | Set up your software development environment with the right tools for programming in Unity. |
| Object-oriented development | Develop Unity projects with the traditional object-oriented programming philosophy and architecture. |
| Compilation and code reload | How Unity transforms the code you write into code that runs, and the implications for development iteration times and your application's runtime behavior. |
| Code optimization | Project configuration, design patterns, and coding strategies to help optimize the performance of your code. |
| Debugging and diagnostics | Debug, diagnose, and fix problems in your code. |
Additional resources and examples
- 📖 E-Book:Use a C# style guide for clean and scalable game code (Unity 6 edition)
- 📖 E-Book:Level up your code with design patterns and SOLID
- 📖 E-Book:Create modular game architecture in Unity with ScriptableObjects
- 📖 E-Book:Introduction to the Data-Oriented Technology Stack for advanced Unity developers
- 💡 Resources:Unity Learn Scripting tutorials
- 💡 Resources:An example of a Unity C# code style guide
- ⚙️ Sample project:Level up your code with design patterns and SOLID
- ⚙️ Sample project:ScriptableObjects Paddle Ball project
- 📺 Video:Tips for creating your own C# code style guide
- 📺 Video:Level up your code with game programming patterns: Command pattern
- 📺 Video:Level up your code with game programming patterns: Factory pattern
- 📺 Video:Level up your code with game programming patterns: Model-view-presenter
- 📺 Video:Level up your code with game programming design patterns: Object pool
- 📺 Video:Level up your code with game programming patterns: Pattern combo
- 👥 Community:Scripting section at Unity Discussions