On 23/04/2015 at 09:17, xxxxxxxx wrote:
Cinema 4D Version: R15
Platform: Windows ; Mac OSX ;
Language(s) : C++ ;
I have a custom material written using MaterialData with multiple channels, some of them can be logically mapped to channels of standard C4D material. I want to ask if it's possible to support BaseMaterial::GetChannel for such custom material?
The reason I want this is to support some C4D features, for example Displacer, in which user can set Channel directly from texture tag (and I assume this is internally implemented using GetChannel of BaseMaterial class).
On 24/04/2015 at 06:26, xxxxxxxx wrote:
I'm afraid BaseMaterial::GetChannel() cannot be supported by external MaterialData plugins.
It can only be supported by Cinema 4D material (Mmaterial).
On 26/04/2015 at 16:44, xxxxxxxx wrote:
thanks for answer, I was afraid it won't be possible.
On 31/12/2015 at 05:31, xxxxxxxx wrote:
Just to be sure, it means that it is impossible to retrieve a channel or a material group (or a way to know its name and its state) from a BaseShader or a BaseMaterial?
Is it impossible to access to the same data (channel name) as the Texture Manager do?
_<_img src="http://www.xsyann.com/fc4d/texmanager.png" border="0" /_>_
Basically I'm trying to know if a BaseShader is inside an enabled or a disabled material group (the name of the group would be useful too).
I can do it for Mmaterial with BaseMaterial::GetChannel, Material::GetChannelState, BaseChannel::GetShader and Material::GetAllReflectionShaders()but I can't find a way to do it for other material types (Banji, Nukei, etc, VRay materials...)