Use existing Material as Decal

Hello,

It would be great if we could use existing materials as a Decal. Ideally, being able to use emission materials and VRay materials. This is not currently possible with the current Decal implementation, but perhaps it’s not so hard to implement?

Until we can more easily assign different materials and different mapping to each sides of a solid object, using Decals as a work around is helpful. Having to explode everything for simple texture mapping just seems wrong.

can you give an example file and some images to clarify what you are looking for here?

Hello,

Working in Archviz, it is common to have different textures and mapping on each sides of various walls and other solid objects. Say for example, I want to make the side of this wall a wood texture, with a certain mapping scale that is different from the mapping on the rest of the wall object.

I can easily apply a unique material to this face, but what if I want to also texture map it differently than the rest of the object? I have to explode it, texture it, rejoin or group it. Rubbish! Way too many steps for what should be a simple procedure that needs to be done 100s of times. I have requested this ability from the devs along with some other users, but until that happens, I discovered that Decals could serve as a workaround if they could simply use the Materials defined from the Project materials, such as a VRay wood already used in the scene. Simply mapping a Decal over the wall as the wood material (VRay please), would be quick and done.

I thought the Picture command would work for this, but alas it does not, because it would require us to move the created plane slightly away from the wall being textured, creating unnecessary steps and sloppy modeling. Otherwise it looks like an overlapping surface as expected:

If anyone else is using Rhino for Archviz, and finds there is a better way without a lot of extra steps like exploding good geometry to simply map it, I’m keen to hear it.

Thanks.

sub object material assignment won’t do what you want?

Negative.

Sub object material assignment is worthless without sub object texture mapping.

I’m missing something about your workflow…
If I have a polysurface, I can sub object assign a material, then edit the materials properties to get the effects I want. For planar stuff, you really don’t need texture mapping, since you can use the scale and rotation properties in the material itself. Unless you have tapering or conical surfaces, or are using stuff from substance…

what am I missing?

Hello, and thank you for your advice.

Unfortunately using the materials properties to adjust the texture mapping as a workaround will not work either. We usually have fixed sized maps that cannot be scaled. Say a 12x24 tile or even a 4x8 sheet of laminate. They need to be mapped at only their appropriate size, on many different objects / sub objects simultaneously.

You see, we’ll use these same materials throughout the project on many different objects and sub object surfaces, and the client may change them in the process several times. So it would definitely NOT make sense to create a separate material for each surface (as your example), or each layer (why is that a default?). That would be a huge waste of time, requiring us to update all the various copies of the same material. This could be so much easier if sub object texture mapping were offered like it is in basically every other 3d program I have used.

This points out another general problem we are finding with Rhino. We will never use materials as applied to the layer, always to the object and sub object face. This way when we change our material, for example, wood 1, then everywhere will also update the change, and they are most certainly on different layers. That’s the way architecture modeling is organized. I guess if you were only doing a simple product then you could keep the layers as the material organization, but for our archviz projects, there are sometimes hundreds of materials, and it makes no sense at all to have materials assigned by the layers. There should be a way to disable this as the default in Rhino.

any chance you could send us a simple example that we could take a peek at and try to work up something that can help?

email us tech@mcneel.com

if the file is big upload to:
https://www.rhino3d.com/upload and reference this ticket.
Use existing Material as Decal

I’ll try to send an example. In the meantime, just imagine trying to do your example without adding the duplicate materials. Only 1 wood, only 1 brick… on the same object with different mapping for each material. I don’t believe it can be done without exploding the object, so you can use texture mapping. That gets too messy very quickly. Imagine a complex wall (first floor of a house) with many sides that was extruded as a single object (I call it solid, you call it polysurface). If you explode it to map it individually, then good luck ever getting all the pieces selected back again to re join.