原標題:狂肝10個月手搓GPU,他們在《我的世界》里玩起《我的世界》,網(wǎng)友:夢想成真!
(相關資料圖)
自從有人在《我的世界》里用紅石電路造出CPU,就流傳著一個梗:
總有一天,這幫紅石佬能在我的世界里玩上我的世界。
這一天,真的來了!
先來看這臺“在無MOD純原版我的世界里搭建的電腦”(簡稱“我的電腦”)。
擁有1Hz頻率的CPU、8KB內(nèi)存、6KB顯存的顯卡、加速模塊,96x96像素顯示器,以及一只PS4手柄作為輸入設備。
它運行起來是這樣的:
電腦有了,還缺的就是能跑在上面的游戲代碼。
大佬們先用一種叫URCL的中間語言手敲,再轉(zhuǎn)換成自制CPU能運行的匯編碼搞定。
就這樣,3個人肝了10個多月,終于實現(xiàn)史詩級套娃。
這個移植版《我的世界》,不但擁有游戲的基本玩法如開放世界、方塊擺放,采礦,甚至連物品合成都有。
作者之一sammyuri把最終成果濃縮成一條3分鐘的視頻,已經(jīng)收獲近百萬播放量和10萬多贊。
一條高贊評論將其譽為“整個電子游戲史上最偉大的壯舉”,只有足夠復雜的游戲和足夠精通的玩家才能達成。
也有人表示“我失望于自己無法完全理解和欣賞這個作品,到底難度有多高,以及需要的工作量有多少。”
要理解這一切,還要從17個月前sammyuri造出的那塊CPU說起。
CPU顯卡都自制
狂肝7個月,sammyuri在《我的世界》中生造出一塊CPU,初衷是為探索紅石電路的極限。
最終成果是一臺8位處理器,采用三個寄存器操作數(shù)的RISC架構,可以1Hz頻率運行,擁有256字節(jié)RAM。
取名CHUNGUS 2,意為“計算用超巨大非傳統(tǒng)數(shù)字與圖形處理器”。
與此同時,他還開發(fā)了專用匯編器,可以把程序代碼轉(zhuǎn)換成可以一鍵粘貼到《我的世界》里的磚塊結(jié)構。
sammyuri認為,CHUNGUS 2性能基本達到雅達利經(jīng)典游戲機Atari 2600水平,運行個貪吃蛇、俄羅斯方塊都不在話下。
手搓CPU的視頻,一發(fā)到網(wǎng)上就爆火,播放量過百萬。
但他并不滿足于此,甚至(在讀者的鼓動下)萌生了無限套娃的想法——在《我的世界》中玩上《我的世界》。
不過,這聽起來實在是天方夜譚……
畢竟在現(xiàn)實中,《我的世界》游戲最低配置要求也是3Ghz CPU+4GB內(nèi)存,他這只有1Hz CPU+256字節(jié)內(nèi)存的配置,怎么帶得動?
這時候就需要借助群體的智慧了(手動狗頭)。
Sammyuri找到Uwerta和StackDoubleFlow,三個人一起基于這個CPU,給計算機來了一次升級,其中2個人負責在游戲中搭硬件,1個人負責寫代碼。
這一升級就是10個月,最后竟然真的在《我的世界》中,用一塊96×64像素的屏幕,玩起了一個3D版、復刻16種方塊+32種物品、還原數(shù)十種游戲機制(挖掘、制作、燒制、搭建、箱子、隨機刻等)的《我的世界》!
沒錯,這還是個3D的《我的世界》,因此計算機中還配備了顯卡(GPU),專門用來處理圖像。
這只GPU名叫“AMOGUS”(Absurdly Massive Operator on Graphics by Uwerta and Sammyuri,超巨大的圖形運算器,Uwerta和Sammyuri制造)。
△AMOGUS
首先,給這個GPU輸入物體在3D空間中的坐標、以及紋理位置等信息;隨后根據(jù)相機位置,切割出需要顯示的畫面(例如相機位于一棵草中間,它就只顯示相機前面的草,將相機后面看不見的草切掉);
接下來,將屏幕上的3D坐標映射成2D坐標,并將四邊形分割成3個梯形、進一步分割成像素行、再分割成單個像素,并進行線性插值來計算每個像素對應的紋理位置(即紋理映射),以及它與相機的距離;
△(圖源Surfaced Studio)紋理映射原理,在AMOGUS中做了簡化
紋理映射是實現(xiàn)GPU處理3D圖像的一個關鍵。用GPU處理3D圖像時,需要將屏幕上的1個像素與3D物體表面紋理上的某個位置對應起來,也就是紋理映射。
由于目標與相機的距離一直在變化,因此紋理映射占用屏幕的像素范圍也不一樣。
最后,從紋理緩存中獲取像素顏色,并將深度與屏幕當前像素深度(存儲在6kb的像素深度緩沖區(qū))進行比較,如果更相近就進行覆蓋。
除了用GPU處理圖像以外,這臺可以運行《我的世界》的計算機又是如何存儲游戲數(shù)據(jù)、并與玩家進行交互的?
以充當工作臺的ROM為例,它存儲了各種鍛造和燒練的配方,當輸入一系列需要合成的物品(如一系列木頭)時,就會輸出一個結(jié)果(木塊),否則就輸出0。
用于存儲世界地圖的RAM由512×4位地址組成,一共256字節(jié),基于坐標(x,y,z)尋址。如果檢測到玩家超出邊界,就會返回0或255。
△世界地圖就存在這里
輸入控制器,則由一系列《我的世界》中的壓力板組成,踩到后就會將當前狀態(tài)發(fā)送到隊列中,CPU就能讀取并處理。
△根據(jù)PS4手柄風格設計
當然,在《我的世界》中運行這臺計算機,必須經(jīng)過加速(否則可能幾小時都計算不出一幀)。
于是他們便借助MCHPRS服務器,提升了一波紅石運行的速度,達到了每秒0.1幀的極限水平(doge)。
即便如此,我們看到的這段2分鐘視頻,仍然花了大約9小時錄制,有種“天上一天,地下一年”的感覺。
據(jù)Sammyuri表示,目前他們正在進一步優(yōu)化GUI(圖形用戶界面),下一步有可能制作一個獨立的、只運行紅石系統(tǒng)的版本,甚至實現(xiàn)在《我的世界》中運行《DOOM》的夢想。
細節(jié)上有多硬核?
其實在這之前,不少紅石佬們都想過用不同方法實現(xiàn)“在我的世界里玩我的世界”。
但多少走了點“捷徑”,不算是用《我的世界》中的原生工具實現(xiàn)。
例如,通過虛擬機模組,在《我的世界》使用各種部件組裝電腦,并當作虛擬機運行,比如這個VM Computers mod:
還有通過Web displays的,也就是在《我的世界》中搞一個瀏覽器,再運行網(wǎng)頁版《我的世界》:
盡管sammyuri三人組的方案尚存不足,但相比起來,不借助外部工具輔助又多疊了一層硬核buff。
“無限套娃”許愿成功!
當然,除了“工具全部現(xiàn)成”以外,這個0.2版本的《我的世界》,還有更多細節(jié)值得一看。
比如那個用1和0碼出的CPU存儲器——CHUNGUS 2,制程工藝達到了先進的1米(doge),頻率達到了1Hz。
它有一個4級指令管線化,64字節(jié)的8路關聯(lián)數(shù)據(jù)緩存,甚至分支預測,符合RISC標準。
而生造的GPU,又能成功運行,把捏出來的計算機里的《我的世界》方塊,全部進行3D渲染。
再者,紅石線路本就具備數(shù)字電路的基本要求,只不過堆疊運行限制很大。
移植版《我的世界》玩兒起來,再次證實了《我的世界》的圖靈完備。
具備圖靈完備,意味著在不考慮實時運算的前提下, “在《我的世界》里玩《我的世界》”,可以一直套娃。
狂肝10多個月可以套娃一次,要是狂肝20多個月,豈不是就能實現(xiàn)“在《我的世界》搭電腦玩《我的世界》,并在后者中再搭一個《我的世界》來玩”???
套娃人狂喜!
不過,考慮到《我的世界》邊界距離理論上是有限的,所以每一次模擬出的《我的世界》都會更小。
因此真·無限套娃,用這個辦法恐怕還是不行。
但,如果造出來的《我的世界》里有了紅石電路,這并不妨礙新的一輪套娃又要開始了~
事實上,sammyuri在視頻最后留了個彩蛋,“關注點贊我可能開始做我的世界中的我的世界中的我的世界”
他不會是認真的吧?不會吧?
網(wǎng)站首頁 |網(wǎng)站簡介 | 關于我們 | 廣告業(yè)務 | 投稿信箱
Copyright © 2000-2020 www.ffpps.com All Rights Reserved.
中國網(wǎng)絡消費網(wǎng) 版權所有 未經(jīng)書面授權 不得復制或建立鏡像
聯(lián)系郵箱:920 891 263@qq.com
嫩模被强到高潮呻吟不断| 蜜臀av999无码精品国产专区| 天黑黑影院在线观看视频高清免费| 成人色情视频免费观看| 福利一区二区三区视频在线观看| 免费a级毛片18禁网站免费| 熟女国产精品视频一区二区三区 | 国产真实迷奷视频| 日本人妻伦在线中文字幕| 日韩精品无码一本二本三本色 | 少妇高潮毛片色欲AVA片| 国产av激情无码久久| 娜娜的yin荡生涯h全文| 被主人在厨房用黄瓜调教| 亚洲人成亚洲人成在线观看| 337P日本欧洲亚洲大胆张筱雨 | 日韩精品无码一区二区三区不卡| 17岁日本高清免费观看完整版| 欧美在线香蕉在线视频| 男同gay片av网站猛男调教| 多毛bgmbgmbgm胖在线| 国产69精品久久久久777| 漂亮人妻洗澡被公强 日日躁| 三个男人的共妻每天被c| 水蜜桃av无码| 被下人玩弄的嫡女np| 国产睡熟迷奷系列精品| 给我免费播放片| 亚洲av片在线观看| 在线观看的资源视频| 中文字幕人妻紧无码专区| 国产精品久久综合亚洲av| 99久久精品国产一区二区三区| 国产丰满成熟女人性满足视频| 2019日韩中文字幕mv| 免费a级毛片无码视频| 久久久久国產麻豆无碼av| 无码精品人妻一区二区三区APP| 撕开胸罩一边亲一边摸| 人人妻人人澡人人爽精品日本| 天下第一日本www视频|