THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 10/10/2008 at 05:22, xxxxxxxx wrote:
Cinema 4D Version: 10.5
Platform: Windows ; Mac OSX ;
Language(s) : C++ ;
Since we are currently developing a C4D plugin we were wondering:
What is the SDK version that most people use? Some of our beta testers report, that the current build (compiled against the 10.5 SDK) will not load in 10.1. Would it make sense to use an older SDK to make the plugin available to a wider range of people? Is it possible to get older SDK version? (Couldn't find any on the website)
On 10/10/2008 at 06:09, xxxxxxxx wrote:
Ooh, that is quite a hard question to answer. Now that R11 is released I think it is only a matter of time until most users will upgrade. 10.1 and 10.5 are currently also heavily in use.
I doubt however that MAXON will release any numbers concerning this. Anyway, it´s really no problem to support 9.6, 10.1, 10.5 and 11 with the same code, targeting the according SDKs. Of course, this highly depends on your code, but 10.1 and 10.5 don´t differ too much SDK wise so you should be on the safe side compiling with the 10.1 SDK.
It all depends. Concerning older SDK, contact MAXON directly, I am sure they´ll provide you with the SDKs or the according Demo versions including the SDKs.
On 10/10/2008 at 07:46, xxxxxxxx wrote:
Yeah, you kinda have to just get in the habbit of downloading each DEMO version as they come out - that way you at least have the SDKs from them, even if you don't purchase that update yourself.
As Katachi mentions, the choice of version to use will depend a lot on what your plugin does, and if you continue development, you'll likely end up doing builds for multiple releases, as needed.
"In general" (but not always), plugins written for one C4D release will continue to work in later releases, but again, that will depend on what your plugin does and special considerations like 64-bit compiles (supported as of R11 on the Mac, but supported with R10.1 on the PC), or new features that you might want to support.
With my latest plugin (Riptide Pro), I have a R9.6 build for Mac & PC (the first release that supports Universal Binary on the Mac), but it has a few R10.1 features missing. I then have a separate R10.1 build for both Mac and PC, which can be used with R10.1, R10.5 and R11...
I just finished doing the 64-bit build for the R10.1 PC version and realized that in order to ship a 64-bit Mac version, I'll have to start doing an R11 build as well. So in this case, I'm doing:
R9.6 (32bit, Mac and PC) - earliest version that can be built on Mac without resorting to CodeWarrior compiler.
R10.1 (32bit Mac and PC, 64bit PC) - picks up the new R10.1 "Layers" feature, along with 64bit on PC.
R11 (32bit and 64bit Mac and PC) - first version that supports 64bit on Mac.
...so the R9.6 build works in later versions, but the other builds were needed to add a feature and/or support for 64bit. So in this case, I'm doing/maintaining 8 separate compiles at this point, with only a few #defines in the code to account for differences in SDK versions.
My code could actually compile as far back as R8.2 without much work, but I just don't want to maintain that many builds, so it's a trade-off of potential customers (fewer and fewer for lower release numbers) vs how many different compiles you want to maintain.
The low-end target keeps changing - R9.6 is probably a 'reasonable' low end target - but even that is getting only very few downloads compared to the R10.1 or later version and may not be worth the effort.