Is it possible to draw material in world space UV?

Sort of like using the World Aligned Texture but that node will tile a texture over and over.

What I want to achieve is unform texture density no matter the meshes UV Layout which is what world align helps with but also not tile the texture and also allow me to draw a texture to a material to a specific location. So if all my meshes have the same material draw/paint on any such that it looks like all the sperate meshes are one giant one.

Is this possible or not?

Pick your point in world space that you want your texture to start from or update it with a blueprint actor, then subtract from the world position node in the material graph and clamp it like this or clamp it with a multiply node after the texture sampler node if you don’t want the last pixel to repeat.

giphy

2 Likes

That was insightful.

But what if one wanted to paint that emote texture in multiple spots?

I know I said I didn’t want tiling but is it possible to have multiple instances of it being painted at multiple world positions at the same time? Almost like a decal spawning but that would be expensive.

Does the Vector3 parameter just need to be the objects location in that case?

For added context right now I’m using the BeginDrawCanvasToRenderTarget with the RenderTarget (which in your example is the Texture Sample) and the K2_DrawMaterial function call to draw the Material to the Render Target.

The Vector3 always represents the beginning of the WP-Uv-s and must be the same across all actors who use the material.
Here are two alternatives to making something that you want with multiple instances but require either a huge render target or sampling to and from the Runtime Virtual texture.
Here are a few tutorials tackling similar problems.

1 Like

The giant Render Target might need to be pretty high res? And you’d need one for each plane (X, Y, Z)?

Doesn’t seem impossible but seems a bit silly?

I’ll have to learn more about runtime virtual textures. I’ll take a look at the videos and see what I can make sense of.

I don’t know the context of your problem. But it’s always good to keep in mind the limitations of RTVT.

1 Like