part剛對(duì)于此粒我將使用SketchUp創(chuàng)建一些簡(jiǎn)單積木它來(lái)導(dǎo)_第1頁(yè)
part剛對(duì)于此粒我將使用SketchUp創(chuàng)建一些簡(jiǎn)單積木它來(lái)導(dǎo)_第2頁(yè)
part剛對(duì)于此粒我將使用SketchUp創(chuàng)建一些簡(jiǎn)單積木它來(lái)導(dǎo)_第3頁(yè)
part剛對(duì)于此粒我將使用SketchUp創(chuàng)建一些簡(jiǎn)單積木它來(lái)導(dǎo)_第4頁(yè)
part剛對(duì)于此粒我將使用SketchUp創(chuàng)建一些簡(jiǎn)單積木它來(lái)導(dǎo)_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

UNITY3D–GameProgramming–PartSketchUp3D。C#語(yǔ)言的經(jīng)驗(yàn)。它也建議文章的讀者熟悉面向?qū)ο缶幊毯驮O(shè)計(jì)理念為好它們覆3D3D圖形和矢量數(shù)學(xué)的基本理論概念。。最后,本文采用統(tǒng)一3D版4.6.1這是公開(kāi)的初始日期。大多候發(fā)布新版本兼容。然而有一是在當(dāng)前的4.6.1版本顯著不同相比舊版本的UI

的系列文章項(xiàng)目/源代碼 源注意:要獲取的代碼,請(qǐng)?jiān)谠撓盗邪l(fā)布的一部分,代碼SketchUp1SketchUp(CP,我們?nèi)匀恍枰伎己投x和創(chuàng)建一套規(guī)則。例如,讓我們來(lái)的問(wèn)題:他們將有一個(gè)?那是他們會(huì)不會(huì)出現(xiàn)和基于某種邏輯如果他們了,他們?cè)趺磿?huì)再次出現(xiàn),還是他們您的器如何與硬幣的相互作用您的器怎么會(huì)與關(guān)卡其他對(duì)象進(jìn)行交互?(的話UI,為簡(jiǎn)單起見(jiàn),讓我們繼續(xù)前進(jìn),并決定我們放置硬幣在設(shè)計(jì)時(shí)的水幣有1和9之間的隨機(jī)值現(xiàn)在,我們還可以決定,該硬幣將在整個(gè)游戲全,個(gè),這將回升硬幣并進(jìn)行必要的核算,以增加玩家的得分在比賽中。實(shí)施我們的游戲讓我們繼續(xù)創(chuàng) 這將給我們的硬幣一些生活讓我們把這種usingusingusingpublicclassCoin:MonoBehaviour{privateintvalue;publicint{get{returnthis.value;}//UsethisforvoidvoidStart()this.value=Random.Range(1,}//UpdateiscalledoncepervoidUpdate()}}在Coin.cs定義該將被連接到的硬幣對(duì)象。在比賽開(kāi)始時(shí),將隨機(jī)生19 或片的對(duì)象。簡(jiǎn)單地對(duì)象肯定會(huì)產(chǎn)生重復(fù),但他們都將獨(dú)立編輯。通常飯容易的式。2組合屋是非常有用的,看到如何在更復(fù)雜的情況更有效地使用它們。38(CP這是迄今為止對(duì)CPusingUnityEngine;usingUnityEngine.UI;usingpublic yerInput:MonoBehaviourprivateint //internalscorepublicint{get{returnthis.score;}//UsethisforvoidStart(){this.score=}//UpdateiscalledoncepervoidUpdate()//codeforthemovementof yer(CP)forwardthis.transform.Translate(Vector3.forward*Time.deltaTime);}//codeforthemovementof yer(CP)backwardthis.transform.Translate(Vector3.back*Time.deltaTime);}//codeforthemovementof yer(CP)leftthis.transform.Rotate(Vector3.up,-5);}//codeforthemovementof yer(CP)rightthis.transform.Rotate(Vector3.up,5);}}//ThiseventwillberaisedbyobjectthathavetheirIsTriggerattributed//Inourcase,thecoinGameObjecthasIsTriggersettotrueonitsvoidOnTriggerEnter(ColliderCoincoin //increasethis.score+=//removetheCoinobjectfromthe}}}新的修改做了幾件事情。首先我們引入一個(gè)變量來(lái)得分的球員。然后OnTriggerEnter(C)功能我們正在檢查,看看我們是否用硬幣對(duì)象相撞,如果是這樣,我們得到了硬幣對(duì)象的硬幣組件,并通過(guò)Value屬性提取硬幣的價(jià)值。然后,我們通過(guò)硬幣的價(jià)值增們的分?jǐn)?shù)。然后,我們想從場(chǎng)景中刪除的硬幣對(duì)象,因此我們使用destroy(c.gameObject)函數(shù)來(lái)銷毀從UI4部分涵蓋創(chuàng)建用戶首先,解決的游戲得分UI。下圖顯示了它是如何的外觀4UI中,我使用的已錨定到屏幕的左上角,用于顯示硬幣圖標(biāo)面板內(nèi)的圖像,并為的文本元素的面板。為了得到一個(gè)定制的外觀和感覺(jué),你可以申請(qǐng)一個(gè)紋理到面板的背景等..參見(jiàn)第4部分。我已經(jīng)更新 usingUnityEngine;usingUnityEngine.UI;using我已經(jīng)更新 usingUnityEngine;usingUnityEngine.UI;usingpublic yerInput:MonoBehaviourpublicTextlblScore;//textUIelementfor yingpublicTextlblTimer;//textUIelementfor yingprivateint //internalscorepublicint{get{returnthis.score;}privatefloattimer;//variabletokeeptrackof//UsethisforvoidStart()this.score=0;this.timer=30.00f;//checktomakesurelabelsaredefinedbeforeif(this.lblScore!=null)this.lblScore.text=this.score.ToString();if(this.lblTimer!=this.lblTimer.text=string.Format("{0:F2}",this.timer-}//UpdateiscalledoncepervoidUpdate()if(this.lblTimer!=this.lblTimer.text=string.Format("{0:F2}",this.timer-//codeforthemovementof yer(CP)forwardthis.transform.Translate(Vector3.forward*Time.deltaTime);}//codeforthemovementof yer(CP)backwardthis.transform.Translate(Vector3.back*Time.deltaTime);}//codeforthemovementof yer(CP)leftthis.transform.Rotate(Vector3.up,-5);}//codeforthemovementof yer(CP)rightthis.transform.Rotate(Vector3.up,5);}}}//ThiseventwillberaisedbyobjectthathavetheirIsTriggerattributed//Inourcase,thecoinGameObjecthasIsTriggersettotrueonitsvoidOnTriggerEnter(Colliderc){Coincoin //increasethis.score+=//updatescoreontheif(this.lblScore!=null)this.lblScore.text=this.score.ToString();//removetheCoinobjectfromthe}}}lblScore,lblTimer和定時(shí)器:我們?cè)谥薪榻B了幾個(gè)變量。我們更新了lblScore和lblTimer不為空,如果沒(méi)有,則分配值其text屬性。我們已經(jīng)更新了下一個(gè)功能是update()函數(shù)。我們只包含幾行更新計(jì)時(shí)家的分?jǐn)?shù)。最后,lblScore被更新相應(yīng)地反映在用戶界面上的分?jǐn)?shù)。有幾個(gè)改進(jìn),提出之前,我結(jié)束系列的第6部分。如果您發(fā)現(xiàn),我們要解決這一難題,實(shí)現(xiàn)以下邏輯有一個(gè)完成的游戲0.00下面的代碼顯示了如何修改我們的代碼來(lái)處理情況(1)和情usingusingusingUnityEngine.UI;usingSystem.Collections;public yerInput:MonoBehaviourpublicTextlblScore;//textUIelementfor yingpublicTextlblTimer;//textUIelementfor yingprivateint//internalscorepublicint{get{returnthis.score;}privatefloat //variableholingtimetocompleteprivatefloat //variablefortheactualtimercountpublicboolpublicintpublicint//variableindicatingendof//willbeinitializedattheStartof//willbeincrementedeachtimewecollect//UsethisforvoidStart(){this.score=0;this.timer=60.00f;this.numOfCoinsCollected=this.END_GAME=//checktomakesurelabelsaredefinedbeforeif(this.lblScore!=null)this.lblScore.text=this.score.ToString();if(this.lblTimer!=this.lblTimer.text=string.Format("{0:F2}",this.timer-//getnumberofcoinsinthesceneatthestartofthethis.numOfCoinsInLevel=GameObject.FindGameObjectsWithTag}//UpdateiscalledoncepervoidUpdate()if(!this.END_GAME)//computetimethis.timeLeft=this.timer-//updateUIlabelforif(this.lblTimer!=this.lblTimer.text=string.Format("{0:F2}",}//checktoseeifweneedtoendthegamebasedonthetimerif(this.timeLeft<=0.00f||this.numOfCoinsInLevel<=this.numOfCoinsCollected){this.END_GAME=true;if(this.lblTimer!=this.lblTimer.text=string.Format("{0:F2}",}}//codeforthemovementof yer(CP)forwardthis.transform.Translate(Vector3.forward*Time.deltaTime);}//codeforthemovementof yer(CP)backwardthis.transform.Translate(Vector3.back*Time.deltaTime);}//codeforthemovementof yer(CP)leftthis.transform.Rotate(Vector3.up,-5);}//codeforthemovement yer(CP)this.transform.Rotate(Vector3.up,5);}Debug.Log("GAME}}//ThiseventwillberaisedbyobjectthathavetheirIsTriggerattributed//Inourcase,thecoinGameObjecthasIsTriggersettotrueonitsvoidOnTriggerEnter(Colliderc){Coincoin //increasethis.score+=coin.VALUE;this.numOfCoinsCollected+=1;//updatescoreontheif(this.lblScore!=null)this.lblScore.text=this.score.ToString();//removetheCoinobjectfromthe}}}我們也推出了幾個(gè)變量來(lái)統(tǒng)計(jì)數(shù)據(jù)在我們的游戲。一個(gè)新的變量的timeleftEND_GAME被5與往常一樣,我們需要更新我們的來(lái)處理新的增強(qiáng)功能。這里yerInput.cs的更新列表usingusingusingUnityEngine.UI;usingSystem.Collections;public yerInput:MonoBehaviourpublicText //textUIelementfor yingpublicText //textUIelementfor yingpublicCanvas //CanvasholdingUIelementsforEndofpublicTextlblEndOfGameScore;publicTextlblEndOfGameTime;publicTextlblEndOfGameCoinCont;privateint//internalscorepublicint{get{returnthis.score;}privatefloat //variableholingtimetocompleteprivatefloat //variablefortheactualtimercountpublicbool //variableindicatingendofpublicintnumOfCoinsInLevel; //willbeinitializedattheStartofthepublicintnumOfCoinsCollected; //willbeincrementedeachtimewecollecta//UsethisforvoidStart()this.score=this.levelTime=Time.time+30.00f;this.numOfCoinsCollected=0;this.END_GAME=//checktomakesurelabelsaredefinedbeforeif(this.lblScore!=null)this.lblScore.text=this.score.ToString();if(this.lblTimer!=this.lblTimer.text=string.Format("{0:F2}",this.levelTime-//getnumberofcoinsinthesceneatthestartofthethis.numOfCoinsInLevel=GameObject.FindGameObjectsWithTag}//UpdateiscalledoncepervoidUpdate()if(!this.END_GAME)//computetimethis.timeLeft=this.levelTime-//updateUIlabelforif(this.lblTimer!=this.lblTimer.text=string.Format("{0:F2}",}//checktoseeifweneedtoendthegamebasedonthetimerif(this.timeLeft<=0.00f||this.numOfCoinsInLevel<=this.numOfCoinsCollected){this.END_GAME=true;if(this.lblTimer!=null&&this.lblEndOfGameTime!=this.lblTimer.text=string.Format("{0:F2}",this.timeLeft);this.lblEndOfGameTime.text=string.Format("{0:F2}",this.timeLeft);//thiselseblockiswrittentoensurethatifthetimerisup,wealways//andnotpositiveornegativevalues,i.e.0.01,or-0.01andetc...this.lblTimer.text=string.Format("{0:F2}",0.00f);this.lblEndOfGameTime.text=string.Format("{0:F2}",0.00f);}}if(this.lblEndOfGameScore!=null&&this.lblEndOfGameCoinCont!=null){this.lblEndOfGameScore.text=this.SCORE.ToString();this.lblEndOfGameCoinCont.text=this.numOfCoinsCollected.ToStrin

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論