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