Independent tile texture (material)

en: Hi guys.
Could you tell me the way to implement texture, which is stretched across the polygon, and retains its proportions and can be tiled, without human intervention.

ru: Привет, ребята.
Подскажите способ реализации текстуры, которая не растягивается по всему полигону, а сохраняет свои пропорции и тайлится, без участия человека.

Simple.png

World Coordinate 3-way will do you nicely

I don’t get the “without human intervention” part of your question…
You’re searching a way to make UE4 do the tilling and scale settings by itself ?
If not, it’s easy with a textCoordinate node plugged to the UV of your texture in the material but if you want UE4 doing this without you entering value… I don’t think it’s possible. At least, I can say that I don’t know how to do this ^^

  • In the process of learning… But I think there is only a static transformation.
  • I don’t exactly put it in words. In my case, I would like to enter the data and after they do not change. For example, I enter the texture size and changing the size of the object, the texture can be tiled so that each piece remains a certain size.

Used World Coordinate 3-way, tiling is good, but the texture coordinates are relative to the World. If you make the coordinates relative to the object, then my issue will be resolved and I get a little smarter.

Use this:

&stc=1

Thanks, but I used the same subtraction in the “Coordinate a 3-way” and got what the picture below, so not posted as a solution. Tiled cool, but the rotation of the object breaks the entire result.

Whats the point of this?
You basically want to do what you don’t want to do.
If you want to have the textures always the same regardless of orientation, you simply texture your object the usual way, without World Position.

However, the texture does not have to stretch for object, and can be tiled while keeping the proportions of the textures, for not maintaining the proportions of the object.

Sorry if asking too much. But I tried to mix Local and Global properties, but did not succeed. Local - rotation, texture coordinate. Global - the size of the tile.

Oh, I see now what you’re after!

You want the texture to be aligned to the object, so that it rotates along with the object, but scales with the world size!
I did a whole bunch of googling trying to do the same thing, myself. tried feeding the object in to a blueprint to calculate its orientation and then feeding those values to a transform 3x3 matrix to then rotate the different projections for a custom world-aligned node that contained texture coordinate rotators in it, tried a whole bunch of things, to no avail.

But then I realised that the answer was actually super simple!

Just do this:

it works really well :slight_smile:

At first I felt happy after seeing your post, but realized that it is not so. It works like texCoor] and still scale relative to the object, not the world… =(

It has to be relative to the object, but the size of the tile was relative peace.
The fact that my object can stretch, but the texture of this should not be done.


Then just divide the scale of the texture by the size of the object:

Excellent, great. Now it seems to be true.
But again without a drop of tar in a barrel… Properties vary with angle.

I tried doing your method with other blocks, but I was once again convinced that being able to write good algorithms in the code, I “complete zero” in the creation of textured materials. It is necessary to study separately…

gif.gif

Why don’t you just use the “default” way of texturing and simply scale your texture the way you need it?

&d=1427788552

To parametrize the Scaling, you simply divide the TexCoords Node by your scale parameter.

did as told Construc_ got that on video… I’m ashamed that I can’t solve this problem myself.

the fact that it still is stretched with the object.
I’ve done scaling texture using BP by multiplying the rate of change of the size of the object. The point is that the object may be harder than cubic and the use of BP, limits the application of the material, only specially made objects.

[Solved]


I know nothing about that, but a little logic and something happened… Not sure if it is stable, I hope so.

Big thanks to the participants of the conversation.
Special thanks Construc_, you’re a very active participant, more such)

This is great solution!
Works with any channels,but Normal cahnnel needs a different solution.

Has anybody idea how to start?

I posted a different solution for cubes in the rendering section a while back. Let me see if I can fish it.

https://forums.unrealengine.com/development-discussion/rendering/1722020-automatically-scaled-texture-for-cuboid