- 授課品牌:
重慶千鋒教育
- 機(jī)構(gòu)級(jí)別:代理會(huì)員
- 信譽(yù)等級(jí):
學(xué)校評(píng)價(jià)(我要提問(wèn)/點(diǎn)評(píng))
- 學(xué)校被點(diǎn)評(píng):0 次
- 好評(píng)(0%)
- 中評(píng)(0%)
- 差評(píng)(0%)
資料認(rèn)證
未通過(guò)身份證認(rèn)證
未通過(guò)辦學(xué)許可認(rèn)證
- 學(xué)校瀏覽人次:次
- 加盟時(shí)間:2020年11月11日
千鋒Unity游戲開(kāi)發(fā)培訓(xùn)老師 分享十道最常見(jiàn)的面試題
Unity3D作為當(dāng)前最為火爆的游戲開(kāi)發(fā)引擎,受到眾多游戲開(kāi)發(fā)廠家的歡迎。對(duì)于很多剛學(xué)完Unity3D初入職場(chǎng)的菜鳥(niǎo),在面試時(shí)的表現(xiàn)決定了你談薪資時(shí)的底氣。今天千鋒Unity3D游戲開(kāi)發(fā)培訓(xùn)老師就給大家分享幾道經(jīng)常遇見(jiàn)的面試題。
一.寫(xiě)光照計(jì)算中的diffuse的計(jì)算公式
實(shí)際光照強(qiáng)度 I= 環(huán)境光(Iambient) + 漫反射光(Idiffuse) + 鏡面高光(Ispecular);
環(huán)境光:Iambient= Aintensity* Acolor; (Aintensity表示環(huán)境光強(qiáng)度,Acolor表示環(huán)境光顏色)
漫反射光:Idiffuse = Dintensity*Dcolor*N.L;
(Dintensity表示漫反射強(qiáng)度,Dcolor表示漫反射光顏色,N為該點(diǎn)的法向量,L為光源向量)
鏡面反射光:Ispecular = Sintensity*Scolor*(R.V)^n;
(Sintensity表示鏡面光照強(qiáng)度,Scolor表示鏡面光顏色,R為光的反射向量,V為觀察者向量,n稱(chēng)為鏡面光指數(shù))
二.lod是什么,優(yōu)缺點(diǎn)是什么
LOD技術(shù)即Levels of Detail的簡(jiǎn)稱(chēng),意為多細(xì)節(jié)層次。LOD技術(shù)指根據(jù)物體模型的節(jié)點(diǎn)在顯示環(huán)境中所處的位置和重要度,決定物體渲染的資源分配,降低非重要物體的面數(shù)和細(xì)節(jié)度,從而獲得高效率的渲染運(yùn)算。
優(yōu)點(diǎn):可根據(jù)距離動(dòng)態(tài)地選擇渲染不同細(xì)節(jié)的模型
缺點(diǎn):加重美工的負(fù)擔(dān),要準(zhǔn)備不同細(xì)節(jié)的同一模型,同樣的會(huì)稍微增加游戲的容量。
三.物體發(fā)生碰撞時(shí),有幾個(gè)階段,分別對(duì)應(yīng)的函數(shù)
三個(gè)階段,OnCollisionEnter/Stay/Exit函數(shù)
四.alpha blend 工作原理
實(shí)際顯示顏色 = 前景顏色*Alpha/255 + 背景顏色*(255-Alpha)/255
五.用[color=rgb(85, 85, 85) !important]u3d實(shí)現(xiàn)2d游戲,有幾種方式?
1.利用引擎自帶的GUI
2.把攝像機(jī)設(shè)為Orthographic,用面片作為2d元素
3.利用第三方插件:NGUI、2dToolkit
六.u3d中碰撞器和觸發(fā)器的區(qū)別?
collider碰撞器會(huì)有碰撞的效果,IsTrigger = false,可以調(diào)用OnCollisionEnter/Stay/Exit函數(shù)
trigger觸發(fā)器沒(méi)有碰撞效果,isTrigger = true,可以調(diào)用OnTriggerEnter/stay/exit函數(shù)
七.Unity3d從喚醒到銷(xiāo)毀有一段生命周期,請(qǐng)列出系統(tǒng)自己調(diào)用的幾個(gè)重要方法。
Awake –>OnEnable –> Start –> Update –> FixedUpdate –> LateUpdate –> OnGUI –> Reset –> OnDisable –> OnDestroy
八.物理更新一般在哪個(gè)系統(tǒng)函數(shù)里?
FixedUpdate,每固定幀繪制時(shí)執(zhí)行一次,和update不 同的是FixedUpdate是渲染幀執(zhí)行,如果你的渲染效率低下的時(shí)候FixedUpdate調(diào)用次數(shù)就會(huì)跟著下降。FixedUpdate比較適用于 物理引擎的計(jì)算,因?yàn)槭歉繋秩居嘘P(guān)。Update就比較適合做控制。
九.移動(dòng)相機(jī)動(dòng)作在哪個(gè)函數(shù)里,為什么在這個(gè)函數(shù)里。
LateUpdate,,是在所有update結(jié)束后才調(diào),比較適合用于命令腳本的執(zhí)行。官網(wǎng)上例子是攝像機(jī)的跟隨,都是在所有update操作完才跟進(jìn)攝像機(jī),不然就有可能出現(xiàn)攝像機(jī)已經(jīng)推進(jìn)了,但是視角里還未有角色的空幀出現(xiàn)。
十.當(dāng)游戲中需要頻繁創(chuàng)建一個(gè)物體對(duì)象時(shí),我們需要怎么做來(lái)節(jié)省內(nèi)存。
做一個(gè)pool,游戲開(kāi)始時(shí)預(yù)先實(shí)例化足夠的數(shù)量,然后用的時(shí)候取不用的時(shí)候收回。
如果你想加入培訓(xùn)機(jī)構(gòu),不如選擇千鋒Unity游戲開(kāi)發(fā)培訓(xùn),在千鋒還有更切近于企業(yè)的項(xiàng)目資源管理解決方案。從AssetBundle打包到管理,再到加載,讓學(xué)生了解項(xiàng)目資源管理的全過(guò)程,并協(xié)助學(xué)員完成自定義的AssetBund le框架。