我有两个光源,三个球体和两个三角形。球体放置在两个三角形上。 我alrady确实intersectSphere和computeColorSphere函数。 我以某种方式开始实现intersectTriangle和computeColorTriangle函数。 它应该与Sphere功能有什么不同? 以及如何在三角形平面上实现球体的阴影? http://i60.tinypic.com/a3zg2w.jpg射线追踪球体三角形阴影
回答
计算投射阴影如下完成:当您用光线照射表面并在其中应用光照模型时,您添加所有光源的贡献(就像您一样);但是您需要通过将来自点的二次射线投射到源头来检查光源是否没有障碍。如果您发现障碍,请忽略此来源的贡献。
非常类似地,您可以通过在反射方向(入射角=反射角)上投射次级光线并观察是否碰到另一个表面来实现反射。
我生成射线到所有像素的函数:Ray generateRay(摄像机凸轮,int i,int j)..我如何创建从这些像素到光源的辅助光线? – cmnl
您必须重写光线投射功能以使其更通用,并允许从任何点和任何方向进行工作,而不仅仅是从原点到像素。这只是一个稍微不同的计算射线方程的问题。 –
@ user2932645完成后请更新图片;-) –
- 1. 我怎样才能把阴影射线追踪球体
- 2. 射线追踪阴影/底纹伪影
- 3. 带球体的射线追踪
- 4. 铯元(三角形)阴影
- 5. 三角形div css阴影
- 6. 射线追踪三角形网格对象
- 7. 光线追踪阴影错误
- 8. CSS三角形和箱阴影
- 9. 将阴影应用于三角形svg
- 10. 下载CSS三角形阴影
- 11. 奇怪的阴影立方体光线追踪
- 12. 光线追踪球形纹理
- 13. 射线追踪GLSL - 移动位置时的球体拉伸
- 14. 路径追踪射线三角交叉点
- 15. 光线追踪三角形(方向和着色)的问题
- 16. 射线追踪 - 反射
- 17. 如何将阴影投射到球体内的物体
- 18. 多线程射线追踪
- 19. 如何给一个尖角的三角形下拉阴影?
- 20. 光线追踪:来自多个灯光的阴影
- 21. 光线追踪3D到2D中的柔和阴影
- 22. 体素锥追踪定向光软阴影
- 23. 射线追踪旋转
- 24. 射线追踪照明
- 25. 射线追踪 - 混色
- 26. 射线跟踪器阴影中的工件和错误代码
- 27. 箱子阴影转为使用css创建的三角形
- 28. 三角形周围的CSS盒子阴影
- 29. 阴影三角形上的颜色错误
- 30. 边框顶部的阴影和三角形向下在css
“它应该和球体功能有什么不同?”:相当神秘的问题。 –