修改引擎代码后,是不是没编译成功哦
所以你代码里有赋值操作吗
光看图不知道你要做啥
费这劲编译引擎干啥 直接hock一下原型拦截setter也一样
有的,你看第三张图,就是引擎代码编译后的输出
代码没赋值,纯场景运行,肯定是有用才会去编译引擎,问题是原代码都进不去,原型拦截也没用吧
你没有动态加载去赋值那咋触发setter 静态的可能是直接操作_私有变量
(帖子被作者删除,如无标记将在 24 小时后自动删除)
(帖子被作者删除,如无标记将在 24 小时后自动删除)
你直接说你要实现什么,改肯定能改。改源码或者简单功能加一个劫持都可以
预制体或者场景中的Sprite加载设置好的资源不走spriteFrame函数,直接走的赋值_spriteFrame。手动赋值才走的spriteFrame函数。
我的目的想调试场景预制体的节点是如何实现Sprite的spriteFrame的流程
我想知道json文件是如何序列化sprite的SpriteFrame对象,我现在只调试到SpriteFrame的序列化接口
原来如此,直接走的赋值_spriteFrame,那这个要怎么查它的实现,主要是我现在序列化json,解析出来的sprite的spriteFrame是为空的
那你得看更底层的资源加载管线。资源加载有两步,下载解析json。然后再是真实加载资源。所有preload预加载只会解析json。不会加载实际资源
有看的,我现在SpriteFrame序列化是有成功的,但是序列化成sprite的SpriteFrame对象,这个没找到,试过把_spriteFrame变成get/set,好像也不行
Cocos 预制体 会在反序列化的时候解析 建立 spriteFrame 的 uuid 和 Sprite 的依赖关系, 等 spriteFrame加载完后,赋值到Sprite的变量_spriteFrame 中。
那这个有没办法序列化完spriteFrame数据,对应是哪个sprite对象?
Cocos 预制体中每个Sprite 会有对应的uuid的spriteFrame。 你要是你自己创建的json,而不是通过Cocos编辑器生成的,你需要自己建立依赖关系。
你还不如直说最开始是想干嘛 哪一步遇到了问题 是想知道spf的创建流程还是啥

