2/10

日記

2026/02/10

Three.js

小数点乗

y = xの0.2乗とかはどういう表になるか覚えておこう。

2乗を裏返したような表になる。

y=f(x)を描くglsl

float plot(vec2 st, float pct){
 return smoothstep( pct-0.01, pct, st.y) - smoothstep( pct, pct+0.01, st.y);
}

void main() {
 float y = exp(st.x) - 1.0;
 float pct = plot(st, y);
}

stはuvなので0~1。pctはpercentの略。

exp(st.x) - 1.0

exp(st.x)は eをst.x乗した値。st.xが0の時高さが0になるよう、-1.0している。

log(st.x)

logを忘れていた。

対数=log底(真数);
底を対数乗すれば真数になるよということ。
log(st.x)と、底を省略すると底はeとなる。

log(st.x)は
st.x = 1の時、0。(当然)