最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

godot 隨機(jī)地圖4 使用 cellular 創(chuàng)建基礎(chǔ)地圖

2023-05-21 15:30 作者:damedown  | 我要投稿

我們先看cellular能夠創(chuàng)建那些procedure texture吧

voro noise

techno

這些都是根據(jù)cellular生成的。



一、voronoise

簡單介紹下cellular的生成原理

生成核心點,判斷uv離哪個基點最近,然后填充那個基點的顏色。

如果這樣的話,就會全部遍歷一次。

為了減少運算量,被優(yōu)化成網(wǎng)格的方式

這樣只需要判斷所在3*3的網(wǎng)格里面,一個uv只需要判斷9次,沒錯是9次。當(dāng)然還可以繼續(xù)優(yōu)化,但是相比uv*n*n次縮減到uv*3*3次已經(jīng)是指數(shù)級減少,如果還需要更騷的化,也是可以的,我們的目的不是把300fps的算法提高到1000fps。

我們拿到了uv最靠近的頂點的坐標(biāo)和距離就可以實現(xiàn)很多騷操作了。

可以直接去看我shadertoy寫過的

https://www.shadertoy.com/view/ftdczX

這里效率低下一點也沒啥關(guān)系,2k也能跑。

現(xiàn)在已經(jīng)8成正確了,不需要追求10分。


直接移植過去,現(xiàn)在之所以不用FNL,是為了熟練一點。還有一個很重要的就是voroniose和techno只相差1行代碼,如果要騷操作地圖生成,還是得自己玩弄noisetexture比較好。

簡單修改,根據(jù)錯誤提示修改就好了

1、其中UV為const 不能*= ,我也難得在添加一個變量,直接*=10.0f

2、vec2(i,j)是非法的,因為i和j是int,強(qiáng)制轉(zhuǎn)化一下

3、iTime改為TIME

4、fragColor 改為COLOR

這個流動的細(xì)胞體,如果去掉

就會得到網(wǎng)絡(luò)

所以這里的TIME我們最好手動控制,也就是說控制網(wǎng)絡(luò)點的offset,就可以控制離散度。這里FNL可不會給我們提供參數(shù)。不過FNL也確實方便。

如果我們要控制offset

二、techno Manhattan distance

如圖

還有一些騷操作

簡單修改

當(dāng)然fnl已經(jīng)有了

我們可以魔改的地方非常多。


比如我們使用wood texture的算法

魔改成Turbulence

使用Euclidean distance歐幾里得距離計算法

再翻轉(zhuǎn)


三、轉(zhuǎn)成map

只需要把texture_sprite的material改了

因為我們使用翻轉(zhuǎn)后會有很多聚集在0.5附加,然而越是結(jié)晶1.0,月白,我這時候選擇0.0~0.3的數(shù)據(jù)就會得到一下鏤空的效果。

其他的操作我們在下一章繼續(xù)。

godot 隨機(jī)地圖4 使用 cellular 創(chuàng)建基礎(chǔ)地圖的評論 (共 條)

分享到微博請遵守國家法律
衡南县| 福鼎市| 旺苍县| 微山县| 临邑县| 砀山县| 闸北区| 女性| 双流县| 寿光市| 土默特左旗| 桓台县| 崇阳县| 交城县| 仲巴县| 鹰潭市| 澎湖县| 远安县| 搜索| 枣阳市| 衡水市| 文昌市| 望奎县| 八宿县| 珲春市| 柳江县| 罗城| 盐源县| 濉溪县| 九寨沟县| 鸡西市| 卫辉市| 永德县| 宁夏| 额敏县| 福州市| 红安县| 将乐县| 仙桃市| 黄山市| 婺源县|