
一、moba游戲是什么
1、MOBA,英文全稱:Multiplayer Online Battle Arena,縮寫:MOBA,中文翻譯:多人在線戰術競技游戲,又被稱為Action Real-Time Strategy(縮寫:Action RTS,ARTS)動作即時戰略游戲。
2、這類游戲的玩法是:在戰斗中一般需要購買裝備,玩家通常被分為兩隊,兩隊在分散的游戲地圖中互相競爭,每個玩家都通過一個RTS風格的界面控制所選的角色。但不同于《星際爭霸》等傳統的硬核的RTS游戲,這類游戲通常無需操作RTS游戲中常見的建筑群、資源、訓練兵種等組織單位,玩家只控制自己所選的角色。
二、游戲類型有哪些至少寫出四類
眾多游戲中,可按展示維度、玩法類型、聯網與否分為多種類型。
1)根據展示維度分為二維游戲、三維游戲。
①二維游戲也稱為2D游戲,2D指的是通過平面來表現所有的游戲畫面效果,例如經典的2D橫版游戲《超級馬里奧》《地獄邊境》等。
也有一些看似三維,實則二維的精彩作品,例如暴雪公司的《暗黑破壞神》《星際爭霸I》。這些由2D圖片整合而成的游戲,營造一種俯視3D的視角。
②三維游戲也叫3D游戲,是當前時代的主流,大量新發型游戲采用3D模式開發。通俗的講,能給人帶來立體感的游戲就是3D游戲。準確的講,3D游戲需要通過技術實現一個具備三個維度的虛擬空間,玩家可以控制角色在3個維度上移動,并提供對應觀察視角。這類游戲非常多,如《CS Go》《魔獸世界》等。
現實中往往通過技術手段將2D和3D游戲的邊界淡化,達到意想不到的新鮮體驗。2D和3D已不再重要,玩法和體驗才是關鍵。你能猜出《紀念碑谷》是2D還是3D游戲么?
2)根據游戲玩法和蘊含元素,游戲類型及縮寫如下。
游戲分類并無統一標準,各個游戲中的元素也往往存在交叉。以上舉例僅僅是作為一名游戲開發者所需掌握的的縮寫及含義。隨著游戲復雜度提高,單一游戲類型逐漸無法描述、分類游戲本身。
2009年后,出現一類新的類型—沙盒游戲。
3)沙盒游戲、沙盤游戲、開放性世界
沙盒游戲、沙盤游戲(SandBox)通常含動作、冒險、求生、角色扮演4類元素,玩家處在開放性世界中,沒有明顯的任務主線。游戲核心便是“自由開放”,典型代表便是GTA5,玩家在游戲中扮演的角色行為是隨意的,成為一個黑社會的大哥還是成為一個富甲一方的商人都可以是玩家的選擇。
還有一類游戲除了非常高的自由度外,其游戲重心放在對場景世界的改造上,通過已有的場景資源,進行生產、改造、建造等行為,打造屬于自己的世界。其代表作便是大名鼎鼎的《我的世界》,一款極度開放的沙盤游戲,曾經有國外大神,在《我的世界》中,使用“與或非門”,搭建成了現實中的電子元件,并運行成功。
絕大多數游戲的物理規則是對現實世界的模擬,但是不可能完全模擬世界上的所有細節。例如模擬一個物體運動,只需考慮牛頓運動學即可,無需考慮相對論、量子力學等因素。近似化和模擬化是游戲開發者的兩個有力工具。初學者往往在構想自己的游戲項目時,事無巨細的規定每個細節特征,最大限度的接近現實,視圖提供最真實體驗。這是沒有必要的,做到適當的簡略,能夠建立合理的計算模型,游戲才能制作下去。
三、怎么自己開發網絡游戲
1.圖形引擎 2.聲音引擎 3.物理引擎 4.游戲引擎 5.人工智能或游戲邏輯 6.游戲GUI界面(菜單) 7.游戲開發工具 8.支持局域網對戰的網絡引擎開發 9.支持互聯網對戰的網絡引擎開發下面逐一介紹每個部分: 1.圖形引擎主要包含游戲中的場景(室內或室外)管理與渲染,角色的動作管理繪制,特效管理與渲染(粒子系統,自然模擬(如水紋,植物等模擬)),光照和材質處理,LOD(Level Object Detail)管理等,另外還有圖形數據轉換工具開發,這些工具主要用于把美工用DCC軟件(如3DS Max,Maya,Soft XSI,Soft Image3D等)軟件制作的模型和動作數據以及用Photo shop或painter等工具制作的貼圖,轉化成游戲程序中用的資源文件。 2.聲音引擎主要包含音效(Sound Effect簡稱SE),語音(VOICE),背景音樂(Background music簡稱BGM)的播放。SE是指那些在游戲中頻繁播放,而且播放時間比較短,但要求能及時無延遲的播放,VOICE是指游戲中的語音或人聲,這部分對聲音品質要求比較高,基本上用比較高的采樣率錄制和回放聲音,但和SE一樣要求能及時無延遲的播放,SE在有的時候因為內存容量的問題,在不影響效果的前提下,可能會降低采樣率,但VOICE由于降低采樣率對效果影響比較大,所以一般VOICE不采用降低采樣率的做法。BGM是指游戲中一長段循環播放(也有不循環,只播放一次)的背景音樂,正是由于BGM的這種特性,一般游戲的背景音樂是讀盤(光盤或硬盤)來播放。另外一些高級聲音特效,如EAX,數字影院系統(DTS5.1),數字杜比環繞等。 3.物理引擎主要包含游戲世界中的物體之間、物體和場景之間發生碰撞后的力學模擬,以及發生碰撞后的物體骨骼運動的力學模擬(比較著名的物理引擎有havok公司的game dynamics sdk,還有open source的ODE—Open Dynamics Engine)。 4.游戲引擎主要是把圖形引擎、聲音引擎、物理引擎整合起來,主要針對某個游戲制作一個游戲系統,其包含游戲關卡編輯器,主要用途是可以可視化的對場景進行調整,光照效果和霧化等效果調整,事件設置,道具擺放,NPC設置,另外還有角色編輯器,主要用于編輯角色的屬性和檢查動作數據的正確性。一般日本游戲公司的做法,他們會把關卡編輯器和角色編輯器直接做到游戲中,所有的參數調整都在游戲中通過調試菜單來進行編輯,所以一般他們把這部分調試菜單的功能做的很強大,同時在屏幕上實時的顯示一些重要的信息,這樣做的好處是關卡編輯器調整的效果直接就是游戲的效果,但是對于程序的重用性來說可能不是很好,比如說要用到另外一個游戲項目中就比較難,除非兩個游戲類型相同,只要把場景和角色數據換一下,還有做下一代產品也沒有問題,只要根據式樣增加調試菜單的功能就可以了。 5.人工智能和游戲邏輯開發,這部分日本和歐美的游戲開發模式也有很大不同,在歐美游戲公司中運用腳本語言開發很普遍,所以這部分程序開發主要是用腳本語言編寫,而且腳本程序和游戲程序的耦合性很低,有單獨的編輯、編譯和調試環境,這樣比較利于游戲程序和關卡設計開發分開,同時并行開發,所以一般他們都會有專門做關卡設計的程序員崗位。而日本游戲公司腳本語言一般和游戲的耦合性比較高,一般通過一些語言的宏功能和一些編譯器的特定功能來完成一個簡單的腳本系統,所以一般這些腳本程序只能在游戲程序中進行調試,而不能在一個單獨的腳本編輯,編譯環境中進行開發。 6.游戲GUI界面(菜單),主要是指那些游戲中用戶界面設計,有做的復雜,有簡單的,做的簡單就是2D GUI界面,做的復雜有3D GUI界面。 7.游戲開發工具主要包含關卡編輯器,角色編輯器,資源打包管理,DCC軟件的插件工具等開發。 8.支持局域網對戰的網絡引擎開發,主要解決局域網網絡發包和延遲處理,通訊同步的問題,有同步通訊和異步通訊兩種做法,異步通訊用于那些對運行幀速要求比較高的游戲,同步通訊相對異步通訊來說效率相對低,但是同步通訊的編程模型相對異步通訊來得簡單一些。 9.支持互聯網對戰的網絡引擎開發,目前大部分網游都是C/S結構的,服務器端軟件配置管理,服務器程序的最優化,還有游戲大廳、組隊、游戲邏輯處理、道具管理、收費系統等。另外還有一些網絡系統是C/S和P2P兩種結構混合的,如XBOX Live等。程序員在游戲公司中的崗位在日本游戲公司和歐美的游戲公司有些不同,日本游戲公司中程序員的崗位主要有技術監督(Director),主程序員(Main Programmer),程序員(Programmer),在日本游戲公司里負責游戲項目開發的程序員,一般不會專門根據工作內容劃分程序員,除了獨立的系統研究室和聲音系統制作部門(這兩個部門是比較獨立的,往往同時給好幾個項目服務),負責每個游戲項目開發的程序員,隨時都可能一人多職,比如說主程序員除了負責整個游戲系統以外,可能還要負責圖形或聲音引擎開發等,程序員除了人工智能以外還有菜單制作等。這種情況在歐美的游戲公司比較少見,他們分工的比較細,一般有圖形程序員,聲音程序員,人工智能或游戲關卡程序員,物理程序員,每個組中可能還會有一個Leader。這一點,日本公司和歐美公司也有些不同。日本公司一般喜歡從一些高校中招聘一些應屆優秀畢業生,一方面比招聘有經驗的人要來的成本低,另方面新人是一張白紙,容易培養,像SEGA、KONAMI等都是按這種原則招聘員工的,所以想進入日本游戲公司,你要學好你的軟件課程。而歐美公司希望招聘進來,能馬上進入項目的開發中去,所以他們一般希望招聘有工作經驗的人,即使不是行業中,在相關行業中工作2、3年的也可以,所以想進入歐美游戲公司你的工作經歷很重要。我覺的一個游戲軟件程序員,最起碼的要求是熟練掌握計算機本科專業所學的知識,主要包括C語言或C++語言,數據結構,編譯原理,算法等,另外線性代數、微積分、牛頓力學在圖形和物理引擎開發方面用途也很廣泛,如果要提高的話還有必要了解硬件相關的知識如計算機體系結構、匯編語言,這些對我們學習一個新的硬件平臺、編寫最優化代碼、提高自己游戲的競爭力都是非常有益的。保持有恒心、不怕苦(比如說通宵加班)的心態,對游戲的熱情也是非常重要的。對于那些想進入游戲行業,但缺乏軟件開發知識的人,可以通過參加游戲開發培訓來現在有很多人,計算機本科畢業,學了很多軟件開發的知識,但是一旦要用到實際的項目開發時,感覺無從下手,這主要是在學校里運用知識的機會太少了。所以學習游戲編程最好的方法是能實際參與到一個好的游戲項目中和有豐富開發經驗的人一起開發游戲,可能學到很多你從書本上學不到知識和技能。但有時候你一時還沒有機會參與到一個好項目中,沒有機會進入一家好的游戲公司,但是你對游戲開發有一腔熱情,很希望學習游戲開發的技能,那你就應該去參加專門的游戲開發培訓,因為游戲開發培訓班中的老師都是一些有豐富開發經驗的老師,一般都有五年豐富的項目開發經驗,聽他們的課,實際上就是在和他一起分享這么多年的開發經驗,另外游戲開發培訓課程中會專門設計一些項目和課題,它們本身就是可以直接運用游戲開發中,這樣你可以不進入著名的游戲公司,但可以學到這些公司中一些常用的開發技能。











