You're not selecting the right camera in C-4D. Or rather, you are not setting up the camera properly in C4D. If someone does not beat me to it I will post a screenshot when I get back to a computer.
Thanks, that would be very helpful. Only one camera in my scene so I must not be setting it up right.
c4D has a default camera and any cameras you add. To extract the data the Scene must be set up to use the camera, not the default camera. It's really that simple. In the Camera section of your view port check and make sure you have the camera selected and not the default camera. Then after you extract the camera change the setting in Cineware to use the Comp camera.
I would bet that if you typed c4d extract camera in the AE search help field it would point you to a toturial or two. If I remember right Adobe TV has at least two videos on C4D and C4D lite workflow.
Provide screenshots or the C4D file. I smell something odd here...
Rick, thanks for your response. It sounds like I am setting up the camera correctly - if you read my question again you'll see that when I extract the C4D camera (and then change cineware to comp cam), the first frame is correct and matches with my first frame in C4D.
However, the problem is that the animation on the C4D camera doesn't come through on the extracted camera in AE, so I lose my camera move.
The extracted camera in AE has one set of keyframes at the beginning of the comp that lines up with my C4D file, but no other keyframes.
Mylenium - I've found a work around for now (as I'm racing furiously towards a deadline) but I will upload screensnaps when I can. I would be greatful for any insight you can offer!
Is your camera animated via a rig made up of nulls? I'm running into the same problem you are, and I've traced the issue back to that variable. A camera that's just animated from its own Coord properties translates just fine through Cineware, but I get nothing at all when using a camera rig, such as making my camera a child of a null, which I then rotate to create a smooth orbit.
In CS6, the process of saving a compositing file out in AEC format and importing it to AE managed to account for that sort of thing, but now that AECs apparently don't import into AE CC, I'm not sure how to get around the issue.
I haven't found a way around this myself, short of just importing AECs into CS6, then importing those comps into my CC project. Definitely not a long-term (or really even a viable short-term) solution, but it does seem to get the job done.
You can bake motion in C4D's Timeline window by selecting the tracks and then choosing Bake Keys. Depending on what your rig looks like, you may need some XPresso to get correct world coordinates...
Definitely a good workaround there! Just a bummer to have to save out an
extra C4D file with committed animation like that, but hopefully either the
Cineware or AEC workflows can be corrected soon so that step won't be
I'm reporting the issue over at Adobe's bug report form here:
https://www.adobe.com/cfusion/mmform/index.cfm?name=wishform in case anyone
else wants to join up.
Edit: the plot thickens a little. Looks like a straight camera-parented-to-a-null rig WILL in fact translate properly via Cineware. The problem comes when you use any tags or Xpresso as part of the rig-- such as an Align to Spline tag or a Vibrate tag. Again, this was something that the old AEC workflow could bake for you on the way out of Cinema, but are any of you folks seeing similar results?
Message was edited by: mauser319
Might be a limitation of the process due to how C4D evaluates the object hierarchy and tags in a specific order. Anyway, I'd consider it normal behavior, since the AEC export more or less simply baked that stuff as well...
Well this is no good: in my tests with baking the animation to keyframes, I'm finding that animation coming from tags just isn't being translated. Example: I've got a Camera with an Align to Spline tag, which is following a Helix. I animate Position from 0 to 100, and then highlight the animation track and choose "Bake Objects." The result is that I get a new tag with the animation baked to keyframes, and no effect whatsoever on the Camera object.
So with that behavior, we still do not have a direct path between C4D and AE CC. Here I was a little annoyed by the added inconvenience of baking my own keyframes (when exporting AEC just did everything for me), but if THAT doesn't work, I'm not sure what else to do. Any thoughts?
Aha! I take it back-- for some reason, I'd read that AEC import support in AE CC was broken, but just for grins I copied C4DImporter.aex into my CC plugins folder and gave it a restart-- works just the same as it used to in CS6.
So Tess, if you're still following this thread, that's a good workaround as far as getting your camera data into your AE project correctly. Head over to this Maxon page: http://www.maxon.net/?id=1372 and grab the Exchange Plugin for AE CS3-CS6. Copy the .aex file included in that download into the Plugins folder of your AE CC install, and restart AE.
Then, from your Cinema 4D scene, go to Render Settings > Save. Twirl down Compositing Project File, and make sure After Effects is selected in the Target Application dropdown. Also enable Relative, Include Timeline Marker, and Include 3D Data for good measure. Finally, choose Save Project File, and pick a location. That AEC file can be imported into your AE project-- it will appear as a folder with a comp and an image sequence. The comp will contain cameras, lights, and any nulls/solids you've set up with External Compositing Tags on the C4D side, and all animation should be intact regardless of how complex your move is.
Ultimately it would be incredible if Cineware grows to include the same level of functionality, since the one-button scene extraction and not needing to create all the extra AEC files would be an amazing improvement.
Thanks for the tips and plugin info!
I wasn't using any kind of camera rig - just a simple animated camera - so it sounds like there might be something buggy going on in my AE or C4D file. I'll have to experiment when my project ends and I have a bit of free time.
Thanks again y'all :-)
I've had problems with rigged cameras and solved it this way:
- make a fresh camera
- put an C.O.F.F.E.E. expression tag on the new camera with the expression
var sourcecam = doc->FindObject("oldcam");
var sourcebc = sourcecam->GetContainer();
var sourceMg = sourcecam->GetMg();
- open track timeline and bake keyframe (I can't see the bake keyframes function in my timeline so I used someones hack trick of holding down F9 and pressing play)
- remove tag and check to make sure both camera have baked properly in Cineware
- bring into AE and extract camera's
- this should work HOWEVER ... for me there was an offset in the camera ZOOM keyframes ... easy fix, overlay 2 versions of the same scene in AE and set one to use comp camera and the other to use C4D camera, select all zoom key frames and offset until they match.
The zoom offset may be a bug ... I'm just happy to finally get my scene camera extracted properly after a lot of hair pulling.
Here's how I just worked round this (quite frankly irritating bug, I love my xpresso). I had a camera nested to a null, I was using xpresso to just animate user data fields to control the xyz pos/rotation & z pos of the camera for zoom.
- Created new camera.
- tags/c4d tags/xpresso
- Linked the nested cameras global pos and rotation to the new cameras global pso and rotation.
- Selected the new camera in the timeline then function/bake object.
- saved and extracted perfectly in AE CC.
Irritating to have to bake but the origional camera is preserved, so its relatively easy to adjust when the client feedback comes in.
Hey guys, this is really helpful. I'm so close to getting my camera sorted. Couple of quick questions. I'm using the CSTools DocuCam, which adds some camera wiggle and snap zoom, etc... I linked gobal pos and rotation, as well as zoom, and baked the keyframes but it's not carrying over the action from the orginal camera.
Is there are more absolute link, e.g. "All properties", tag I can use to link the new camera to my scripted cam? I'm just trying to get all the motion that's coming out of the camera, in the most efficient way. Part of the problem is that the new camera isn't picking up the rotation generated by the target.
Hope that makes any sort of sense. Ultimately, as the rest of you have, I would like that new Camera to be the Net result of anything that happened to the DocuCam which I already animated all over my scene.
In case anyone is trying to work with a more scripted camera, setup the Xpresso Group like this.
Then here was the kicker for me. Ensure that you have enabled keyframing for those 3 properties (Focal Dist, Focal Len, Zoom), by CTRL clicking the o next to each property.
Then, hit F9 on the first frame to add one keyframe so it appears in the Timeline view.
Then in the Timeline window, select that New Camera (in my case DocuCam-Net), go to the functions menu and select "Bake Timeline", it will now bake the Global values as well as the 3 additioanl parameters (make sure you select Parameter check box)
Thanks everyone for the leads to this point... it was looking grimm there for a while!
Awesome! It's great to see there are a good handful of workarounds here. I do believe this thread is going to save my bacon in about two hours.
Cheers all, and happy holidays!
This ZOOM "bug" is driving me crazy. But with some noodling, I think I'm able to offset it. Not perfect, but considering I'm compositing smoke and explosions I don't think anyone will notice.
Quick tip. If you want to extract some data points from your C4D file, I've been creating extra point lights and labeling to differentiate. E.g. "marker 1", etc... when you extract the scene data, it will bring in those lights which you can copy and past the position from to a null in AE.
There's probably some way of doing this with Tags in C4d, but the few I tried (like External compositing) added to a plane, didn't work.
Thanks for this, mauser319. Just an update to let others know that Maxon has released an updated AE CC import plugin which will bring in R16 C4D camera data via the exported .aec file.
It's here: MAXON | 3D FOR THE REAL WORLD: Plugins
I know this is an old conversation but if someone is reading this like me because the camera from C4D didn't match when using crane or any other rig or null I found also a similar solution without expresso.
my camera was using a crane, i guess is the same if you got it on a null. when I baked it and import it on AE it didn't match.
so I duplicate it. then create a new morph camera and leave it always in the first camera. then bake the morph and now it works perfect in AE.
THANK YOU Mariano!
Your method WORKS. I've looked everywhere for the answer to this and can confirm it works.
I used it to bake an animated camera that is inside an animated null. Using your method with the Camera Morph and baking that is the only way I've found to correctly import the data into AE.
You're a life saver!
so the questions have been answered regarding baking the camera, the best way to do this is through Xpresso, however the steps above are a little more than there needs to be.
here is a quick guide to baking animation with ONE xpresso connection.
basically, create a second 'slave' camera, and pump your animated ones Global matrix into your slaves.
The reason we need to do this is that cineware doesn't see parent/child relationships, so making multiple levels of animation in c4d will result in onto the animation on the actual object itself you import.
secondly, only the first frame of your animation will come into AE via cineware if your Output settings arent set to the legnth of your project, it will only export the frames you have set in your frame range. (a default scene is set to the first frame).
fix these and you should get all you animation in nicely