-
1 # 菸草的香味
-
2 # 博一遊戲開發
這分服務端還是客戶端 客戶端 也要看你用什麼遊戲引擎 如果是Cocos那就是c++和Lua 或者Js如果是Unity 那麼主要是c# 服務端一般是java c++
-
3 # 太科羅技
開發遊戲的程式語言有很多,不同的平臺會使用不同的語言。這裡我把平臺型別主要分為四大類,即PC端,遊戲主機,WEB端,移動終端。下面就分別來介紹一下這四類平臺上的一些遊戲開發語言。
PC.PC端的遊戲絕大多數都執行在微軟的Windows系統下,遊戲可以被視為一類互動性比較強的軟體。既然是軟體,那麼理論上能夠開發軟體的程式語言也都能用來開發遊戲,事實也確實如此。但在實際開發中,為了兼顧遊戲的執行效率,PC上的大型遊戲往往使用C++或者C#這類高效能語言進行開發。此外,還有一個原因是C++/C#可以無縫相容大多數遊戲引擎。
遊戲主機.目前主流的遊戲主機有微軟的XBOX和索尼的PlayStation。XBOX可以視為一個另類的PC機,它的遊戲開發與現在Windows端的開發大同小異(同樣可以使用Visualstudio),所以XBOX的主要程式語言也就同樣是C++和C#。索尼的PlayStation使用的是一個類UNIX的作業系統,也就無法使用微軟的C#語言了(要使用也可以,但很麻煩),所以就只能大量使用C++了。
WEB.WEB遊戲是指執行在瀏覽器中以網頁形式展現出來的一類遊戲。本質上也就是一個網頁,所以WEB遊戲的程式語言也就主要是WEB開發語言,比如PHP,JS,HTML5等等。
移動終端。移動平臺主要有安卓和iOS,安卓系統APP的主要程式語言是Java和kotlin,IOS是OC和swift。這些是APP的開發語言,而遊戲也可以視為一種高效能的app。安卓下游戲主要框架由Java實現,部分需要進行大量計算的模組會使用C/C++的動態庫來實現。iOS下由於其語言本身就很高效,所以基本上IOS下的遊戲都是使用oc和swift兩種程式語言來實現的。
-
4 # 花樣做遊戲
主機與pc客戶端底層語言基本是c++,指令碼語言是lua、js、c#等,iOS底層是object c,android是Java,flash是as,伺服器端比較雜,python,erlang,nodejs,c++,go,甚至PHP都有可能
-
5 # 仁三術四
客戶端看遊戲引擎,像現在最火的unity3D 就是C#+lua做手遊開發,虛幻的話就是C++,h5方向有兩個引擎分別是egret和laya box 用的是typescript。
服務端的話主要有3個流派,分別是cpython,clua 和erlang 。java 不入流,做什麼都行,反過來就是做什麼都不行。
總結就是服務端多語言混編互動的很多,各語言都有各自的發揮,客戶端跟引擎走。
-
6 # 小二程式設計指南
遊戲有各種各樣的,有手遊,手遊又有安卓和IOS的區分,又有頁遊和端遊之分。
我在這裡大致的給大家列舉一下吧。
2D頁遊:AS3 JS
3D頁遊:AS3 C#(Unity)
IOS遊戲:Obj-C js/lua(Cocos-2d-x) js/C#(Unity) AS3
安卓遊戲:java js/lua(Cocos-2d-x) js/C#(Unity) AS3
線上小遊戲:AS3 JS
大型單機遊戲/客戶端MMORPG::C++ C#
其中AS3 JS C#(Unity)都是跨平臺的。AS3(flash)目前被唱衰,JS目前又比較翔,Unity還不錯。
而現在比較火的就是Unity3D和C# ,來做遊戲,如果你想學習的話可以先去了解一下。比如最近很火的王者榮耀,就是用Unity寫的。
如果你是對技術感興趣,建議你學習c++,這會讓對遊戲的底層實現有更多的瞭解和掌握.但這一定是一個非常非常漫長的過程.如果你是對設計更感興趣,那就學習Unity3d, 學習C#, 因為它可以讓你更快的做出你想要的,
建議你先不要糾結學什麼語言,先想清楚想要做什麼,是程式設計師,還是想做產品,還是想做策劃呢?
以上。
-
7 # 張小童鞋
當各式智慧終端裝置的普及為遊戲公司帶來人口紅利的同時,以 Unity為代表的遊戲引擎開發商也在極大地降低遊戲研發的成本。另外,除了遊戲引擎本身的效能提升外,Unity還同步提供了免費教程、線上培訓、產品文件以及數千個外掛資源生產工具。
開發遊戲需要什麼?需要掌握哪些知識?
01想成為遊戲開發人員,就得先成為一個很好的程式開發人員,所以遊戲開發要先從程式語言學習。
02除了程式語言之外,還有一些遊戲方面的知識,比如說遊戲開發流程及職業劃分、玩家需求分析、遊戲主線故事設計等等也要學習。
03然後還有一些繪圖軟體,比如說Photoshop,也要掌握一些,包括其中的遊戲美術風格技法、色彩基礎、遊戲色彩練習、肖像繪製等方面的知識。
04除了一些理論知識,程式設計工具也需要掌握至少一種,常用的有VC,Unity等,VC挺不錯的,可以試試這個。
05一些生活的常識,角色的動作,物體碰撞之後的變化等等,這些也是需要學習的。想做好一個遊戲開發要學習的東西還是非常多的。
參加遊戲開發培訓的話
1.會獲得Python語言開發的工具鏈,並講解使用方法,透過各種工具指令碼,提高開發效率,將企業中高手採用的工作方式帶入學生未來的工作當中。
2.會獲得JavaEE服務端和Unity Socket通訊影片和自學資料,為日後從事大型網遊開發奠定基礎。保證學員未來有足夠的發展空間。
3.學員入學就有高質量,可信服的就業服務保證。
4.隨著企業的用人標準的提升,課程中添加了大量的影象學案例,讓學生真正熟悉圖形學,熟悉各類特效的實現流程,熟悉光照演算法的設計思路。
5. 網路底層的深層剖析,從通訊協議、拆包粘包、連線池各細節角度,教授學員大型網路遊戲開發的核心內容。幫助學生實踐自己思路拼接的網路傳輸框架,並在遊戲專案中得以實踐。
-
8 # 我愛程式設計VB
如果追求簡單而且沒基礎,而且只是用來自己玩玩,那你可以試試Scratch,這種語言是少兒式的搭積木的種程式設計方式。難登大雅之堂。
如果有點基礎,可以試試做網頁遊戲,可以用JavaScript或AdobeFlash,這些一般是用來寫網頁小遊戲。
如果你不滿足這些語言,或者你有比較好的基礎,可以上手Visual Basic或Visual C++,前者容易後者難,但是效能還是後者較好,Visual Basic有自帶編譯器,可編譯成exe且不用配置環境
還有一些較難的Java,Python
如果要程式設計3D遊戲,可以試試Unity3D。
上述所有語言除Scratch外全部都是大眾語言。
-
9 # 張小童鞋
遊戲開發現在主要分pc端遊戲開發和移動端遊戲開發,無論是pc端還是移動端,目前用到比較多的無非是java,c++,cocos2d-x,objective-c,os等。有資料顯示:
在企業開發遊戲月薪10000元以上的佔38%,在企業開發遊戲的開發者月薪5000以下的為21%,大部分企業遊戲開發者的月薪分佈在10000-15000元,佔22%。這說明目前遊戲開發行業是非常有前途的。
現在知道遊戲開發用什麼語言了吧,知道現在一個好的遊戲開發者是多麼的吃香了吧,目前很多遊戲都在手機端上線了,這也導致了目前很多同學想從事基於安卓平臺上的手機遊戲開發和基於iOS平臺的手機遊戲開發。
一句話,無論是什麼平臺的手機遊戲開發,都離不開目前三大語言的學習。只有學會了Java,c,c++等語言,在以後的遊戲開發才能學好。
遊戲開發主要流程包括原畫創作、建模、材質、燈光及渲染、骨骼設定、動畫、特效等部分。涉及範疇包括 :遊戲規則及玩法、視覺藝術、程式設計、產品化、聲效、編劇、遊戲角色、道具、場景、介面等等元素。遊戲程式開發歸根到底就是軟體工程,是遊戲製造環節中不行短少的重要部分。
遊戲開發需要學習什麼技術?遊戲開發一般至少要三種能力:策劃(怎樣讓遊戲好玩)、美術(外觀)、程式(執行)。其中,程式是必不可少的。
-
10 # 幽默抓搞笑
遊戲本身會執行在不同的平臺,而平臺也影響了使用的語言。平臺主要有2大類,PC(也就是常用的電腦)和手機。它們上面都可以使用網頁來運行遊戲,所以額外我們把網頁瀏覽器上面跑的叫WEB端。針對上面的3種平臺型別。我們來聊一聊這些平臺上常見的遊戲是用什麼開發的。
PC端。大部分的遊戲是C/C++開發的。這主要是因為我們使用的作業系統如window,mac的底層都是c。使用C/C++可以極大的發揮性能上面的優勢。比如下面這個NBA2K18就是用C/C++為主開發的。
手機端。手機端的遊戲我們稱為手遊。手機上面的作業系統主要是ios與android,也就是蘋果和安卓系統。在之前,android上面的遊戲以java開發居多。這是因為android系統本身就是以java開發為主。ios上面的遊戲以object c開發居多,這也是因為系統本身的緣故。最近ios又出來swift語言。但是隨著技術的發展,程式設計師們發現一款遊戲要部署到各個平臺的成本太高了。所以現在主流的技術是使用跨平臺的遊戲引擎開發,然後釋出到不同的平臺。所以,語言的選擇從對平臺的依賴變成了對遊戲引擎的依賴。那我們就要看看主流的遊戲引擎有哪些?主流的遊戲引擎有:unity,cocos,unreal等。unity採用的是C#語言為主。cocos下面以C++、lua、js等開發語言。unreal主要是以C++為主。從上面這些中你會發現語言有很多,使用的也很多。在商業專案以及目前主流技術中,大部分高水準的遊戲是以C++結合lua來開發的。C++負責處理高效能的部分,lua處理邏輯部分來加快開發速度。即使是使用unity引擎,大部分產商也會選擇C#結合lua的方式來開發。C#負責核心部分,lua處理邏輯部分。
再聊一下WEB端。WEB端以前是以flash為主,常見的就是4399的很多小遊戲,都是flash為主。WEB端主要是一個html與js的直譯器。目前WEB開發國內主要是3大引擎:白鷺、laya以及cocos-js。它們的主要開發語言為typescript,這主要是因為typescript可以提供非常快的開發速度(就像lua一樣),同時它還具備提前暴露問題的能力。
實際上上面的部分主要聊的是遊戲客戶端。在遊戲領域,實際上分為服務端和客戶端。客戶端指對外玩家可以見到的畫面表現等。服務端是執行在產商自己的伺服器上的,支援玩家之間互相可見,同步,聊天等各種邏輯。對於服務端的語言,目前有C++結合lua以及C#、java、php等。這幾種都很常用,主流的大的遊戲依然是C++為主。中小型的遊戲各種都會用到。php常用於對網路需求很低的遊戲的做簡單的資料處理。
上面的主要是一些理論,下面我們來實戰幾個問題,一會我們再來總結。
1. 王者榮耀是用什麼開發的?王者榮耀使用的是unity引擎,而這種全民級別的遊戲是非常注重效能的。所以它採用的是C++結合C#。核心用C++,邏輯用C#。為什麼不是我們前面說的C#結合lua呢?因為騰訊有這個技術實力,所以他們整體使用了更有效能優勢的語言開發。
3.怎麼猜測一款遊戲是什麼語言開發的?先上網搜尋它的開發引擎,如果搜尋到了就看看它對效能是否要求高,來推導它的使用語言。如果搜尋不到,那很可能是自研引擎。自研引擎大部分都是C++實現的。
最後總結下。目前大部分國內的遊戲以C++/C#結合lua實現為主,隨著小遊戲的開始,催生出一些js/typescript開發的遊戲。為什麼是以C++結合lua會是實現為主呢,是因為現在網遊最賺錢。一款遊戲月流水過千萬甚至過億催生了這個產業。這個產業注重2點:效能穩定,所以是C++。可以各種修改,各種支出活動,所以是lua。C++效能非常高,騰訊內部大部分程式碼其實都是C++的。lua是門指令碼語言,招人門檻很低,也容易學習。所以,很多語言實際上是因為大環境的影響而被選中的。另外一方面,伺服器也可以採用C++結合lua開發,這樣的話就形成了雙端(服務端和客戶端)都使用相同語言的高速開發模式。
我猜想題主是想選擇一種語言學習。首先題主要看下自己未來的方向。是想做大專案還是做小專案。如果是希望做大專案,目前無疑推薦的是C++和lua。如果是小遊戲之類的,推薦的是typescript。未來的一個趨勢我大膽預測可能是C++結合typescript。我瞭解到的一些技術大牛已經開始這樣實踐了。推薦的lua語言開發書籍如下:
推薦的C++書籍如下:
typescript暫時沒有合適的書籍供閱讀,主要以typescript的官方文件為主。
小遊戲類的開發書籍推薦如下:
大的遊戲實際上需要大量的學習和知識積累。遠遠不是幾本書能完全吃透的。這邊還是推薦一本unity3的引擎的書來提高下入門的興趣:
特別提醒下:基於目前網際網路的發展速度,讀書已經不是最快的獲取知識的途徑了。所以推薦的是優先以網際網路的內容來學習,找個引擎玩一玩。像玩玩具一樣的學習程式設計是最快樂的。之後再努力進入一線的研發團隊歷練,這樣成長最快。紙質的書籍落後於實際的技術3-5年以上。
作者背景:前迅雷員工/前遊戲公司雙端主程
回覆列表
沒有規定什麼程式語言是用來寫遊戲的,只是不同的程式語言的側重點不同,比如PHP在網站方面具有優勢,Python用來寫一些指令碼,c語言偏底層等等,程式語言的功能只是告訴計算機要怎麼做
如果是寫一些小遊戲,java、Python等都比較方便
如果要寫大型遊戲的話,c++比較好,Java、Python等我不太清楚