Decals - tune up needed?

Continuing the discussion from Bye bye BackgroundBitmaps:

@BrianJ Please take a look at decals when you need to have some fun. Here are the related YouTrack issues.

No sign of a gumball yet as far as I can see in the latest… but indicates it was there at one time at least.

@bobmcneel your Youtrack link does not get me anything- just a blank page.


Link should work now… there is a bug in discourse that screws up a URL in some cases.

@BrianJ, @pascal, and @andy… Here are a few things I noticed after a few minutes.

  1. The UI provides a texture interface layer when all you want is a bitmap. Tons of UI you never need when you want to place an image decal. I don’t understand when, why, or if you would ever place a texture as a decal. It seems like all of that UI can go away and be replaced with about the same UI as we are talking about for Pictures… maybe even less.

  2. The placement UI doesn’t work like anything else in Rhino. It might take a complete rewrite to get it to feel more like a Rhino. I don’t know where to start on this.

  3. The placement tools do not preview on the object. I don’t know how hard this is to fix.

  4. The placement tools give me unexpected results. The decal always seems to end up somewhere other than were I expect. I’m not sure if this is a UI design problem, a bug, or an idiot user.

This is just what I noticed in the first 5 minutes.

Placement tools have already been re-written. Not turned on yet.

Ok. Good. It seems that my comments should be ignored.

When will we get to try it?

It should be on by default now. TestNewDecalWidgets controls which is used.

It’s not complete yet - we abandoned this project to concentrate on the other rendering features with the idea that we’d return to it if we have time before Rhino 6 shipping, since its an easy-to-isolate feature.

Ok. I tried it for a minute. It doesn’t seem like anything is different yet.

I guess my questions are around why aren’t we using standard Rhino UI controls. That is why do we need a non standard UI widget?

Can’t we use a plane or extrusion and allow the user to just use standard Rhino controls to place it and move it around? We do something like that with shut lines?

Like I said…this is an abandoned project. I agree the initial pick should be better. The code actually comes wholesale from Flamingo 2.0.

The positioning tools - after the initial placement - work,like the mapping widgets.

Ok. So I guess my question is about the mapping widget then.

Maybe I’m an idiot but I could not figure out how to get anything to land were I expected. All the widget UI just seemed odd and did unexpected things.

Again, why can’t be just use normal Rhino controls?

I just filed some more decal issues after looking through the latest v6…



OK - I would ideally like to work through this in real time so I know exactly what you’re talking about. How about Thursday evening? Sharing screens and seeing exactly what you’re doing would be very useful.

Since the new decal interface is unfinished, maybe it would be better to start by talking about the planar mapping widget instead - since that is already in V5 and “complete”. Draw anything, use a bitmap material of some sort, and then use the texture mapping object properties page to add planar mapping to the object. Does this work the way you would like it?

Now, select the object and turn the mapping widget on. This allows you to edit the existing mapping - and this is the important distinction. The widgets allow you to edit - the picking tools allow you to define new planes.

That looks like a big improvement. There are many details that I still don’t get but they are minor. For example, what are all those controls and any what do the do? For example, I tried clicking the Lock boxes and neither seemed to do anything. Also, there are some very odd labels, like “>[] <”.

BTW, the default material seems to have gone missing.

OK - we can talk about all of the controls on the properties page if you’d like, but my understanding is that we’re currently discussing the interactive - ie, “in viewport” UI for the decals vrs the mapping widget. Is that correct? If so, I would like to leave the properties page and the default material out of it.

Feel free to start separate discussions for those.

Notice that once you have created a planar decal using the new system, the mapping widget and planar decal widget are pretty much identical. Do you agree that this part of the UI is good?

If so, then we are only talking about the initial picking phase of the decal picking. I agree that this is non-standard and awkward. If the picking is changed to something similar to the initial mapping picking, would this be a “big improvement”?

  • Andy

This seems OK to me but I wonder if on ‘Edit Placement’, the widget should have its points on already? Also, I guess this is for Mikko, but when we’re all done the Gumball set to Object should align to the decal widget plane - it is probably easiest, most of the time to just use the gumball?

For placing a planar decal to begin with, can we steal Dale F’s current Picture UI?


There are cases when you just want to shift the decal around - not actually resize it. In that case, you will want the points off.

I always thought that in Rhino, “PointsOn” was rather difficult to discover. It took me a couple of years to release, for example, that there were points for spotlights. Could this be an instance of that problem?

Should there be a more obvious way - in the viewport - of turning points on for an object?

  • Andy

I’ve often wondered if we needed to redesign the “Points on” concept. For many objects, it seems like the points could automatically be on when the object is selected. But, at the same time, clicking anywhere else on the object should work just like the points were off.

I’m not sure how this would feel, but it might be worth a try.

That gets into another possible can of worms, but yes, it would be good to think about that. Auto points on (Bob’s comment) seems like it is worth a try.

As for decals, I find Gumball on the widget is the most natural way to make most adjustments.