[中文简体] | [English]
- 如果你对本项目感兴趣, 请点击
star
支持. - 如果你有任何想法或疑问, 请提交[PR]和[ISSUES]反馈.
- 请悉知: 当前项目中的
TsComponent
丶ThreadWorker
模块尚未经广泛验证, 其功能或许存在缺陷, 如果你在使用中遇到任何问题请及时通过[ISSUES]反馈.
- 本项目是基于puerts开发的Unity模板项目, 默认使用OpenUPM作为Unity包管理器源;
- 本项目使用typescript脚本开发, 运行时支持
commonjs
和ESM
模块(匹配规则请查看MixerLoader.Mode);- 本项目支持webgl构建(
ESM
), 使用webgl构建请务必先翻阅源仓库中《如何从原有的PuerTS项目中迁移过来?》一文;- 集成常用配置或工具(可选), 如ScriptPacker(
脚本打包
/压缩
/加密
/验签
)丶source-map-support丶javascript-obfuscator等;了解更多, 请查看[文档页面].
[2023/02/13]
需注意webgl-support在OpenUMP中的最新版本1.0.0-rc.1
不支持自动附加后缀名匹配, 需等待后续更新
主要功能:
-
TsBehaviour:
在ts脚本中使用Unity MonoBehaviour生命周期方法;
[查看文档] -
TsProperties:
一个单独的序列化类, 可用于保存数据丶挂载UnityEngine.Object对象等操作;
[查看文档] -
TsComponent:
对TsBehaviour和TsProperties的结合实现, 可序列化ts脚本中的成员变量和使用Unity生命周期方法, 并实现对ts对象的生命周期管理;
允许UGUI事件绑定到ts脚本上(UGUI事件);
[查看文档] -
ThreadWorker:
提供
跨线程
&跨Puerts.JsEnv实例
交互(基于C#类型传递数据);
[查看文档]
软件或包 | 版本 |
---|---|
unity | 2019.2.x + |
puerts | 1.4.0 + |
nodejs | unknown |
OpenUPM | 版本 |
---|---|
puerts | 2.0.2 |
puerts-webgl-support | 2.0.2 |
puerts-commonjs-support | 2.0.1 |
- 下载本模板项目;
- 进入目录
projects/TsProject
, 执行npm install
或yarn
命令安装依赖; - 执行
tsc
命令编译typescript项目; - 完成.
- ConsoleRedirect:
实现从Unity Console单击/双击超链接直接跳转ts脚本
- HotReload:
纯C#实现的js脚本热更新工具(需要
v8 + inspect
支持), 用于运行时即时修改js逻辑快速调试. - MiniLinkXml:
分析typescript工程, 获取所有使用的C#类型的(支持额外的自定义类型), 生成最小化
link.xml
配置文件. - ECMAScript:
C#命名空间生成工具, 可
快速导入
值和类型(例:import { GameObject} from 'csharp.UnityEngine'
). 使工程同时兼容commonjs和esm模块从而无需额外修改代码.
- 无