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

    Naming: plugin vs plugin

    Cinema 4D SDK
    3
    5
    972
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • C4DSC
      C4DS
      last edited by

      Several years ago, when I started my first plugin, I didn't need to distinguish when referring to plugin in plural. Since I only had one plugin project, when I mentioned plugins, I meant multiple "plugins" (nodeplugin, commandplugin, ...) inside my plugin project.

      Years went by, and now I do have quite a few plugin projects, each resulting in a cdl64, xdl64, dylib or xlib file. Still, each of these plugin projects consist of different "plugins".

      Therefore, I was wondering what would be the appropriate term to use in order to distinguish between a plugin-file, something that the user refers to as "plugin", and the actual plugin, which represents a single entity, which represents a CommandData, NodeData, ToolData, DescriptionToolData, ...

      1 Reply Last reply Reply Quote 0
      • M
        mp5gosu
        last edited by

        Imho, just call it plugin component. 🙂

        1 Reply Last reply Reply Quote 0
        • r_giganteR
          r_gigante
          last edited by

          Hi Daniel, thanks for reaching out us.

          With regard to your question, which sounds more as a theoretical question rather a technical one, I can just provide personal considerations here:

          • a plugin is the whole project supposed to deliver a certain set of new functionalities to extend the base application;
          • the added functionalities brought by plugin can be spread across multiple libraries (.dll, xlib, xdl64) with each eventually internally implementing multiple components (NodeData-derived classes can also be considered "hooks" to Cinema)
          • libraries composed by sole MAXON API components are also called a "modules"

          Hoping this can make some sense to you, feel free to come back and provide further considerations.

          Best, Riccardo

          C4DSC 1 Reply Last reply Reply Quote 0
          • C4DSC
            C4DS @r_gigante
            last edited by

            @r_gigante
            Yes indeed, the question is more theoretical than technical. That is the reason I originally posted it in the section "Forum information & resources", as it was more intended to try and agree on a naming convention to be used in the forums.
            I don't mind seeing the topic moved to the development section instead.

            From a user/customer point of view the whole set of new functionalities is considered a "plugin".
            Internally, however, it can consist of many "plugins" (scenehook, nodedata, message, ...).
            Which is confusing to explain in written. When does "plugin" mean the latter, when does it mean the former?
            For instance, the SDK documentation has a page dedicated to Plugin Types. Here "plugin" is meant as the latter, the "component".
            But the introduction of the SDK has a whole page dedicated to Plugin Directory Structure. Here "plugin" is meant as the former, the "new functionality for Cinema 4D".

            When I started developing ... "new functionality for Cinema 4D", a few years ago, it took me a while to understand that "plugin" was used with two meanings. At first I thought you could only write a "plugin" (new functionality) using one specific "plugin" (component) type.
            It took me quite a while before understanding that you could have more than one "plugin" (components) into a single "plugin" (new functionality).

            Just a few days ago, I needed to describe a problem, but it took me quite a while to figure out how to describe without confusing anyone, as I had this plugin, which consisted of plugins, which eventually resulted in missing plugins.

            So far, I haven't yet made up my mind how I should further refer to "plugin" and "plugin" in order to distinguish them ...

            1 Reply Last reply Reply Quote 0
            • r_giganteR
              r_gigante
              last edited by

              Hi Daniel, thanks for sharing your further considerations.

              I see your points and maybe we should consider to update our documentation to reflect the notes above. I will discuss with the team and maybe we could come with a better introduction where the "plugin" term is used in a less generic meaning.

              Cheers, Riccardo

              1 Reply Last reply Reply Quote 1
              • First post
                Last post