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