THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 16/05/2009 at 18:03, xxxxxxxx wrote:
Cinema 4D Version: 11.021
Platform: Mac ;
Language(s) : C++ ;
I can't seem to find the right code/function to deselect a render setting. I have tried toggling or deleting a bunch of different bits. Any info on this?
On 16/05/2009 at 19:33, xxxxxxxx wrote:
You can select a render setting but you can't deselect. There is always one selected for the renderer. So I would suspect that if there is only one RenderData, that's it. If there is more than one, to deselect the current one you have to select another.
On 16/05/2009 at 19:37, xxxxxxxx wrote:
The problem is I have two Render Settings selected and I need to deselect one of them or else some big problems happen. It is not a case of just changing one selection to another, but nullifying the selection.
Unless I am wrong, version 11 makes a distinction between an Active RenderData (which is used for rendering) and a Selected RenderData (which can be modified just like any object). Active is not the problem here, fortunately, but selection is.
On 16/05/2009 at 20:29, xxxxxxxx wrote:
Oh, I see. Have you tried SetBit()/DelBit()? RenderData is derived from BaseList2D wherein the selection bits are stored. There is BIT_ACTIVERENDERDATA as well as BIT_ACTIVE (selected - this works on objects, tags, materials, maybe other things?). Unfortunately, there is also the GeListNode GetNBit()/ChangeNBit() which you may need to experiment with also.
On 16/05/2009 at 21:49, xxxxxxxx wrote:
Yes, I tried SetBit(), DelBit(), and ToggleBit() with both BIT_ACTIVERENDERDATA and BIT_ACTIVE. I looked into the NBit flags, and they all seemed to deal with timeline and OM selections. Nothing I could find for render data. Maybe Matthias will chime in... Possible there is something hidden or undocumented that I'm missing.
I solved my bug using another method to get around this issue. It still would be nice to know how to solve this or find out what I am doing wrong so I can optimize my code.