• Can't work out BaseDocument.StartPickSession

    python r21
    7
    0 Votes
    7 Posts
    1k Views
    M
    Without a further reply from you until tomorrow I will consider and mark this topic as solved, but feel free to open it again if you have more information. Cheers, Maxime.
  • XPRESSO Python Node "Could not find port value for..." Error

    python
    3
    0 Votes
    3 Posts
    630 Views
    N
    @m_magalhaes Oh man... thank you so much. Even when I read your reply, I couldn't "see" it in the Node... was staring at it for to long. thanks.
  • Python Generator - Accessing Contour Spline

    python
    3
    0 Votes
    3 Posts
    520 Views
    M
    Thanks again @PluginStudent for helping me so quickly. That was enough information to help me find the .MakeUserSpline function that allows me to do exactly what I'm after: MakeUserSpline('sin(x * PI)', 5) More info here for anyone looking. Cheers, Jamie
  • This topic is deleted!

    1
    0 Votes
    1 Posts
    1 Views
    No one has replied
  • Python Generator - How to assign a field object to a deformer

    python
    6
    0 Votes
    6 Posts
    1k Views
    M
    Oops - I forgot to have the following line: myDefObj[c4d.FIELDS] = myFieldList It all works perfectly now. Thanks again for your help @PluginStudent
  • Passing a variable to the python script

    r20 c++ python
    5
    0 Votes
    5 Posts
    783 Views
    ferdinandF
    Hi, yeah like that. __name__ is just another module bound constant attribute. It is a dunder attribute, signaling a special importance, indicated by its double underscores, but that is only a convention and not a functionality. You can set __name__ to anything you like, just like you could set __author__ to your favourite ice cream brand. The convention dictates that __name__ tells the script in which context is being executed, where __main__ should signal that the module is executed directly. You could set it to my_cpp for example, so that your scripts could react differently to being executed from your C++ code. Cheers, zipit
  • Reading script file into memory

    r20 c++
    11
    0 Votes
    11 Posts
    2k Views
    P
    To summarise, there are 2 projectdefinition.txt files. on main / sdk level, Define which project (plugins, etc.) Example: Platform=Win64;OSX Type=Solution // defines the level of rigour of the source processor's style check stylecheck.level=0 Solution=\ plugins/cinema4dsdk;\ plugins/maxonsdk.module;\ plugins/commandline;\ plugins/CommandLineRendering on plugin level, // Configuration of a custom solution in the projectdefinition.txt file Example: // Supported platforms Platform=Win64;OSX // Type of project Type=DLL // this plugin depends on these frameworks: APIS=\ cinema.framework; \ misc.framework; \ image.framework; \ core.framework; \ python.framework // Enable some advanced classic API support; not needed for hybrid plugins C4D=true // Plug-in code-style check level stylecheck.level=0 // Custom ID ModuleId=net.maxonexample.commandlinerender
  • attribute 'nodiscard' requires compiler flag '/std:c++17'

    r20 sdk c++
    16
    1
    0 Votes
    16 Posts
    3k Views
    P
    @r_gigante said in attribute 'nodiscard' requires compiler flag '/std:c++17': Well @pim , that's indeed the issue. Sticking to the recommended IDE is always recommended. Indeed going back to VC++2015 solved the issues. But now I have problems with the python.framework. See https://developers.maxon.net/forum/topic/12439/reading-script-file-into-memory/8
  • Baking MoGraph color animation to keyframes.

    python r20
    6
    0 Votes
    6 Posts
    2k Views
    ManuelM
    hi, I will mark that thread as resolved tomorrow if you don't have anything to add Cheers, Manuel
  • SDK example CommandLineRendering

    r20 c++ sdk
    3
    0 Votes
    3 Posts
    484 Views
    P
    Ok, thank you. I should have spotted that myself. -Pim
  • Access Clone of Cloners?

    r21 python
    6
    0 Votes
    6 Posts
    1k Views
    ManuelM
    hi, tomorrow, I will consider that thread as solved without further news. Cheers, Manuel
  • Save Project As... new project name

    c++
    9
    0 Votes
    9 Posts
    2k Views
    ManuelM
    hi sorry it wasn't clear enough. yes sure, doing documentInfoData->doc->GetDocumentName() is the same as doc->GetDocumentName() I've updated the documentation with Save Project with Assets to be a bit more clear. Cheers, Manuel
  • 0 Votes
    4 Posts
    1k Views
    ManuelM
    Hi, I often use the python generator to create some prototype myself. So it's ok for me. But if you want to give or sell your result, you should move to a plugin. It's not hard at all, if you already did that prototype, the plugin is easy, and we are here in case you have some issue. Nice result Cheers, Manuel
  • Generator sticks in a dirty loop

    4
    0 Votes
    4 Posts
    1k Views
    matniedobaM
    Thank you @zipit for your comprehensive response, especially with the link to the coding guide. I guess it might be better to create the spline manually from the points which are connected by the edges without the usage of SendModellingCommand. It was good for prototyping functionality but as you mentioned, it is hard to debug. I appreciate you took the time (and I know it's a lot of convoluted code) to read through it. @r_gigante -> the work is currently on my side so you don't need to bother. I think I have enough information to do a second iteration and rewriting this from scratch.
  • AttributeError: 'GUI' object has no attribute 'AddCheckBox'

    python
    3
    0 Votes
    3 Posts
    705 Views
    G
    Well Uh.....Yea.....Guess I should take a break......Thanks for the point out of the lower case b........ This is solved. Thanks Plugin Student! Cheers! MattG
  • Insert String Info Into AddStaticText dialog command

    Moved
    3
    0 Votes
    3 Posts
    581 Views
    G
    Thanks Maxime, understood on the rules and regulations, sorry about that. I understand the group concept now, read up more on it and I have a better idea on how to approach the goal I'm trying to get to. I have another error I'm getting but I'll try to do another post and see if I tag it right! Thanks for your time! Cheers! MattG
  • BaseLink from cloned document

    r19 r20 r21 c++
    11
    0 Votes
    11 Posts
    2k Views
    P
    There is no relationship between BaseContainer IDs and plugin IDs. All you need is a unique ID, that you can use as a BaseContainer ID. This forum (the plugin ID page) provides such IDs.
  • Check if GetVirtualObjects is called for Motion Blur

    c++
    12
    0 Votes
    12 Posts
    2k Views
    M
    Hi @victor unfortunately, the development team told us there is no way to achieve that without hooking directly into the render which is not possible for Cinema 4D built-in rendered. Cheers, Maxime.
  • Create a download progress bar in python

    python
    5
    0 Votes
    5 Posts
    1k Views
    M
    @indexofrefraction and just in case you have this example from CUSTOMGUI_PROGRESSBAR if you want a more minimal script. Cheers, Maxime.
  • HandleShaderMessage

    3
    0 Votes
    3 Posts
    493 Views
    r_giganteR
    Hi @RenatoT thanks for reaching out us. Can you please: add a tag to specify the C4D version you're using? can you make use of the Q&A functionality? With regard to HandleShaderMessage, I confim that it is indeed used by shaders in NodeData::Message() when they have subchannels. The code snippet found the call documentation represents exactly what is used in the Fusion shader with regard to the Base, Mask and Blend channels. Instead with regard to SHADERINFO_DYNAMICSUBSHADERS, assuming I've checked the version of Cinema you're working with, it is used no more. Looking forward your further notes, give best.