2

私は過去数週間、私が達成するのに役立つアルゴリズムを見つけようとして頭を悩ませてきましたVector3's. したがって、この 1 つのオブジェクトを 5 つの立方体 (2 つの側面、1 つの上部、1 つの下部、1 つの背面) から作成しました (そして、おそらく前面の立方体があるでしょう)。今、私はそれを作りたいので、Scale(2,1,1);オブジェクト全体をX軸で言うと、上部下部の立方体だけがスケーリングされます。また、サイドキューブは位置のみを変更する必要があります (したがって、X寸法はまったく同じままです)。問題は背中側。裏側を完全に覆うわけではないので、Scale(2,1,1);そうすると、両側にこの隙間ができてしまい、これは望ましくありません。同じ原則がすべての軸に当てはまるはずです。Yの場合はScale();、サイド キューブを移動し、上部と下部のキューブのみを移動し、裏側にこの異なるスケールを適用します。Z軸については、側面上部、および下部Scale();の立方体の両方を動かし、背面の立方体のみを移動します。

オブジェクトの例の画像を次に示します。

オブジェクトの背面:

http://img33.imageshack.us/img33/3125/backyd.png

オブジェクトの側面:

http://img801.imageshack.us/img801/6796/fromtheside.png

オブジェクトの前面:

http://img688.imageshack.us/img688/281/frontxh.png

お役に立てれば幸いです。


編集: 申し訳ありませんが、私Scale();がオブジェクトの場合、X軸で言ってみましょう。前に言ったように、上部下部の立方体Scale();だけが必要です。次に、側面の立方体について、前と同じように配置されるように移動します。この場合は、上部下部の立方体の両端にあります。

4

1 に答える 1

0

配列全体の親行列を持ち、それをスケーリングするだけでよいでしょうか? それとも、壁の厚さを維持することを心配していますか?

于 2013-01-03T05:15:40.650 に答える