wysxmu |
2018-03-30 10:22 |
自定义表面标准面源代码问题us_stand.c
研究了一下代码中实际光线追迹部分: |iLf;8_: a = (UD->n) * (UD->n) * FD->k + 1; E# UAC2Q b = ((UD->n)/FD->cv) - (UD->x) * (UD->l) - (UD->y) * (UD->m); 8`GN8F c = (UD->x) * (UD->x) + (UD->y) * (UD->y); OB5t+_s rad = b * b - a * c; :5,
k64'D if (rad < 0) return(FD->surf); /* ray missed this surface */ P'<D0 if (FD->cv > 0) t = c / (b + sqrt(rad)); o_@6R"| else t = c / (b - sqrt(rad)); `vc?*" > %B7/l$ Y4j%K~lsY 与自己推导的有差异,图中公式的红色部分,有没有人帮我看看啊,其实知道肯定是我的问题,就是搞不清在哪里 I/`\>Hk [attachment=82787] N*NGC!p`N oH>G3n|U^ g3Z"ri~!G
|
|