11
iii Unity 2003 年創立以來,一直秉持著提供高性價比的 3D 遊戲引擎、重視遊戲 開發社群與獨立開發者的發展策略,並且由於近年來在智慧型手機、平板電腦飛速 普及的大趨勢之下,Unity 的全球用戶已經突破 150 萬人,而且還不斷的快速增加當 中,所以 Unity 已經成為全球 3D 網頁遊戲與手機 APP 遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習 Unity 已經成為大部分人想要進入 3D 遊戲或 3D 互動 相關產業的必修軟體,所以選擇一部好的教材一定能夠事半功倍。 愛迪斯科技在 2011 年已經成為 Unity 大中華區教育市場總代理,致力於協助大 專院校與商業教育訓練機構開設 Unity 相關的培訓課程與認證計畫,滿足現在和未來 華人市場在 3D 遊戲或互動應用的人才需求與創作動能,致力於促進大中華地區的數 位內容與文化創意產業發展。 在此特別感謝邱勇標老師將自己多年來的教學經驗無私地撰寫成書,提供讀者一 個系統性的學習課程。他多年來在 3D 遊戲與虛擬實境的教育經驗十分豐富,成功地 帶領學生使用 Unity 完成多項作品、成果豐碩。本書尤其令人期待的是提供多樣化的 遊戲範例,無疑地對於初學者會有極大的幫助,使其能掌握各種遊戲類型創作的完整 過程,避免大部分人在經驗不足之下,走了許多彎路。 我相信邱老師的專書一定可以協助許許多多有興趣投入遊戲創作的中小型獨立開 發團隊開始製作自己的遊戲,並且希望各位讀者在學習本書的課程後,可以創作出集 創意性、娛樂性與市場性於一身的優秀作品。 大中華區 Unity 教育市場總代理 愛迪斯科技股份有限公司 執行長 foreword 推薦序

推薦序 foreword - 碁峰資訊epaper.gotop.com.tw/pdf/AEG000900.pdf · 中,所以Unity已經成為全球3D網頁遊戲與手機APP遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習Unity已經成為大部分人想要進入3D遊戲或3D互動

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 推薦序 foreword - 碁峰資訊epaper.gotop.com.tw/pdf/AEG000900.pdf · 中,所以Unity已經成為全球3D網頁遊戲與手機APP遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習Unity已經成為大部分人想要進入3D遊戲或3D互動

iii

Unity自 2003年創立以來,一直秉持著提供高性價比的 3D遊戲引擎、重視遊戲

開發社群與獨立開發者的發展策略,並且由於近年來在智慧型手機、平板電腦飛速

普及的大趨勢之下,Unity的全球用戶已經突破 150萬人,而且還不斷的快速增加當

中,所以 Unity已經成為全球 3D網頁遊戲與手機 APP遊戲開發上影響力最大的遊戲

開發工具。也因為如此,學習 Unity已經成為大部分人想要進入 3D遊戲或 3D互動

相關產業的必修軟體,所以選擇一部好的教材一定能夠事半功倍。

愛迪斯科技在 2011年已經成為 Unity大中華區教育市場總代理,致力於協助大

專院校與商業教育訓練機構開設 Unity相關的培訓課程與認證計畫,滿足現在和未來

華人市場在 3D遊戲或互動應用的人才需求與創作動能,致力於促進大中華地區的數

位內容與文化創意產業發展。

在此特別感謝邱勇標老師將自己多年來的教學經驗無私地撰寫成書,提供讀者一

個系統性的學習課程。他多年來在 3D遊戲與虛擬實境的教育經驗十分豐富,成功地

帶領學生使用 Unity完成多項作品、成果豐碩。本書尤其令人期待的是提供多樣化的

遊戲範例,無疑地對於初學者會有極大的幫助,使其能掌握各種遊戲類型創作的完整

過程,避免大部分人在經驗不足之下,走了許多彎路。

我相信邱老師的專書一定可以協助許許多多有興趣投入遊戲創作的中小型獨立開

發團隊開始製作自己的遊戲,並且希望各位讀者在學習本書的課程後,可以創作出集

創意性、娛樂性與市場性於一身的優秀作品。

大中華區 Unity教育市場總代理

愛迪斯科技股份有限公司執行長

foreword推薦序

Page 2: 推薦序 foreword - 碁峰資訊epaper.gotop.com.tw/pdf/AEG000900.pdf · 中,所以Unity已經成為全球3D網頁遊戲與手機APP遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習Unity已經成為大部分人想要進入3D遊戲或3D互動

iv

foreword

Unity 專業認證說明:

Page 3: 推薦序 foreword - 碁峰資訊epaper.gotop.com.tw/pdf/AEG000900.pdf · 中,所以Unity已經成為全球3D網頁遊戲與手機APP遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習Unity已經成為大部分人想要進入3D遊戲或3D互動

v

自從 2008年 Unity發現這一套 3D遊戲引擎就注意到它的發展潛力,可惜一直以

來相關的訊息資料均為英文,對於國內的開發團隊便顯得相對陌生,更由於沒有充分

的了解而對以 Unity 為引擎來開發遊戲持保留的態度。

然而最近 Unity在全球遊戲界的急速竄起,使得 Unity在 3D遊戲設計領域已占

有一席之地,更被許多遊戲團隊、學校 3D遊戲課程所使用,其特色是具有完整的互

動環境、視覺化,同時跨平台,適合小型團隊或個人進行遊戲的關發。

邱老師在遊戲與建築領域都有很深入的研究與專精,本書是邱老師依教學與實

務遊戲設計經驗彙整編寫而成,範例式導向的學習設計,讓讀者可以從入門到深入應

用,進而在短時間運用 Unity學會 3D遊戲的開發與設計,非常適合作為商業遊戲設

計,以及學校的 3D遊戲課程的參考書籍,而且範例雖然是採用目前 Unity的最新版

本編輯,但仍提供相容於 Unity 3.X版本的範例檔,可讓更多的讀者加以運用。

書中更針對程式背景或設計背景者提供了貼心的學習方法,在程式腳本中附有中

文說明,讓初學 Unity程式語法的設計人,可以迅速瞭解程式開發的架構,而在每個

遊戲專案檔中,則整理出相關圖片與模型檔,讓程式設計者可以迅速套用,依書籍內

容製作出具有質感的遊戲範例。無論是在內容的深度或範例的設計上,都是相當的用

心與具有水準,是一本值得 3D遊戲學習者珍藏的好書。

依斯楚互動娛樂股份有限公司 董事長

foreword推薦序

Page 4: 推薦序 foreword - 碁峰資訊epaper.gotop.com.tw/pdf/AEG000900.pdf · 中,所以Unity已經成為全球3D網頁遊戲與手機APP遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習Unity已經成為大部分人想要進入3D遊戲或3D互動

CONTENTS

xii

Contens目 錄

Chapter 01 軟體介紹

1.1 前言 .......................................................................... 1-2

1.2 下載軟體與安裝流程 .............................................. 1-3

1.3 各視窗功能介紹 ...................................................... 1-8

1.4 系統選單 ................................................................ 1-21

Chapter 02 基本操作

2.1 建立專案與新場景 .................................................. 2-2

2.2 物理材質 .................................................................. 2-5

2.3 鏡頭 ........................................................................ 2-10

2.4 燈光 ........................................................................ 2-13

2.5 光影貼圖 ................................................................ 2-16

2.6 飄動的布料 ............................................................ 2-22

Chapter 03 場景設定

3.1 自然環境模擬 .......................................................... 3-2

3.2 自製高程差貼圖 .................................................... 3-21

3.3 地形製作插件 ........................................................ 3-25

3.4 樹木生成器 ............................................................ 3-30

3.5 模型匯入技巧 ........................................................ 3-38

Page 5: 推薦序 foreword - 碁峰資訊epaper.gotop.com.tw/pdf/AEG000900.pdf · 中,所以Unity已經成為全球3D網頁遊戲與手機APP遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習Unity已經成為大部分人想要進入3D遊戲或3D互動

xiii

Chapter 04 GUI 介面與粒子系統

4.1 GUI介紹 .................................................................. 4-2

4.2 新型粒子系統 ........................................................ 4-13

4.3 典型粒子系統 ........................................................ 4-18

Chapter 07 室內展覽應用範例

7.1 前言 .......................................................................... 7-2

7.2 場景製作 .................................................................. 7-3

7.3 材質製作 ................................................................ 7-27

7.4 女僕與物件開關設定 ............................................ 7-48

7.5 戶外場景製作 ........................................................ 7-63

7.6 影片播放與鏡子製作 ............................................ 7-78

7.7 層級與燈光設定 .................................................... 7-89

Chapter 05 基礎程式腳本

5.1 程式編寫概念 .......................................................... 5-2

5.2 基礎程式腳本 .......................................................... 5-5

5.3 音效播放腳本 ........................................................ 5-21

Chapter 06 編寫控制腳本-坦克車大戰

6.1 前言 .......................................................................... 6-2

6.2 坦克移動 .................................................................. 6-3

6.3 砲塔控制 ................................................................ 6-19

6.4 履帶與砲擊 ............................................................ 6-28

Page 6: 推薦序 foreword - 碁峰資訊epaper.gotop.com.tw/pdf/AEG000900.pdf · 中,所以Unity已經成為全球3D網頁遊戲與手機APP遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習Unity已經成為大部分人想要進入3D遊戲或3D互動

CONTENTS

xiv

Chapter 08 投籃遊戲範例

8.1 前言 .......................................................................... 8-2

8.2 籃球場地製作 .......................................................... 8-3

8.3 角色控制與投球 .................................................... 8-24

8.4 分數計算與籃網布料製作 .................................... 8-42

Chapter 09 第三人稱冒險遊戲-紙片人

9.1 前言 .......................................................................... 9-2

9.2 場景製作 .................................................................. 9-3

9.3 環場背景製作 ........................................................ 9-19

9.4 主角與開關城門 .................................................... 9-28

9.5 NPC對話及敵人 AI .............................................. 9-51

9.6 製作遊戲選單及連結檔案 .................................... 9-84

Chapter 10 第一人稱射擊遊戲-敵軍總部

10.1前言 ........................................................................ 10-2

10.2場景製作 ................................................................ 10-4

10.3多種武器切換、爆炸和敵人攻擊 ...................... 10-20

10.4 FPS進階 .............................................................. 10-46

10.5遊戲優化 .............................................................. 10-86

10.6塔防遊戲之途徑點 ............................................ 10-107

10.7尋路導航功能 .....................................................10-110

10.8動畫事件應用 .....................................................10-115

Page 7: 推薦序 foreword - 碁峰資訊epaper.gotop.com.tw/pdf/AEG000900.pdf · 中,所以Unity已經成為全球3D網頁遊戲與手機APP遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習Unity已經成為大部分人想要進入3D遊戲或3D互動

7.4 女僕與物件開關設定

7-57

07

☛◌ 當角色靠近門時,以游標指向門,游標的圖案便會改變。

☛☛ 陽台門(door group→ Floor_door)做法也一樣,先將 opendownScript腳本附加給它,然後增加開關門的音效,將 4.sound裡的 Sliding_Doors_Down、Sliding_Doors_Open拖給對應的位置。

☛☛ 設定陽台門的門板標籤為 Switch。

☛☛ 完成以後,我們就可以按下 play來去參觀陽台了。

Page 8: 推薦序 foreword - 碁峰資訊epaper.gotop.com.tw/pdf/AEG000900.pdf · 中,所以Unity已經成為全球3D網頁遊戲與手機APP遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習Unity已經成為大部分人想要進入3D遊戲或3D互動

7-58

07 室內展覽應用範例 CHAPTER

5. 製作窗簾開關。選擇任一個窗簾(curtains group → curtains),將 opendownScript 腳本附加給它,然後增

加拉窗簾的音效,將

4.sound 裡的 curtain_down、curtain_open拖給對應的位置。

☛☛ 設定窗簾標籤為 Switch,然後按下 Apply,讓所有的窗簾的設定都相同。

☛☛ 完成以後,我們就可以按下 play來去拉窗簾了。

Page 9: 推薦序 foreword - 碁峰資訊epaper.gotop.com.tw/pdf/AEG000900.pdf · 中,所以Unity已經成為全球3D網頁遊戲與手機APP遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習Unity已經成為大部分人想要進入3D遊戲或3D互動

7.4 女僕與物件開關設定

7-59

07

6. 衣櫃開關。選擇任一個衣櫃,將

opendownScript 腳 本附加給它,並增

加開關衣櫃門的音

效,將 4.sound裡的Bedroom_shower _door_open-down拖給對應的位置。

☛☛ 設定衣櫃標籤為 Switch,然後按下 Apply,讓所有的衣櫃的設定都相同。

☛☛ 完成以後,我們就可以按下 play來開關衣櫃了。

Page 10: 推薦序 foreword - 碁峰資訊epaper.gotop.com.tw/pdf/AEG000900.pdf · 中,所以Unity已經成為全球3D網頁遊戲與手機APP遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習Unity已經成為大部分人想要進入3D遊戲或3D互動

7-60

07 室內展覽應用範例 CHAPTER

7. 淋浴間開關。將 opendownScript 腳本附加給 Bedroom_shower、Master_bedroom_shower。

☛☛ 增加開關主臥室淋浴間的音效,將 4.sound裡的 Master_bedroom_shower_door_CLOS、Master_bedroom_shower_door_OPEN拖給對應的位置。

☛☛ 增加開關臥室淋浴間的音效,將 4.sound裡的 Bedroom_shower_door_open-down拖給對應的位置。

Page 11: 推薦序 foreword - 碁峰資訊epaper.gotop.com.tw/pdf/AEG000900.pdf · 中,所以Unity已經成為全球3D網頁遊戲與手機APP遊戲開發上影響力最大的遊戲 開發工具。也因為如此,學習Unity已經成為大部分人想要進入3D遊戲或3D互動

7.4 女僕與物件開關設定

7-61

07

☛☛ 設定主臥室淋浴間的門(Master_bedroom_shower→ Head)的標籤為 Switch。

☛☛ 設定臥室淋浴間的門(Bedroom_shower→ Bedroom_shower_door→ Hand、Hand2)的標籤為 Switch。