unity 場景載入

2021-06-16 15:44:29 字數 2157 閱讀 1551

gui.draw texture   繪製紋理

static function 

drawtexture

(position

: rect

, image

: texture

, scalemode

: scalemode

=scalemode.stretchtofill

, alphablend

: bool = true, 

imageaspect

: float = 0) : void

例項://背景

一:gui.drawtexture(new rect(0,0,screen.height),backimg, scalemode.stretchtofill, true,0.0f);

//這個函式的原型可以省略,若只保留第一二個引數,alhpablend 的混合模式,是否通道混合顯示,預設為混合通道,如果不,直接被繪製顯示。

//scalemode 將採用stretchtofill 的形式對gui進行填充。

//scalemode有三個引數,stretchtofill(伸縮填充滿整個gui),scaleandgrop(保持原有形式,在gui中顯示),scaletofit(使適應gui)

//imageaspect  如果是0,則使用原圖的長寬比

能流模式載入的關卡是否被載入?

static function 

canstreamedlevelbeloaded(

levelindex: int) : bool

update中檢查能流模式能載入,則載入場景

//在這裡計算讀取的進度,

//progress 的取值範圍在0.1 - 1之間, 但是它不會等於1

//也就是說progress可能是0.9的時候就直接進入新場景了

//所以在寫進度條的時候需要注意一下。

//為了計算百分比 所以直接乘以100即可

progress =  (int)(async.progress *100);

綜上:loadscene分為以下幾個大類

// public texture2d backimg;  背景

//public static string loadingscenename = ""  

//public texture2d roadimg;   //

//public texture2d carimg;

// private int progress = 0;

//private int count = 0;

loadscene方法

private ienumerator loadscene()

ongui裡面

void ongui()

gui.label(new rect(screen.width * 0.25f, screen.height * 0.2f, 600, 300), "場景載入中,請稍後……", textstyle);

if (count > 0)

gui.drawtexture(new rect(screen.width * async.progress, screen.height * 0.85f, carimg.width, roadimg.height), carimg, scalemode.scaletofit, true, 0.0f);

rect(0, screen.height * 0.6f, roadimg.width, roadimg.height), roadimg);

//顯示計算後的進度

rect(100, 100, 100, 40), "loading!!! " + progress + "%");

}update裡面:

unity之載入場景

遊戲中的loading分為 靜態loading和動態loading。簡單形象的做個比喻 靜態loading可能就是一張背景圖。而動態的loading就是在讀取的同時有乙個東西在 轉圈 1.靜態loading 2.動態loading 一些常見問題 一.遊戲是否可以只做乙個場景?可以,執行 gameob...

Unity打包載入場景(Assetbundle )

打包scene 我們可以把整個場景進行打包,因為移動平台不能更新指令碼,所以這個功能就會有所限制,我的建議是烘培場景,然後把多個場景可復用的物件移除,場景中只保留獨一無二的遊戲物件,然後再打包場景,執行遊戲時載入場景後,再動態的將之前移除的物件重新新增進來。menuitem custom edito...

unity 場景管理(Loading介面載入)

很久以前的設計 這是單例的設計,需要掛載在遊戲物件上。title 場景管理器 description 實現場景的各種載入 公開非同步運算元給loading介面使用 using system.collections using unityengine using unityengine.scenema...