Open monguri opened 4 years ago
こちらの本にお世話になっております。ありがとうございます。
件名の件について報告させてください。 Chapter7から11くらいまで、BasicVertexShader.hlslでoutput.rayの計算をしています。 これはBasicPixelShader.hlslでの使われ方を考えるとワールド座標でのベクトルになっていてほしいのではないかと考えております。
ただ、たとえばChapter8ですと、 output.ray = normalize(pos.xyz - mul(view,eye));//視線ベクトル のようになっており、pos.xyzはワールド座標系、mul(view,eye)はビュー座標系での視点位置になっています。 https://github.com/boxerprogrammer/directx12_samples/blob/master/Chapter8/BasicVertexShader.hlsl このコードはChapterによってばらつきがあります。
私としては output.ray = normalize(pos.xyz - eye);//視線ベクトル でよいのではないかと考えています。 こちらの方が、カメラの方向を変えた時に、スペキュラハイライトの出方が自然な感じがしました。
もし私の理解の間違いだったり意図的にこうされているということでしたらすみません。
こちらの本にお世話になっております。ありがとうございます。
件名の件について報告させてください。 Chapter7から11くらいまで、BasicVertexShader.hlslでoutput.rayの計算をしています。 これはBasicPixelShader.hlslでの使われ方を考えるとワールド座標でのベクトルになっていてほしいのではないかと考えております。
ただ、たとえばChapter8ですと、 output.ray = normalize(pos.xyz - mul(view,eye));//視線ベクトル のようになっており、pos.xyzはワールド座標系、mul(view,eye)はビュー座標系での視点位置になっています。 https://github.com/boxerprogrammer/directx12_samples/blob/master/Chapter8/BasicVertexShader.hlsl このコードはChapterによってばらつきがあります。
私としては output.ray = normalize(pos.xyz - eye);//視線ベクトル でよいのではないかと考えています。 こちらの方が、カメラの方向を変えた時に、スペキュラハイライトの出方が自然な感じがしました。
もし私の理解の間違いだったり意図的にこうされているということでしたらすみません。