[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Java3Djp:01336] [Q]グラデーションの内部計算



━◇一行広告◇━スーパーロト,百又のゴルフ場,阪神大震災5周年記念事業━◇

☆カリフォルニア州宝くじで一攫千金 http://www.dns-ml.co.jp/id.idc?id=462
◎お得な情報満載!ゴルフ,温泉,ボウリング http://www.hyakumata.co.jp
= ◆神戸の起業家が集結!http://www.hero.or.jp/hero/new/frame-5next.html

━━◇━━ インフォキャスト ━◇━ 【 役立つ情報がいっぱい!】━━◇━━

増井@xxxxxxxxxx日本総研です。

java3Dで各点で異なる色情報(RGB)をもたせてポリゴンを描画すると
 例)setShadeModel(ColoringAttributes.SHADE_GOURAUD)
   TriangleFanArray(pt.length, GeometryArray.COORDINATES |
GeometryArray.NORMALS, vcnt)
グラデーションのかかったポリゴンとなりますが、
java3Dの内部でグラデーションの色はどのように計算されているのでしょうか?

たとえば、各頂点はRGBであたえられるが、各頂点間(面)は以下のように計算され
るのでしょうか?
1)そのままRGB 色空間で線形補間
2)内部で各頂点をHSVに変換して、HSV 色空間で線形補間
3)???

色々調べてみたのですが、
APIのマニュアルに
SHADE_GOURAUD (defaults) Smoothly interpolate the color at each vertex
across the primitive.
とかいてあるだけでよくわかりません。

VRML(http://tech.webcity.ne.jp/~andoh/vrml/vrml2.0/spec-jp/part1/1)
では上記2)?のようですが。

なぜ、しりたいかといいますと
もし上記1)だと、色情報により不自然なグラデーションになる可能性がある?ため、
なにか修正が必要になると思ったからです。
上記2)だと問題ないとおもうのですが。

           御教授お願いします。
  


                  株式会社日本総合研究所  増井 郁久