2020,注定是不平凡的一年,我也开始了我的修炼之路
Editor Unity我们平时用的Unit3D其实是一个插件框架
准确来说UnitEditor是一个插件框架,但UnityEngine是一个3D渲染引擎
所以,真的思考一下,网上那么多人说的,招聘广告那些人事部的文案写的,
很多在说Unity引擎和虚幻引擎,而其实他们说的只是UnityEditor而已
因为真正的引擎源码我实在没有,而且某博客大V说的反编译,充其量只是反编译得到Editor的源码,并不是真的引擎源码
======================================
什么是插件框架呢
最出名的是java的Netbean 和 Ecclipse 这2个IDE
虽然已被AndroidStudio取代,但其在开源界的历史地位应该有一定地位
C#开源比较出名的就是CSharp-Developer,monodeveloper,比较悲壮,不过并入微软后发展良好,这几年对微软改观
微软现在这几年的CEO是???
当然你用的Visual Studio, Visual Studio Code 也都是插件框架
而一般的博客Wordpress,论坛等等还是插件框架
各种框架使用编程语言各异,使用客户,赚钱渲染手法不同
UnityEditor源码
其实也没什么好说的,不了解Unity的你可能很难弄懂,单要是你只要了解Unity一点,则按照一惯的用法去理解就好(Unity3D结构非常统一,架构也很清晰)
1.底层是C | C++
2.整个我们通过开源获取到的源码只是一个“调用层”,”脚本层“
UNITY 是用 C#做脚本编程的,所以请不要再说LUA只是脚本,C#才是脚本呢,他微软全家都是脚本
很多人都通过GUI做UNITY的Editor扩展编程的,而特喵的,整个Editor真的就只用GUI做编程
UNITY公司就这么实诚(有点理解为什么ONGUI做得这么稳定),他喵的他就只会用GUI
2.通过HostView -> OnGUI绘制game view, scene view, project view , hirachry view等等
3.各个view通过Dock Area管理
4.IMGUIContainer 的底层还是c ++(所以知道为什么unity的界面这么丑,unreal比较漂亮吧)
关于虚幻引擎和其他
没看过unreal源码,但我可以”断言“,unreal用了核心的engine做editor,而unity的engine和editor是分开的,所以editor比较丑
我们不应感情用事,赌气不用是最差的策略,也没必要
但他那么多广告推送,又70%搜不到应有的信息,不支持暴力,但是用其人之道还治其人之身,这还是可以的吧
其中一个科学的方法,不就是在他那恶心的屏蔽算法,推送垃圾广告前面,开源一个算法,反屏蔽他?
什么样的人创造什么样的公司,这样的公司又会创造什么样的产品
到底是不是垃圾,留给后人去说吧
我非常有自信的啦,我会把“几乎可以”去掉
没那么大个头,不要带那么大顶帽
欲带其冠,他又没能力承受其重,天下间哪有此等好事???
关于开源世界
前面说漏了c++插件框架,不过我想大神们其实一看IMControl这几个字应该也知道他unity的内核就是C++
不但unity的渲染引擎是C++,也不知GameObejct Instantiate等操作是C++
就是整个Editor 也是c++ 的IM插件框架,
也就是Unity的创始那一帮人是真的是C++大牛,运用C++那是一个溜,也只是借用了MONO C#的壳做为“高级”脚本
这也能解释了为什么Unity Shader那么多封装宏,那真的是一脉相承
其实也只是反编译到一些皮毛,也没什么C++方面的真知灼见,不说了。。。。。。。
但很多年前那个UNITY公司经理说