游戲開發是一個比較廣泛的話題,說哪種語言更好其實不合適,應該是那種語言更適合那種層次的處理。
在進行數據量比較大的游戲開發時,更占優勢的無疑是C++這門編程語言!之所以這樣講,以我的經驗來看主要是兩個方面!
幾年前,我用Java編寫了一個過程3D建模應用程序,該程序能夠處理數百萬個多邊形,它使用了智能分區系統,該系統生成線程以最佳利用所有CPU內核,如此繁重。

我可以肯定地說,Java,甚至C#進行海量數據計算的最大問題不是該語言解釋的實際速度(但是這些語言的速度幾乎與C++一樣快),但是內存管理和垃圾回收是影響游戲的關鍵因素。
《2021最新C/C++編程學習路線和視頻教學》
缺乏對內存的控制權,導致軟件消耗過多的內存,同時產生由垃圾收集器引起的不規則的滯后。
當有足夠的可用內存時,軟件會平穩運行,但是達到限制(無論保留的內存塊大小如何,都會達到限制)時,用戶會遇到滯后,可能需要幾分之一秒甚至幾秒鍾的時間,這是非常糟糕的。

由於缺乏對內存的控制,因此內存管理器有時會保存巨大的內存塊,您知道這些內存塊將永遠不會再被使用,並且無法像C++中那樣立即強制釋放這些內存塊。
結果是該軟件的內存效率非常低。
自動垃圾收集系統對數據沒有更高的語義理解,因此它使用在大多數情況下“最佳”工作的策略,但是這種策略效率很低。
在C++中,你可以根據特定用途分配和釋放內存塊,並使內存管理更有效。但是,您需要自己完成所有工作,並且搞砸的可能性更大,這會對C++產生致命的后果。
希望將來的垃圾回收器實現方案,以實現對內存的更多控制。還可以使用自定義內存管理器自行完成所有操作,但這將是一個不切實際的解決方案,但值得考慮。

但是當需要為GPU提供海量數據並最大程度地優化所有內容時,最好使用C或C ++直接運行代碼,這可以給您更多的控制權,並使您可以更好地優化代碼的性能敏感部分。

不幸的是,作為Unity開發人員,我可以告訴您,當您需要使用C#執行對性能敏感的計算時,可能會遇到這種情況,這可能表明該語言的局限性。
但是,您可以在應用程序中使用自定義內存管理器,並明智地設計代碼,以使其更容易在語言解釋器中更有效地運行,從而獲得良好的性能,但是有時用C / C ++編寫敏感部分可能會更好。
另外如果你想更好的提升你的編程能力,學好C語言C++編程,以便更好從事編程類工作(游戲開發)的話!那么你很幸運~

最后,不管你是轉行也好,初學也罷,進階也可,如果你想學編程~
【值得關注】我的 C/C++編程學習交流俱樂部!【點擊進入】
問題答疑,學習交流,技術探討,還有超多編程資源大全,零基礎的視頻也超棒~