首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WPF 3D广告牌

WPF 3D广告牌
EN

Stack Overflow用户
提问于 2009-11-09 02:04:53
回答 1查看 1.3K关注 0票数 2

在3D场景中,我们通常需要在场景中四处移动(旋转、平移)的3D对象旁边贴上标签(小文本元素或图标)。这些标签应始终面向相机,但仍可随对象移动。我相信这种技术被称为广告牌。

另外一个很酷的特性是,无论关联的对象距离有多远,标签都将始终保持相同的大小。因此,标签似乎生活在2D屏幕空间中,而不是3D场景图中。

有没有人能想出一个聪明的办法在WPF中做到这一点?

EN

回答 1

Stack Overflow用户

发布于 2009-11-09 02:18:57

对于广告牌,您需要确保面法线指向相机。算法是面法线和观察方向之间的点积应该是-1 (负1)。

我有一些旧的C代码可以做到这一点,但它可能不是特别有用。

为了保持对象的大小不变,您需要计算出屏幕大小,然后应用转换以使其保持所需的恒定大小。

但是,如果希望对象看起来就像在二维空间中一样,为什么不在二维覆盖中绘制它呢?这将同时解决广告牌和伸缩问题。您可以计算出标签的屏幕位置,然后使用2D绘图功能。

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

https://stackoverflow.com/questions/1697373

复制
相关文章

相似问题

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