Exemplo n.º 1
0
//----------------------------------------------------------------------------
EU_CanvasStage::EU_CanvasStage():
mViewType(VT_PERSPECTIVE),
mViewDetail(VD_TEXTURED),
mCurCameraMoveSpeed_W(0.0f),
mCurCameraMoveSpeed_S(0.0f),
mCurCameraMoveSpeed_A(0.0f),
mCurCameraMoveSpeed_D(0.0f),
mIsCameraDraging(false)
{
	SetName("EU_CanvasStage");

	SetAnchorHor(0.0f, 1.0f);
	SetAnchorVer(0.0f, 1.0f);

	mStageCameraNodeRoot = new0 Node();
	AttachChild(mStageCameraNodeRoot);
	mStageCameraNodeRoot->WorldTransformIsCurrent = true;

	mStageCameraNode = PX2_CREATER.CreateNode_Camera();
	mStageCameraNode->SetName("MainCameraNode");
	mStageCameraNode->LocalTransform.SetTranslate(-20.0f, -20.0f, 10.0f);
	mStageCameraNode->LookAt(APoint(0.0f, 0.0f, 0.0f));
	mStageCameraNode->GetCamera()->SetClearFlag(false, false, false);
	mStageCameraNodeRoot->AttachChild(mStageCameraNode);	
	Camera *editorCamera = mStageCameraNode->GetCamera();
	float upFovDegrees = 0.0f;
	float aspectRation = 0.0f;
	float dMin = 0.0f;
	float dMax = 0.0f;
	editorCamera->GetFrustum(upFovDegrees, aspectRation, dMin, dMax);
	aspectRation = mSize.Width / mSize.Height;
	editorCamera->SetFrustum(upFovDegrees, aspectRation, dMin, 5000.0f);
	PX2_EDIT.SetEditorCameraNode(mStageCameraNode);
	InterpCurveTranslateController *transCtrl = new0 InterpCurveTranslateController();
	mStageCameraNode->AttachController(transCtrl);
	transCtrl->SetName("Camera_ICTC");
	transCtrl->SetPlaySelfCtrl(true);

	_CreateGridGeometry();
	_CreateSceneCanvas();
	_CreateNodeCtrl();
	_CreateCameraViewCanvas();
	ShowContent(false);

	Enable(false);

	SetOverCameraNode(mStageCameraNode);

	SetActivateSelfCtrled(false);

	SetClearFlag(true, true, true);
	SetClearColor(Float4::MakeColor(0, 162, 232, 255));
	mCamera->SetClearFlag(false, false, false);
}
Exemplo n.º 2
0
//----------------------------------------------------------------------------
void EditMap::CreateCurveTranslateCtrl (PX2::Movable *mov)
{
	if (!mov)
		return;

	Float3 initTrans = mov->LocalTransform.GetTranslate();
	InterpCurveTranslateController *ictCtrl = new0 InterpCurveTranslateController(
		initTrans);
	ictCtrl->SetName("InterpCurveTranslateController");
	mov->AttachController(ictCtrl);

	Event *ent = 0;
	ent = EditorEventSpace::CreateEventX(EditorEventSpace::AttachControl);
	ent->SetData<Object*>(ictCtrl);
	EventWorld::GetSingleton().BroadcastingLocalEvent(ent);
}