• Need to change rotation order of camera object

    6
    0 Votes
    6 Posts
    2k Views
    r_giganteR
    Hi Gogeta, glad that in the end it worked out properly. Please, in order to close the topic, mark the post that actually solved your initial question or simply mark the thread as solved from the Topic Tools menu Cheers, Riccardo
  • Undo wanted - TransferGoal() and nested instances

    c++ r20 windows
    3
    1
    0 Votes
    3 Posts
    1k Views
    M
    Hey Maxime, thank you very much for the detailed explanation. Makes absolute sense now! It works perfectly now. I tried a similar approach, but I was adding the Undo in g_MakeInstanceEditable() per object - that was the main culprit. Cheers, Robert
  • Free all BaseObject

    c++
    3
    0 Votes
    3 Posts
    924 Views
    a_blockA
    Hi, what @mp5gosu is showing in his code snippet is actually a quite common concept in Cinema 4D. More on this topic can also be found in the GeListNode manual in our C++ documentation. One request from my side: Please do not use all capital letters in the subject of a topic. Our forum tries to emphasize threads which are unread by a user by temporarily formatting a subject in all capital letters. So if you do as you did here ("FREE ALL BASEOBJECT") the thread always looks like it is still unread. I changed it here in this thread. And as a small reminder, please make use of our tagging system in this forum to provide a bit of additional information for a thread and to help us keep this forum nice and tidy and easily searchable. See Read Before Posting.. Lastly I turned your thread into a question (see How to Post Questions). Another feature we'd like to see people making use of in order to increase the usefulness of this forum. Cheers, Andreas
  • Allocation of PrefsDialogObject

    4
    0 Votes
    4 Posts
    1k Views
    M
    In your specific example, it could look like this: static maxon::Result<NodeData*> Alloc() { iferr_scope; return NewObj(SoloPrefs) iferr_return; } And when you construct your NodeDataclass, you have to access the actual value of maxon::Result: SoloPrefs::Alloc().GetValue(); Note, if that allocation fails that you can access the error with GetError(). There have changed lots of things, Sebastian already posted the links to the relevant documentation.
  • This topic is deleted!

    1
    0 Votes
    1 Posts
    4 Views
    No one has replied
  • When can I display a dialog at startup?

    c++ r20
    6
    0 Votes
    6 Posts
    2k Views
    kbarK
    Thanks Andreas. I will try Rick's trick again today. When I looked into it yesterday it didn't seem to work, but now I am wondering if perhaps it was visual studio locking the folders, and not actually C4D, since I was debugging at the time. I just tested renaming files manually (without running it through VS) and it was possible. I think Ricks dialog was done in Python, so he wouldn't have hit this VS issue. Fingers crossed it all works today.
  • Null characters in txt file (ascii - utf?)

    c++ windows r20
    8
    1
    0 Votes
    8 Posts
    4k Views
    P
    Thanks very much. (There is so much information to be read!). -Pim
  • Setting Quicktime Options

    python r19
    6
    0 Votes
    6 Posts
    3k Views
    M
    Hi @dmp, sadly as you already figurate out datarate want a BytesValue, which is not yet implemented in the maxon API (as it's been said, currently the python maxon API is still on progress and they are some flaws or missings class like this one, which will be fixed in futures release). And I'm afraid there is no workaround for it except switching to C++. With that said. For all other parameters, maxon API also introduces some new types like maxon.Int (which point to maxon.Int64 if available or maxon.Int32). According your issue with custom samplerate and audio kilobitrate, only few values are accepted. MAXON_ATTRIBUTE(Int, AUDIO_SAMPLERATE, "net.maxon.mediasession.mf.export.audio.samplerate", RESOURCE_DEFINE(ENUM_32000, 32000) RESOURCE_DEFINE(ENUM_44100, 44100) RESOURCE_DEFINE(ENUM_48000, 48000)); MAXON_ATTRIBUTE(Int, AUDIO_KILOBITRATE, "net.maxon.mediasession.mf.export.audio.kilobitrate", RESOURCE_DEFINE(ENUM_96, 96) RESOURCE_DEFINE(ENUM_112, 112) RESOURCE_DEFINE(ENUM_128, 128) RESOURCE_DEFINE(ENUM_160, 160) RESOURCE_DEFINE(ENUM_192, 192) RESOURCE_DEFINE(ENUM_224, 224) RESOURCE_DEFINE(ENUM_256, 256) RESOURCE_DEFINE(ENUM_320, 320)); If you have any question left, please let me know. Cheers, Maxime.
  • Volume Builder does not return object

    Moved python r20
    10
    0 Votes
    10 Posts
    3k Views
    M
    Hi @Swinn are you sure in your script you define in line 19/20 settings[c4d.VOLUMETOMESHSETTINGS_ISO] = -5.51 settings[c4d.VOLUMETOMESHSETTINGS_ADAPTIVE] = 0.0 With the same value, you got in your volume mesher object? The voxel range threshold can't be directly passed as an argument, but you can expand this parameter in the volume mesher and then you get the Use Absolute Value (ISO) check box, which let you choose an ISO value. Cheers, Maxime.
  • TreeViews with GeListHead and a checkbox column can lock up C4D

    c++
    3
    1 Votes
    3 Posts
    974 Views
    kbarK
    There is no question here. Just a bug report and a warning/info to other users if they get C4D locking up when using a treeview.
  • Failed to Connection on TeamRender

    c++ r19 sdk
    2
    0 Votes
    2 Posts
    828 Views
    r_giganteR
    Hi zhhm156, this post will be answered here. For the future, please avoid double posting. Best, Riccardo
  • Adding a Watch for Maxon variables in VC C++

    4
    0 Votes
    4 Posts
    1k Views
    P
    Thank you.
  • Priority confusion

    Moved python r19
    8
    0 Votes
    8 Posts
    2k Views
    chuanzhenC
    For viewport delay: i rewrote Skin Deformer ,Add a Aim Object to Check DeformCacheDirty To achieve my purpose(keep viweport realtime Refresh),yes ,it work. I have been updating the post, hoping that I can understand what the problem is on the right path, instead of exploring the working mechanism of Cinema 4D in other ways. Although I don't get the official answer, this will not dispel my enthusiasm for exploration the answer. (English is not very good, I hope to understand what I express)
  • Cloned Surface Deformer data

    c++ r19 r20
    3
    0 Votes
    3 Posts
    1k Views
    rsodreR
    @s_bach sorry, forgot about the tags. I'm using C++ SDK on R19/R20. I try calling ExecutePasses(), thanks.
  • Cannot update values of BaseContainer of VideoPost

    python r19
    5
    0 Votes
    5 Posts
    1k Views
    S
    Hello, I'm not really sure I understand what you are doing. Are you operating in a command line version of Cinema? Or is you code reacting to some command line arguments? Are you operating on the currently active BaseDocument? As I said, I don't have Indigo Renderer so I can't test this specific scenario. But when you "change" the renderer, you also have to "create" that renderer video post when operating in a new document. So it is not enough just to change the RDATA_RENDERENGINE parameter. This example shows how to set and create the "Hardware" renderer: renderData = doc.GetActiveRenderData() if renderData is None: return # set Hardware as active renderer bc = renderData.GetDataInstance() bc[c4d.RDATA_RENDERENGINE] = c4d.RDATA_RENDERENGINE_PREVIEWHARDWARE # add Hardware post effect # in Python a BaseList2D object must be created videoPost = c4d.BaseList2D(c4d.RDATA_RENDERENGINE_PREVIEWHARDWARE) renderData.InsertVideoPost(videoPost) c4d.EventAdd() You find general information on RenderData also in the C++ documentation: RenderData Manual. best wishes, Sebastian
  • maxon::Loggers::PythonConsole

    c++ windows r20 sdk
    4
    0 Votes
    4 Posts
    1k Views
    P
    Great, thank you.
  • Problem with DeleteObj() and maxon::PointerArray

    c++ macos sdk
    3
    0 Votes
    3 Posts
    1k Views
    codysorgenfreyC
    Ahhhh thanks! I couldn't find an Array Manual in the R18 documentation. I was going like this: maxon::PointerArray<MyCustomClass> myPointerArr = NewObj(maxon::PointerArray<MyCustomClass>); DoStuffWithArray(myPointerArr); DeleteObj(myPointerArr); It seems my problem was with the PointerArray taking ownership of my pointers, then deallocating them before I was done with them. Since it doesn't seem that R18 has maxon::UniqueRef objects I decided to go with a maxon::BaseArray<MyCustomClass*> instead. Thanks again for your help Sebastian!
  • Reading console output - possible?

    r20 c++ python
    11
    0 Votes
    11 Posts
    2k Views
    P
    I already guessed so. Thanks, I think we can close this post. -Pim
  • Weird behavior with Remove() and InsertObject()

    r20 c++ windows
    6
    0 Votes
    6 Posts
    2k Views
    r_giganteR
    @mp5gosu deleted an owned topic is now enabled for all users and no error is anymore notified when attempting to delete a first post. Best Riccardo
  • R20 ignores language/stringtable

    python r20
    3
    0 Votes
    3 Posts
    1k Views
    eggtionE
    That's it! Thank you so much, mp5gosu! Cheers, Mark.