视锥体裁剪射线的算法

射线Ray(直线情况)需要满足的条件:

  1. 在视野中显示的粗细均匀,需要分段绘制,每段的粗细根据到视野的距离计算
  2. 射线model的顶点尽量少以节省性能损耗

要满足条件2的话需要对射线进行裁剪,只绘制射线在视锥体内的部分,因此需要计算射线被视锥体裁剪后新的起点和终点

1. 计算三角形面积

float triangleArea(const float3& pa,const float3& pb,const float3& pc)
{
   
    float a = 

你可能感兴趣的:(渲染与数学,算法,网络)