導航:首頁 > 編程語言 > java你畫我猜實驗報告

java你畫我猜實驗報告

發布時間:2025-06-16 00:49:27

㈠ 我的世界這款游戲為什麼要用java的語言編寫

如果你真的想問為什麼要用 Java 來寫的話……我猜 MoJang 可能只會 Java 。
不久前我一個朋友就是這樣,只學了 Java 然後問我做游戲用哪個游戲引擎比較好,我告訴他所有游戲引擎都沒有用 Java 的,都是C++、C#、甚至有用 JavaScript 的,他一賭氣就說要自己從零開始開發一個游戲……
就很神奇,最初我是因為聽說「Java用於游戲編程更牛皮」才知道Java的存在,然而目前主流游戲基本沒有用Java的……

————————————————————

【我的世界優化差、電腦和手機卡的原因】

1、mod 插件系統為提高兼容性會降低優化。

眾所周知,性能優化和兼容程度成反比。而mod作為一類即插即用插件,必須要提高兼容性以適應這一操作。所以,絕大多數游戲的mod系統都會犧牲一部分性能,導致載入很多mod時會卡的不行,比如老滾和撿破爛。別問,問就游戲內置了就不卡了。

2、我的世界在游戲製作行業算是比較出了名的渲染優化差。
舉個例子,比如用其他游戲引擎(如unity)做一個你無法進入、只能站在外面官網的摩天大廈,在游戲中這個摩天大廈的模型可能只有外殼,而且如果是遠距離的話可能就會優化成面片(反正你也看不出來是不是立體的)然後通過處理材質來提高真實度,而且還可以設置成近距離外殼、遠距離自動優化成面片來全自動優化性能。
我的世界就不同了,假設這棟大樓高80米寬30米,放到我的世界裡就是 30 * 30 * 80 = 72000個方塊,然後每個方塊6個面,就是 7200 * 6 = 432000 個 1 X 1 的面片加貼圖同時渲染,去掉反向面至少也得有 266000個面片需要渲染。就算只有外殼,也是至少 29 * 4 * 78 + 30 * 30 * 2 = 10848 個方塊共計 65088 個面去反後至少 32544 個面需要渲染。而無論你在遠在近,這棟大樓均是由這些個方塊組成,不會自動優化(眾所周知我的世界唯一的自動優化只有視距和區塊系統2333)。

3、我的世界游戲引擎存在一些硬核問題,以及開發者的優化問題。
我之前開發我的世界mod的時候就發現很多東西確實比較腦殼痛。像什麼地形掃描,地形掃描,地形掃描,地形掃描。我的世界性能方面最頭疼的地方就是地形掃描,線性15米就等於是掃描15格,面積15*15就等於掃描了255個方塊,稍微大一點的區域簡直就是恐怖。
比如我如果要做實時的礦產勘探,假設半徑15格,模擬為玩家處於正中間、長寬高30的立方體區域。這個放在現實中也就是相當於高科技半徑15米的礦產雷達,但是就這15米就需要掃描27000個方塊,也就是說某一段代碼至少要重復27000次才能保證一次完整的掃描。
然後問題來了,如果1秒掃描一次的話就需要循環27000次,為降低性能開銷我當時就改為5秒一次,平均優化攤開變成了5秒150游戲幀分別掃描這27000個方塊,每一個游戲幀掃描180個方塊,這樣極大降低了性能,但是讓演算法更復雜。
而有一個簡單粗暴的優化方式,就是一口氣掃描完27000個方塊,然後等待5秒鍾,再進行下一次掃描。這樣做的話性能開銷比攤開優化要好一點,但是每一次掃描都會導致游戲卡頓一下,卡頓時間長度根據當時瞬間系統性能,我實測最慘的一次是連續5次卡頓半秒以上。
然後更大的問題是,很多 mod 開發者覺得自己的 mod 性能消耗很小,就都這樣簡單粗暴寫(別問,問就我的世界開發投入的精力與收入嚴重不對等導致優化和後期維護變成了純粹費力不討好)。單獨載入都沒啥大問題,但是萬一趕巧了運算掃描卡在同一瞬間……這個概率還真的不低。

閱讀全文

與java你畫我猜實驗報告相關的資料

熱點內容
為什麼統計數據尺碼不出來 瀏覽:36
pdf文件沒有找到 瀏覽:273
蘋果5如何掃碼加入網路 瀏覽:903
換方向機為什麼要編程序 瀏覽:337
怎麼安裝蘋果app內購項目 瀏覽:404
蘋果下載描述文件點了沒有反應 瀏覽:671
linuxcurl頭文件 瀏覽:45
美區app如何取消訂閱 瀏覽:40
太原編程培訓機構哪些比較好 瀏覽:140
oppor9s如何看網路制式 瀏覽:386
蘋果手機怎麼打開微信視頻文件 瀏覽:136
linux打開的文件數量 瀏覽:546
小米5s如何降低版本 瀏覽:966
快走絲編程哪個軟體好 瀏覽:227
在線學習編程需要什麼條件 瀏覽:328
如何把照片弄成文件 瀏覽:607
windows找不到文件var 瀏覽:416
word怎麼打出公差 瀏覽:402
80網路 瀏覽:286
編程課主要學哪些東西 瀏覽:661

友情鏈接