1. 首页
  2. three.js

three.js在生成的RT纹理及其父场景之间匹配透视图

大家好,n我是新来的three.js但到目前为止,我绝对喜欢它!n现在,我正试图达到某种让我头疼的效果,如果有人能给我指出正确的方向,我会很高兴的!n这是我几天前发布的StackOverflow问题2的后续内容。正如你所看到的,我正在尝试一种“世界之窗”的效果,其中一个场景的一个对象是另一个场景的遮罩。n这是一个代码笔4,我已经尝试过了。我正在使用RenderTarget生成下一个场景的纹理,并将其应用于当前场景中应该是遮罩的对象。我使用同一台相机,因为我希望两个场景的透视图和大小相匹配。但是一旦生成的纹理应用于网格,那么…它们显然不会。有没有办法使生成的纹理与全局场景匹配,或者我应该忘记使用单个摄影机吗?我曾考虑过使用多个摄像头,但后来我不得不以某种方式对抗它们各自的视角以避免失真,我不得不承认我不知道如何做到这一点。n或者使用RenderTarget不是正确的方法,还有更简单的方法吗?n我完全不知道如何实现这一效果,任何指导都将不胜感激!n谢谢!n好吧,我真的弄明白了!n我最终使用了EffectComposer()和嵌套的RenderPass()和MaskPass(),以便通过一个摄像头获得想要的效果!我不确定当我增加场景的复杂性时,它将如何保持性能,但这是一个开始!n事实上,我开始了解EffectComposer及其魔力。n欢迎来到我们的社区!n这是一个激动人心的项目。我建议使用第二台摄像机,研究setViewOffset方法:three.js文档3n(相关:使用WebRTC | Audun MØygard 2进行头部跟踪(并非全部,但向下滚动至最靠近setViewOffset参考的图形)。n基本上,您希望第二个摄像头的位置和基本视野与主摄影机、沿“入口”平面法线的方向以及以入口中心为中心并在宽度和高度上完全围绕入口的视图偏移。(至少我是这么认为的。)在主渲染之前,您应该在渲染循环中更新相机和渲染目标纹理,在主渲染中,纹理映射到入口平面几何体上。n祝您好运!我希望你能分享结果。你好!谢谢你的回复!n我还没有机会研究setViewOffset()方法,但我肯定会看看!n与此同时,我采取了一种不同的方法,尝试依赖EffectComposer,我必须说它运行得相当好!这是一个新的代码笔5,它的结果是。n它可以很好地与单个门户配合使用。然而,当我尝试拥有多个嵌套门户时,我遇到了一个难题。这是我试过的。基本上,似乎每一个过程都是重叠的,没有戴口罩。n现在,我必须承认我真的很累,而且我坐在办公桌旁太久了,所以我可能错过了一些明显的东西。我确实觉得我离得越来越近了,但此刻我无法集中注意力再也不会了,也许吧我应该反向渲染这些过程吗?n查看类似的讨论:如何让神奇的飞跃世界产生内部世界效果?问题Magic Leap的网站有一个很好的内部世界效果。滚动时,摄影机从一个世界向后平移到下一个世界,树上的叶子从内部世界流向外部世界。我们如何才能实现这个世界的内部世界的影响Three.js?有没有关于采取什么方向或技术的想法?n此外,请尝试搜索“three.js门户”,你会发现很多类似的项目n Match perspectives between generated RT texture and its parent scenen

three.js在生成的RT纹理及其父场景之间匹配透视图 为WP2原创文章,链接:https://www.wp2.cn/three-js/three-js%e5%9c%a8%e7%94%9f%e6%88%90%e7%9a%84rt%e7%ba%b9%e7%90%86%e5%8f%8a%e5%85%b6%e7%88%b6%e5%9c%ba%e6%99%af%e4%b9%8b%e9%97%b4%e5%8c%b9%e9%85%8d%e9%80%8f%e8%a7%86%e5%9b%be/