考虑到每个人基础可能不一样,且并不是所有人都有同时做2D、3D开发的需求,所以我把 【零基础入门unity游戏开发】 分为成了
C#篇、unity通用篇、unity3D篇、unity2D篇
。
- 【C#篇】:主要讲解C#的基础语法,包括变量、数据类型、运算符、流程控制、面向对象等,适合没有编程基础的同学入门。
- 【unity通用篇】:主要讲解unity的基础通用的知识,包括unity界面、unity脚本、unity资源管理、unity动画、unity摄像机等,适合unity初学者入门。
- 【unity3D篇】:主要讲解unity3D的知识,unity3D角色、unity3D物理系统、unity3D光照等,适合只想做2D游戏的开发者学习。
- 【unity2D篇】unity2D篇:主要讲解unity2D的知识,包括unity2D角色、unity2D物理系统、unity2D光照等,适合只想做3D游戏的开发者学习。
这样方便大家按需选择性的去学习,比如有编程基础的大概率可以直接从unity通用篇开始入门,没有编程基础的建议从C#篇开始学习。只想做2D游戏的话,可以直接从unity2D篇开始学习,3D篇大概率就不需要看了,节约学习时间成本。
文章目录
- 1、Unity 支持的 C# 版本
- 2、为什么不同 Unity 版本支持不同的 C# 版本?
- 3、不同版本的 C# 对我们有什么意义?
- 4、Unity 的 .NET API 兼容级别
- 5、API Compatibility Level 是什么?
- 6、.NET Standard 2.0
- 7、.NET Framework
- 8、总结
- 专栏推荐
- 完结
1、Unity 支持的 C# 版本
随着 Unity 的不断更新,它逐渐开始支持更高版本的 C#。这意味着你可以使用更现代的编程特性来编写更加简洁、高效的代码。截至2025年,最新的 Unity 6 已经支持到了 C# 9。这里有一个简单的对照表:
- Unity 2021.2 至 Unity 6 —— 支持 C# 9
- Unity 2020.3 —— 支持 C# 8
- Unity 2019.4 —— 支持 C# 7.3
- Unity 2017 —— 支持 C# 6
- Unity 5.5 —— 支持 C# 4
如果你想要了解更多详细信息,可以访问 Unity 官方文档。
2、为什么不同 Unity 版本支持不同的 C# 版本?
这是因为每个 Unity 版本使用的 C# 编译器 和 脚本运行时(Scripting Runtime) 不同。例如:
- Unity 2020.3 使用了等效于 .NET 4.6 的脚本运行时,并且采用了 Roslyn(罗斯林编译器)编译器。这使得它可以支持到 C# 8。
- 随着 Unity 的升级,它通常会采用更新的编译器和运行时版本,从而能够支持更多新的 C# 功能。
因此,当 Unity 更新时,它一般会引入更先进的工具和技术,让你可以在开发中利用最新的语言特性。
3、不同版本的 C# 对我们有什么意义?
新版本的 C# 带来了许多有用的新特性,可以帮助你写出更清晰、更简洁的代码。虽然即使你不使用这些新功能也可以完成开发工作,但它们确实可以让代码更容易阅读和维护。例如:
- 模式匹配:在 C# 7.0 及以上版本中引入,允许你以更直观的方式处理不同类型的数据。
- 异步流:从 C# 8.0 开始支持,简化了对大量数据进行异步处理的过程。
- 记录类型 (Records):这是 C# 9.0 的新增特性之一,提供了不可变的数据结构,非常适合用于表示实体或数据传输对象。
通过了解你所使用的 Unity 版本能支持哪些 C# 版本,你可以充分利用这些新特性来提高开发效率。
4、Unity 的 .NET API 兼容级别
在 Unity 中,你可以通过Playersetting->other Setting->Api Compatibility Level
设置项目的 API 兼容级别,这决定了项目可以访问哪些 .NET 库。
当然,我会用通俗易懂的语言来解释 Unity 中的 API Compatibility Level 选项里的 .NET Standard 2.0 和 .NET Framework。
5、API Compatibility Level 是什么?
首先,API Compatibility Level 是 Unity 中的一个设置,它决定了你的项目可以使用哪些类库和功能。这有点像你选择了一个“工具箱”,这个工具箱里有不同数量和类型的工具(即代码库),你可以用来构建你的游戏或应用程序。
6、.NET Standard 2.0
想象一下:
- 小而精的工具箱:.NET Standard 2.0 就像是一个相对较小但非常现代化的工具箱。它包含了最新版本的 C# 语言特性和一些常用的类库。
- 跨平台支持:这个工具箱设计得非常好,可以在多个平台上工作,比如 Windows、macOS 和 Linux,甚至在移动设备上也能很好地运行。
- 轻量级:因为这个工具箱是为多种环境设计的,所以它只包含最常用和最必要的工具,不会过于庞大或复杂。
适合谁?
- 如果你是刚开始学习 Unity 的新手,或者希望你的项目能够轻松地移植到不同的平台(如从 PC 到移动端),那么 .NET Standard 2.0 是一个很好的选择。
- 它也更适合那些不需要大量传统 .NET 功能的小型项目或独立开发者。
7、.NET Framework
想象一下:
- 大而全的工具箱:.NET Framework 就像是一个更大、更传统的工具箱。它不仅有所有 .NET Standard 2.0 的东西,还有一些额外的功能和类库,这些可能是一些老项目或特定于 Windows 平台的应用所需要的。
- Windows 特性:这个工具箱特别擅长处理 Windows 上的任务,因为它与 Windows 操作系统紧密集成,提供了更多的本地化支持和服务。
- 全面但较重:由于它包含了更多特性,因此相对来说会更加复杂一点,并且可能会占用更多的资源。
适合谁?
- 如果你正在开发一个需要访问某些特定 Windows 功能的游戏或应用,或者是维护一个已经使用了旧版 .NET Framework 的大型项目,那么选择 .NET Framework 可能更合适。
- 对于那些想要利用完整的 .NET 类库集以及 Windows 独有的功能的人来说,这也是个不错的选择。
8、总结
随着 Unity 版本的提升,你能够使用的 C# 新特性和功能也会增加。了解自己当前使用的 Unity 版本能支持的 C# 版本非常重要,这样你可以充分利用这些新特性来优化代码。此外,在大多数情况下,建议使用 .NET Standard 2.0 作为 API 兼容级别,以确保更好的跨平台支持和较小的应用程序体积。
专栏推荐
地址 |
---|
【零基础入门unity游戏开发——C#篇】 |
【零基础入门unity游戏开发——unity通用篇】 |
【零基础入门unity游戏开发——unity3D篇】 |
【零基础入门unity游戏开发——unity2D篇】 |
【制作100个Unity游戏】 |
【推荐100个unity插件】 |
【实现100个unity特效】 |
【unity框架/工具集开发】 |
完结
好了,我是向宇
,博客地址:https://xiangyu.blog.csdn.net,如果学习过程中遇到任何问题,也欢迎你评论私信找我。
赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注
,你的每一次支持
都是我不断创作的最大动力。当然如果你发现了文章中存在错误
或者有更好的解决方法
,也欢迎评论私信告诉我哦!