wysxmu |
2018-03-30 10:22 |
自定义表面标准面源代码问题us_stand.c
研究了一下代码中实际光线追迹部分: <niHJ* a = (UD->n) * (UD->n) * FD->k + 1; eJ7A.O b = ((UD->n)/FD->cv) - (UD->x) * (UD->l) - (UD->y) * (UD->m); /!7m@P|&D c = (UD->x) * (UD->x) + (UD->y) * (UD->y); W.0dGUi* rad = b * b - a * c; {u9VHAXCf if (rad < 0) return(FD->surf); /* ray missed this surface */ f}XUxIQ-< if (FD->cv > 0) t = c / (b + sqrt(rad)); ,F:l?dfB\I else t = c / (b - sqrt(rad)); rJ!xzge;G T(3"bS., S'TF7u 与自己推导的有差异,图中公式的红色部分,有没有人帮我看看啊,其实知道肯定是我的问题,就是搞不清在哪里
]9A9q<lZ [attachment=82787] 5F
<zW-; 7b'XQ/rs v?d~H`L
|
|