獨立游戲開發者經驗分享 合理規劃 恰當取舍
; ? ? ??對于很多 獨立游戲 開發者來說,開啟一個項目并不是一件很困難的事,但是很多人卻難以完成一個游戲。暫且拋開資金不足等外部客觀原因,僅從個人角度來看,開發著自身也會有這樣那樣的問題。由于很多開發者缺乏合理的規劃,或者對這款游戲的過度“關心”,無法做出恰當的取舍,想法越多,收尾就更是遙遙無期了。
針對這些問題,獨立游戲開發者 Derek 在自己的博客 Make Games 發布了的文章,結合自己的開發經歷,和大家分享了一些自己的思考。作者給出了一些具有參考性的建議。
1.選擇一個有潛力的項目 對于開發者來說,往往有三種類型的游戲特別具有吸引力:我想做的,我想做成的和我擅長做的。在我個人看來,最有潛力的項目往往是坐落于三者的交集之中。
(1)、你想做的,代表著最初的初心和動力;
(2)、你希望做成的,本身就是一種決心的體現;
(3)、*你擅長的,就會增加項目成功的幾率和減少失敗挫折導致項目夭折的機會。
當然,除此之外,*還要保證有充足的時間和充分的資源。
2.趕緊開干吧! 寫下游戲的想法并不是代表已經開始制作游戲了。同樣地,哪怕你寫了上萬頁的游戲設計稿也不代表你開始了這個游戲的制作。又或者組建了自己的團隊,或者畫了些草圖,開始了音樂的擇選,這些都不算,只能說是游戲的準備階段。
要記住一點:一個游戲,是可以被玩家玩的。如果都沒有完成一個可供人去操作的東西,那么這就不是一個游戲。
很多人在有一個想法或者只是注冊了Unity 賬號,又或者下載了制作軟件,敲下了一行代碼,就開始到處吆喝自己是獨立開發者了,但其實,什么都還沒有開始。
3.如非必要,不要輕易嘗試開發新技術 總有些人喜歡嘗試自己開發一款引擎,但是,真的有必要嗎?如果已經存在合適的工具,那么為什么還要浪費大把的時間和精力在一些”不可能的任務“上呢?當然,開發一款屬于自己的引擎,能讓你更好的打磨自己的游戲。
但并不是任何時候都需要的,真正需要你去定制自己的引擎的機會并不是那么頻繁。如果太過執著于此,你就會發現你花在做引擎上的時間要遠遠多于你開發游戲的時間。還是那句話,要記住,真正重要的是游戲本身,不要花過多精力在不必要的地方。
4.原型很重要
利用你現有的一切先完成一個原型。
有的時候,你可能會懷疑,在這里放一只蝙蝠合適嗎?又或者在猶豫一些看起來更好的點子。通常,我發現其實真的很難靠想象去判斷一個點子是不是合理,更多時候,在我開始制作了,才發現原來這個想法走不通。所以,不要想太多,先做起來,實踐是檢驗想法的*標準。
5.確保核心玩法的趣味性 你需要確保的一點是,游戲的核心玩法是真的有趣的。因為這往往是支撐玩家一直玩下去的最關鍵的要素。而最終,你會需要這個核心玩法來支持你開發下去。同樣地,這也會讓你后來需要做減法時更加容易做出判斷。因為你必須了解你的核心在哪里。
而在做原型階段,你可能會發現一種更有趣的核心玩法。如果是這種情況,你可以考慮采取這個新的核心玩法。
6.選擇一個靠譜的搭檔 從很多方面來看,找到一個靠譜的游戲開發伙伴就和約會一樣。也許一開始,你會覺得“技巧”是最重要的,但是,你往往忽略了其他的重要因素,比如性格,經驗,時間和興趣。就好比戀愛關系一樣,你并不希望處于一個某一方并不”上心”的關系里。
你可以在一開始,先通過一些小型的項目來試驗,看下彼此是否合拍,能否長時間的合作。否則,如果游戲開發途中,一個關鍵的人員撂挑子了,那對于你來說會非常痛苦。
同樣,對于你的搭檔來說,你也需要讓他了解到,你是可以信賴的,你有能力來完成這個游戲,所以,好的搭檔往往是希望在你身上看到可以完成這個游戲的確定性。當然,你也可以選擇從網上找一些免費的音樂或者圖片素材。作為一個美術師,我發現,對于那些僅僅只差美術的完成度很高的游戲來說,我反而能夠提供更多的幫助。
7.反復打磨應是計劃之中 相信我,大部分的游戲開發過程是十分無聊和無趣的。這并不是玩,而是工作。有可能在某個節點,你會突然意識到自己在一開始計劃和做原型的時候漏掉了很多——比如菜單,存取檔,屏幕切換等。更有甚者,一些過程在數量少或者工程量小的時候,還是很有趣的。比如說創造一個角色,畫一兩張設計圖又或者動畫還是很有意思的,但是,當你意識到你要畫100個不同的角色時。
一旦你經歷過幾次之后,你就會意識到,從一開始就規劃好你的項目是多么重要,至少避免你花太多時間在這些不可避免的泥潭中。但是,你也必須意識到,正是這些繁瑣無聊的打磨,才使得你的游戲可以完整的誕生。哪怕是一個好看的標題,都會給游戲增色不少。
8.用獎勵,競賽或者其他活動來作為你的“DeadLines” 當Alec和我在制作《Aquaria》時,獨立游戲節(IGF)的*提交日期,不僅逼迫我們需要做一些困難的決定(包括整個大的方向的調整),更迫使我們需要更加現實地來面對我們的時間安排。
如果沒有那個期限,我想我們很有可能無法完成這個游戲。這種比賽往往很值得參加,一方面是因為它們的*期限就在那里,非常真實;另一方面,大賽的獎品也非常真實。更重要的是,他會給你提供一個和相似的人們建立聯系的機會,你會認識很多和你一樣的開發者們。
9.向前推進
感覺卡住了?那么就推自己一把吧。
跳過這個,先開始下一個關卡,下一個敵人,或者隨便下一個什么。這不僅是為了維持你的興趣,更關鍵的是,只有繼續下去,你才能看到整個游戲的全貌是怎么樣的。就好比寫作一樣,你并不會只有在確保每個句子都完美無誤的情況下,才寫下一句,而是一句一句地寫下去。至少,先完成一個大綱。
10.保證健康:身體和心理
當你在投入于完成一個游戲時,往往很容易忽略自身的健康。但是說實話,如果你不睡覺,不運動或者不好好吃飯,只會給制作游戲幫倒忙。*,你會發現你沒有在開發中完全發揮所有的潛力,只是在加深自己想要退出的念頭。
對一個項目產生懷疑,是一個非常自然的過程,但是如果因此而患上憂郁癥又或者染上疾病卻是不應該的。當你的身體和心理都無法承受的時候,往往更加容易厭工——不想要繼續開發下去。
所以,保證身心健康很重要,至少讓你在與游戲開發抗爭時,不那么痛苦,也不會輕易妥協投降。
11.別再為重頭來過找借口 這種情況在游戲開發中非常常見:你的編程總是很爛,你總是會學到很多,游戲總是可能變得更完美。但是,如果你當真重頭再來,很快會發現你還是會陷入同樣的境地,甚至,是在同樣的節點。因為,當你開始這樣想的時候,就已經掉入陷阱了。
如果你確信現在的組織結構非常糟糕,拖了后腿,那么,你也可以試著退回去,做一些“手術”除掉讓你覺得不舒服的地方。如果你覺得這真的管用,但是會有一點困難,那么勇敢點,放手一搏吧!
12.留給下一個游戲吧 在游戲開發的途中,甚至是后期,你可能會突然冒出一個“屌爆了”的新想法,但是,你真的有必要去重頭再來只是為了增加這個想法到這個游戲里去嗎?
如果始終無法完成,那么再偉大的想法也沒有任何意義!所以,當務之急是先完成手頭上的這個,把這個偉大的點子留給下一個游戲,或者下一個版本吧。
13.做減法 媽蛋,你發現落后時間線太遠了。其實這是一個很好的機會。因為現在你被迫要去思考,到底什么才是游戲真正關鍵的部分,而哪些,是可以刪減的。而且,如果我們都有無限的時間和資源的話,相信反而都會做出一模一樣的垃圾,因為把所有的東西都塞到一個游戲里,反而會讓玩家沒有去玩這個游戲的沖動。正是我們有限的時間和資源,才讓這個游戲的存在更加有意義。
如果你正在制作一些你認為只是比較有意思的核心內容,那么就試著做減法吧,一直減到你覺得是核心內容的邊緣。你會發現,可能很多東西都是可有可無的。如果這些可有可無的東西太多,反而會掩蓋住游戲最棒的地方。
14.如果真的放棄,下次要縮小目標而不是放大
好吧,有時可能我們真的要放棄,也許你沒有辦法去完成,你所做的真的就是一堆亂碼。又或者所有的成員都已經退出了。我希望寫這篇文章是幫助大家盡量避免這樣的情況發生,但是有的時候,事情,就是發生了。
如果這次真的要放棄,至少確保,下一次,要縮小自己的目標。我們往往很容易眼高手低。”我的技術比之前更好了,我從上次開發中學到了很多“真的是一個很常見的借口。這也是為什么我認為,”收尾“應當被看做一項很重要的技術。
因此,你必須嘗試退回到你真正可以駕馭的領域,縮小自己的野心。比如,相比起從制作一款4x宇宙 模擬游戲 升級到制作一款3D的4x宇宙模擬游戲,請先試著先做好一款普通的宇宙模擬游戲中的一小塊元素。如果你連這個都無法完成,那么就嘗試一下更原始的。*你會發現,這些遠比你想象的要復雜、無聊得多。
成為一位獨立游戲制作人需要哪些必備技能?
想要成為一個獨立游戲制作人,這些技能你是必須要的,給大家分享一下。
資金。想要創造一個游戲,資金肯定是不少的,一個小的游戲都要幾萬塊,而大型的游戲需要是更多。
各種編程軟件。想要開發一個游戲軟件的制作肯定是不可缺少的。這肯定是需要一個游戲制作人學會的知識,就是制作游戲的基本。
還要一個游戲的構思,知道你游戲的大概內容是什么,中心是什么?
純外行,想獨自制作一款獨立游戲該掌握什么技能
你可以先去【繪學霸】網站找“游戲特效/unity3D”板塊的【免費】視頻教程-【點擊進入】完整入門到精通視頻教程列表: www.huixueba.net/web//?type=1&tagid=305,306&zdhhr-11y17r-
想要系統的學習可以考慮報一個網絡直播課,推薦CGWANG的網絡課。老師講得細,上完還可以回看,還有同類型錄播課可以免費學(贈送終身VIP)。
自制能力相對較弱的話,建議還是去好點的培訓機構,實力和規模在國內排名前幾的大機構,推薦行業龍頭:王氏教育。
王氏教育*直營校區面授課程試聽【復制后面鏈接在瀏覽器也可打開】:
www.cgwang.com/course//?zdhhr-11y17r-
在“游戲特效/unity3D”領域的培訓機構里,【王氏教育】是國內的老大,且沒有加盟分校,都是總部直營的連鎖校區。跟很多其它同類型大機構不一樣的是:王氏教育每個校區都是實體面授,老師是手把手教,而且有專門的班主任從早盯到晚,爆肝式的學習模式,提升會很快,特別適合基礎差的學生。
大家可以先把【繪學霸】APP下載到自己手機,方便碎片時間學習——繪學霸APP下載: www.huixueba.com.cn/Scripts/download.html
如何獨立開發一款游戲
對于一個大一的學生來說,目測你的基礎已經不錯了,堅持努力下去應該會有不錯的成就。獨立游戲是個很大的話題,首先先明確想要自己一個人做還是找小團隊一起合作。自己一個人做的話,設計、程序、美術、音樂等等就都得會。如果組團隊做,可以重點攻堅其中1到2個方向。我主要說說技術方面。你在編程方面已經有所積累,至少算法方面應該是吧,這對于編程來說是個不錯的開始。開發游戲的話,對基本的數據結構和算法要求還是很高的,再有就是軟件結構的設計,這個需要較長時間的積累,*多看看其他的游戲類工程是怎么做的,游戲和那種業務流軟件的一個不同在于,游戲程序對實時性要求很高,會有一些為了性能而出現的不同的代碼模式。最基本的一個東西,編程語言,看你希望的開發平臺,不同平臺會使用不同的開發語言,這個要熟練掌握(不是能寫算法、玩具例子那么簡單就行,需要知道如何用這種語言開發大型工程)。關于開發平臺,多說兩句。如果想要自己的程序便于大家在任何平臺使用,推薦Web相關的技術,如HTML5/(用canvas元素,如果需要GPU加速的底層3D API,canvas有WebGL繪制環境(OpenGL ES 2.0的瀏覽器版))。如果希望更方便開發,Unity3D是個很好的選擇,是個集游戲引擎與運行平臺于一體的東西,而且這個東西牛逼的地方在于所有平臺都支持(PC、Mobile、Web)。如果開發手機上的原生app,推薦學習cpp以及那個平臺上官方語言,這樣可以用cpp開發,然后用官方語言做一個殼。如果是PC上的游戲,還是推薦cpp。另一個就是數學/物理,當然這個要看你要做什么游戲。基本的東西是幾何相關的東西,基本上是個游戲都用得到。如果有不確定性(絕大部分游戲應該都需要)在里面,基本的概率分布要深刻的理解。如果要自己做物理效果(碰撞,彈性,形變等),除了需要搞定相關的物理(剛體物理,柔體物理(這個通常很麻煩),流體物理(這個也很麻煩)等),還需要搞定數值計算方法,自己做物理這個水很深,不建議自己做,用現有的物理引擎*。如果想要做到很好的3D畫面,還需要學習計算機圖形學,這里會有很多的光學,很多的立體幾何,一坨線性代數的東西還有各種形式的積分。而且實時圖形系統的開發對編程能力要求也非常高,除了普通程序的要求以外,還要能掌握高性能的數值密集型的代碼開發(這個對于物理相關的開發也一樣)。另外還需要掌握至少一個GPU加速的圖形接口的使用(OpenGL,Direct3D等)以及對應的shader代碼的編寫。同樣,如果想做到很好的畫面效果,建議用現有的渲染引擎,自己做水也太深。總體上來說,2D游戲和3D游戲所需的技能還有很大差別,2D游戲在技術上的要求相對簡單很多。還有就是,獨立游戲可能有服務器端得比較少。如果真的需要,這方面的開發相對來說和通常的業務流軟件的服務端比較相似,所以不是太復雜。不過會有很多游戲邏輯需要在服務端處理,多客戶端的信息實時同步可能會成為一個比較有難度的問題。還有就是各種客戶端請求的驗證,反作弊用,這個一開始應該不會涉及到,不扯了。總的來說,游戲開發作為程序開發最難的一種形式之一,技術方面需要非常多的積累,這個需要時間去積累。可以先從那種非常小的小游戲(先是掃雷、貪食蛇這類休閑游戲,然后做塔防類游戲不錯……)做起,練手用。基本功扎實了以后可以考慮進入3D。游戲美術方面呢,2D和3D也是很不一樣的。3D游戲的美術很復雜,各種模型網格的創建,各種貼圖紋理的繪制。如果有人物,還需要人物動畫,這又是一大塊。美術我不專業,不多說了,希望哪位專業的來補充一下。2D的相對好很多,只要能畫好畫,基本上就能做了。游戲音樂方面,主要是作曲,用mid的話也不錯,但現在好像這么做的很少了。演奏要看作的曲子的復雜度了。除了音樂還有音效,這個我不懂,不說了。設計嘛,這個是制作游戲的核心。從你的表述來看,應該是玩過不少游戲了,那應該多少能體會到各種游戲的設計模式。把自己的想法,參考現有的一些模式,規劃好,做出來原型。設計這里有一個很重要的細節:開發工具要能盡可能提供高效的迭代方式,游戲的完成度是一點一點打磨出來的,而這個打磨過程的長短很大程度上取決于工具是否好用。
滿意請采納
獨立手游開發者自創游戲開發的經驗分享
;????? 在過去三個月中,在致力于開發一款名為《Lunar Lander 3D》的小游戲。著手這個項目的主要原因是希望掌握 創造游戲 所需了解的知識。除此之外,還希望借此轉移自己在課業上的壓力。雖然這款游戲很小很簡單,其開發過程卻讓我收獲了大量有用的知識。將在本文列出在開發游戲過程中學到的一些重要知識。
在進入正題之前,我想先說明一下,我并不是什么專業人士。我只是一個常坐在電腦前的呆子,本文內容面向想自己試著創造一款游戲的業余程序員和愛好者。所以本文的重點是讓你如何完成一款游戲,而非制作一款技術華麗的半成品游戲。
你的游戲理念并不罕見 如果你想完成一款游戲,你就必須認識到這一點。無論你有多看重自己以及自己的想法,你都要勇于拋棄其中的多數想法。當我開始制作自己的游戲時,滿腦子都是自己想用的理念。我想在游戲世界中加入移動的平臺的障礙,復雜的攝像系統以及一系列其他元素。但我知道如果我想完成游戲,就得更改自己的多數理念。要記住當你是孤軍奮戰時,你就無法搞定一個專業團隊需要用一年以上時間才能完成的項目。雖然一年以上的時間對專業團隊來說并非很長的時間,但卻業余愛好者來說卻是個大難題。要根據自己的想法合理安排開發時間,例如將其控制在6個月以內。
游戲不要從頭做起 如果你并沒有什么編碼基礎,那就無法一開始就編寫出一款游戲。這聽起來難以讓人接受,但如果你確實沒有一系列持續使用的代碼,你可能就無法持續長時間地編程。如果你沒有那么長久的編程經驗,那么就不能幻想開發一款游戲。我開始制作自己的游戲時,已經有了一個很大的代碼庫。我針對一般窗口創造、輸入管理、粒子效果、運算以及各類用途的代碼。有了這些現成的代碼,我就能夠快速展開工作,制作與游戲相關的內容。除此之外,我還不需要去測試這些代碼,因為我之前編寫的時候就已經測試過了。你在開始創造自己的游戲之前,不需要逐個編寫每一節代碼。只要花點時間先做一點基礎工作即可。如果你覺得自己還是得創建一個代碼庫,那就先編寫小型用來測試一下。我處理粒子效果、輸入管理和控制執行代碼時就是這么做的。這可能不像制作游戲一樣令人興奮,但對你卻有長期的幫助。
游戲需要借鑒想法 我要再次強調這個環節的重要性。當你開始編寫一款游戲時,不要害怕使用他人的理念,庫或工具。可以盡量借鑒,因為這可以讓你的工作更輕松。我在制作自己的游戲時,借鑒了Conor Stoke的軸線對齊邊界框樹,Paul Nettle的碰撞檢測文件,id Software的Q3Radiant關卡編輯器。為什么我要用其他人的想法和工具來解決自己本可以完成的問題呢?原因就在于,這樣更簡單--我使用這些不同的資源是因為節省時間。使用現成的方法進行碰撞檢測,這樣我就不需要將時間浪費在測試自己的碰撞系統上了。我根據自己的需求調整了id Software的地圖編輯器,就不需要再制作自己的編輯器了。除此之外,id地圖編輯器非常適合我,這又為我節省了不少功夫。不要執拗于自己的游戲一定要有定制工具和解決方案。如果你夠精明,就會知道何時要采用新理念,何時可以使用現成的東西。
避免使用3D地形引擎 如果是為了創造游戲而制作引擎,那就很可能被卡在半途。無論你多努力地嘗試,總會發現自己無所進展。根據我制作游戲的經驗,你自己編寫游戲時并不需要用到引擎。要記住,你是一個人而不是一家公司在編寫游戲。你不需要一個反復重用的引擎。編寫引擎的一個理由就是代碼重用,但沒有引擎你也照樣可以做到這一點。只要設計合理,你就能夠將自己其他項目的元素重用到游戲上。例如,我編寫的游戲所用的新代碼都不是特定的游戲代碼,我可以將其重用于其他項目。編寫引擎以獲得引擎本身的知識及其背后的設計過程當然可以,像如果你是要制作一款游戲那就要避免這種情況了。
不要在游戲美術上畫蛇添足
你制作自己的游戲時,不要添加一些并不會讓游戲更棒的圖像特點。不要使用GeForce20那種很棒的擴展功能,以及其他的逐象素、凹凸貼圖、紋理動畫、逐象素深度陰影等元素,因為你根本就不需要。如果你將自己的游戲定義為靠圖像來撐場面的那種,那你可能并不了解游戲。你制作的只是一個技術演示樣本。我在自己的游戲中使用的最復雜的圖像功能就是多重紋理,但如果要游戲正常運行也并不需要這種功能。我知道自己并非id Software成員,也并不需要很高端的硬件來支持我這款簡單的游戲。如果你保持簡單性,不但可以擴大游戲受眾,還能夠將自己的精力集中于更重要的環節,例如游戲玩法。