我试图创建一个高级raycaster。我如何编写一个基于3分创建两个grids (image here)的函数?我希望输出是两个数组,填充图像中显示的每个交集的{x:0,y:0,z:0}对象。希望这并不难理解。我想要的原因是我可以从屏幕上的每个像素投射光线。
答案 0 :(得分:0)
设矢量c = CB,矢量a = AB。您可以将平面的第二个基矢量作为
d = c X a (cross product)
获取单位基础向量
ua = Normalized(a) = a / Length(a)
ud = Normalized(d)
并构建网格(单元格大小为ASize x DSize)指向
P[i,j] = B + ua * i * ASize + ud * j * DSize
for the first plane
Q[i,j] = C + ua * i * ASize + ud * j * DSize
for the second plane