Maxon Developers Maxon Developers
    • Documentation
      • Cinema 4D Python API
      • Cinema 4D C++ API
      • Cineware 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. hoganXYZ
    H
    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 2
    • Best 0
    • Controversial 0
    • Groups 0

    hoganXYZ

    @hoganXYZ

    0
    Reputation
    1
    Profile views
    2
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    hoganXYZ Unfollow Follow

    Latest posts made by hoganXYZ

    • RE: C4D Python: Redshift IPR Start/Stop Control

      Hey @m_adam , thanks for that info. What about for commands that don't appear in the Script Log, such as 'Send snapshot to picture viewer'? Are those commands not possible to interact with programmatically?

      Thanks,
      Hogan

      posted in Cinema 4D SDK
      H
      hoganXYZ
    • Comparing render settings

      Hello fellow developers, this is my first post so I hope I've accurately tagged and formatted. I'll try to be as clear as possible, but this is one of my first large scale projects so I may miss some very obvious issues, refer to things incorrectly, or build things out in a overly-verbose way. I'm more than happy to clarify anything.

      The Goal

      Allow an artist to define render setting and project setting guidelines in a scene file as well as mark the critical settings. This data would then be used as a sanity check before a job could be submitted to a web based or local render farm.

      Current approach

      Currently I am only focused on properly generating the guidelines as it will teach me about properly accessing the data I need. Here is the current basic flow:

      • Get the current doc
      • Get the Active Render Data
      • Get the name of the render data
      • For the data and ids in the renderdata.GetDescription(c4d.DESCFLAGS_DESC_NONE), get the name and the identity.
      • GetDataInstance of the renderdata, then use GetData(each id) to get the value of each setting

      ex: Parameter Name: Anti-Aliasing, ID: (5002, 15, 110304), Type: RDATA_ANTIALIASING

      First question: This does not allow me to find the name, or description, or container id of the selected option, so I can get the value and look up the representation of that value, but it requires me to reference the drsettings.h file or keep a lookup table in my script. Is there a way I can find the strings I'm looking for? I want to retrieve "RDATA_ANTIALIASING_GEOMETRY", "Geometry"

      It is important that I retrieve detailed information about the redshift AOV settings, so I have split that into a separate process. I wrote this first, so the method is different and I will likely refactor to work more similarly to above.

      • get redshift videopost redshift.FindAddVideoPost(renderdata, redshift.VPrsrenderer)
      • iterate through a dictionary of hard-coded container ids with corresponding nested dictionaries describing their selections.

      ex:

      "REDSHIFT_AOV_FILE_COMPRESSION" : {
              "Display Name" : "File Compression Type",
              "Values" : {
                  1: {
                      "Display Name" : "File Compression Default",
                      "Attribute Identifer" : "REDHIFT_AOV_FILE_COMPRESSION_DEFAULT"
                  },
                  100: {
                      "Display Name" : "File Compression TIFF LZW",
                      "Attribute Identifer" : "REDHIFT_AOV_FILE_COMPRESSION_TIFF_LZW"
                  },
      

      Second question: Am I making this way harder on myself than I need it to be? Is there a more elegant solution that simply 'zips' two render settings and flags any crashes?

      I am still struggling to understand how this data is represented through the sdk and how to debug. I am trying to figure out how I can 'browse' the data that is retrieved when I call GetActiveRenderData() for example, as that would help me decide how to store and access it later.

      Anyway I hope this isn't too basic of a question and I am already very thankful for the insight shared on other posts. I will be continuing to work on this for a while, so if I make any significant changes I will update here.
      Thanks in advance.

      posted in Cinema 4D SDK windows 2024 python
      H
      hoganXYZ