Three.js版本的导出器发布:Three导出成Three

Three.js版本的导出器发布:Three导出成Three

unity 编辑器扩展_unity怎么编辑脚本_unity扩展编辑器

4月1日,Unity工具开发商NeedleTools的创始人宣布,他将在近期发布一个将Unity导出到Three.js的Exporter(导出器),旨在构建从Unity的URP(Universal Rendering Pipeline)到Three.js的映射.

unity怎么编辑脚本_unity扩展编辑器_unity 编辑器扩展

从给出的演示视频中可以看出unity 编辑器扩展,在Unity中搭建的场景可以直接生成一个Three.js版本的应用程序并在浏览器中运行,从而实现了“搭建Unity,运行Three.js”的目的。

这个工具在定位上和Unity WebGL非常相似。 为了将项目发布到浏览器,Unity使用Emscripten工具链将引擎的C/C++代码转换为WebAssembly,而C#代码需要通过IL2CPP转换为C/C++代码,C/C++代码再转换为WebAssembly。

unity怎么编辑脚本_unity 编辑器扩展_unity扩展编辑器

Three.js版本导出器导出的代码仍然是Javascript/Typescript。 可以直接通过VSCode打开项目构建开发版,但是场景的所有配置、组件和数据都是用Unity Editor完成的,比如Unity编辑器中构建的模型和材质通过导出到Three.js glTF 格式。 关于导出场景的还原程度,作者也给出了对应效果的对比。

unity怎么编辑脚本_unity扩展编辑器_unity 编辑器扩展

unity扩展编辑器_unity 编辑器扩展_unity怎么编辑脚本

unity 编辑器扩展_unity怎么编辑脚本_unity扩展编辑器

根据@hybridherbst的回答,与Unity WebGL相比,Three.js版本在性能上更胜一筹,包括更快的加载效率和更小的应用体积。

目前还没有发布正式版,看到的也只是一些预览信息。 从某种意义上说,这个工具建立了 Unity 生态系统和 Three.js 系统之间的连接。 Unity WebGL更多的是C/S->Web,因此web性能的优化和三方生态的融合相对封闭,而Three.js诞生于WebGL的环境下,对web开发者相对友好并且拥有更丰富的生态,但相对缺乏诸如Unity Editor等工程工具的配合,两者的结合是一次非常有意义的融合尝试。

unity 编辑器扩展_unity扩展编辑器_unity怎么编辑脚本

当然,在Three.JS领域,也逐渐产生了一些可视化编辑工具,包括一些Material Node Editor和Shader Graph Editor。

事实上,数字孪生领域的低代码工具也是这样的逻辑。 这个低代码工具其实就是一个Editor2d游戏素材,配合3D引擎实现低门槛工程化。 当然,虽然目前的数字孪生低代码工具的功能粒度比较粗地图场景,但是随着功能的深入,这些Editor的功能设计会大致相同,只是侧重点会略有不同。

GIS领域也是如此。 桌面版Editor在工程和连接方面起着非常重要的作用。 以前的GIS平台专注于“空间数据的处理、管理、分析、制图”。 过去对于GIS平台,终端场景可能是构建专题图,但现在的趋势是GIS平台的场景开始向两端延伸。 一端需要与原始数据源实时连接和连接,另一端需要为应用构建。 能力扩展,从图的交付到数据型应用的交付,但是这个能力的扩展有很多路径,一种是Editor直接支持,一种是通过第三方扩展来扩展能力unity 编辑器扩展,或者两个不同的领域各自独立发展,最后大家通过协议相互连接起来,形成一个更大的系统。

unity怎么编辑脚本_unity扩展编辑器_unity 编辑器扩展