The Maxon SDK Team is currently short staffed due to the winter holidays. No forum support is being provided between 15/12/2025 and 5/1/2026. For details see Maxon SDK 2025 Winter Holidays.
  • C4D R21 does not run on macOS within deamon any more

    Moved
    7
    0 Votes
    7 Posts
    2k Views
    H
    Any update?
  • Vertex map python setup

    Moved
    3
    0 Votes
    3 Posts
    737 Views
    CairynC
    Just to point out, I already answered & posted a full sample scene in this thread: https://www.c4dcafe.com/ipb/forums/topic/109504-python-vertex-map/ plus a detailed explanation on how vertex map calculation works in a free post on my Patreon: https://www.patreon.com/posts/script-club-1-07-34384586 (Just so we don't get work duplicated.)
  • This topic is deleted!

    1
    0 Votes
    1 Posts
    2 Views
    No one has replied
  • Error in strings file documentation?

    4
    0 Votes
    4 Posts
    805 Views
    r_giganteR
    Hi @heilei thanks again for the comment! We'll try, where meaningful, to improve the typography in future releases. Best, R
  • Are PluginStart() and PluginEnd() only for C++ plugins?

    python r21
    4
    0 Votes
    4 Posts
    858 Views
    H
    Ok, got it. Thank you for your reply and clear explanation, r_gigante, much appreciated!
  • c4dpy + Atom

    python
    4
    0 Votes
    4 Posts
    774 Views
    D
    OK, thanks a lot for the quick answer! Cheers
  • Looking for help!

    Moved jobs
    2
    0 Votes
    2 Posts
    527 Views
    CairynC
    Hi; if you're looking for Python development - I'd have some time on my hands. Long-time C4D user and developer (currently creating a Python-for-C4D course actually). Not in the UK though (mainland Europe). If you want to talk about some details, drop me a mail under cairyn (at) tigress (dot) com.
  • Determine if a polygon is facing the camera

    python r20
    5
    0 Votes
    5 Posts
    980 Views
    R
    Once again, thank you, Manuel. I had to do a few changes and it is working now. I even made it select the faces that are within a certain angle from the camera. Here is my code: for i,poly in enumerate(faces): a,b,c,d = poly.a,poly.b,poly.c,poly.d pta = points[a]*mg ptb = points[b]*mg ptc = points[c]*mg ptd = points[d]*mg v1 = pta-ptb v2 = ptb-ptc normal = v1.Cross(v2) normal.Normalize() if c != d: center = c4d.Vector((pta.x+ptb.x+ptc.x+ptd.x)/4.0,(pta.y+ptb.y+ptc.y+ptd.y)/4.0,(pta.z+ptb.z+ptc.z+ptd.z)/4.0) else: center = c4d.Vector((pta.x+ptb.x+ptc.x)/3.0,(pta.y+ptb.y+ptc.y)/3.0,(pta.z+ptb.z+ptc.z)/3.0) direction = cam_off - center norm_dir = direction.GetNormalized() angle = NINETY - normal.Dot(norm_dir) if (angle > 0.0 and angle < max_ang): selection.Select(i)
  • This topic is deleted!

    2
    0 Votes
    2 Posts
    5 Views
  • Ptex Shader Progress

    Moved c++ windows r21
    8
    2
    2 Votes
    8 Posts
    2k Views
    r_giganteR
    Hi @wuzelwazel, thanks a lot for sharing your progresses on the Ptex Shader and for sharing your code. I've moved the thread to the more appropriate "General Programming & Plugin Discussions" hoping other developers could contribute to the discussion. Cheers, Riccardo
  • Error reading resource for Cinema4D after installing redshift.

    Moved r20
    2
    2
    0 Votes
    2 Posts
    986 Views
    M
    https://developers.maxon.net/forum/topic/11570/plugin-affecting-c4d-modules-startup/9
  • Calculate the rounding radius max value of a n-Side object

    Moved c++ sdk
    3
    0 Votes
    3 Posts
    589 Views
    mfersaouiM
    @Cairyn Hi, Thank you. Solution: Float GeIncircle(Int32 n, Float r) { return r * cos(PI / n); } Float max_rrad = GeIncircle(n, r);
  • Formula to calculate cloner radius

    Moved c++ sdk
    3
    1
    0 Votes
    3 Posts
    706 Views
    mfersaouiM
    @r_gigante Hi Riccardo, thank you for your detailed response. That allowed me to find the exact formula. l / (2 * tan((180 / n) * 3.14159 / 180)) Regards, Mustapha
  • How to Generate Dynamic Functions?

    r21 python
    3
    0 Votes
    3 Posts
    573 Views
    B
    Gotcha. Thanks for the code and confirmation. For my code, it's not really a simple printing the ID. Each ID corresponds with a separate function/script. I guess I'll just store them in a separate list. Separate ID list and separate function script list. Then execute them by matching index.
  • Tips for GeDialog GUI ID Management?

    r21 python
    4
    0 Votes
    4 Posts
    705 Views
    B
    Thanks for the response @mp5gosu Yea, this "another level of abstraction" might bite me in other sections of the code but this is the only way I can be sane for now. hehe @m_adam RE: it's also advised to use only iD superior to 1000. Thanks for the note. RE:here is one of the few possible ways The code works as expected. Thanks again! Should make things easier now
  • Calculate FPS tool?

    r21
    3
    0 Votes
    3 Posts
    638 Views
    chuanzhenC
    @m_magalhaes Thanks for your reply
  • Communication between DescriptionTool and GeUserArea

    4
    0 Votes
    4 Posts
    816 Views
    C4DSC
    @s_bach said in Communication between DescriptionTool and GeUserArea: The typical modern approaches are patterns like Model-View-Controller or Model-View-Presenter. In such models, you don't "send data around". Thanks for mentioning this. As stated in my opening post, this is what I have been using, where the "model" is a singleton class, available as a global variable to all plugins to synchronize and share data. Maybe not quite the exact wording. I was just wondering if there is another means of providing this "model" instead of using an instanced (singleton) class via a global variable? So in your example, the interaction with the DescriptionToolData would write data into the model. And the GeUserArea would read that data from the model. The example I provided isn't making use of a "model" as it already represented too much code just to point out the bug that slipped into R21. There I indeed used a very simplified solution by "sending data around". But an overall "thank you" for bringing up the model-view discussion, as this made me realize I could use an observer pattern in another project of mine which would fix its current poorly chosen design. Daniel
  • LinkBoxList and ProcessBar Cinema-4D GUI Script Example

    2
    1
    2 Votes
    2 Posts
    889 Views
    r_giganteR
    Hi Ashton, thanks for sharing your code. Best wishes for the incoming new year! Riccardo
  • Make plugins work in R13? how?

    6
    0 Votes
    6 Posts
    1k Views
    r_giganteR
    Hi P_ron81 thanks for reaching out us. Considering the very early release of Cinema 4D you're referring to, I'm sorry to say we don't support it anymore. I can't also confirm or deny, without having a look at the original code from CactusDan, about the feasibility to build it against the APIs shipped with R13. Cheers, R
  • Seasonal Greetings

    Moved
    3
    3 Votes
    3 Posts
    769 Views
    r_giganteR
    [image: 1576839159860-maxon_x-mas_late_shift_low.jpeg] Dear Developers,     we can't be any happier to receive your holiday season greetings and to know that you feel like at home here. We've faced a few changes across the last years and we've tried to manage them limiting side effects to our support capabilities and effectiveness. In our Team we embrace changes for the better, thinking to the opportunities they might generate rather than to the certainties that they blow away and we'll stand for it all the way long. We also appreciate, and we are greateful for, the level of contribution that we perceive from You, without which, our community, wouldn't ever been the same. Best wishes to you and your loved ones looking forward some relax during the Xmas time and an enthusiastic 2020. Sincerely, Your SDK Team