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

    INCLUDE Mbase;
    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);

Log in to reply