您好 我看到有一些笔记本电脑支持3D。我知道他们每只眼睛都使用偏振。如何在C#中编写一个程序,在这样的系统中显示一个简单的3D对象?我不想在2D介质(透视图)中显示3D对象,而是显示类似于使用3D玻璃在3D电影中看到的3D对象。
非常感谢任何进一步研究的建议。
问候
答案 0 :(得分:3)
您需要做的是为每只眼睛显示一张两张图像。每个图像都是透视图,但是取自两个略微不同的视点 - 关于眼睛的距离。
通过偏振观察或更有可能LCD Shutter glasses时,您会看到3D物体的错觉。
在这种情况下,每只眼睛的视图交替显示在屏幕上,并且信号被发送到眼镜变得清晰或不透明,以便在每只眼睛中看到正确的图像。
对于被动系统,您必须为左眼和右眼图像使用两台投影仪,并确保它们完美对齐,以使图像正确重叠。如果你弄错了,你将无法获得非常好的3D效果。
在这两种情况下,您都需要创建模型的两个视图,并为显示的每个帧渲染每个视图。我曾经在这个领域工作过一段时间后写了a blog post,其中包括我们如何做立体声系统的概述。
答案 1 :(得分:0)
我认为您需要使用OpenGL或Direct3D直接编程。为了使屏幕显示实现3D效果所需的偏振视图,图形卡将需要知道它必须显示什么。有关一些想法,请参阅here。