++
距離で補正を掛けたい場合などはpos.wにz値が入ってるのでこれを使用すればよい。
++乱数を使った表示がばぐる
これは乱数で値を出し、0.5以下なら以上なら1を表示している。
画像では一部01両方が表示されてしまってるのが確認できる。
乱数のシード値に使ってる浮動小数点の丸目誤差の問題だったようで、小数点下3桁を切り捨てたら解決
seed = trunc(seed*1000)/1000;
++メッシュの中心のワールド座標を乱数に使う場合
このように表示がバグる場合があった。
理屈は分からないが
float3 wpos = trunc(i.wpos*1000+0.1);
と処理をしてから使うことで解決。(0.1がないとwposが整数値のときにバグる)
=>駄目なときもある。適当に小数値を掛けたり足したりすれば回避出来た。
++unrollを書け、とコンパイラが言ってくるから書いたのにエラーを吐いてくる場合
for(int i =0;i<_Num;i++){}
=>
for(int i=0;i<(_Numの最大値);i++{
if(i>=_Num) break;
...
}