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

[Java3Djp:00853] Java3Dの解説



◆◆ 有限会社萌黄の便り(もえぎのたより)◆◆◆◆◆◆◆◆◆◆◆◆◆
<やくぜん食品のご案内> 
高齢社会を迎え、健やかに老を生きるため免疫力を高め、病気をしない身体
づくりのための漢方配合の商品です。 
是非一度ご賞味下さい。 http://www.matsuronet.ne.jp/moegi/
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆


Numakuraです。

えんどうさん、

http://www.javaopen.org/j3dbook/text/program.html
http://www.javaopen.org/j3dbook/text/program2.html
http://www.javaopen.org/j3dbook/text/program3.html
http://www.javaopen.org/j3dbook/text/program4.html

を読ませていただきました。Java3Dに関するえんどうさん
の熱意を感じさせるページですね。でも、ちょっと意見を
いわせてください(上記のhtmlを1,2,3,4として参照し、その
中に書かれている箇所は>マークで引用します)。

1.
>回転方向は反時計廻りが正方向のようです。
これは?です。右ねじの法則って聞いたことありますよね?
回転は、軸のプラスの方向に向かって時計回りが正方向じゃ
ないですか?これは、頂点を指定する順序とその法線ベク
トルとの関係と同じで、右ねじで説明するとわかりやすい
ように思います。

>移動はTransform3Dのset()メソッドを使用します。
ん〜、setTranslation()メソッドを使うべきではないですか?

#というより、setなんてメソッド名つけるかなあ。Java@xxxxxxxxxxかけだし
#なんではずしているかもしれませんが、このメソッドを使ったら
#ソースがよみにくいことしきりだと思う。私なら、setMatrix()
#とし、パラメータはMatrix4dおよびMatrix4f。

2.
>視点から見て反時計回り(左回り)になる順序にしています。
面には裏と表があることと、頂点の指定順序と上記の右ねじで説明
したほうがよいように思います。

3.
>Java 3D API Specification では、shininess が 1.0 のときが最も
>輝度が低く、128.0 のとき最も輝度が高い、と書いてあります。
ん?そうは書いていないような... プラスティックなどには光沢があ
りますが、これを表現するのがSpecularとShininessです。計算は
頂点から視点へのベクトル、光源へのベクトル、法線ベクトルで求め
られる値(これは1.0以下です)をShininess乗して、Specularの各
成分を乗じます。したがって、Shininessを大きくするとするどい光沢
(というかしぼられた光沢というか)が表現できます。
#照光の数学を覚えると、MaterialとLightの設定がわかります。
#リクエストがあればこのMLに書いてもいいです。

_/_/_/     E-mail:numakura@aie-res.co.jp    _/_/_/