SDK Documentation
-
On 26/09/2014 at 06:55, xxxxxxxx wrote:
Oh good!
Thank you for the explanation.
Indeed I was a bit frightened as I saw the new R16 SDK documentation without all the additional informations and structure I was accustomed from the previous releases.
-
On 26/09/2014 at 14:11, xxxxxxxx wrote:
In case anybody missed this thread over at CGSociety, worth a read:
-
On 28/09/2014 at 04:20, xxxxxxxx wrote:
Here
s a post from one of Cinema
s known and respected plugin developers saying he is quitting because of lack of updates and support in the API and documentation between R12 and R16:http://forums.cgsociety.org/showpost.php?p=7895394&postcount=70
It
s a real shame and i know that Maxon are finally making noises about these things, but i think it
s worthwhile stressing the point. And despite the thread linked in the previous post ( huge discussion over at CGSociety ) I still worry that Maxon arent quite getting the point about what developers actually need and want to see with the API and docs.. Sincerely hope they get their s\*\*t together and we don
t end up with yet another half arsed solution that really hasnt been properly sounded out. Listen to what the community are saying Maxon - that
s all i`m saying[edit]
And god damnit can we fix this forum! I have to select-all and copy the text when i post a reply on here because half the time the post doesn`t go through and i have to hit back and repost..
-
On 28/09/2014 at 10:16, xxxxxxxx wrote:
About Art 2 Bit, it's unfortunate and we are not happy about this, obviously.
As I said multiple times now, (even on the CG thread you are pointing to) change is coming.We are in the middle of automating the header file documentation generation. It is a very important step because it will make all MAXON developers collectively responsible for documenting the API without relying on a documentation specialist to play catch-up. This means we can hope to have an almost complete and accurate coverage of our APIS in the future.
We have 2 new support engineers starting with us October first. I'll announce next Wednesday. They are not responsible for the past but they will be trying to help you having a better SDK support experience in the future. I will be appretiative that you give them the chance to shine and make a difference. That's what you are asking for right?
The SDK support website will change in the coming month. We are not touching the forum just yet but we are looking into how it it can be improved without loosing its content.
Originally posted by xxxxxxxx
Here
s a post from one of Cinema
s known and respected plugin developers saying he is quitting because of lack of updates and support in the API and documentation between R12 and R16:http://forums.cgsociety.org/showpost.php?p=7895394&postcount=70
It
s a real shame and i know that Maxon are finally making noises about these things, but i think it
s worthwhile stressing the point. And despite the thread linked in the previous post ( huge discussion over at CGSociety ) I still worry that Maxon arent quite getting the point about what developers actually need and want to see with the API and docs.. Sincerely hope they get their s\*\*t together and we don
t end up with yet another half arsed solution that really hasnt been properly sounded out. Listen to what the community are saying Maxon - that
s all i`m saying[edit]
And god damnit can we fix this forum! I have to select-all and copy the text when i post a reply on here because half the time the post doesn`t go through and i have to hit back and repost..
-
On 28/09/2014 at 11:56, xxxxxxxx wrote:
I'm eager to see the new support guys. Because I have questions about the new file structure and compiling for R16.
The docs briefly mention something about being able to create plugins anywhere we want.
But I can't get them to build unless they're in that "examples" folder. OUCH!I'm hoping there's something I'm missing that the docs aren't explaining.
Because having to do all of the plugin compiling from inside of that examples folder would suck.-ScottA
-
On 28/09/2014 at 14:06, xxxxxxxx wrote:
The easiest way to create a plugin project/solution is to clone the SDK in another folder located *exactly* at the same hierarchy level. visual studio solutions uses relative paths to point to the framework files. If you really are intent in changing the plugin location, you will need to change the relative paths in .sln, .vcprojx, etc.
Writing your plugin is started easilly by lobotomizing your SDK clone until you have the closest plugin sample to what you want to do. get a plugin ID and you are good to go. for Mac, I did a project once, not sure how easy it is but expect it should be that straight forward too. I know that writing xcode project file by hand is looking for trouble.
Originally posted by xxxxxxxx
I'm eager to see the new support guys. Because I have questions about the new file structure and compiling for R16.
The docs briefly mention something about being able to create plugins anywhere we want.
But I can't get them to build unless they're in that "examples" folder. OUCH!I'm hoping there's something I'm missing that the docs aren't explaining.
Because having to do all of the plugin compiling from inside of that examples folder would suck.-ScottA
-
On 28/09/2014 at 15:16, xxxxxxxx wrote:
Even If I use the copy and paste method. I'd still have that annoying "examples" parent folder in there.
I did look in the cinema4dsdk.sln & cinema4dsdk.vcxproj files for the paths. But I'm not finding any entries with that path.I need instructions how to get rid of that. So I can compile the cinema4dsdk without a parent folder.
The way it's been in all of the previous versions.-ScottA
-
On 28/09/2014 at 16:11, xxxxxxxx wrote:
Zip your project, send it to me at [email protected]
give me enough context so that I can understand your issues. -
On 28/09/2014 at 17:02, xxxxxxxx wrote:
I'm talking about the one that comes with c4d: plugins/examples/cinema4dsdk
This used to be in the plugins folder in previous versions: plugins/cinema4dsdk-In the previous versions. When we built it by running the .sln file. The plugins show up in the plugins menu in C4D.
-In R16. Now that cinema4dsdk is inside of a parent folder called "examples". The plugins are now found in plugins->examples.
That's an extra dig into the menu system every single time you want to get at your plugin!The reason why this is bad (to me anyway) is because it's already a hassle to make plugins with C++. Because we have to close C4D down every time we change our code. And then re-launch C4D after we change and compile the C++ code.
Now with R16's new file structure and parent folder layout. We also have to do another mouse click to get at our plugins. Because Maxon put them in a sub menu called "examples".
They took an already bad workflow. And made it even worse by forcing us to dig into a sub menu every time we want to run a plugin.
That's why I want to get rid of that parent folder.Maybe I'm making a mountain out of a molehill. But to me this is a giant extra hassle in an already cumbersome workflow.
I open & close C4D literally hundreds of times while making C++ plugins.
And now I'll also have to add digging through the menus to that already painful workflow.
So if there's a way to get rid of that parent folder. I'd really like to know how to do that. So I can get the plugins to show up under the plugins menu again.-ScottA
-
On 29/09/2014 at 12:42, xxxxxxxx wrote:
Hey Scott,
Originally posted by xxxxxxxx
Now with R16's new file structure and parent folder layout. We also have to do another mouse click to get at our plugins. Because Maxon put them in a sub menu called "examples".
In the C4D gui, I always use "Window->Customization->Customize Commands" and find my plugin with the "name filter". Then put a check in "Edit Palates" and drag the icon for my plugin into the top row of C4D's shortcuts. This speeds things up even more than clicking the plugins menu and then finding your plugin.
If you are developing a GeDialog, you can customize the layout by docking your plugin's dialog and then use "Window->Customization->Save As Startup Layout". If you have your CommandData class configured properly(virtual Bool RestoreLayout(void* secret)), your Dialog will be open in the layout C4D starts with. You can always revert back to the original startup layout using the "Layout:" pulldown menu in the top right corner of C4D gui and select "Standard", then "Window->Customization->Save As Startup Layout" to make this the next layout that C4D starts up with. Any layout can be saved and then be made the startup layout.
Also, if your plugin is working with some scene object and you don't want to create or open it it every time you start C4D, get your scene set up the way you want it before you run your plugin, then save the scene as "new.c4d" in the root of the user preferences folder for the version of C4D you are working with. Now C4D will start with the scene loaded saving even more clicks.
Originally posted by xxxxxxxx
So if there's a way to get rid of that parent folder. I'd really like to know how to do that. So I can get the plugins to show up under the plugins menu again.
When you are done developing your plugin, I believe(do not know for a fact) you can simply move everything needed for production up one directory and the plugins menu will behave as before. I tried it with the SDK and the plugins I executed worked fine. This may not work if the plugin needs to load items outside the the res folder at C4D startup. This has not been thoroughly tested, so Forum please let me know if this information is incorrect and I will edit this post.
Joe Buck
-
On 29/09/2014 at 14:46, xxxxxxxx wrote:
Hey Scott,
If you move your cinema4sdk back down to the plugins folder, or clone it as suggested, then to get it running do the following.
- Edit the MAXON_ROOTDIR inside of projectsettings.props.
Currently it is
<MAXON_ROOTDIR>..\..\..</MAXON_ROOTDIR>
Change it to this
<MAXON_ROOTDIR>..\..</MAXON_ROOTDIR>
- Open up the solution.
You will now notice that the cinema4dsdk loads but the cinema.framework doesn't. So lets just add it again.
Remove the cinema.framework from the solution in VS.
Right click on the solution and choose Add->Existing Project
Go to the folder
16\frameworks\cinema.framework\project
And add the project file cinema.framework.vcxproj.
- Right click on the Solution again and choose Project Dependencies.
Make sure cinema4dsdk is shown in the "Projects" drop down. Then check the "cinema.framework" in the "Depends on" box below.
- Lastly you need to add a reference to the framework.
Right click on the cinema4dsdk project and choose Add->References.
Next click the "Add New Reference" at the bottom of the dialog that appears.
Check the box for cinema.framework and press ok. Then ok again on the other dilaog.
- Compile!
Build your solution and you should now be all good to go.
Kent
-
On 29/09/2014 at 15:02, xxxxxxxx wrote:
Nice! Do you know how to do this for the Xcode project?
Thank you,
Joe Buck
-
On 29/09/2014 at 15:08, xxxxxxxx wrote:
Originally posted by xxxxxxxx
@kbar
Nice! Do you know how to do this for the Xcode project?
Thank you,
Joe BuckNo sorry. I am not on my mac at the moment to have a look.
-
On 29/09/2014 at 15:58, xxxxxxxx wrote:
Hi Joe,
Yeah. I know I can do those kinds of things. But that requires setting them up every time I want to work on a plugin.
I often grab multiple plugins and paste them into the plugins folder to work on them. Then quickly work on them. Then save them back to my storage drive.
This lets me quickly work on multiple plugins a little bit at a time.
Having to set up shortcuts for them just to work on them would be a huge hassle.I need to be able to compile the cinema4dsdk without that stupid parent folder in there.
It's messing up my clean and efficient workflow.-ScottA
-
On 29/09/2014 at 16:31, xxxxxxxx wrote:
Hey Scott,
Originally posted by xxxxxxxx
I need to be able to compile the cinema4dsdk without that stupid parent folder in there.It's messing up my clean and efficient workflow.
Did you try my solution?
Kent
-
On 29/09/2014 at 17:47, xxxxxxxx wrote:
No. Somehow I missed your post Kent.
It works great. Thanks.-ScottA
-
On 29/09/2014 at 17:53, xxxxxxxx wrote:
@Scott,
Originally posted by xxxxxxxx
Yeah. I know I can do those kinds of things. But that requires setting them up every time I want to work on a plugin.
Your response is not correct. Since I spent the time to respond to a question, I would like to make sure my post can be useful to others who are not so quickly dismissive.
My solution to your dilemma DOES NOT require that you set it up every time you work on a plugin or plugin group. It requires that you set it up ONCE when you start a new plugin project. Once a layout has been saved, plugin shortcuts simply do not show up in the palette when the plugin is not present in the plugins folder. Shortcuts re-appear in palettes when the plugins are put back in the plugins folder.
Originally posted by xxxxxxxx
We also have to do another mouse click to get at our plugins.
If you are actually into counting clicks, my solution will save your described workflow many.
Cinema 4D has one of the best GUIs in the business. Explore it and you will find solutions to many click causing dilemmas. Throw in some Python and you are home with a beer in you hand by 5:30 every day
Best of Luck,
Joe Buck
-
On 29/09/2014 at 18:10, xxxxxxxx wrote:
Sorry about that Joe. I didn't mean to come off as dismissive.
Sorry if I came off as rude.
It just wasn't the solution I wanted.-ScottA
-
On 29/09/2014 at 19:18, xxxxxxxx wrote:
@Scott
No worries. You just sound frustrated to me. I would also like you to know that many of the questions you have asked on this forum have generated answers that really helped me understand parts of the SDK.So thanks,
Joe Buck
-
On 01/10/2014 at 17:02, xxxxxxxx wrote:
Can someone please tell me the differences between the Debug/Release/Intel and the LibDebug/LibRelease/LibIntel configurations in the VisualStudio project for the cinema framework?