質問編集履歴

2 修正

seri

seri score 386

2017/03/09 09:11  投稿

GLSLで変動する配列を使う
配列 int[][] Hoge があるとします。
パーティクルが沢山あるとして、1つ1つのパーティクルは一定の速度で移動するとします
これらのパーティクルのうち、
x位置が0~10を1
10~20を2
20~30のものを3
といったインデックスを付けてたいとします。
そこで先ほど定義しました int[][] Hogeに
x位置0~10のパーティクルには Hoge[1][0]=indexNomber;
x位置10~20のパーティクルには Hoge[2][0]=indexNomber;  
またx位置0~10のパーティクルがあった場合には Hoge[1][1]=indexNomber;  
といったように頂点番号を入れて上げます。
しかしこのままでは、もしパーティクルが抜け出た場合は配列のサイズを変更しなくてはいけません、こういった変動する配列をシェーダ側で管理する良い方法はないでしょうか?
しかしこのままでは、パーティクルが指定のx位置に入って来たり、パーティクルが抜け出た場合には配列のサイズを変更しなくてはいけません、こういった変動する配列をシェーダ側で管理する良い方法はないでしょうか?
  • GLSL

    55 questions

    GLSL (OpenGL Shading Language) はC言語をベースとしたシェーディング言語です。

1 修正

seri

seri score 386

2017/03/09 09:09  投稿

GLSLで変動する配列を使う
GLSLで配列を定義する場合 int[] Hoge ですがこれを int[][] Hoge としたいです。
例えとして、
配列 int[][] Hoge があるとします。
パーティクルが沢山あるとして、1つ1つのパーティクルは一定の速度で移動するとします
これらのパーティクルのうち、
x位置が0~10を1
10~20を2
20~30のものを3
といったインデックスを付けてたいとします。
そこで先ほど定義しました int[][] Hogeに
x位置0~10のパーティクルには Hoge[1][0]=indexNomber;
といったように頂点番号を入れて上げます。
しかしこのままでは、もしパーティクルが抜け出た場合は配列のサイズを変更しなくてはいけません、こういった変動する配列をシェーダ側で管理する良い方法はないでしょうか?
  • GLSL

    55 questions

    GLSL (OpenGL Shading Language) はC言語をベースとしたシェーディング言語です。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る