Announcements
Due to scheduled maintenance, the Autodesk Community will be inaccessible from 10:00PM PDT on Oct 16th for approximately 1 hour. We appreciate your patience during this time.
Community
Maya Shading, Lighting and Rendering
Welcome to Autodesk’s Maya Forums. Share your knowledge, ask questions, and explore popular Maya materials topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Scale independent 3D texture

9 REPLIES 9
SOLVED
Reply
Message 1 of 10
ronnyhatteland
486 Views, 9 Replies

Scale independent 3D texture

Is there any way of making the 3D procedural textures scale independent so that it will display with a similar size over multiple objects with different scales?

9 REPLIES 9
Message 2 of 10

In Maya native 3D textures there's a Local flag, which will act like 3D placement node is scaled up to each object's bounding box.

hamsterHamster_0-1644834216214.png

 


,,,_°(O__O)°_,,,
Maya2019.1 @ Windows10 & GeForce GTX1080Ti

If the post was helpful, click the
 ACCEPT SOLUTION  button, so others might find it much more easily.

Message 3 of 10

Awesome, exactly what I was looking for, thanks!

Message 4 of 10

Hmm, I guess I was a bit quick to reply, it still seems to be stretched by scaling of the individual objects. I am looking for something where the size of the texture on the objects only depends on the scale of the place3DTexture node, you see what I mean?

Message 5 of 10

I'm looking for something like this:

 

render.png

Which is possible freezing the scale transformations, however I have some objects where the scale is animated so I would need to be able to achieve this in some other way

Message 6 of 10

Yes, those get squished-stretched, if you are using anything but cube or quad, and the local axis orientation matter too. This would have been ok for the Wood textured planks or beams, not so much for other textures.. Local makes it almost like UV-based, deforms with scale. Besides, every object with that tex will have the same pattern.

For non-uniform scaling I'd still suggest using several versions of non-Local textures for various aspect ratios, which you can convert to 2D textures.

All said, not completely clear what you are after - in your image I see what happens, but I might only guess what it should look like. Still, I suspect it is impossible that easy, unless you are ready to write own shader. Might be tempting to apply one shader/texture to everything and expect to do all the dirty job. 😉 Here it sounds something to do with shading switches, yet there is no shading switch for the placement matrices.

I haven't used those, but you might be possibly after Texture References. Try, succeed.

Also consult Arnold's documentation, as it might have own tricks and limitations.

 

 

 


,,,_°(O__O)°_,,,
Maya2019.1 @ Windows10 & GeForce GTX1080Ti

If the post was helpful, click the
 ACCEPT SOLUTION  button, so others might find it much more easily.

Message 7 of 10

while I was writing my previous answer I wasn't aware of your next image. For that, you would simply use 3D texture as is, and for animated pieces, yeah, previously mentioned Texture References; see the link.


,,,_°(O__O)°_,,,
Maya2019.1 @ Windows10 & GeForce GTX1080Ti

If the post was helpful, click the
 ACCEPT SOLUTION  button, so others might find it much more easily.

Message 8 of 10

Thanks for the quick replies, actually it looks like I was just confused by the viewport renderer, as the 3d mapped textures are stretched with scale but they actually show up as expected in the final render regardless of the scaling of the walls :walls.png

Also what confused me initially was that I use my 3D texture as a bump texture, and it seems like the amount of bump is affected by the scaling. So I guess my real question is how can I prevent the bump depth to be influenced by scaling?

 

Below is an example where the scale X and Z of the pillar is 1 but scale Y is 24 so there is extra bump on top of the pillar :

bump.png

Message 9 of 10
mspeer
in reply to: ronnyhatteland

Hi!

As pointed out by @hamsterHamster  in the last response, there is nothing special to be done.

Just apply the material to all your objects and scale them as you want.

However the Viewport may not update properly, so you might want to do this manually, but the rendered result should show the same scale for the texture on every object.

Message 10 of 10
ronnyhatteland
in reply to: mspeer

Yes you are right, I just realized that the combination of my 3D bump map and viewport tricked me as I didn't expect the 3D bump map to be affected by the scaling

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report