小编Mar*_*her的帖子

Three.js:如何在负标度后翻转法线

我克隆并使用负刻度翻转对象,这会导致我的单面朝向反转.我的问题是,我怎样才能翻转法线呢?

我不想使用material.side = THREE.DoubleSide,原因是:1)没有正常工作(一些阴影是从内部绘制的)和2)想保持尽可能多的性能.所以DoubleSide对我来说不是一个选择.

这是我的对象如何翻转.

mesh.scale.x = - scale_width;
Run Code Online (Sandbox Code Playgroud)

提前致谢!

flip normals scaletransform three.js

5
推荐指数
2
解决办法
6041
查看次数

Three.JS:纹理mipmap和webGL的参考

我有一个具有大量高质量纹理的模型,我努力保持整体内存使用率下降.我尝试过的一件事是在将mipmap推到GPU后删除它们,以便从公共RAM中重新获取纹理数据.这样做时,模型仍然使用一次上传的mipmaps纹理进行渲染.这很好,但内存根本没有下降.

material.mipmaps.length = 0;
Run Code Online (Sandbox Code Playgroud)

所以我的问题是:

是否有对ThreeJS保留的mipmap的引用,即garbace收集器无法释放内存.或者是webGL本身引用的纹理,这似乎有点奇怪,因为webGL让我觉得纹理总是在专用内存中使用,因此必须复制.如果webGL在RAM中保留对原始纹理的引用,那么webGL在具有专用图形卡的台式机和具有共享公共RAM的板载图形卡的笔记本电脑上的行为会有所不同.

如果有人可以解释我在threeJS/webGL内部进行纹理参考的话会非常高兴.

memory textures three.js

5
推荐指数
1
解决办法
438
查看次数

ThreeJS:如何检测对象是否呈现/可见

如何尽可能快地检测到相机的眼睛是否可以看到 Threejs 对象?该obj.visible属性是二传,所以没有用的。此外frustumCullum还不够,因为它仅指示对象是否在相机视口之外。我需要知道一个物体是否隐藏在另一个更大的物体后面。

有人有想法吗?

干杯

马库斯

three.js

4
推荐指数
1
解决办法
5079
查看次数

Three.JS:沿方向向量获取位置

我有一个位置向量:

var startPos = new THREE.Vector3(1.2, -2.34, 0.5);
Run Code Online (Sandbox Code Playgroud)

方向向量:

var direction = new THREE.Vector3(0.657873735, -0.2497291683, 0.71051916);
Run Code Online (Sandbox Code Playgroud)

和距离:

var distance = 1;
Run Code Online (Sandbox Code Playgroud)

如何计算一个新的位置矢量,从开始startPos即移动distance沿着direction

three.js

3
推荐指数
1
解决办法
2399
查看次数

估计相似图像的模糊/清晰度

我使用摄影测量法拍摄了数千张用于3D重建的图像,我想使用Imagemagick或任何其他命令行软件来评估哪些图像模糊.卑鄙的含义:根据所有图像的平均模糊度/清晰度,可以轻松挑选出最糟糕的图像.但是如何评估模糊性.我已经进入FFT,快速Fournier变换,并认为在这里可以找到解决方案.可以通过IM -fft命令计算频率,该命令产生幅度和相位图像.如何使用这些图像来计算整体模糊/锐度因子?

更新:以下是我要处理的一些图片.真正的挑战是,所有图像都与这些类型中的许多其他图像一起放在一个文件夹中,需要检查运动模糊问题.我必须检测太高的运动模糊,并在进一步的制作中避免这些图像.

接下来的3张图像从所有图像中获得最低偏差,但在原始全分辨率版本中非常清晰.

在此输入图像描述

在此输入图像描述

在此输入图像描述

由于白色区域,这两个图像具有较低的偏差,但也不缺乏足够的清晰度.

在此输入图像描述

在此输入图像描述

由于镶嵌,边缘检测带来各种边缘.从所有图像中,第一个图像模糊.

在此输入图像描述

此图像具有低模糊度.

在此输入图像描述

command-line imagemagick blur

1
推荐指数
1
解决办法
994
查看次数