電腦游戲用什么語言編程的,做一個像王者榮耀這樣的游戲要多少行代碼?
喜歡一本正經的胡說八道,偶爾也會走走心。
這個問題我想答,但是怕答不好。我就把我能想到的都說一說吧!
首先來認識一下王者榮耀制作人 李旻你永遠無法想象一個小小的身體會迸發出多么巨大的能量,這是看到李旻照片之后我的第一感受!
言歸正傳,來聊聊王者榮耀的制作首先是王者榮耀的編程語言。
將王者榮耀的安裝包apk文件下載到電腦解壓之后進入 *\assets\bin\Data\Managed 你會看到如下的文件。
這是王者榮耀的框架文件夾,如果學習過C#語言,一眼就會認得這是C#語言。C#語言是由微軟開發的免費開源語言。沒錯,王者榮耀正是基于Unity3d (.NET C#)開發的跨平臺游戲。
此參考圖片來源于網絡,侵刪!至于到底是多少行代碼才能造就這樣一款游戲,我只能說我真的不知道,部分核心語言肯定是加密封裝的,想看也看不到!不過它的代碼之多肯定會刷新我們對程序猿的認知這點我從不懷疑!
有了敲代碼的,接下來就是“美工”了!
一個頂級的美術設計團隊才能造就如此美侖美奐的游戲場景和英雄模型這點我也從不懷疑。
這些游戲中的場景都是通過3DMAX軟件來做的,任何一個場景甚至是雕塑,制作過程都充滿了設計團隊的心血和創意!
場景的完美呈現最開始是畫稿的確定,然后再通過3DMAX建模
游戲中的場景大到水晶塔、基地,小到一花一草,每一個都是精雕細琢才能最終確定!
英雄人物的創造也同樣不簡單!首先是策劃團隊創作出英雄的創意,其中包括英雄的人物名稱、背景故事、技能設定、大致的人物形象概念。這些都設計好之后就是美術團隊對英雄人物進行構思創作,個人認為這一步是最難的,得要多么天馬行空的想象,才能構建出一個虛擬的、根本不存在的人。
當人物的初稿出來之后,設計團隊開始對英雄建模。經過多次的討論和修改,人物確定。
這些都完成之后,將素材交予程序組,程序組將英雄的人物信息和技能系統寫入游戲并且調用設計團隊完成的素材,然后在游戲中測試英雄的各項參數。當這一切都完成之后,人物上線測試服開始平衡性測試;UI設計團隊此時也開始繪制英雄的原畫和人物頭像等等游戲中需要的素材。當人物在體驗服中測試完成無問題之后,就會擇日在正式服正式上線。
圖像來源網絡,侵刪!
另外還要提一下就是游戲中的音效。
這些游戲中的音效也都是請專業配音錄的,每一句語音都價格不菲。可以看看八殺的錄制,可能很多人已經看過了。
所以一個游戲從開發到火爆不是沒有理由的,精雕細琢和千錘百煉都是必需的。
像王者榮耀這樣一個游戲,核心的團隊成員才30人左右,當然也不排除在設計過程當中騰訊的各部門聯動。這么些人,卻創造了一個偉大的游戲,可見當人類的創造力迸發出來的時候,可能人自己都不敢相信。
以上均是充斥著個人觀點的論述,有問題歡迎指出哈!
?乛?乛?
魔獸世界用的什么游戲引擎?
wow使用的是Direct8 游戲引擎。
DirectX 8的推出引發了一場顯卡革命,它首次引入了“像素渲染”概念,同時具備像素渲染引擎(Pixel Shader)與頂點渲染引擎(Vertex Shader),反映在特效上就是動態光影效果。
同硬件T&L僅僅實現的固定光影轉換相比,VS和PS單元的靈活性更大,它使GPU真正成為了可編程的處理器。
DirectX是由微軟公司創建的多媒體編程接口。由C++編程語言實現,遵循COM。被廣泛使用于Microsoft Windows、Microsoft XBOX、Microsoft XBOX 360和Microsoft XBOX ONE電子游戲開發,并且只能支持這些平臺。
擴展資料:
DirectX是由很多API組成的,按照性質分類,可以分為四大部分,顯示部分、聲音部分、輸入部分和網絡部分。
DirectX并不是一個單純的圖形API,它是由微軟公司開發的用途廣泛的API。
現在一般的游戲或者軟件都用什么語言編程?
這里有兩個問題,一個是C和C++的區別和聯系,而是如何進行應用軟件開發。
C++比C語言更復雜,也完全兼容C的語法,不僅提供了面向對象的特性,還加入了模版元編程,直接把復雜度提升了一個檔次。但也別有畏難情緒,C++的基本語法都很簡單,包括模版,主要是看熟練程度,有些東西也不用刻意去學,包括一些語法糖,實際項目中很少用到,所以那些說C++怎么怎么復雜,怎么怎么難學的,聽聽就好別當真,可以說只要掌握面向對象,了解基本的模版編程,熟練使用stl或boost(里面的東西不需要全掌握,只掌握重點的容器、算法,boost的asio就可以了),就可以開始工作了。
軟件開發這個話題太廣,如果你熟悉了C/C++,到了這個階段,就可以熟悉各種API了,如win32或posix等,比如可以看Windows程序設計或Linux程序設計等這類書籍。
就目前來看C\C++的路的確越來越窄,桌面開發可以選擇Qt,但是windows還是推薦使用.net,C++僅作為備選方案,隨著互聯網和云計算的盛行,C++在這方面基本沒什么用武之地,本來以為可以在物聯網上大展宏圖,結果半路殺出一個python,隨后連Ubuntu都將其作為官方開發語言,這也是一個悲傷的故事。
但對于嵌入式工程師,C/C++這個目前還無法替代,而且門檻極高,要熟悉Linux架構,會對內核進行裁剪,要為特定硬件編寫驅動,需要豐富的軟硬件知識積累。
游戲目前主流的編程語言是C#,各大主流的商業游戲引擎,如unity,cryengine等都使用C#,目前只有unreal4采用的C++,當然unreal4也可以采用藍圖。像前幾年盛行的cocos2dx也是采用C++,但目前基本已經淘汰了。
游戲編程對數學能力要求較高,首先需要掌握高等數學和線性代數等理論知識,然后看一些計算機圖形學的相關知識,伴隨著這些理論知識的學習掌握相關的圖形api,比如OpenGL或directx,如果是從事移動端,需要學習opengl es,而OpenGL es是在OpenGL上精簡而來的,拋離了OpenGL中的固定功能管線,采用可編程管線,即shader(shader是一種類c語言,語法很簡單,但需要一定的數學功底才能寫好),所以要重點學習OpenGL 3.0以上的版本。在這之后就可以開始學習游戲引擎了,有了上面的知識,游戲引擎就想對簡單了,就相當于使用ide。
以上就是關于電腦游戲用什么語言編程的和做一個像王者榮耀這樣的游戲要多少行代碼的相關問題解答,希望對你有所幫助。