void Update() { //引数をセット shader.SetFloat("t", 0.03f * cnt); shader.Dispatch(kernel_GenerateSpectrumKernel, 1, 256, 1); //d_h0からd_htを計算 fFT.FFT2D_256_Dispatch(d_ht, d_ht_dmy); //d_htから高さデータを計算 cnt++; }
void Update() { //引数tをセット shaderGenerateSpectrum.SetFloat("t", 0.03f * cnt); shaderGenerateSpectrum.Dispatch(kernel_GenerateSpectrumKernel, 1, 256, 1); //d_h0からd_htを計算 fFT.FFT2D_256_Dispatch(d_ht, d_ht_dmy); //d_htから高さデータを計算 //続いて差分から法線を計算しテクスチャに書き込み shaderSetNormal.Dispatch(kernel_Center_difference, 1, 256, 1); cnt++; //このあとレンダリング }
void CalcFFT_ht() { fFT.FFT2D_256_Dispatch(d_ht, d_ht_dmy);//d_htから高さデータを計算 }