【bug】编辑器运行时,没有game事件回调。

版本3.8.0
以下代码中,director有被回调,但game事件并没有回调。浏览器运行时一切正常。

export function setupPlayable() {
    const setupConfig = new PlayableSetupConfig();
    let logicActiveTime: number;
    game.onPostProjectInitDelegate.add(async () => {
        await new Promise<void>(resolve => initialize(setupConfig, resolve));
    });

    director.on(Director.EVENT_RESET, setupConfig.onShutdown);

    director.on(Director.EVENT_BEFORE_SCENE_LAUNCH, (scene) => {
        setupConfig.scene = scene;
        initSystems(setupConfig);
        logicActiveTime = performance.now();
    });

    director.once(Director.EVENT_AFTER_SCENE_LAUNCH, (scene) => {
        console.log(`active scene nodes use time: ${(performance.now() - logicActiveTime).toFixed(0)} ms`);
        // 延迟一帧,让UI可以加载完毕。
        // director.once(Director.EVENT_BEGIN_FRAME, setupConfig.startGame, setupConfig);
    });
}


setupPlayable();

加上on和once的最后一个参数this

这是一个外部函数,没有this

那就传入canvas节点,然后试试

为什么要传入canvas,director都有事件回调,就game没有,不是写法问题。

你说的编辑器运行时,指的是什么?你用web运行啊,用什么编辑器运行,web运行正常就行了,这个编辑器运行没用过,目前这个编辑器的运行时还是很多bug的

@hubluesky 编辑器运行具体指的是什么呢?

就是编辑器预览。
image

复现的demo都整合在这里。
https://forum.cocos.org/t/topic/154931/84
我在示例demo中打了log,任意一个场景都可以跑。
image