I am attempting to write a Maya c++ plugin, and am having some trouble.
I simply want to create a camera, and then move it in the viewport. I have:
MObject camera;
MDagPath cameraPath;
// create new camera
MFnCamera fnCamera;
fnCamera.create(camera);
fnCamera.getPath(cameraPath);
MFnTransform fn(camera);
MVector trans(12, 12, 12);
fn.setTranslation(trans, MSpace::kWorld);
This creates the camera fine, but does not move it. What am I missing to translate the created object? Thank you.
Ah, i was doing it entirely wrong. This works:
MDagModifier dagModifier;
//Create the camera transform node.
MObject cameraTransformObj = dagModifier.createNode("transform");
dagModifier.renameNode(cameraTransformObj, "myCameraTransform");
//Create the camera shape node as a child of the camera transform node.
MObject cameraShapeObj = dagModifier.createNode("camera", cameraTransformObj);
dagModifier.renameNode(cameraShapeObj, "myCameraShape");
dagModifier.doIt();
MFnTransform transformFn(cameraTransformObj);
transformFn.setTranslation(MVector(0, 5, 30), MSpace::kTransform);