2016年7月28日 星期四

【Unity官方教學分享】C#和Javascript語法比較

網頁連結

如何開啟CC字幕?

在新增腳本時,C#會顯示類別,如以下程式碼的CSharpSyntax類別。
using UnityEngine;
using System.Collections;
public class CSharpSyntax : MonoBehaviour {
    void Start () 
    {
    }
    void Update ()
    {
    }
}
而Javascript的類別則是隱藏,開發者輸入的程式碼會自動在此類別之下。
另外第一行的#pragma strict會強制使用者輸入變數型別。
#pragma strict
function Start () 
{
}
function Update () 
{
}

2016年7月27日 星期三

【Unity官方教學分享】規則和語法

網頁連結

如何開啟CC字幕?

本篇文章要介紹規則(Conventions)和語法,程式語法是一種有結構性的語言,加上一些必要的規則就可以閱讀並且撰寫程式。
舉例來說,點符號運算子(dot operator)。
點符號運算子輸入時為英文的句號 ".",如下面程式碼看到的,它在兩個單字之間。
using UnityEngine;
public class BasicSyntax : MonoBehaviour 
{
    void Start () 
    {
        Debug.Log(transform.position.x);
    }
}
撰寫方式就像寫地址一樣,假設把Debug當作是國家,打上 . 後接著Log就是在Debug之下的城市。
再以transform為例,transform是國家,position是城市,而x就是position之下的某個區。

2016年7月25日 星期一

【Unity官方教學分享】變數與函式

網頁連結


這次的內容是變數(Variables)函式(Functions)
變數可以看成用來裝資料的箱子,不同類型的資料,需要不同類型的箱子來裝,以下是宣告變數的例子。
using UnityEngine;
using System.Collections;

public class ScriptTest : MonoBehaviour {
    int myInt, newInt;

    float myFloat = 5.0f;
}
首先看到 int myInt, newInt; 那一行。
(1) int代表此變數的型別,意思是接下來宣告的變數將會是整數(Integer)。
(2) myInt是此變數的名稱用來辨認此變數的名稱。
(3) 如果要同時宣告多個相同型別的變數,用逗點 , 將各個變數隔開,如myInt, newInt。
(4) 最後以分號 ; 做結尾,名為myInt及newInt的變數就宣告完成。
接著看到下一行的 float myFloat = 5.0f; ,如果依上述的規則,就是一個名為myFloat的浮點數(float),但多了= 5.0f是?
(5) = 5.0f 表示在宣告myFloat的同時,給它一個5.0的浮點數數值,後續如果呼叫myFloat時,它就會是5.0,以下面程式碼為例
using UnityEngine;
using System.Collections;

public class ScriptTest : MonoBehaviour {
    float myFloat = 5.0f;

    void Start() {
        Debug.Log(myFloat);
    }
}
Start函式會在遊戲專案運行最初,執行一次函式裡的內容,
這裡為 Debug.Log(myFloat); ,會在Console視窗顯示myFloat的數值,結果如下。
變數與函式 Variables and Functions

2016年7月23日 星期六

【Unity官方教學分享】分析器資訊

網頁連結


Unity內建的分析器(profiler)讓開發者可以快速而且準確的評估遊戲效能,分析器資訊可以讓遊戲執行的平順而且有效率。

點擊Window -> Profiler開啟分析器視窗。
分析器資訊 Introduction to the Profiler
分析器視窗就像其他Unity編視窗一樣,可嵌入任意位置,讓開發者可以方便使用。
當分析器視窗開啟,往後執行相同專案時,分析器就會預設為開啟的狀態。

2016年7月22日 星期五

【Unity官方教學分享】腳本行為元件

網頁連結

如何開啟CC字幕?

程式腳本在Unity內建議使用行為元件(Component),就像其他元件掛載在物件上,顯示於檢視(Inspector)中。
以下是簡單的元件範例。
腳本行為元件 Scripts as Behaviour Components
上圖中的Cube被添加了Rigidbody元件,這代表它被賦予物理的質量,所以專案運行時,Cube會受到重力而往下掉。

2016年7月21日 星期四

【Unity】使用導航網格(NavMesh)實踐滑鼠點擊地板的人物移動

本文章會提到的‧
滑鼠點擊地板的人物移動3D與2D射線中提到的射線(Ray)。
Unity導航系統前三篇。
Mecanim動畫系統Part1Part3Part4

本文開始。
這次要做的是,使用滑鼠點擊地板的人物移動操控。
移動路徑規劃使用導航網格(NavMesh),移動目標位置使用射線(Ray)指定,人物動畫則是使用Mecanim動畫系統
成果如下圖。
使用導航網格(NavMesh)實踐滑鼠點擊地板的人物移動

【Unity官方教學分享】建構與播放器設定

網頁連結


建構(Build)是將專案輸出成可執行的格式,因為Unity支援多平台,輸出的格式會因平台而不同。
建構設定可以從File -> Build Settings...開啟視窗來調整。
Build and Player Settings 建構與播放器設定

2016年7月20日 星期三

2016年7月19日 星期二

【Unity官方教學分享】專案面板和匯入

網頁連結

如何開啟CC字幕?

專案(Project)是用來管理專案內的所有資源(Assets),專案建立或匯入的資源會存放在本視窗。

點擊左上角生成按鈕(Create),可以在專案中建立資源。
專案面板和匯入 The Project Panel and Importing
 或是在專案中右鍵點擊Import New Asset...,匯入外部的資源。
專案面板和匯入 The Project Panel and Importing

【Unity官方教學分享】階層與物件父子關係

網頁連結

如何開啟CC字幕?

階層( Hierarchy)是用來顯示場景中物件的列表,排序可依Transform字母順序。
排序依據可以點擊搜尋欄右邊的按鈕切換。
階層與物件父子關係 The Hierarchy and Parent-Child relationships

2016年7月18日 星期一

【Unity官方教學分享】NavMesh障礙物

網頁連結

如何開啟CC字幕?

使用NavMesh障礙物元件,可以做出可移動的障礙物,例如門、倒塌的牆、突然掉落擋住去路的石頭等等。
NavMesh Obstacles NavMesh障礙物
如上圖所看到的,帶有NavMesh障礙物元件的物件擋住原先路徑時,正在做導航的物件會重新規畫路徑。


【Unity官方教學分享】分離網格連結

網頁連結

如何開啟CC字幕?

這次要談的是分離網格連結(Off-mesh Links),可以用來實作導航過程中,需要跳躍的地方。
分離網格連結:
Off-mesh Links分離網格連結
 分離網格連結:
Off-mesh Links分離網格連結

2016年7月15日 星期五

【Unity官方教學分享】NavMesh烘焙

網頁連結

如何開啟CC字幕?

Unity導航系統中的移動範圍,會依照NavMesh導航網格來決定,所以在讓物件移動前需要生成NavMesh,而在Unity中生成NavMesh是透過烘焙。
首先點擊Window -> Navigation開啟導航系統視窗開啟導航視窗後可以看到三個標籤,分別是ObjectBakeAreas
NavMesh烘焙 NavMesh Baking
在烘焙出NavMesh之前,我們必須告訴Unity那些物件是navigation static
被設定navigation static的物件,代表著它具有不能移動而且可以行走的特性,通常是地板、牆壁或障礙物。

2016年7月13日 星期三

【Unity官方教學分享】導航系統概要

網頁連結

如何開啟CC字幕?

在Unity中,開發者可以使用內建的導航系統,讓角色可以更聰明且精確的移動。
導航系統概要 Navigation Overview
使用本系統,開發者可以讓角色即時在3D環境中移動。

2016年7月12日 星期二

【Unity官方教學分享】遊戲視圖

網頁連結

如何開啟CC字幕?

遊戲視圖會在按下播放按鈕後運行。
遊戲視圖 The Game View
遊戲視圖會顯示遊戲執行的情況,開發者可以在此視窗檢視遊戲運行的結果。

2016年7月9日 星期六

【Unity官方教學分享】場景視圖

網頁連結

如何開啟CC字幕?

以下是大略的內容,由於和影片中使用的Unity版本不同,多少會有些差異。
首先是右上角的控制按鈕:
場景視圖 The Scene View
可以透過滑鼠點擊,或是鍵盤快速鍵切換,對應鍵盤由左至右依序是Q、WERT。

2016年7月6日 星期三

【Unity官方教學分享】介面概要

網頁連結

如何開啟CC字幕?

大略提一下影片教學內容,首先是各主要視窗:
介面概要 Interface Overview
這裡大致介紹了Unity內的五大視窗;場景視窗遊戲視窗階層專案檢視
場景視窗讓開發者可以視覺化建構自己的遊戲。
遊戲視窗可以即時顯示遊戲運行的結果,當按下播放時會執行。
階層中含有場景內所有的物件。
專案中包含本專案所有的資源。
檢視會顯示物件或資源的資訊,當點擊物件或資源時會顯示。

2016年7月4日 星期一

【Unity】使用3D與2D射線(Ray)來判斷物件

今天來提判斷被點擊物件的方式,射線(Ray)。
這次會分3D射線及2D射線,首先從比較常看到的3D射線開始吧。
Unity Ray

【自製小遊戲】水平思考猜謎(海龜湯)

遊戲連結 海龜湯的玩法是由出題者提出一個難以理解的事件,參與猜題者可以提出任何問題以試圖縮小範圍並找出事件背後真正的原因。但出題者僅能以「是」、「不是」或「沒有關係」來回答問題。 本遊戲蒐集各種論壇、平台的42個題目,提供給想玩海龜湯卻愁找不到題目的你們。 ...