i didn't swith to CS6 yet, so i can tell you for sure,
but from what i know, most plug-ins created with the cs5 SDK should work with CS6.
only a few require minor adjustments. (probably avoiding deprecated suites)
as for switching to mac:
unless you used some specific OS API, are one of the very very few api fcuntions that are specific to mac or pc (such as GET_MAIN_WHND()), then it should be exactly the same code for mac/pc.
on the mac SDK, just duplicate an existing project, exactly as you did on the pc, and copy your code.
effects vs AEGPs:
effects are placed on a layer, they get input and output buffers, and they (should) process video and audio. effects can access image data from other layers. (look at the "checkout" sample to see how)
AEGPs are for anything else. they are not placed on layers, they are loaded once when AE boots, and live thoughout the session. they can access video sources, but they do not get automatically called upon to render a specific layer.
so, if it a color corrector? then it's an effect.
is it a new formant importer? then it's an AEGP.
Hey Jeff! I'm also pretty new to this but starting to get into it. What I do is I develop using the latest functions of the CS5 SDK, and then everything works with CS5.5 and CS6 as well. Note that you can also create a combination of Effects and AEGP and let them communicate. Also Effects can "check out" the pixels of other layers meaning you can actually work with multiple layers using Effects as well, depending on what you want to do.
I work on Mac and will need to compile some things for Windows soon. No platform specific code that I know of. If you are interested, maybe we could make some deal, I compile Mac for you if you compile Windows for me? Send me a PM if you are interested!
Thanks for the info. Sorry I haven't gotten back to you sooner-- I've been having fun experimenting with the SDK.
I have a customer who wants me to write some plug-ins to do all sorts of interesting things, and I'm trying to figure out whether I need AEGPs or effects. Effects can access info from other layers, but if I want to add layers and items to the comp from my plug-in, it sounds like I would need to do this from an AEGP rather than from an effect.
As far as platform-specific code, it looks like I'll need to do some custom GUI work, so I guess that means having two versions of the classes that do that.
So far I've been enjoying playing with the SDK. So far I've been able to figure out most things by a combination of the SDK manual, looking at example plug-ins, and looking at the header files. It's nice to have the forum for the remaining questions.