//BEGIN CLK
model.vehicle.set(vehicle);
if (edu.cmu.cs.stage3.alice.authoringtool.AuthoringToolResources.isExperimentalSceneSupportEnabled()) {
//save current camera position
if (camera != null) {
Matrix44 savedCameraPosition = camera.getTransformation(world);
// create default camera position - pretty hackish
edu.cmu.cs.stage3.math.Matrix33 camOrient = edu.cmu.cs.stage3.math.Matrix33.IDENTITY;
camOrient.setForwardUpGuide(new javax.vecmath.Vector3d(0.50029057264328,0.0,-0.865857720375061), new javax.vecmath.Vector3d(0,1,0));
Matrix44 defaultCameraPosition = Matrix44.IDENTITY;
defaultCameraPosition.setAxes(camOrient);
defaultCameraPosition.setPosition(new javax.vecmath.Vector3d(-4.262701051336885,1.600000023841858,7.384681409266034));
camera.setTransformationRightNow(defaultCameraPosition, world);
// get offset of model from default camera position
Matrix44 modelTransFromCamera = model.getTransformation(camera);
// move camera back to it's real position
camera.setTransformationRightNow(savedCameraPosition, world);
camera.standUpRightNow();
// reset the yoffset so that it's always on the ground
double yOffset = defaultCameraPosition.getPosition().y - (savedCameraPosition.getPosition().y%256.0) + modelTransFromCamera.getPosition().y;
modelTransFromCamera.m31 = yOffset;
// move the model to its transformation relative to the camera
model.setTransformationRightNow(modelTransFromCamera, camera);