Higher Precision Procedural Textures?

Bet this has been asked a million times, but I cant find anything on it from google or search. Is it possible to get higher precision textures from procedural textures for use on other procedural textures?

Basically I want to generate a Float32 texture using a procedural texture then use that as a sampler/data cache for another shader, but I am running into precision errors it seems.

I think the answer is to add the argument so that way when the procedural texture makes its FBO it can be in a different type.

This is really easy to add in the ProceduralTexture constructor if you want to do a PR

already on it :slight_smile:

As the proceduraltexture is creating a renderTargetTExture we can easily add a boolean to enable fp32 RTT

It should pass the checks but ill leave it in draft till it does.

2 Likes

thanks buddy!

1 Like

@Deltakosh, just out of curiosity.

If lets say I was using a INT texture to offset a mesh in a vertexShader vs using a Float32 texture there will be a difference in accuracy correct? (whole purpose of doing this)

well if you need float precision this is for sure :smiley:

When will this be live on the playground?

Should be the case already my dear

https://www.babylonjs-playground.com/#P5TGRC#2

Am I doing something wrong?

Indeed, the parameters you pass to the procedural texture are wrong / not in the right order and this.position is undefined:

https://playground.babylonjs.com/#P5TGRC#3

I’m not sure the changes are visible in the playground, however, as the result is still 0 and I get 1 when I run it locally… Or maybe I have a problem with the cache of my browser.

Yeah Im not getting it on the PG. Im sure it will be live by tomorrow after the nightly.

image

Hmmm I still don’t see it in the compiled code.

I do see it