Hey Guys… when I enable OIT, my application comes to a standstill and I start getting these errors:
GL_INVALID_OPERATION: Active draw buffers with missing fragment shader outputs
I can’t seem to reproduce this in the sandbox, but I’m trying.
The problem seems to be any material with transparency on them (because they render black), such as this:
const chunkMaterial = new PBRMaterial(‘ground’, context.scene);
chunkMaterial.useAmbientOcclusionFromMetallicTextureRed = true;
chunkMaterial.useRoughnessFromMetallicTextureGreen = true;
chunkMaterial.useRoughnessFromMetallicTextureAlpha = false;
chunkMaterial.transparencyMode = PBRMaterial.PBRMATERIAL_ALPHATEST; // PBRMATERIAL_ALPHABLEND
chunkMaterial.useAlphaFromAlbedoTexture = false;
chunkMaterial.maxSimultaneousLights = getMaxSimultaneiousLights(context);
chunkMaterial.metallic = 0;
chunkMaterial.roughness = 0.9;
chunkMaterial.albedoTexture = new Texture(textures.albedo, context.scene);
chunkMaterial.usePhysicalLightFalloff = false;
chunk.material = chunkMaterial;
Again… I can’t seem to reproduce this, so I’m looking for hints where to go next (but I’ll keep trying). Already tried removing setting PBRMATERIAL_ALPHATEST.
Version: a5.5.5
Chrome: Version 101.0.4951.41 (Official Build) (64-bit)
Jerry