首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在极坐标中寻找反射区域

在极坐标中寻找反射区域
EN

Stack Overflow用户
提问于 2014-12-04 12:54:14
回答 1查看 832关注 0票数 0

假设我们正在为宜家目录渲染一个图像,其中包括一个光滑的镜面的马克杯。

马克杯将由带有窗户、平行光和环境组件的房间内部的环境贴图照明。

使用φ和θ在球面坐标中表示环境贴图(例如,点(1,0,0)为(φ=90◦,θ= 90◦);点(-1,0,0)为(φ=90◦,θ=−90◦))。相机定位在(0,0,20),观察方向为(0,0,-1),向上方向为(0,1,0)。马克杯以坐标原点为中心,高度为10,半径为5。马克杯的轴与y轴对齐。整个马克杯都可以在图像中捕捉到。

想要一张漂亮的产品照片,我们想看看玻璃杯侧面的倒影。窗口可以放置在环境贴图中的什么位置,它将反映在圆柱形马克杯的侧面?计算区域的角落以及将在杯子中反映的最高和最低φ和θ的(φ,θ)坐标。

我该如何解决这个问题?有没有我应该利用的特定方程式?提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-12-05 02:35:52

您可以通过将光线从查看器投射到马克杯并将其反射到地图来解决此问题。例如,在马克杯上所需反射的四边形的每个角落都有一条射线。

反射很简单地由反射定律计算:表面的法线是入射光线和反射光线的二等分线。

首先计算从观察者到所选角之一的入射光线。然后计算该点的法线(它垂直于马克杯的旋转轴,在半径方向上)。从入射矢量和法线中,您将找到反射矢量的方向。

将此向量旋转到球面坐标将在环境贴图中显示四边形的一角。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27286539

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档