|
根据我遇到的情况,我可以说不重要。使用Unity3d,大多数时候是用C#(js不用也没有问题),只有在需要写插件的时候(很少的情况),会需要用到C、C++、Object-C、Java这些语言。我带过的项目中,很多的程序员都只是用C#,根本就不会接触到C和C++。
上面的话题是针对做游戏来说。如果是需要研究3D引擎,那么C++就非常重要,不需要其他的理由,因为大多数书籍、网络资料,在说明一个引擎(无论是实时渲染还是离线渲染还是物理引擎或者AI引擎)知识的时候,都会用C++来写代码,这个是事实上的标准。C语言的话,还是在嵌入式的设备上,以及操作系统的开发上用的多,其他领域应该算是很少用到的。
就这三种语言:C语言是过程式语言的代表,C++是在游戏领域用的非常广泛的对象式语言,C#是对象式的、类java语言(简单说跟C++不同就是不需要显式释放内存)。三种语言我都接触和长期使用,从长期发展的角度来讲,根据自己的不同阶段,逐渐了解各个语言,主要是能理解其中不同的设计理念和组建自己的工具盒,不怕工具多,在什么场合用什么工具很重要。
另:
在我接触的公司中,买Unity3d source code的公司没有见过,我相信这个主要是官方的这一点说明(见下面英文中的黑体部分,摘自官方的FAQ):
We license Unity source code on a per-case and per-title basis via special arrangements made by our business development team. As this can be quite expensive, we do not generally license source code to smaller operations, educational institutions, nor to companies in countries which do not have adequate legal intellectual property protection.
也就是Unity不会向对公司所在地是知识产权保护薄弱的国家的客户提供源代码级的licence。 |
|