egret3D與2D混合開發,畫布尺寸不一致的問題

2022-03-25 01:50:33 字數 1109 閱讀 7932

egret3d的gui目前還沒有,在做3d遊戲的時候沒有ui可用,只能使用egret2d的eui元件庫,egret3d與egret2d混合開發,canvas3d的大小與位置與canvas2d並沒有重合,導致適配ui時總是錯位。在做手機螢幕適配的時候必須解決這種問題,我的解決方法是兩個屬性相同。

我的解決方案為修改原始碼,在egret2d適配螢幕的時候加入自定義介面,通過事件的方式通知適配canvas3d的大小和位置。

先看下效果如何

轉屏適配⬇️

開啟egret engine,跳轉到引擎的根目錄下,進入src->egret->diy->rmcanvas2dview.tsdiy->rmcanvas2dview.ts為自己建立的檔案,目的是為了從引擎底部調出介面。

webplayer.updatescreensize函式的最後加上**:

/**

* @private

*/public updatescreensize():void

private initcanvas():void

private inithtmlcanvas():void }

public onresize( $e? ):void

}}

Unity3D和Egret3D的基情

u3d只是多平台發布,而js和webgl才是多平台執行。你有沒有想過有u3d來開發js和webgl應用呢,然而unity官方選擇了一條il2cpp的路線,讓這個希望化為泡影。il2cpp做webgl沒有前途 il2cpp做webgl沒有前途 il2cpp做webgl沒有前途 為什麼沒有前途,1000...

Unity3D和Egret3D的基情

u3d只是多平台發布,而js和webgl才是多平台執行。你有沒有想過有u3d來開發js和webgl應用呢,然而unity官方選擇了一條il2cpp的路線,讓這個希望化為泡影。il2cpp做webgl沒有前途 il2cpp做webgl沒有前途 il2cpp做webgl沒有前途 為什麼沒有前途,1000...

2D遊戲開發(2)

每次給遊戲新增新功能時,通常也會引入一些新設定。為了讓所有的設定進行統一管理,我們可以配置乙個名為 setting的模組,這個模組中包含乙個setting的類,用來儲存所有的設定。usr bin env python3.5 filename setting 儲存所有的設定 class setting...