繁体   English   中英

Three.js-完全适合视口的广告牌

Three.js - Billboard that perfectly fits the viewport

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在尝试为3D场景创建2D叠加层。 我想到了三个选择:

  1. 从现有canvas元素获取2d上下文并在其上绘制。
    • 不幸的是,因为three.js所已经有了一个这是不行的 WebGL的情况下从画布。
  2. 创建第二个画布元素,并将其放置在原始画布的顶部
    • 我想避免这种解决方案 我不想担心将点击事件从覆盖画布传递到原始画布
  3. 创建一个非常适合视口的广告牌(从粒子),并为其提供画布纹理。

如何执行第三种选择? 我需要选择调整画布大小的选项。 由于这个示例,我已经知道如何使用画布作为纹理。

另外,如果第二个选项没有我想的那么难,请告诉我。

2 个回复

如果您不需要在IE9中使用第二个选项,则它更简单(我认为这是事实,因为您使用的是WebGL)。 您可以添加pointer-events:none; 覆盖画布的style属性,它将传递任何事件。

正交摄影机的第二次渲染传递可能是最佳选择。

renderer.autoClear = false; // To allow render overlay

---

renderer.clear();
renderer.render( scene, camera );
renderer.clearDepth();
renderer.render( sceneOrtho, cameraOrtho );

参见http://threejs.org/examples/webgl_sprites.html

three.js r.69

1 THREE.js - 广告牌顶点着色器

我需要将THREE.Mesh的一个实例定位为始终面向相机。 我知道我可以使用[THREE.Mesh] .lookAt()方法,但我正在尝试更多地使用我的GLSL印章,并希望能够在顶点着色器中执行此操作。 我已经阅读了NeHe的Billboarding教程 ,这对我来说很有意义。 好吧, ...

2 Three.js - 广告牌效果,在摄像机平移后保持方向

我有一个始终设置为面向相机的平面几何体: 在更新循环中。 我正在使用OrbitControls来控制相机。 旋转或缩放场景时,平面将继续按预期面向摄像机。 但是,在平移场景后,当飞机继续面向摄像机时,旋转摄像机似乎也会旋转平面,因此,例如,如果平面包含文本,文本可能会显示为旋转 ...

3 在THREE.js动画画布广告牌

大家, 我正在尝试为基于Canvas的纹理设置动画,该纹理映射到平面上,就像广告牌一样。 我已经指出了包括material.needsUpdate和texture.needsUpdate ,但我仍然无法让纹理变得生动。 我还包括一个旋转立方体,所以我知道动画例程在某种程度上起作用。 ...

4 Three.js与Pointcloud和广告牌和Sprite混淆

我正在使用“ webgl粒子精灵示例-雪花”测试10000个带纹理的点,并且尝试使用sprites和spritematerial进行相同的操作。 如果与第一个相比,sprite方法的性能确实很差。 如文档所述,精灵用于始终将其朝向相机。 但是使用pointcloudmaterial我得 ...

5 THREE.js内存使用2D画布“泄漏”动画文字广告牌

与缓慢处理相比,泄漏并不是因为应用程序使用的系统内存快速增加。 我通过将文本写入2D画布然后为平面网格物体制作纹理来制作“动画公告板”。 由于我希望多个ABB每秒更新多次,我想我会设置一个javascript ABB对象数组,并为每个对象分配画布,上下文,纹理,材质,几何和网格。 ...

6 如何在Three.JS中实现实例广告牌?

我需要一个实例网格让所有实例都面向相机。 这是我目前用来渲染一个广告牌的代码。 这不会显示任何内容。 在最后一行的vec4构造函数中传递'position'会按预期呈现形状,所以我知道计算有问题。 我一直在尝试遵循这个教程: http : //www.opengl-tutori ...

8 翻译和广告牌

我已将一个精灵顶点负载添加到一个几何对象中,并且正在使用顶点着色器分别对其进行动画处理。 现在,我想在翻译后为它们添加广告牌,但是我的广告牌矩阵转换广告牌可以使整个几何对象。 如何获得广告牌转换以作用于单个子画面? ...

9 数学广告牌

我正在尝试绘制一个始终面向相机的元素。 我已经阅读了一些有关着色器中的广告牌的文章,问题是我需要计算出着色器和不同对象(圆形,正方形,网格等)的旋转。 因此,我试图仅计算模型的旋转(不是矩阵,类似于Unity引擎中的Transform.LookAt),但是我不知道该怎么做,这就是我得到的 ...

10 如何实施广告牌?

我目前在3D世界中绘制一个平面(三角形条带)。 我现在想把它画成一个广告牌 - 所以脸部与相机对齐。 这是代码: 显然输出只是一个平面: 如何更改代码以将平面绘制为广告牌? 我知道我必须利用视图矩阵计算顶点坐标(在内环中),但我无法弄清楚如何。 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM