出版時間:2012-4 出版社:機械工業(yè)出版社 作者:梅納德 頁數(shù):297
Tag標簽:無
內容概要
本書結合Unity這種多平臺的集成引擎和編輯器,介紹如何使用Unity創(chuàng)建游戲、添加交互性,以及修飾游戲并發(fā)布游戲的所有知識。本書分為五部分,每一章都介紹一個獨立的概念,并且循序漸進地講述新的概念,還使用一個綜合的游戲項目貫穿全書。在本書中,讀者將學到所有重要的界面命令,如何設置和組織項目,以及創(chuàng)建并運行一個3D游戲的所有基礎,從角色導入到腳本,再到聲音。本書還將介紹基本的游戲和關卡設計理論與特殊的技巧。
本書為讀者提供了使用Unity來創(chuàng)建自己的游戲所需要的全面信息,適合業(yè)余游戲制作人、專業(yè)開發(fā)人員以及計算機專業(yè)的學生閱讀。
作者簡介
米歇爾·梅納德(Michelle Menard)目前在馬里蘭州獵人谷的Firaxis
Games公司擔任作家和設計人員。之前她曾經(jīng)是自由作家、編輯以及助理制作人等,也曾經(jīng)短暫地從事過UI程序員、美工以及博物館服務中心的程序員。工作之余,她喜歡通過騎自行車來鍛煉身體,或者玩Pokémon游戲消遣。
米歇爾擁有薩凡納美術和設計學院游戲設計專業(yè)的美術設計碩士學位,還獲得了布朗大學應用數(shù)學和音樂系的雙文學士學位。另外,她還是SCAD碩士研究生課程的開發(fā)人員。
書籍目錄
譯者序
作者簡介
第一部分入門
第1章序
第2章前言
2.1本書主要內容
2.2本書讀者對象
2.3本書結構
2.4安裝說明
2.4.1Unity引擎
2.4.2使用光盤里的內容
2.4.3可選安裝
第3章Unity引擎概覽
3.1熟悉界面
3.1.1Project視圖
3.1.2Hierarchy視圖
3.1.3Inspector視圖
3.1.4工具欄
3.1.5Scene視圖
3.1.6Game視圖
3.1.7Animation視圖
3.1.8控制臺和狀態(tài)欄
3.1.9性能分析器和資源服務器
3.1.10定制編輯器
3.2Unity的基本概念
3.3可用的Unity許可證
3.4編輯器小結
第4章第一款游戲:從哪里開始
4.1基本設計理論
4.2找到核心思想
4.2.1頭腦風暴
4.2.2研究其他的游戲
4.2.3紙面原型:這并不僅僅適用于商業(yè)軟件
4.3進行計劃
4.3.1基本的大綱
4.3.2一個簡單的關卡文檔
4.4開始
第二部分收集游戲資源
第5章用地形搭建舞臺
5.1Unity的地形引擎
5.2定制地形
5.2.1使用高度圖來創(chuàng)建高度
5.2.2使用筆刷來繪制高度
5.2.3繪制貼圖
5.2.4放置樹木
5.2.5使用草以及細節(jié)網(wǎng)格讓場景變得更為散亂
5.2.6地形設置
5.3光照和陰影
5.4添加天空盒和基于距離的霧化效果
5.5在地形上加入水體
第6章創(chuàng)建環(huán)境:導入基本的定制資源
6.1先設計,后創(chuàng)建
6.2導入貼圖
6.2.1關于導入的更多細節(jié)
6.2.2支持的格式
6.2.3為《Widget》的地形導入貼圖
6.3導入基本網(wǎng)格
6.4設置簡單的著色器和材質
6.4.1Unity提供的著色器
6.4.2凹凸貼圖、高光貼圖、立方環(huán)境貼圖和細節(jié)貼圖
6.4.3指定著色器和材質
6.4.4創(chuàng)建一種定制的天空盒材質
6.4.5添加水體
6.5使用資源時的有用技巧
6.5.1預制模型
6.5.2大規(guī)模對象選擇和分組
6.5.3根據(jù)網(wǎng)格對齊
6.5.4重做地形
第7章創(chuàng)建角色
7.1玩家角色基礎
7.2導入角色以及其他非靜態(tài)網(wǎng)格
第三部分用交互性使道具更逼真
第8章Unity中的腳本編程
8.1一個編輯器、三種語言、大量的選擇
8.2選擇一個腳本編輯器,你是否想要它實現(xiàn)自動完成
8.3Unity腳本編程基礎
8.4運算符和比較
8.4.1運算符
8.4.2比較
8.5條件
8.5.1if語句
8.5.2if.else語句
8.5.3switch語句
8.5.4條件運算符
8.6循環(huán)
8.6.1for循環(huán)
8.6.2while循環(huán)
8.7函數(shù)
8.8命名約定
第9章編寫角色和狀態(tài)控制腳本
9.1計劃和設計
9.2一個簡單的第三人稱控制器
9.2.1控制器變量
9.2.2Unity的MonoBehaviour類
9.2.3FixedUpdate:讓Widget移動
9.3設置Unity的輸入管理器
9.3.1Input類回顧
9.3.2軸的命名約定
9.3.3Xbox風格控制器的設置示例
9.4連接攝像機
9.5裝配狀態(tài)控制器
9.5.1協(xié)程
9.5.2更新角色控制器
9.6完整的腳本
9.6.1Widget_Controller.js
9.6.2Widget_Status.js
9.6.3Widget_Camera.js
第10章連接動畫
10.1Unity中的動畫
10.2動畫API
10.3設置玩家控制器的動畫
10.3.1定義問題
10.3.2更新控制器
10.3.3創(chuàng)建動畫狀態(tài)管理器
10.4在Unity內部創(chuàng)建動畫
10.4.1一些基本概念
10.4.2Animation視圖
10.5設置一段新的動畫剪輯
10.5.1創(chuàng)建定制動畫
10.5.2連接
10.6添加動畫事件
10.7完整的腳本
10.7.1Widget_Controller.js更新
10.7.2Widget_Animation.js
第11章使用觸發(fā)器并創(chuàng)建環(huán)境交互
11.1觸發(fā)器和碰撞
11.2設置一個簡單的觸發(fā)器對象
11.2.1為了清晰而使用gizmo
11.2.2背囊管理
11.3設置其他類型的觸發(fā)器
11.3.1死亡觸發(fā)器
11.3.2檢查點——避免死亡的觸發(fā)器
11.4完成的腳本
11.4.1PickupItems.js
11.4.2Widget_Inventory.js
11.4.3DamageTrigger.js
11.4.4CheckPoint.js
11.4.5Widget_Status.js
第12章創(chuàng)建探險和AI
12.1人工智能:絕對人工、沒多少智能
12.1.1一些簡單的AI指導方針
12.1.2簡單的工作流
12.2設置一個簡單的敵人
12.2.1AI控制器
12.2.2為一只簡單的小兔子編寫的簡單的狀態(tài)管理器
12.3設置Widget的攻擊
12.4在完成任務后獎勵玩家
12.5產(chǎn)生和優(yōu)化
12.6完整代碼
12.6.1EBunny_AIController.js
12.6.2EBunny_Status.js
12.6.3Widget_AttackController.js
12.6.4Enemy_RespawnPoint.js
第13章設計游戲的GUI
13.1基本的界面理論
13.1.1交互的步驟
13.1.2為用戶設計
13.2Unity的GUI系統(tǒng)
13.2.1按鈕
13.2.2滑塊
13.2.3標簽和框
13.2.4文本輸入
13.2.5Toggle
13.2.6工具欄和選擇矩陣
13.2.7窗口
13.3為Widget制作定制的皮膚
13.3.1創(chuàng)建GUISkin
13.3.2定義定制風格
13.3.3導入新字體
13.4設置HUD
13.4.1GUIContent
13.4.2角色顯示
13.4.3分辨率
13.5彈出屏幕示例
13.6添加全屏菜單
13.7完整和更新的腳本
13.7.1GUI_CustomControls.js
13.7.2GUI_HUD.js
13.7.3Widget_AttackController.js
13.7.4EBunny_Status.js
13.7.5GUI_WaypointStore.js
13.7.6WaypointBehavior.js
13.7.7GUI_MainMenu.js
第四部分完善和最后的修飾
第14章創(chuàng)建光影
14.1燈光的類型
14.1.1光源屬性
14.1.2光照基礎
14.2照亮游戲世界
14.3創(chuàng)建陰影
14.3.1光照圖
14.3.2使用陰影投射器制作的陰影
14.4其他光照效果
14.4.1鏡頭眩光
14.4.2遮光
第15章使用粒子系統(tǒng)
15.1粒子:從煙到星塵
15.2設置一個簡單的系統(tǒng)
15.2.1粒子發(fā)射器
15.2.2粒子動畫器
15.2.3粒子渲染器和材質
15.3高級粒子組件
15.3.1世界粒子碰撞體
15.3.2拖尾渲染器
15.3.3線條渲染器
15.4Widget的粒子
15.4.1拾取物品
15.4.2檢查點激活
15.4.3Widget的攻擊
15.4.4敵人爆炸
15.5更新的腳本
15.5.1PickupItems.js
15.5.2CheckPoint.js
15.5.3Widget_AttackController.js
15.5.4EBunny_Status.js
第16章加入聲音和音樂
16.1反饋和環(huán)境
16.2設置一段簡單的聲音剪輯
16.2.1環(huán)境音效
16.2.2通過腳本控制聲音
16.2.3加入背景音樂
16.3更新的腳本
第五部分發(fā)行和發(fā)布版本
第17章基本的Unity調試和優(yōu)化
17.1Unity中的調試
17.1.1Console
17.1.2日志文件
17.2優(yōu)化
17.2.1Profiler
17.2.2基本代碼優(yōu)化
17.2.3模擬
17.2.4渲染Statistics頁面
17.2.5壓縮文件
17.2.6優(yōu)化圖形的其他方式
第18章創(chuàng)建最終版本
18.1準備版本
18.1.1設置播放器
18.1.2設置Application類
18.1.3版本設置
18.2其他版本特性
18.2.1新的資源和DLC
18.2.2打包資源以便今后使用
18.3展望
章節(jié)摘錄
版權頁: 插圖: 收件箱和電子郵件 溫斯頓?丘吉爾曾經(jīng)說過:“寫一本書就是一次冒險。開始的時候,它是一種玩具和消遣;隨后,它就變成了一位家庭主婦,然后它變成了你的主人,最后它變成了一位暴君。在最后的階段,你不甘心再被奴役,你殺死了這個怪物并且將它拋給公眾?!蔽乙蜻@位偉人致敬,論及寫書,再沒有比這更全面而真實的話了。 那些不為人知的英雄,在寂靜的鄉(xiāng)村安居,被召喚著踏上冒險的旅途;就像他們一樣,我突然收到我以前的導師Brenda Brathwaite的一封E—mail,詢問我是否想要寫一本書。懷著期待而緊張的心情,帶著不可思議的幼稚和愚昧,我欣然同意了。我以前曾經(jīng)寫過100多頁的文稿,有一些空閑的時間,這事兒能有多難呢?化犁為筆,我開始了本以為相當輕松愉快的穿越叢林之旅。 可是,我不得不承認,我大錯特錯了。 最初,本書主要介紹使用Microsoft的Popfly Game Creator作為學習工具開始游戲開發(fā)。你和其他人似乎都沒聽說過這款工具。大約在手稿完成了3/4的時候,我收到了一封來自Popfly開發(fā)小組的電子郵件,宣布該站點將會在那個月晚些時候關閉,并且API的所有資源和參考資料也會刪除。此時,我喝到嘴里的咖啡禁不住噴了出來,那些不幸早早到了辦公室的同事可遭了殃。隨后,我聯(lián)系了我的策劃編輯Emi Smith并告訴她這個消息。第一次寫書和冒險就這樣過早夭折了。你的公主在另外一個城堡里,但是,不幸的人們,我們不知道是哪一個城堡,也沒有提示性的小腳印或蘑菇人為你指出正確的方向。游戲結束了。放下游戲操控器并走開吧。你失敗了。 即便是我有一點失望(并且確信在那種情況下于事無補),Emi也打算放棄,并且就在第二天,她立即走到白板前,提出了多達6個新想法。依次看下來,似乎沒有真正引發(fā)我的興趣(或者說和我的技能相符合)的東西,直到我看到了這個列表的最后一項,也就是Unity。我以前聽說過這個引擎,并且閱讀過一兩篇相關的簡短文章,因此,我認為這至少值得快速下載下來并看看。 由此開始了我對這一游戲引擎的強烈愛好,也向世界展示了它是如何改變我對于開發(fā)的態(tài)度的。花了兩年的時間,我最終寫完了400頁的手稿,還完成了測試項目,整個內容發(fā)送到打印機,吹響了無聲的號角。放下筆,我回到了山村想要繼續(xù)在田野里工作,無所事事,并且可能會在整整一個月中第一次在周六睡懶覺。我可能還會養(yǎng)一只貓。 那么,為什么噦唆這些?親愛的讀者,本書花了一年或兩年的時間,以及是否更換了主題,這和你有什么關系呢?表面上,可能沒有太大的關系。但是,寫一本書就像開發(fā)一款游戲一樣痛苦,特別是,如果你是初次接觸這項工作。
編輯推薦
《Unity游戲開發(fā)實戰(zhàn)》從創(chuàng)建游戲資源、添加交互性到修飾已完成的游戲并發(fā)布它的所有知識,并且為讀者提供了使用Unity來創(chuàng)建自己的游戲所需要的所有信息,適合業(yè)余游戲制作人、專業(yè)開發(fā)人員以及計算機專業(yè)的學生閱讀。
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載