Obaselist Group in MaterialData .res

On 08/08/2017 at 05:50, xxxxxxxx wrote:

User Information:
Cinema 4D Version:   R18 
Platform:   Windows  ;   
Language(s) :     C++  ;


I have MaterialData and inside its res file I have used

GROUP Obaselist {
GROUP ParamGroup1 {
GROUP ParamGroup2 {

I have some parameters and I add these parameters in ParamGroup2 via code using description->SetParameter e.t.c.

The problem is that these parameters are added in Obaselist instead of ParamGroup2.
What  is included in INCLUDE Mbase; and in GROUP Obaselist ?

It appears that I have ID conflicts with the included res files.
I have checked obaselist.h and mbase.h files but I didn't find any conflict there.

Thank you for your time.

On 09/08/2017 at 09:40, xxxxxxxx wrote:


it's a bit difficult to judge without seeing the code you use to insert the parameter.

Here's how it works for me:

	Bool GetDDescription(GeListNode* node, Description* desc, DESCFLAGS_DESC& flags)
		if (!desc->LoadDescription(node->GetType()))
			return false;
		const DescID groupID = DescLevel(ParamGroup2, DTYPE_GROUP, 0);
		const DescID cid = DescID(DescLevel(myparamid, DTYPE_STRING, 0));
			BaseContainer bc = GetCustomDataTypeDefault(DTYPE_STRING);
			bc.SetString(DESC_NAME, "My String Param");
			desc->SetParameter(cid, bc, groupID);  // don't forget to provide correct group ID here
		return SUPER::GetDDescription(node, desc, flags);