0

線を表す2つのポイントがあります。問題は、正投影行列(150x250x0)の1つの座標と、遠近法行列(0.5x0.5x20.0f)の2番目の座標を知っていることです。glslシェーダーを使用して線を描画できるように、正投影座標を遠近法に変換したいと思います:)。このタスクを実行する方法は?

4

1 に答える 1

0

頂点の1つを他の行列空間に移動する必要があります。たとえば、150x250x0を正投影から遠近法の空間に移動してみましょう。これを行うには、逆正投影マトリックスによって頂点を変換する必要があります。使用している数学ライブラリがわかりません。行列反転の関数がすでに含まれている可能性があります。それ以外の場合は、次のリンクのコードを使用してください:http: //www.gamedev.net/topic/180189-matrix-inverse/。このステップの後、頂点はワールドスペースにあります。

PS:行列の反転は、計算にかなりの時間がかかります。変形ステップ(平行移動、回転、スケール)を追跡できる場合は、これらのステップを個別に反転し、その後でマトリックスを作成する方が簡単です。

于 2012-06-05T06:20:09.393 に答える