Three.js поддерживает OES_texture_float?

Я хочу сделать положение или глубину для плавающей текстуры. я использую

vsnTexture = new THREE.WebGLRenderTarget(window.innerWidth, window.innerHeight,
            { minFilter: THREE.NearestFilter, magFilter: THREE.NearestFilter, format: THREE.RGBAFormat ,type:THREE.FloatType }); 

как цель рендеринга.

Затем я проверил

var gl = this.renderer.getContext();
    if( !gl.getExtension( "OES_texture_float" ) ){
        console.error( "No OES_texture_float support for float textures!" );
    } 

и не нашел ошибки. Chrome поддерживает OES_texture_float, и я перехожу к THREE.js:

_gl.texImage2D( _gl.TEXTURE_2D, 0, glFormat, renderTarget.width, renderTarget.height, 0, glFormat, glType, null );
 //console.log(glType);

Я нашел glType =5126(gl.FLOAT), когда я установил WebGLRenderTarget:type:THREE.FloatType. Это означает, что я мог бы использовать OES_texture_float. У меня что-то не так? Потому что независимо от того, что я установил тип: THREE.FloatType или использовал значение по умолчанию ( THREE.UnsignedByteType), я получаю одинаковую текстуру рендеринга. Я не использую OES_texture_float правильно?

1 ответ

Решение

Да, это так. Этот пример показывает, как его использовать:

http://threejs.org/examples/

Другие вопросы по тегам