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

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

【Minecraft】worldedit|generate洋蔥頂進階及上色辦法|包含data/type、atan2、min

2022-10-25 18:24 作者:MHols_  | 我要投稿

成品如下

//generate 35 G=min(sin(18*atan2(x,z)+20*(y+1)),sin(18*atan2(x,z)-20*(y+1)));data=(G>(-0.7))?4:13;i=sqrt(x^2+z^2);k=0.9;a=6.5;b=0.9;m=0.6;i<k*a^(-b*(y+m)^2)+0.02*G

之前在視頻里演示的不是很詳細,這次將其進行了改進

第一步就是先有個大致的輪廓,上個專欄也提過,視頻里也有演示,就先跳過這一步了

//generate 35 i=sqrt(x^2+z^2);k=0.9;a=6.5;b=0.9;m=0.6;i<k*a^(-b*(y+m)^2)

第二步就是在一邊加上sin或者cos(下面以sin為例,其實與cos的相位就差個pi/2),對原始形狀周期性地調(diào)整半徑的大小。

怎么加呢?這里先了解下atan2()這個函數(shù)

具體用法就是atan2(x,z)獲取該點對于x,z中心原點位置的極坐標角度,范圍是-pi~pi,一周是2pi

sin大家都熟悉,注意觀察其不同頻率在-pi~pi的形狀

sinx
sin(10*x)

那么如果用sin套上這個角度,sin(atan2(x,z)),以下用圓的半徑加上這一項演示

因為desmos網(wǎng)站沒找到atan2(),就先用arctan()代替,注意兩者并不一樣

理解了嗎?下面進入實戰(zhàn)

//generate 35 G=sin(18*atan2(x,z));i=sqrt(x^2+z^2);k=0.9;a=6.5;b=0.9;m=0.6;i<k*a^(-b*(y+m)^2)+0.05*G

關鍵是最后的+0.05*G,其中G=sin(18*atan2(x,z)),調(diào)整前面的系數(shù)可以控制隆起程度

如果上面的懂了,下面你可以選擇進行旋轉(zhuǎn),或者已經(jīng)足夠了就可以跳到下一步的上色

和上個專欄的旋風相似,只不過沒用到rotate(),而是在sin(18*atan2(x,z))括號里加個相位,在平面內(nèi)表現(xiàn)就是其圖像向左或向右移動,在sin(18*atan2(x,z))里就是旋轉(zhuǎn)了起來(為做交叉效果做準備)

這個相位一般取與y的值相關,sin(18*atan2(x,z)+10*(y+1)),和上個專欄的旋風思路一樣,每個y值對應的相位都不相同但是連續(xù)變化,就有從下到上的旋轉(zhuǎn)效果,旋轉(zhuǎn)的程度與前面的系數(shù)相關


//generate 35 G=sin(18*atan2(x,z)+10*(y+1));i=sqrt(x^2+z^2);k=0.9;a=6.5;b=0.9;m=0.6;i<k*a^(-b*(y+m)^2)+0.05*G

我們知道我的世界里的方塊有類型之分(type),每種類型不止一種方塊,同一類型有不同data(比如羊毛下的35:1,35:2...),上色要解決的問題就是在凸起和凹陷的部分用不同的方塊

worldedit給我們提供了data=()和type=()工具,括號內(nèi)返回的是數(shù)字


這里先以最簡單的來舉例講解,如果我們打出//generate 35 data=1 y>0,就會在y>0的位置,生成35類型下data=1的方塊,即35:1 橘色羊毛

//generate 35 data=1 y>0

好,下面我們想一下,sin有什么特點,如果我們把sin()>0的部分用一種方塊<0的用另一種方塊,是不是就分開了!我們再想一下,也不一定以0為分界線,也可以是-0.5、-0.8、0.5。

這里就出現(xiàn)了另一個問題,具體怎么實現(xiàn)呢?沒關系,worldedit也給準備了,如下


如果學過c語言的都知道,第一個是判斷條件,第二個是判斷為真執(zhí)行的語句,最后冒號后的是判斷為假執(zhí)行的語句。我們試一下data=sin(18*atan2(x,z)+10*(y+1))>-0.6?4:13

//generate 35 G=sin(18*atan2(x,z)+10*(y+1));data=(G>-0.6?4:13)i=sqrt(x^2+z^2);k=0.9;a=6.5;b=0.9;m=0.6;i<k*a^(-b*(y+m)^2)+0.05*G

下面就是最后一步了,如果前面的已經(jīng)足夠了,可以忽略這一步

這一步做的是交叉效果,辦法也很簡單,就是再加一個反方向的旋轉(zhuǎn)sin,然后用min(,)結(jié)合起來

這個應該不難理解吧先拿一個直觀的例子

//generate 35 data=(y>0?4:13) min(0.2*sin(10*x),0.2*sin(10*z))>y

套用在上一步的表達式內(nèi)就是

//generate 35 G=min(sin(18*atan2(x,z)+20*(y+1)),sin(18*atan2(x,z)-20*(y+1)));data=(G>(-0.7))?4:13;i=sqrt(x^2+z^2);k=0.9;a=6.5;b=0.9;m=0.6;i<k*a^(-b*(y+m)^2)+0.02*G

調(diào)整下系數(shù)以獲得不同效果


好了!恭喜你看了下來,希望能夠啟發(fā)你做出更多的效果

有什么問題或者想看什么其他效果可以留言


【Minecraft】worldedit|generate洋蔥頂進階及上色辦法|包含data/type、atan2、min的評論 (共 條)

分享到微博請遵守國家法律
道孚县| 阜宁县| 凭祥市| 卓尼县| 江都市| 巴林右旗| 樟树市| 黄梅县| 砀山县| 托克托县| 兴安盟| 永清县| 措勤县| 柘荣县| 康乐县| 那曲县| 万宁市| 甘孜| 从江县| 南投县| 夹江县| 汉寿县| 通化县| 荥阳市| 泊头市| 美姑县| 北安市| 嘉禾县| 鄂托克旗| 沁阳市| 东丽区| 吉林省| 铁力市| 灌阳县| 吐鲁番市| 邹城市| 武定县| 肥乡县| 哈尔滨市| 乳源| 南汇区|