2009.3.18

LilyEightでマッピング(付属チュートリアルより)

絵(テクスチャ)を貼る

注: あらかじめ、uvmap.bmpをペイント ソフトで開いて見ておくと分かりやすいです。以下のuvmap.pngはフルカラーですが、LilyEightのマップ(テクスチャ)イメージは、256色にしか対応していません。 ペイントツールで減色して、アプリBを使って確認Renderするときには、256色イメージを使用します。

  1. アプリAでModelメニューからSphereを選んで、球を作ります。 名前は何でもいいです。
  2. ほかにも作るので、Mキ−を押したあと、ドラッグして右上に動かします。
  3. ModelメニューからCubeを選んで、立方体を作ります。 これも名前は何でもいいです。
  4. Mキ−を押した後、ドラッグして左上に動かします。
  5. ModelメニューからGeneral Polygonを選んで、ポリゴンを 作ります。これも名前は何でもいいです。
  6. Mキ−を押した後、ドラッグして右下に動かします。
  7. アプリAで左右が閉じたパラメトリック曲面を作ります。
  8. Mキ−を押した後、ドラッグして左下に動かします。
    これで4つのオブジェクトができました。順に絵(テクスチャ)を貼っていきましょう。
    maptest.RI2
  9. Aキーを押した後、右上の球をクリックして選択します。
  10. ModelメニューからTexture Mapを選びます。
    ピクチャーの名前と性質を入力するためのダイアログボックスが表示され ます。picturenameとして、uvmap.bmpをタイプします。他の項目はそのままで、
  11. OKボタンをクリックします。
  12. 上の3ステップを他の3つのオブジェクトにも繰り返します。
  13. モデルをセーブして、アプリBでレンダリングし、ペイントブラシで開い てみます。


    絵(テクスチャ)が貼られた曲面が表示されます。でも、立方体とポリゴンはうまく貼られて いませんね。これはポリゴンの標準マップにはxy座標が使われるため、 移動した後で貼ると座標がずれているためです。これを合わせる簡単な方法は st座標を付けることです。それではやってみましょう。
  14. ModelメニューからGeneral Polygonを選んで、ポリゴンを 作ります。このポリゴンは一時的に使うだけです。名前は何でもいいですが、 aaaのような短いのがいいでしょう。
  15. Ctrlキーを押しながらFキーを押して正面から見るようにします。
  16. 最後に作ったポリゴンが選択されていることを確認して、Mキーを押した後、 ドラッグして立方体と重ねます。
  17. Aキーを押した後、立方体をクリックして選択します。
  18. ModelメニューからAdd WstW to Polygonsを選び、 ダイアログボックスに先程のポリゴンの名前(aaaなど)をタイプします。
  19. OKをクリックして、ダイアログを終了します。
  20. Aキーを押した後、最後に作ったポリゴンをクリックして選択します。
  21. Mキーを押した後、ドラッグして先に作ったポリゴンと重ねます。
  22. Aキーを押した後、先に作ったポリゴンをクリックして選択します。
  23. ModelメニューからAdd WstW to Polygonsを選び、 ダイアログボックスに先程のポリゴンの名前(aaaなど)をタイプします。
  24. OKをクリックして、ダイアログを終了します。
    これでもう、最後に作ったポリゴンは用済みです。
  25. Aキーを押した後、最後に作ったポリゴンをクリックして選択します。
  26. Ctrlキーを押しながらXキーを押して最後に作ったポリゴンを削除します。
  27. モデルをセーブして、アプリBでレンダリングし、ペイントブラシで開いてみます。


    絵(テクスチャ)が貼られた曲面が表示されます。立方体とポリゴンにもそれなりに貼られて いますね。

実際に自分で貼る絵(テクスチャ)を作るには、

■AIRでレンダリングしてみる

各Attributeにマッピングのサーフェイスを加えてみましたが、長くなりすぎです。
Air SpaceでRIBを読み込んで調整するのも良いです。

Surface "VDecal3D"
"float Diffuse" [0.5]
"float DiffuseRoughness" [0]
"float Specular" [0.5]
"float SpecularRoughness" [0.1]
"float SpecularSharpness" [0]
"float Incandescence" [0]
"float Reflection" [0.9]
"float ReflectionSamples" [1]
"float ReflectionBlur" [0]
"string ReflectionName" ["raytrace"]
"string ReflectionSpace" ["current"]
"string ColorMapName" ["uvmap.png"]
"float ColorMapBlur" [0]
"string SpecularMapName" [""]
"float SpecularMapBlur" [0]
"string OpacityMapName" [""]
"float OpacityMapBlur" [0]
"float BumpMax" [0]
"string BumpMapName" [""]
"float BumpMapBlur" [0]
"float[2] TextureSizeXY" [1 1]
"float[2] TextureOriginXY" [0 0]
"float TextureAngle" [0]
"string Projection" ["st"]
"string ProjectionSpace" ["shader"]
"float[16] ProjectionTransform" [1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1]
"string TopDecalName" [""]
"string TopDecalSpace" ["world"]
"float[16] TopDecalTransform" [1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1]
"float TopDecalFrontOnly" [0]
"string SecondDecalName" [""]
"string SecondDecalSpace" ["world"]
"float[16] SecondDecalTransform" [1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1]
"float SecondDecalFrontOnly" [0]
"string ThirdDecalName" [""]
"string ThirdDecalSpace" ["world"]
"float[16] ThirdDecalTransform" [1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1]
"float ThirdDecalFrontOnly" [0]

map05.rib

戻る