Download Latest Version PuerTS_V8_3.0.0-preview0.tar.gz (68.7 MB)
Email in envelope

Get an email when there's a new version of PuerTS

Home / Unreal_v1.0.8
Name Modified Size InfoDownloads / Week
Parent folder
puerts_nodejs.tgz 2025-03-26 344.2 MB
puerts_quickjs.tgz 2025-03-26 15.1 MB
puerts_v8_for_ue424_or_below.tgz 2025-03-26 81.2 MB
puerts_v8_94.tgz 2025-03-26 420.6 MB
puerts_v8_84.tgz 2025-03-26 161.7 MB
README.md 2025-03-26 3.5 kB
Unreal_v1.0.8 source code.tar.gz 2025-03-26 2.8 MB
Unreal_v1.0.8 source code.zip 2025-03-26 3.9 MB
Totals: 8 Items   1.0 GB 0

新增特性

  • 容器新增UE.BuiltinDouble,fix [#1775]

  • v8后端支持字节码

  • 支持Editor Only Properties 增加_EditorOnly后缀 (#1802)

  • 支持UE 5.5

  • v8后端添加websocket的支持、

  • 模板绑定添加对getter、setter的支持

  • ue 5.x 添加对FHitResult::GetActor的模板绑定

  • FVector等几个系统USTUCT改为用模板绑定,以解决ue5下的精度丢失问题,fix [#1904]

  • 支持仅setter的属性

  • 支持不在Context目录的蓝图加载 [#1962]

优化

  • esm module两次读文件的问题,fix [#1779]

  • 反射new,Class.Load, Class.Find, Class.StaticClass加上关联的UStruct是否无效的检查

  • weakfieldl有效的时候,proeprty可能无效 (#1803)

  • 模板绑定利用FObjectCacheNode的UserData减少一次原生c++里的map插入和删除

  • 自动拷贝Plugin目录下的.d.ts到 Typing目录,以避免维护两份.d.ts (#1908)

  • 尽可能减少std::string的使用,减少此类问题(https://github.com/Tencent/puerts/issues/1936)发生的概率

  • 对于原生cpp绑定,若未绑定构造函数,则在ts声明中加入abstract标记,可以在ts中尝试构造时提示报错 (#1971)

  • UE和CPP模块加上__esModule=false

变更

  • 移除FJsEnv::Start执行文件的能力

  • UStruct指针nullptr时,返回js null,另外UObject,纯c++对象都修改为返回null(之前是undefined),fix [#1834]

bug修复

  • 修正UE.BuiltinBool访问失败的问题

  • 解决模板绑定const script_type 参数崩溃的问题,(除了const char外)映射到$Ref<T>,相关issue: [#1793]

  • 解决模板绑定返回std::string&会调用移动构造的问题,见issue: [#1793]

  • 恢复生成蓝图变量的默认Flags,与过去版本保持一致 (#1814)

  • 自动生命周期管理的puerts.toDelegate接口产生的UDynamicDelegateProxy在GC时可能崩溃 (#1819)

  • SoftObjectPtr改为通过InstanceTemplate创建对象,规避backend-quickjs的这个bug: puerts/backend-quickjs#20 ,fix [#1907]

  • 解决模板绑定const ustruct *匹配多个特化的问题(C2752) fix [#1917]

  • 解决模板绑定对于const SomeClass &参数的默认值会读取到已经释放栈变量的问题,fix [#1924]

  • 静态绑定IsInstanceOf得先判断是不是Object,fix [#1929]

  • 处理内存重用导致的Check failed: Handle not reset in first callback. See comments on |v8::WeakCallbackInfo| fix [#1930]

  • 修复静态绑定: 若结构体没有绑定构造函数则不会生成构造函数定义 (#1951)

  • JSObject拷贝构造和赋值重载由于没有声明HandleScope导致崩溃的问题

  • 修复 TCHAR 类型生成的声明错误 (#1977)

  • 解决mixin的inherit = true时,不继承蓝图组件层级的问题 fix [#1985]

  • 发生unhandledRejection时,应清理WeakMap fix [#1991] 避免内存释放过慢

  • 修复绑定当帧销毁的对象身上的 Delegate,有概率触发崩溃的问题

  • 修复disregardgc情况下的crash (#1997) fix [#1415]

  • 类静态成员规避FName导致的大小写问题 fix [#1882]

  • quickjs默认256k的栈,有些场景会stackoverflow(比如跑tsc),提升到1M

  • NewArray报t.hasOwnProperty is not a function fix [#2001]

mac下如果遇到移入废纸篓问题,请

cd Plugins/Puerts/ThirdParty
find . -name "*.dylib" | xargs sudo xattr -r -d com.apple.quarantine
Source: README.md, updated 2025-03-26