想用Unity做一个3D横版横版过关游戏
C#作为Unity内的脚本语言,在初学Unity时并不用太过深入研究,因为这时需要用C#编写的代码主要是游戏逻辑部分。
以手边的《C#入门经典(第七版)》为例,大约需要看到「第八章:面向对象编程简介」即可。
但也并不是说直接一口气看完才能碰引擎,学习最有效率的方式还得是理论与实践的结合。基本熟悉语法后就可以对照著官方的教学视频熟悉引擎了,使用过程中遇到问题在回过头看书,大约是这么一个节奏:
另一个比较好的学习C#基础的方法是用控制台做小游戏。参考:
如果看书觉得很枯燥的话也可以参考咱们的视频教程:
能看懂语法就行,我先学的unity, 后用的c#。不像c++要记很多特性。不过水深水浅还是看你自己的身高
针对问题,我可以提供一个从零开始,最快达成目的的办法
首先使用Unity开发游戏,尤其是独立开发,有个好处,就是可以利用资源商店里丰富的资源,这也是官方主推的开发方式。
既然是想做一个3D横版过关游戏(其实是2.5D),我推荐一个完美符合要求的插件。
好了,现在实现方案的基础框架已经有了,省去了很多爬坑的时间。那么接下来就是研究清楚插件怎么用和如何进行扩展。
怎么用
如果有翻墙的能力,可以在官网里配合视频里的中文字幕功能慢慢学习,如果没有翻墙能力,这里提供一个B站的搬运视频。
如何扩展
想要扩展就必然需要了解C#语言,这里我并不推荐上来就硬啃大部头,对于某些人来说会慢慢磨灭兴趣,我推荐先从菜鸟教程看起。
先简单撸一遍菜鸟教程,然后回头再去看插件源码,遇到问题去搜索关键词,慢慢再把基础补全。然后再去继续研究源码,把高级特性也给搞明白。如果期间还是有在菜鸟教程上搞不明白的知识,建议针对性买书去看,最好找到C#和Unity有交集的书,这样更方便去理解C#在Unity游戏开发中的应用。
最后当你学会了如何扩展,其实接下来的路你也应该明白要怎么走了,是补设计模式、引擎基础、AI、特效等都可以自行选择。
以上,是我觉得针对2.5D横版游戏开发上手最快的路线。
作为教师答一发
如果对编程毫无基础
那先要学:
1. 变数 (int, float, string, bool)
2. 函数 (如何自定义,如何调用,输入输出)
3. 运算符,逻辑符 ( || 等)
4. 条件语句 (if else)
然后就可以做出很多小游戏了
比如打砖块,谷歌小恐龙等
在这过程中你会遇到一些比如
transform.position.x
new Vector3
Input.GetKey()
这些可以先记住,会用就好,不用急著理解
后来你会遇到UI的制作
此时你要简单学习 namespace
玩家死亡后你会需要清除全屏敌人
此时你需要学会循环语句 for, while 和 foreach
以后你还会写要在一个Class中调用另一个Class的函数
此时你可以学到 static
甚至可以学习 event
基本上能熟练运用 for 和 foreach
已经能开发极多Unity小游戏了
基础方面:
引擎方面:
本篇回答暂不涉及到美术,策划等方面。程序方面做到这些就差不多可以考虑开始开发一款Unity游戏了,但是开发中依然会遇到各种奇妙的问题,这个只能等开发者自己慢慢踩坑慢慢解决了。