Javascript 如何为任何浏览器获得OES\u纹理\u浮动\u线性支持?
我已经在webGL上工作了3个多月,在此之前,它很容易用OBJMTLLoader.js呈现我的Javascript 如何为任何浏览器获得OES\u纹理\u浮动\u线性支持?,javascript,three.js,webgl,objloader,Javascript,Three.js,Webgl,Objloader,我已经在webGL上工作了3个多月,在此之前,它很容易用OBJMTLLoader.js呈现我的.obj和.mtl。但现在它的渲染不正确。它只渲染.obj文件,而不是.mtl文件 所以我在网上搜索发现objmtloader.js不再使用。相反,我们使用MTLLoader.js和OBJLoader.js 代码如下所示: var onprogress = function (xhr) { if (xhr.lengthComputable) { var percentComple
.obj
和.mtl
。但现在它的渲染不正确。它只渲染.obj
文件,而不是.mtl
文件
所以我在网上搜索发现objmtloader.js不再使用。相反,我们使用MTLLoader.js和OBJLoader.js
代码如下所示:
var onprogress = function (xhr) {
if (xhr.lengthComputable) {
var percentComplete = xhr.loaded / xhr.total * 100;
console.log(Math.round(percentComplete, 2) + '% downloaded');
}
};
var onerror = function (xhr) {
console.log(xhr);
};
THREE.Loader.Handlers.add(/\.dds$/i, new THREE.DDSLoader());
var mtlLoader = new THREE.MTLLoader();
if (mtljs) {
for (var i = 0; i < mtljs.length; i++) {
mtlLoader.setPath(mtljs[i].substr(0, mtljs[i].lastIndexOf("/") + 1));
mtlLoader.load(mtljs[i], function (materials) {
materials.preLoad();
var objLoader = new THREE.OBJLoader();
if (objjs) {
for (var j = 0; j < objjs.length; j++) {
objLoader.setMaterials(materials);
objLoader.setPath(objjs[i].substr(0, objjs[i].lastIndexOf("/") + 1));
objLoader.load(objjs[i], function (object) {
object.position.y = -33;
scene.add(object);
}, onprogress, onerror);
}
}
}, onprogress, onerror);
}
}
mtlLoader.castShadow = true;
mtlLoader.receiveShadow = true;
renderer = Detector.webgl ? new THREE.WebGLRenderer() : new THREE.CanvasRenderer();
renderer.setClearColor(0xffffff, true);
renderer.setPixelRatio(window.devicePixelRatio);
renderer.setSize(windowHalfX, windowHalfY);
renderer.shadowMap.enabled = true;
renderer.shadowMap.Type = THREE.PCFSoftShadowMap;
container.appendChild(renderer.domElement);
controls = new THREE.OrbitControls(camera, renderer.domElement);
window.addEventListener('resize', onWindowResize, false);
我想知道为什么会发生这种情况,他们有什么解决办法吗?
如果我不需要使用OES\u texture\u float\u linear
extension,或者为同样的问题找到另一种替代方法,该怎么办
THREE.WebGLRenderer: OES_texture_float_linear extension not supported