“虚拟屏幕”在 3D 引擎中(在墙上显示 3D 世界的另一部分)
为了澄清我遇到的技术问题,我想描述一下我想到的场景:
在 3D 计算机模拟中,我想建造一种独立于大平面的小屋(立方体形式)。有 1 扇门可进入小屋。在这扇门旁边,我想在小屋的墙上播放正在播放的电影(avi 文件或其他内容)。 如果您进入机舱,我想在所有 4 个侧面显示一个基于外部投影视频输入的虚拟 3D 景观投影:视频中的每个像素将表示为一个立方体(rgb -> 高度宽度深度)。由此产生的立方体景观需要投影在小屋的内墙上。作为用户,您将无法走进这个投影(它是一个虚拟窗口,而不是门户)。
从技术上讲,对我来说这转化为以下问题:我想
在里面显示一部电影墙上的 3D 世界
访问该电影的像素数据
动态转换这些像素转化为立方体的 3D 表示
将这些立方体显示为游戏中墙上的虚拟投影。 (作为一种无法穿越的视觉传送)
我想知道哪种 3D 引擎可以实现这一点?我不介意任何编程语言。我精通 mono/.net 或 java,但我可以管理 c++ 或其他语言(只要引擎有详细记录)。
亲切的问候, 鲁本.
附: 我不知道其他人是否对这个问题感兴趣。至少不是以功能性的方式。但也许它会引发假设的兴趣:)
To clarify the technical problem i have, i want to describe the scene i have in mind:
In a 3D computer simulation, I want to build a kind of cabin (cube form) that stands isolated in a large plane. There's 1 door to enter the cabin. Next to this door I want to show a movie playing (avi file or something) on the wall of the cabin.
If you enter the cabin, on all 4 sides I want to show a virtual 3D landscape projection that is based on the input of the video projected outside: every pixel in the video will be represented as a cube (rgb -> height width depth). The resulting landscape of cubes needs to be projected on the inside walls of the cabin. And as a user, you will not be able to walk into this projection (it's a virtual window, not a portal).
Technically, for me this translates into these questions: i want to
display a movie inside the 3D world on a wall
access the pixel data of this movie
transform on the fly these pixels into 3D representation of cubes
show these cubes as a virtual projection on a wall in the game. (as a kind of visual teleport that you can't cross)
I was wondering which 3d engine would allow this? I don't mind any programming language. I'm fluent in mono/.net or java, but i can manage c++ or other languages (as long as the engine is well documented).
Kind Regards,
Ruben.
ps:
I don't know if this question is of interest to anybody else. At least not in the functional kind of way. But maybe it triggers a hypothetical interest :)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
任何支持动态纹理贴图和多个视口(渲染表面)的引擎。
许多引擎都支持此功能。虚幻竞技场引擎 (UT2004) 支持这一点,所携带的狙击瞄准镜(例如《杀戮空间》)上的动态纹理就证明了这一点。 《半条命 2》中的安全摄像头屏幕也可以做到这一点(源引擎)。
Any engine that supports dynamic texture maps and multiple viewports (rendering surfaces).
Many engines support this. The Unreal Tournament Engine (UT2004) supports this, as evidenced by the dynamic texture on carried sniper scopes (example, Killing Floor). Security camera screens in Half-life 2 do this as well (source engine).