C++到底是如何從代碼到遊戲的?

林色芬


C++的高性能,讓它成為遊戲開發時常用的語言。而一個遊戲的產生需要多種技術或者說領域的配合。比如遊戲策劃,遊戲設計,美術設計,程序設計,資料編輯等等。

從程序上來說,要把圖形圖像展示到顯示屏,那麼就需要驅動程序,底層通過驅動將圖像數據轉換成顯示屏VRAM中需要的格式。常見的圖形庫有OpenGL和DirectX,而他們的版本也是驅動程序決定的。

而現在各種遊戲引擎的出現,讓遊戲開發更加簡單。例如支持C++語言的跨平臺引擎cocos2d-x,提供了強大的設計工具和比較強大的api,供開發人員來使用。讓學習c++的人能更快的實現遊戲開發的夢想。



空山鳴澗


一個遊戲的代碼大致可以分為客戶端和服務端兩大部分。當然,單機遊戲只有客戶端,但這並不妨礙這個大致的分法。

很多初學者其實最大的疑問是:學C++的時候只有黑白框,怎麼變出好看的圖片的?答案是好看的圖片是美術同學做好了拿給你的,這部分和程序無關。你也可以自己去網上找圖片素材做。

客戶端程序其實主要負責的是:圖片(或其他資源比如3D模型)要如何顯示出來,在屏幕的哪裡顯示,顯示的時機,顯示的大小等等問題,這其中就牽涉到很多邏輯處理,循環判斷等等。更大型的遊戲還會涉及到如何更高效的渲染這些素材,如何優化利用硬件性能等等問題,這些都需要靠代碼解決。

服務端程序主要負責的是:用戶的數據如何接收,如何保存,如何處理等等問題。要接收必然需要知道如何連接網絡,這就需要了解各種網絡庫,理解網絡工作的原理。要保存必然需要深入理解數據庫相關的知識,知道數據該如何保存,以及服務器要如何連接到數據庫取存取數據。用戶多了的時候還會涉及到緩存,分佈式等等問題,這些也都需要靠代碼解決。


優谷先生


簡單來說就是分為前端和後臺。你玩遊戲看到的美麗圖片,人物建模屬於前者。後者制定遊戲框架,比如攻擊傷害,走動什麼的。代碼是完成後者的


分享到:


相關文章: