SlideShare une entreprise Scribd logo
1  sur  56
一款電玩遊戲是如何製作的
How a video game is made
一個小時的冒險旅程
 近幾年遊戲開發的現況
 開發遊戲的鐵三角
 遊戲開發的流程與管理
 遊戲引擎
 陳柏仲
 宇峻奧汀 程式副理
 Game Developer Since 2007
 三國群英傳 7 - PC Game
 三國群英傳 2 online - PC MMORPG
 超魔導大戰 - PC MMORPG
 三國群英傳 web - Web MMORPG
 蘿莉島戰記 - webgl 地城探險
近年遊戲開發的現況
近幾年遊戲開發的現況
- PC 時期
 2007 年我參與了第一款 PC 單機遊戲的製作
 Online Game 幾乎取代了單機遊戲
沒想到,也是最後一款
PC 時期的開發特點
 平台的單一性
 技術的單一性
 自行研發引擎的 CP 高值
 底層技術的累積
 自主引擎可客制化的打造
 工具的單一性使人員訓練簡單
PC 時期的遊戲引擎
 技術與平台單一: C++ , DirectX , Windows
 自制引擎的比例高,所以引擎的針對性高 – rpg 、 fps 、 2D 、 3D
 遊戲”引擎”?
近幾年遊戲開發的現況
- Web 時期
 玩家的進入門檻降低了
 遊戲從小屁孩為主要客群慢慢推廣到其它年齡層
 輕度、社群性的遊戲浮上台面
Web 時期的開發特點
 只要瀏覽器就能玩,但需要對不同瀏覽器進行調教
 IE , Chrome , FireFox , Safari …
 以前玩遊戲的玩家,平均電腦硬體與電腦知識是比較好的
 阿姨或叔叔打來問為什麼他的電腦不能種菜
Web 時期的遊戲引擎
 沒有統一的標準,誰的 player 安裝率高,誰就是老大
 若是 player 沒有得到信賴,玩家接受度不高
 玩家在進到遊戲前,每多一個步驟,就留失掉一定比例的玩家
後 Web 時期的遊戲引擎
 NPAPI 被 Chrome 停用後, flash 、 unity web player 紛紛中箭倒地
替代方案?
後 Web 時期的遊戲引擎
+
近幾年遊戲開發的現況
- mobile 時期
 遊戲從來沒這麼深入生活過
 玩遊戲的人數爆炸性的成長
 可填補短暫空閒時間的遊戲受到歡迎
Mobile 時期
 大部份的遊戲都支援 Android 、 IOS
 Android 機型數量讓測試變的困難
 Android 不同廠商對 Android 有不同程度的修改
Mobile 時期的遊戲引擎
 跨平台是必要的選項
 為了達到跨平台與對不同機型的支援已非小型開發商能力所及
 大型遊戲引擎沒落,小而精,開發速度快的遊戲引擎崛起
開發遊戲的鐵三角
1 + 1 + 1 > 3
遊戲制作團隊組成
製作人
主美術
美術團隊
主程式
程式團隊
主企畫
企畫團隊
外包公司 營運商
企畫 –
遊戲開發的大掌櫃
還沒進遊戲公司前… 家人認為你在遊戲公司
朋友認為你在遊戲公司… 其實…
設計文件
範例excel營運活動_全民比拼0118.xls
開立需求
 場景需求開立
 特效需求開立
美術 – 遊戲開發中的效果師
還沒進公司前 家人以為你在遊戲公司
朋友以為你在遊戲公司 其實你在遊戲公司
2D 美術、介面美術
3D 美術 – 場景
3D 美術 – 人物
程式
 介面程式
 Client 端程式
 Server 端程式
 以遊戲開發來說,在框架建立後,其實以系統分工,更有效率
成為遊戲程式?
 大部份的工作其實跟 3D 沒有相關
 若是能至少熟析一款遊戲引擎,再學其它引擎時是事半功倍
可利用免費的遊戲引擎來學習: Unity 、 cocos2D
 透過學習遊戲引擎來學習 design pattern 是很好的方法
 至少熟析一個工具語言,是很有幫助的。 Ex : Python 、 C#
遊戲開發輔助工具 – Excel to JSON
遊戲開發的流程與管理
遊戲 prototype 提案
 確定遊戲的目標市場
 目標的玩家族群
 遊戲類型、平台
 開發期
 技術評估
遊戲的 prototype 製作
 約一到三個月的時間
 專注在核心的玩法,其它系統先不實作
 短時間就要做到能看出遊戲核心玩法的有趣度
 使用即有的技術框架或是編輯器來快速的開發
開發初期
 規格設計文件 -> 開美術需求 -> 程式實作
 美術量產的方式:外包、自製
 程式開發基礎工具:地圖編輯器、技能編輯器、 案打包更新工具…檔
開發中期 – 美術
 美術量產
 3D Model – 1 / 3 days
 2D CG – 1 / 3 days
 UI – 企畫、介面美術、特效美術。三方合作
開發中期 – 企畫
 企畫量產
 關卡資料
 NPC 、技能
 各種物品、裝備
開發中期 – 程式
 程式也要量產?
 程式要量產的東西可多了
 角色:角色強化、升星、碎片、抽角
 NPC :各式的 npc AI ,遠程、近戰、主被動
 技能:各種範圍傷害、 DOT 、特殊效果的技能 (hand made)
 任務:在幾萬行的 code 中,埋 event system
開發後期
 美術功成身退
 企畫、程式進入地獄
 安排 2~3 次的公司內部測試
 意見如雪片般飛來
 什麼要改,什麼捨棄,考驗制作人的能力
開發後期 – 程式
 需要有良好的版本控管與 署工具佈
 公司內測需求、 IOS 送審需求、外部營運商測試需求
 有時需同時維護三、四個版本
主線
3101
程式
美術
企畫
內測版本
IOS 送審
版本
主線
3217
:
:
測伺服器群組內
IOS 伺服器群組
流程管理工具分享 - trello
 https://trello.com/
 適合團隊的流程才是好流程
 一個好的流程應該要能接受改變,對改變能快速的反應
 整體的開發現況,應該要透明
遊戲引擎
遊戲引擎
 內功: C++ 還是必備的語言
 外功:遊戲引擎的架構
 遊戲引擎的定義:
包含圖像的處理、資料儲存、 client-server 溝通、遊戲資源管理
遊戲引擎 - BigWorld
 由同名的澳洲公司開發的 MMO Game Engine
 在 2007 年, BigWorld 被英國的電子遊戲產業開發者雜誌認定為業界的領導。
 2012 年 8 月 7 號,戰遊網花費 4 千 5 百萬美元收購中介軟體開發商 BigWorld 。
 金氏世界紀錄
 同一時間及 MMO 伺服器中最多線上玩家 : 250,000 線上玩家數。
BigWorld 的伺服器架構
以 MMO 為目標引擎的沒落
 MMO Game Engine 通常為強連線的架構
 Game Engine 底層太過龐大
 適合大團隊的工具設計,反而不利快速開發
 支援 mobile 平台的速度太慢,失去市場
遊戲引擎 - Unity
 2005 年由 Unity Technologies 開發
 特色:
1. 多平台支援
2. 輕量
3. 快速開發
4. 易於學習
 不像 MMO 時代的遊戲引擎, Unity 並沒有自己的 client 、 server 架構
 但更專注於提供快速開發的工具
以介面制作為例
 Bigworld 的介面,由美術出圖,其餘完全由程式寫 code 來完成
 Unity 的介面,由美術出圖,企畫排板,程式撰寫邏輯相關的程式碼
Unity 遊戲系統的制作實例
- 角色強化系統
 玩家藉由收集藥水,來使角色升級強化角色能力
企畫部份
 企畫規格 – 系統描述、介面排板、美術量產規格
 規格書範例
美術部份
 介面設計
 介面拆圖
企畫排板
Client 端程式
 針對企畫拉好的元件,用程式更改顯示的值
 對於可操作的元件,如按鈕,寫 event handler
 把玩家操作後的資料,傳給 server ,再依 server 回傳的狀態告知玩家
 Ex :玩家按下強化按鈕,將玩家要使用掉的藥水 ID 傳給 server
Server 端程式
 定義與 client 端溝通的 protocol
 處理玩家資料
 Ex :接收 client 端傳來玩家要使用 些藥水,做檢 後,更動玩家數 後,更哪 查 值
新 client 端新的玩家資料
Unity
PHP
Server MySQL
Python
DBA
FAQ
 pcchen@uj.com.tw

Contenu connexe

Similaire à 成大專題演講 遊戲製作 - how a video game is made

Game development using monogame
Game development using monogameGame development using monogame
Game development using monogamePower Wu
 
Brick kinect brick creative to 3 d world
Brick kinect   brick creative to 3 d worldBrick kinect   brick creative to 3 d world
Brick kinect brick creative to 3 d world波 蔡
 
Hello Html5 Games
Hello Html5 GamesHello Html5 Games
Hello Html5 Gamestbmallf2e
 
GDC Taipei Summit review 2012
GDC Taipei Summit review 2012GDC Taipei Summit review 2012
GDC Taipei Summit review 2012Victor Lee
 
Gui Conclusion2
Gui Conclusion2Gui Conclusion2
Gui Conclusion2Yao Lining
 
三国群英序章
三国群英序章三国群英序章
三国群英序章benimaru0407
 
为独立工作室构建跨平台引擎
为独立工作室构建跨平台引擎为独立工作室构建跨平台引擎
为独立工作室构建跨平台引擎Coconut Island
 
UCD在游戏行业中的生存与发展
UCD在游戏行业中的生存与发展UCD在游戏行业中的生存与发展
UCD在游戏行业中的生存与发展top idea
 
遊戲領域課程規劃分析
遊戲領域課程規劃分析遊戲領域課程規劃分析
遊戲領域課程規劃分析Yu-cheng Chang
 
Game salad開發入門與專案經驗分享
Game salad開發入門與專案經驗分享Game salad開發入門與專案經驗分享
Game salad開發入門與專案經驗分享君偉 傅
 
數位產品設計與行銷
數位產品設計與行銷數位產品設計與行銷
數位產品設計與行銷doku18
 
Ürban PAD Tech Utilization in Serious MMO Title
Ürban PAD Tech Utilization in Serious MMO TitleÜrban PAD Tech Utilization in Serious MMO Title
Ürban PAD Tech Utilization in Serious MMO TitleUrbanPAD
 
09 creating windows phone game with cocos2d-xna
09   creating windows phone game with cocos2d-xna09   creating windows phone game with cocos2d-xna
09 creating windows phone game with cocos2d-xna乐费 胡
 

Similaire à 成大專題演講 遊戲製作 - how a video game is made (20)

Game development using monogame
Game development using monogameGame development using monogame
Game development using monogame
 
Brick kinect brick creative to 3 d world
Brick kinect   brick creative to 3 d worldBrick kinect   brick creative to 3 d world
Brick kinect brick creative to 3 d world
 
Hello Html5 Games
Hello Html5 GamesHello Html5 Games
Hello Html5 Games
 
GDC Taipei Summit review 2012
GDC Taipei Summit review 2012GDC Taipei Summit review 2012
GDC Taipei Summit review 2012
 
Gui Conclusion2
Gui Conclusion2Gui Conclusion2
Gui Conclusion2
 
Gui Conclusion2
Gui Conclusion2Gui Conclusion2
Gui Conclusion2
 
GUI conclusion
GUI conclusionGUI conclusion
GUI conclusion
 
三国群英序章
三国群英序章三国群英序章
三国群英序章
 
Bob's CV
Bob's CVBob's CV
Bob's CV
 
我用Django做页游
我用Django做页游我用Django做页游
我用Django做页游
 
为独立工作室构建跨平台引擎
为独立工作室构建跨平台引擎为独立工作室构建跨平台引擎
为独立工作室构建跨平台引擎
 
UCD在游戏行业中的生存与发展
UCD在游戏行业中的生存与发展UCD在游戏行业中的生存与发展
UCD在游戏行业中的生存与发展
 
遊戲領域課程規劃分析
遊戲領域課程規劃分析遊戲領域課程規劃分析
遊戲領域課程規劃分析
 
Game salad開發入門與專案經驗分享
Game salad開發入門與專案經驗分享Game salad開發入門與專案經驗分享
Game salad開發入門與專案經驗分享
 
數位產品設計與行銷
數位產品設計與行銷數位產品設計與行銷
數位產品設計與行銷
 
Unity遊戲設計- Unity基礎指引
Unity遊戲設計- Unity基礎指引Unity遊戲設計- Unity基礎指引
Unity遊戲設計- Unity基礎指引
 
Unity遊戲程式設計- Unity基礎指引
Unity遊戲程式設計- Unity基礎指引Unity遊戲程式設計- Unity基礎指引
Unity遊戲程式設計- Unity基礎指引
 
Ürban PAD Tech Utilization in Serious MMO Title
Ürban PAD Tech Utilization in Serious MMO TitleÜrban PAD Tech Utilization in Serious MMO Title
Ürban PAD Tech Utilization in Serious MMO Title
 
零世界
零世界零世界
零世界
 
09 creating windows phone game with cocos2d-xna
09   creating windows phone game with cocos2d-xna09   creating windows phone game with cocos2d-xna
09 creating windows phone game with cocos2d-xna
 

成大專題演講 遊戲製作 - how a video game is made

Notes de l'éditeur

  1. 近幾年遊戲開發的現況:從遊戲的演進,來談遊戲引擎與制作遊戲的技術的變化 開發遊戲的鐵三角:一間遊戲公司的組成、有哪些人?負責做哪些事情? 遊戲開發的流程與管理:一款遊戲從prototype到成品的流程 遊戲引擎:簡單介紹什麼是遊戲引擎
  2. Flash : 多為策略性或經營類的遊戲,效能差 Server端多為PHP
  3. 硬体、與電腦知識 都較差
  4. 網景,Netscape所開發。與activeX是競爭關係。 因獨立與瀏覽器更新,有安全疑問 去年chrome正式停用,今年年底firefox移除 Flash !!
  5. WebGL基於OpenGL ES 2.0(OpenGL for Embedded Systems) 針對手持優化 可使用GPU的運算效能
  6. 為什麼人數成長? Ps4 pc還要賣硬体,還要買軟体,而手機人手一隻
  7. 後面還有針對遊戲引擎的介紹
  8. Design pattern :規模夠大、架構較複雜
  9. 除了遊戲本身以後,你會需要做很多工具來完成你的工作 如果要建議的話,能跨平台的語言絕對是首選,因為有時不能選擇你的開發環境
  10. C++ 熟析,對於其它要怎麼寫出效能好的程式,幫助很大
  11. 跟印尼代商談硬体架構的時候,對方嚇到 Game Engine太過龐大,可以舉bigworld切baseapp cellapp為例