听书阁_书友最值得收藏的免费小说阅读网

268.社長真乃神人也!-《才不是做galgame呢》


    第(1/3)頁

    “先別說不可能完成。”

    青智源趕緊打住,“赤西桑,你也是程序總監,pokeni的元老,你要是一開始就打退堂鼓的話,以后其他同事們也沒法做事情了。”

    “好,好的社長。”赤西健苦著個臉回應到。

    “我們一個一個問題來解決。”青智源說,“先大地圖吧。”

    “1000*1000對于程序來說,可能確實是有點大,加載效率慢可以理解,但是我們可以先做分塊加載嘛。”

    “你先切割成4塊,實在不行就切割成16塊,塊,都可以。只要能滿足流暢加載的需求就行。”

    “中間過渡的時候有卡頓什么的,都是很正常的。”

    青智源說。

    “但是,看起來過渡的時候會很別扭呢。”赤西健說,“可能我在這個小塊兒上面看的所有東西都是清晰的,但是就隔了一米遠,結果前面這個地圖塊兒沒被加載出來,就全是空。”

    “預加載。”青智源說著站了起來,在白板上面畫了一個圖示:

    先畫了一個方塊,然后在方塊的四條邊上面又各自畫了一個方塊。

    “伱看,”青智源指著中心的方塊說,“我從這個區域跑到這個東邊的區域,這個時候你別等我走到了你再把右邊的方塊給加載出來,而是我在走的過程當中,你就應該要加載右邊的這個方塊了。”

    “然后呢,當我走到最右邊的這個方塊的時候,最左邊那個不是已經超出我的視野范圍了嗎?這個時候你就把它給刪掉就行了。

    相當于我們同一時間只加載了到3個塊兒,在程序開銷上面就可以得到最大程度的節約。”

    而且,為了滿足這一點青智源決定在第一代《怪物獵人》當中,不投放坐騎系統。

    玩家們的跑步速度也要做個上限限制才行。

    “但是,哪怕是這樣,可能在怪物模型面數上面還是有困難。”赤西健繼續看著文檔說,“草食龍,一種群居類怪物,經常會成群結隊出現,大概在4到6只左右。

    我們現在對模型面數的支持,就沒有那么多。”

    “而且一個大場景當中,可不是只有一種怪物會出現,會同時加載好多不同的怪物進來,也就是說,有可能在視野當中,會同時出現10多只怪物,一旦發生這種情況,就會卡頓,甚至會導致系統崩潰。”

    emmmm……

    青智源托著下巴思考著。

    赤西健說的問題是客觀存在的,畢竟現在的硬件水平就放在這里,還沒有到達前世隨便揮霍的程度。

    在03年的時候,大概只有在手機上面才要節約資源,節約內存,在端游上面幾乎不存在這個問題。

    你想想看,一個游戲可以做到幾百g的大小,誰會在意這么一點點的開銷?

    手機是內存受限沒有辦法。

    也就是說,現在的游戲得按照手游的開發標準來制定才行,能壓縮的盡量壓縮,能節省的盡量節省。

    啊~

    青智源不由得感嘆,還是太慢了,時代還是太慢了再發展迅速一些就好了。

    “這個問題其實也好解決。”青智源拿起記號筆在白板上面寫了三個大字——

    “lod。”

    “lod?”

    赤西健和小池一臉懵逼。

    “分層顯示技術。”青智源用人話再說了一遍。

    “什么意思呢?”

    “你看哈,”

    青智源先在白板上面畫了一匹特別寫實的馬,然后再在旁邊畫了一匹馬賽克馬,再后面是一個不知道是什么鬼的特別抽象的馬,大概也就只有幾根線條而已。

    “我們制作不同的精度的模型。”

    “近距離范圍內,按照優先級最高,加載實際面數多的這個模型出來。”

    “如果離得遠,沒有戰斗需求和交互需求,但是又在可見范圍內的話,就可以使用粗糙一點的,面數少的這個。”

    “再遠一點,勉強可見的話,可以只加載這個特別特別粗糙的模型,甚至不加載都行,只加載地形就行了。”

    “除此之外,給地形、材質、不同的物體模型上打一個優先級的標簽,這樣方便程序來進行判斷。”

    “比如地形是最重要的,那么在預加載的過程當中,就會先把地給加載進來,之后再是一些環境當中的重要元素,什么大石頭啊,懸崖,河流……

    就按照這個模式去做就行了。”

    “哦哦,懂了懂了。”赤西健和小池點頭如搗蒜。

    社長真是太可怕了。

    居然能想到這種方式。

    按照赤西健原來的設想,一個場景當中加載那么多的東西進來,起碼得有幾萬面了,這程序消耗怎么可能吃得消。

    但是青智源一說分層級加載,預加載,突然一下子就把幾萬面給干到了只有幾百面了,簡直可怕。

    這其實還有一個好處,就是可以模擬真實的人眼。

    人看東西,也是近處的圓形范圍內,越靠近焦點的越清楚,越遠離的就越模糊。

    lod做出來之后,其實也是這樣的一個效果。

    離得越遠,加載的模型就越粗糙,面數越少,自然就越模糊。

    不但不會因為面數減少而導致玩家們覺得不舒服。

    反而顯得更加真實。

    不過就像青智源說的那樣,你得將玩家的移動速度控制在一定的范圍內才行。

    不然的話,當你的移動速度超過了預加載的速度,那就很容易穿幫了。

    比如說旁邊這塊地板還沒加載出來,你就直接開著摩托車過去了,有可能一下子就陷入地板下面。

    這也是很多游戲當中常常存在的bug。

    但是實際上就是因為預加載沒能匹配上的問題導致的。

    ……

    “除此之外呢,程序那邊還需要做一件事情。”青智源說。

    “嗯?”赤西健疑惑地抬起頭來。

    “你們知道拓撲運算吧?”

    “知,知道吧……”赤西健有點猶豫。

    倒不是自己的程序水平不夠,主要是社長那副盛氣凌人的樣子,就好像是在課堂上面講課的老師一樣,突然提問學生,你一下子心里面多少會有點兒慌。

    “那就好辦了。”青智源說著,將一個粉筆盒放到了桌子上,然后再掏出一根粉筆來放到它的后面,只露出半截腦袋。

    “在3d領域當中,物體之間其實是有遮擋關系的。”

    “比如說,這根粉筆,有半截藏在后面,那么它從你們的視角來看,其實就只有一半可見。”
    第(1/3)頁

主站蜘蛛池模板: 桐庐县| 四子王旗| 永和县| 沂水县| 滦南县| 光泽县| 龙州县| 仁布县| 陇南市| 行唐县| 海丰县| 武鸣县| 定安县| 宜兴市| 如皋市| 林口县| 屏山县| 汉源县| 金坛市| 柳林县| 锡林浩特市| 阳西县| 临澧县| 玉门市| 砀山县| 同心县| 阿坝| 清原| 原阳县| 昌图县| 博罗县| 仁寿县| 佛山市| 桦南县| 云安县| 周至县| 乳山市| 教育| 临沭县| 改则县| 丹巴县|