Laya2.x踩坑日記

最近開始搞Laya3D,立此貼對所踩的坑作下備忘

1. 場景編輯完後,應當按一下F8編譯一下,這樣有些運行時可能產生的錯誤就會在編譯後被提示。

2. 2.x的prefab如果多個存在於場景中,prefab中指定的變量名居然是衝突的,這個問題導致我不敢再在prefab直接使用var了,很好奇官方這是啥意思,這樣一來,引用場景中的對象就變得有點麻煩,只能學下cocos creator封裝個find方法通過查找的方式來獲取對象了,使用方式爲 const node:Laya.Image = find("nodeA/nodeB/nodeC", this.owner);


/**
 * 在對象或子對象中查找
 */
export function find(path: string, parent: Laya.Node): any {

    const array: Array<string> = path.split("/");

    while (parent != null && array.length > 0) {

        const name: string = array.shift();

        parent = parent.getChildByName(name);

    }

    return parent;

}

3. 編輯模式下runtime,目前發現的是,在分離模式下,這個東西只適合指定scene的腳本,對prefab是沒有用的,prefab需要以添加組件的方式來指定腳本

4.Laya3d中2d與3d混合問題,在3D遊戲中,如果想用2D圖片當作背景,那麼需要將Camera的clearFlag 設置爲Laya.BaseCamera.CLEARFLAG_DEPTHONLY,否則默認中3D場景會生成一個純藍色的天空盒將Laya.Scene3D後面的所有東西都給擋住。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章