亚洲AV免费看深爱成人|日韩av另类一级特黄片在线|中国免费一级黄片|国产av一二三区|亚洲有码AV在线|久久亚洲国产日韩欧美|成人免费AV网站|婷婷一区综合一区|亚洲AV无码导航|高级欧美成人网站

高校合作1:010-59833514 ?咨詢電話:400-810-1418 服務(wù)與監(jiān)督電話:400-810-1418轉(zhuǎn)接2

unity3d開發(fā)教程-初始unity

發(fā)布時(shí)間:2024-04-08 10:05:47 瀏覽量:240次

一、Unity編輯器面板介紹

在Unity開發(fā)中,一般我們只在Assets目錄添加資源進(jìn)行游戲制作,其他目錄可以暫時(shí)不關(guān)心。

打開Unity,可以在 Project 面板操作該目錄下的文件

新創(chuàng)建的項(xiàng)目里,Assets目錄除了從xlua拷貝過來的 Xlua、Plugins目錄,還有一個 Scenes目錄,用于存放場景文件

在Unity里把項(xiàng)目自動生成的場景 SampleScene 改成 Launch,這是我們的第一個場景——啟動場景

在Unity里雙擊該場景開始編輯

一般地, 編輯資源的操作流程為:

1、在Project面板選擇要編輯的資源

2、在Hierarchy面板,展開該資源,找到要編輯的GameObject

3、在Scene面板預(yù)覽該資源,也可以在Scene面板選擇、調(diào)整該資源下的GameObject的位置

4、在Inspector面板設(shè)置選中的GameObject的組件屬性

例外情況:如果Project面板選中的是圖片,則可以直接在Inspector面板設(shè)置對應(yīng)圖片的屬性

二、GameObject和組件

1、在Unity里,場景由GameObject組成。游戲運(yùn)行時(shí),加載場景,會創(chuàng)建場景中的GameObject,渲染可顯示的GameObject。

2、在Project面板雙擊Launch場景,在Hierarchy面板可以看到有一個GameObject:Main Camera

3、在Hierarchy面板選中Main Camera,Inspector面板顯示對應(yīng)的組件

4、可以理解為,GameObject是個可隨便組合的容器,這個容器有什么功能、渲染效果,由它的組件來決定

5、Main Camera有 Transform、Camera、Audio Listener三個組件

6、可以將Camera組件的 Background設(shè)置為黑色,Target Display 為Display 1

Display 1是在Game面板中設(shè)定的預(yù)覽窗口,一般運(yùn)行預(yù)覽的時(shí)候會自動從Scene面板切換到Game面板,也可以手動切換

7、在Inspector面板下方,點(diǎn)擊 Add Component 按鈕,可以為Main Camera添加新的組件,例如選擇 Scripts,在子菜單選擇C#腳本添加自定義的組件

三、C#腳本

1、在Project面板,選擇Assets文件夾,鼠標(biāo)右鍵 -> Create -> Folder,新建一個文件夾,命名為Scripts用于存放C#腳本

2、選擇 Scripts文件夾,鼠標(biāo)右鍵 -> Create -> C# Script,新建一個C#腳本,命名為 Launch,作為啟動腳本

3、C#腳本是Unity比較流行的開發(fā)語言,對于繼承于UnityEngine.MonoBehaviour的子類,在Unity編輯器可以作為組件添加到GameObject中(運(yùn)行時(shí)創(chuàng)建GameObject,會以Inspector面板設(shè)置的數(shù)據(jù)做模板實(shí)例該組件對象并添加到GameObject)

3、C#是微軟公司發(fā)布的一種由C和C++衍生出來的面向?qū)ο蟮木幊陶Z言、運(yùn)行于.NET Framework和.NET Core(完全開源,跨平臺)之上的高級程序設(shè)計(jì)語言。

4、如果沒有使用過C#,可以看下 菜鳥教程

5、可以使用VSCode打開Launch腳本(Launch.cs),Unity自動生成了一些代碼。

 1 using System.Collections;
 2 using System.Collections.Generic;
 3 using UnityEngine;
 4 
 5 public class Launch : MonoBehaviour
 6 {
 7     public Button startButton;
 8 
 9     // Start is called before the first frame update
10     void Start()
11     {
12 
13     }
14 
15     // Update is called once per frame
16     void Update()
17     {
18         
19     }
20 }

7、組件基類為Component,但用戶自定義的腳本都繼承自MonoBehaviour(Component的子類)

8、組件有幾個關(guān)鍵的生命周期:

1)Awake:只調(diào)用一次,在組件整個生命周期開始時(shí)調(diào)用,組件一般不建議寫構(gòu)造方法,需要提前初始的數(shù)據(jù),可以在Awake初始化

2)Start:第一次Enable時(shí)調(diào)用,整個生命周期只調(diào)用一次,可以在這里做一些啟動處理,例如添加監(jiān)聽、啟動定時(shí)器等

3)Update:每幀調(diào)用一次,可以添加每幀都處理的邏輯

4)OnDestroy,組件銷毀時(shí)調(diào)用,可以通過GameObject.Destroy()觸發(fā)

9、public 屬性可以暴露給 Unity編輯器進(jìn)行設(shè)置,例如第7行 public Button startButton;

10、可以在 Unity編輯器 綁定該 public 屬性到哪個按鈕,腳本里就可以通過 startButton 字段操作該按鈕

11、作為啟動腳本,我們希望它比其他腳本優(yōu)先執(zhí)行。在Project面板選擇Scripts文件夾,選中Launch腳本,在Inspector面板右上方,點(diǎn)擊 Execution Order 按鈕

12、添加Launch腳本,并調(diào)整其順序在 Default Time 之前

熱門課程推薦

熱門資訊

請綁定手機(jī)號

x

同學(xué)您好!

您已成功報(bào)名0元試學(xué)活動,老師會在第一時(shí)間與您取得聯(lián)系,請保持電話暢通!
確定