public void getTextureSpec(TextureSpec spec, double x, double y, double z, double xsize, double ysize, double zsize, double t, float param[]) { if (x-Math.floor(x) < width) spec.diffuse.copy(color1); else spec.diffuse.copy(color2); spec.specular.setRGB(0.0f, 0.0f, 0.0f); spec.transparent.setRGB(0.0f, 0.0f, 0.0f); spec.emissive.setRGB(0.0f, 0.0f, 0.0f); spec.bumpGrad.set(0.0, 0.0, 0.0); spec.roughness = spec.cloudiness = 0.0; }このメソッドで参照されるさまざまなパラメータは、以下のコンストラクタで設定されます。
public Stripes1() { color1 = new RGBColor(1.0f, 0.0f, 0.0f); color2 = new RGBColor(1.0f, 1.0f, 1.0f); width = 0.5f; }ご覧のように非常に単純なテクスチャです。これは X 要素の分数部分だけを見て、それに従って2つの拡散反射色のうち1つに設定します。
このテクスチャを Art of Illusion で使うには、シーンメニューから「テクスチャ,材質...」コマンドを選択して「新規...」をクリックします。Plugins ディレクトリに TutorialTexture.jar を既に入れてあれば、テクスチャのタイプの選択肢として "Stripes 1" がリストに表示されているはずです。それを選択してテクスチャ名を入力、そして "OK" をクリックします。ほかのテクスチャの場合と同じように、このテクスチャをオブジェクトに割り当てることができます。
テクスチャは以下の図のようになります。
約束どおりの、赤と白のストライプです!