Maxon Developers Maxon Developers
    • Documentation
      • Cinema 4D Python API
      • Cinema 4D C++ API
      • Cineware API
      • ZBrush Python API
      • ZBrush GoZ API
      • Code Examples on Github
    • Forum
    • Downloads
    • Support
      • Support Procedures
      • Registered Developer Program
      • Plugin IDs
      • Contact Us
    • Categories
      • Overview
      • News & Information
      • Cinema 4D SDK Support
      • Cineware SDK Support
      • ZBrush 4D SDK Support
      • Bugs
      • General Talk
    • Unread
    • Recent
    • Tags
    • Users
    • Login
    1. Maxon Developers Forum
    2. Cinema 4D SDK
    Log in to post
    Load new posts
    • Newest to Oldest
    • Oldest to Newest
    • Most Posts
    • Most Votes
    • Most Views
    • A

      Is it possible to control Camera with keyboard WASD like a FPS game?

      • • AiMiDi
      8
      1
      Votes
      8
      Posts
      3.2k
      Views

      A

      @ferdinand Wow,thank you so much ferdinand!

    • ThomasBT

      Help needed * .res files, dialogs etc...Plugin beginner

      r23 python windows • • ThomasB
      5
      0
      Votes
      5
      Posts
      828
      Views

      ManuelM

      @thomasb said in Help needed * .res files, dialogs etc...Plugin beginner:

      but can I do my own init function?

      yes you can, specially if you want to initialize some variable. But you should not create any geometry there and return this geometry in GVO (get virtual object).

      About the group, there's a note about it here. Each NodeType have a "parent" group. Glad that it is working now.

      Cheers,
      Manuel

    • chuanzhenC

      About TimeLine Coordinate System

      s22 python • • chuanzhen
      3
      0
      Votes
      3
      Posts
      654
      Views

      chuanzhenC

      @ferdinand Thanks for your detailed reply!
      " 2.The timeline (and as a matter of fact also the world coordinate system) has no implied unit. There is no direct translation as 1px == 1cm as both the horizontal axis and vertical axis depend on the zoom level." solved my question!

    • fwilleke80F

      CustomGui and CustomDataType examples... not used anywhere?

      c++ classic api sdk • • fwilleke80
      6
      0
      Votes
      6
      Posts
      997
      Views

      ManuelM

      hi,

      sorry i didn't had time to investigate yesterday. I'm happy that you find out the solution.

      Cheers,
      Manuel

    • W

      Visibility Red Button

      python • • WDP
      6
      0
      Votes
      6
      Posts
      1.1k
      Views

      ferdinandF

      Hello @WDP,

      when there are no further questions, we will consider this topic as solved by Wednesday, December the 1st.

      Thank you for your understanding,
      Cheers Ferdinand

    • bacaB

      GetAndCheckHierarchyClone + dynamics

      • • baca
      7
      0
      Votes
      7
      Posts
      1.0k
      Views

      bacaB

      @ferdinand Thanks, no issues so far.

    • A

      How to get VolumeData?

      r21 c++ • • AiMiDi
      5
      0
      Votes
      5
      Posts
      733
      Views

      ferdinandF

      Hey @aimidi,

      I need further optimization, and I need to check whether the scene (tags, objects, et cetera) has been changed. Does BaseDocument.Polygonize()copy the Dirty and HDirty of the object?

      This why I hinted at Polygonize() not always being up to the task. There is unfortunately no easy way to get informed about specific classic API scene graph changes. There is the broad core message EVMSG_CHANGE which is sent by EventAdd() and will inform you that 'something' changed but exactly not what did change. Which makes it quite a bit of work to synchronize two scene graphs in a performant way, the classic API one from Cinema 4D and one from an external render engine, as you then have to determine the change yourself. And if it is a relevant one, as you might not care about all scene elements of the Cinema 4D scene graph in the render engine scene graph.

      One useful pattern to use in this context are GeMarker and the MAXON_CREATOR unique ID attached to nodes. This is because scene elements get reallocated quite often in the Cinema 4D scene graph, so you cannot simply have an object 'MyCube' in your renderer scene graph which holds a BaseObject pointer to its Cinema 4D scene counter part for synchronization purposes.

      And to answer your question about dirty flags: No, Polygonize() will copy objects and transform generators into discrete geometry. They cannot share dirty flags (see example at the end).

      Cheers,
      Ferdinand

      import c4d def main(): """ """ docFirst = doc.GetFirstObject() print (f"{docFirst.GetHDirty(c4d.HDIRTYFLAGS_ALL)=}") temp = doc.Polygonize() tempFirst = temp.GetFirstObject() print (f"{tempFirst.GetHDirty(c4d.HDIRTYFLAGS_ALL)=}") if __name__=='__main__': main() docFirst.GetHDirty(c4d.HDIRTYFLAGS_ALL)=5 tempFirst.GetHDirty(c4d.HDIRTYFLAGS_ALL)=3
    • A

      How do dynamical systems update objects?

      c++ r21 • • AiMiDi
      6
      0
      Votes
      6
      Posts
      992
      Views

      ManuelM

      Hi,

      the scenehook is called from the CoreThread, that's why you must be sure that your sceneHook is 100% safe and not blocking/crashing.

      I can't talk about our internal implementation. But, to save some time, you could disable the dynamics on the project settings, and keep using our tags to retrieve the data, parameters to drive the simulation.

      Cheers,
      Manuel

    • chuanzhenC

      SetTimeRight fail!

      python s22 • • chuanzhen
      10
      0
      Votes
      10
      Posts
      1.5k
      Views

      chuanzhenC

      @ferdinand I also use ScreenToGif to make pictures!

    • kbarK

      Remove settings from Render Settings

      r23 s24 r25 c++ • • kbar
      2
      0
      Votes
      2
      Posts
      403
      Views

      ManuelM

      Hi,

      you must overload the RenderEngineCheck function and return false if the passed ID are those settings. The documentation has some example.

      Cheers,
      Manuel

    • N

      Cutome Render Token do not update Filename each Frame

      • • nason
      11
      0
      Votes
      11
      Posts
      1.5k
      Views

      ferdinandF

      Hello @nason,

      without any further questions we will consider this topic as solved by Friday, December the 17th.

      Thank you for your understanding,
      Ferdinand

    • Y

      R24 compiling issue (error C2220: the following warning is treated as an error)

      c++ project tool python s24 sdk • • yaya
      4
      0
      Votes
      4
      Posts
      1.4k
      Views

      ferdinandF

      Hello @yaya,

      without any further questions we will consider this topic as solved by Friday, December the 17th.

      Thank you for your understanding,
      Ferdinand

    • W

      How to move multiple objects axis to origin?

      python • • wilsonic
      4
      0
      Votes
      4
      Posts
      1.1k
      Views

      ferdinandF

      Hello @wilsonic,

      without any further questions we will consider this topic as solved by Friday, December the 17th.

      Thank you for your understanding,
      Ferdinand

    • A

      Mospline iterate start/end

      • • ashambe
      4
      0
      Votes
      4
      Posts
      728
      Views

      ferdinandF

      Hello @ashambe,

      without any further questions we will consider this topic as solved by Friday, December the 17th.

      Thank you for your understanding,
      Ferdinand

    • jenandesignJ

      baking material channel and applying result to another material from python tag

      python r25 • • jenandesign
      9
      0
      Votes
      9
      Posts
      1.3k
      Views

      ferdinandF

      Hello @jenandesign,

      without any further questions we will consider this topic as solved by Friday, December the 17th.

      Thank you for your understanding,
      Ferdinand

    • W

      Assignment Grouped

      r21 • • WDP
      6
      0
      Votes
      6
      Posts
      807
      Views

      ferdinandF

      Hello @wdp,

      without any further questions we will consider this topic as solved by Friday, December the 17th.

      Thank you for your understanding,
      Ferdinand

    • B

      Global change notifications

      c++ sdk • • BarnaBuzaVentuz
      3
      0
      Votes
      3
      Posts
      448
      Views

      ferdinandF

      Hello @BarnaBuzaVentuz,

      without any further questions we will consider this topic as solved by Friday, December the 17th.

      Thank you for your understanding,
      Ferdinand

    • W

      How to traverse a GeListNode tree

      python r25 r23 s24 windows macos • • WDP
      5
      0
      Votes
      5
      Posts
      1.4k
      Views

      ferdinandF

      Hello @WDP,

      without any further questions we will consider this topic as solved by Friday, December the 17th.

      Thank you for your understanding,
      Ferdinand

    • A

      Python script to keyframe visibility of object

      • • augustin
      4
      0
      Votes
      4
      Posts
      1.1k
      Views

      ferdinandF

      Hello @augustin,

      without any further questions we will consider this topic as solved by Friday, December the 17th.

      Thank you for your understanding,
      Ferdinand

    • W

      select subobjects assign command

      r21 • • WDP
      4
      0
      Votes
      4
      Posts
      599
      Views

      ferdinandF

      Hello @WDP,

      without any further questions we will consider this topic as solved by Friday, December the 17th.

      Thank you for your understanding,
      Ferdinand