PDA

View Full Version : Reflection Amount?



Scazzino
07-19-2007, 01:39 PM
I'm probably missing something...

When using the Make Material Node, with a Reflection shader... how do you specify the Reflection "amount"? The Reflection amount setting on the main surface seems to get overridden by the Make Material and there's no amount setting in the Reflection shader itself or the Make Material node... it seems to just be stuck at an amount of 100%.

I can fake it by turning on Tint reflections and then using a gray tint color value to effectively control the amount of reflection, but that's not very intuitive of course...

Shouldn't the Reflection shader have an "amount" field, just like the diffuse and specular shaders? Otherwise, shouldn't the Make Material node have a Reflection field in addition to the Reflection Shading connection? If it's going to override the Reflection amount setting on the main surface, shouldn't we have an obvious way to set a new reflection amount in the new material?

:question:

Eekster
07-20-2007, 04:21 AM
Aloha!

As the reflection has color as output to the make material note pyt a limiter node in between for % amount?

/Eek (how dont really know whats hes talking about.)

voriax
07-20-2007, 06:07 AM
You're right, it doesn't have any control over amount when it's plugged into a Make node .. it just makes it reflective. Gives it 100% as far as I can tell. Yes, it needs more control. I've always thought the reflection nodes should have an "Amount" control in them as it seems unnecessary to set reflection type in nodes, then have to set the reflection amount somewhere else.

Karmacop
07-21-2007, 10:06 AM
This is just raw material inputs as you'd have in the sdk, which isn't the greatest for users but it's not bad. The answer is to simple add a vector scale node between your reflection and your make material node. Plug your reflection shader output into the vector input, and plug your "reflection amount" value into the scale input.

Scazzino
07-21-2007, 08:44 PM
Right, I know it can be done, by adding additional nodes, or using the tint color as mentioned previously... but it's not consistent with the other shaders. All the diffuse and specular shaders have an amount field. It would be nice if the reflection shader did too... ;)

Dave Jerrard
08-22-2007, 09:04 PM
I'm probably missing something...

When using the Make Material Node, with a Reflection shader... how do you specify the Reflection "amount"? The Reflection amount setting on the main surface seems to get overridden by the Make Material and there's no amount setting in the Reflection shader itself or the Make Material node... it seems to just be stuck at an amount of 100%.

I can fake it by turning on Tint reflections and then using a gray tint color value to effectively control the amount of reflection, but that's not very intuitive of course...

Shouldn't the Reflection shader have an "amount" field, just like the diffuse and specular shaders? Otherwise, shouldn't the Make Material node have a Reflection field in addition to the Reflection Shading connection? If it's going to override the Reflection amount setting on the main surface, shouldn't we have an obvious way to set a new reflection amount in the new material?

:question:
It should have a Reflection amount in it. After all, it DOES have a Transparency setting in it to control the amount of transparency, so it SHOULD have a similar setting for Reflection. Both the Shader inputs on the Surface Node are controlled by Transparency and Reflection like this.

This and the Standard Material nodes really frustrate me. Why the hell are they not just a single node? What if I want to use a diffuse shader but still use the other surface channels like Transparency, Glossiness, etc without using shaders for the rest of the surface? I can do that with the surface node just fine, but if I want to do a nice blend between two surfaces, no can do. I now have to throw away most of the work I just spent a long time working on and either di it without any shaders, or do it exclusively with them. If I do it with them, I still can't get teh same look because the way the Reflection and Refraction shaders are applied through the Surface Node is different than they are through the Make Material node. The Reflection amount applied the Reflection shading in a different way than you get with a straight mixer node. These should just be a single node that looks and acts virtually identical to the Surface Node.


While I'm in rant mode, here's a few other things that bother me.

The Mixer Node is severely limited. Why is it only a cross dissolve? Why can't it to addive, multiply, subtract, difference other other blending modes? The Color Mixer can do this, as can many of the other nodes. This node screams for more blending modes.

Why much we track down a third party node to do what the main nodes should be doing in the first place? Namely, shader outputs for the Material Nodes. We know they're able to output that info because there's a Material Splitter out there. These nodes should be spitting out that stuff themselves. Each material Node should have outputs for Diffuse Shading, Reflection Shading, Refraction Shading and Specular Shading, so we can then further refine those aspects without having to go through yet more nodes.

Similar to the above, each Color or Vector Output could do with separate RGB or XYZ outputs below them. Again, it's frustrating to have to set up a series of additional nodes just to extract, say, the red component from a texture, image or shader node. Especially when many of those nodes already spit out their own alphas.

Nodes should be designed more like they are in IFW, where every texture node has an Alpha output and a corresponding inverse of that output called Not Alpha. This is probably the most used conversion I have to constantly throw into any node map, and it would save me time and make the node maps much cleaner if I could just pull an inverse scalar from any node that outputs a scalar.

Online documentation would be very handy as well. There's currently a comment field at the bottom of the Node Editor that could be used to give a bit of info about each node when it's loaded. For example, Dot, Cross, or Normalize could give some clue as to their purpose in that comment field, while others could clue you in to what their outputs actually mean. The user can easily blank this field out when making their own comments. Of coruse, there would then have to be some big sign somewhere so that people will be aware that they can actually write in that are themselves. :stumped:

He Who Is Tired Of Looking For Third Party Tools For The Basics.

Scazzino
08-22-2007, 09:24 PM
:agree: :agree: :agree: :thumbsup: :D :hey: