It seems incredibly inefficient that if I want to have, say, a number of plastic materials in my project, that I have to have completely separate materials for something as trivial as a color variation. I should be able to define a base "plastic" material in one place, and assign it to an object, then somewhere have a particular color "Red" set up--and maybe it does more than just set the diffuse color, it could change other parameters either replacing them or tweaking by some %--and assign both "plastic" and "red" to an object to get a red plastic with zero redundant settings and the ability to change every "plastic" or "red" thing in the project in one place. The intricacies of working with all the different shader types--other than sure why not be able to define in one place what "Red" means for all settings for all shaders?--and what the interface for all that might look like I'm not sure about yet.
Tags:
Obviously my model is CSS from HTML-land, so to see how to handle the UI for it(besides editing text in an external file) there's Dreamweaver and ExpressionWeb to look at. Now shaders and textures and mappings and shaders that modify or contain other shaders, that's I think quite a bit more complex than box margins and font settings, so how hairy it might get compared to the status quo would need to be investigated.
The most basic principle would require being able to define a material/texture that only controls the parameters you choose, and being able in turn to assign more than one to an object or material/texture slots. What you ultimately get depends on their ordering and your project-wide defaults. To carry it further would involve being able to define any setting for any kind of material or texture in a single what CSS calls "class," and (I guess this is an extension of the same thing) be able to define different settings for different parent-child relationships or any other criteria that can be hooked up.
OK - we're prototyping something that will work right now. Unfortunately, it means changes to Rhino before we can support this in the viewport, so it looks like it might be Rhino 5.0 SR1 or SR2 before we get to this. But we're working on it anyway.
Cool, how might it wind up working?
Well - right now we're at the point of building in the back-end code to enable it to work at all. But - this is the first thing you'll see, probably in Rhino 5 SR2.
There will be a new option on the "Single Color Texture" - a check box that sets it to "Object Color". This means that you can apply the single color texture to any channel, and when you apply that material to an object, the texture will "morph" into the color of that object. So - if you have a "plastic" template, and you apply it to three objects, with three different object colors, you'll get three different colored plastics.
The idea is to expand this to a new texture type that is capable of referencing other user specified properties on an object-by-object or layer-by-layer basis. But that is for later.
Incidently, your comment about "defining what red means" is already possible. Just create a number of single color textures called "Red", "Orange", "Blue" - and then share them into different materials in the scene. You can then edit them in the texture palette (or, in fact, anywhere you like) and everything will update.
Jim
Notice that this should already be working now that SR2 is out. Can you confirm that this actually helps with what you needed it for?
- Andy
Hi Andy,
Haven't tried it yet.
Jim
Of course my first reaction to your explanation of how it would work was "wha...?" but I'll give it a shot.
Andrew le Bihan said:
Jim
Notice that this should already be working now that SR2 is out. Can you confirm that this actually helps with what you needed it for?
- Andy
Ah finally figured out what you meant by 'object color.' It's a start!
Jim
jim.carruthers said:
Of course my first reaction to your explanation of how it would work was "wha...?" but I'll give it a shot.
Andrew le Bihan said:Jim
Notice that this should already be working now that SR2 is out. Can you confirm that this actually helps with what you needed it for?
- Andy
© 2023 Created by Scott Davidson.
Powered by