在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
C# 这边 new 了一个GameObject 对象并发给Lua那边, 这时C# 这边在通过GC释放掉这个对象;lua 那边会报错;遇到这种问题的两种方式 解决方案: 1.lua一个 sprite对象如果被引擎释放了,那引用它的变量怎么不是nil tolua有个tolua.isnull专门来判断这个情况,tolua.isnull则是绕过proxy数据,查看源数据是否为空
2.逻辑层去处理,用对象管理池,所有创建C#对象都通过管理器去创建,在创建对象时区分由哪边创建的;删除时,必须由创建时的那边去做destroy操作。如果在写逻辑时Lua把对象传给了C#,那么lua在调用Destroy时,必须先要确保C#的指向Clear。反之C#把对象传给Lua 也一样
|
请发表评论