我有一个360°全景图片(纹理),我在一个球体周围进行映射,然后将我的相机放在球体内部以进行球形投影。现在纹理投射在球体的外部。 我想'从内到外翻转纹理',我读到它可以通过应用矩阵来完成。
我想在Rajawali / OpenGL中将矩阵应用于球体(Object3D)。
这可以在ThreeJS中完成,如下所示:
var sphere = new THREE.SphereGeometry(100, 100, 40);
sphere.applyMatrix(new THREE.Matrix4().makeScale(-1, 1, 1));
applyMatrix的three.js文档:
用矩阵更新位置,旋转和缩放。
我想在Rajawali这样做:
mSphere = new Sphere(100, 100, 40);
//Apply the matrix here
可以在此处找到Matrix / Object3D的文档 Matrix4 Object3D
或者还有其他办法可以吗?
答案 0 :(得分:1)
这已经修好了!
mSphere = new Sphere(100, 100, 40);
mSphere.setScaleX(-1);
mSphere.setScaleY(1);
mSphere.setScaleZ(1);
答案 1 :(得分:0)
对于 material.side 来说真的不是一件好事吗?
引用来自材质的three.js文档:
.side
定义将要渲染哪个正面 - 正面,背面或两者。 默认为THREE.FrontSide。其他选项包括THREE.BackSide和THREE.DoubleSide。
所以从内部看球体表面应该使用 THREE.BackSide 。