コード例 #1
0
void Transform::update( float delta )
{
	if( !externalTransform )
		transform = getLocalTransform();

	if( requiresBoundingVolumeUpdate() )
		updateBoundingVolume();

	if( wasChanged )
	{
		onTransformed();
		setChanged(false);
	}

	//externalTransform = false;
}
コード例 #2
0
ファイル: SE_View.cpp プロジェクト: 26597925/3DHome
void View::setPosition(float x, float y) {
	mX = x;
	mY = y;
	SE_Matrix3f identity3;
	identity3.identity();

	SE_Matrix4f transform;
	transform.identity();

	transform.set(identity3,SE_Vector3f(mX,mY,0));

	setPrevMatrix(transform);

	//update
	updateWorldTransform();
	updateBoundingVolume();
}
コード例 #3
0
ファイル: SE_ViewGroup.cpp プロジェクト: 26597925/3DHome
ViewGroup::ViewGroup(SE_Spatial* parent):SE_CommonNode(parent)
{
	setNodeType(GROUP_NODE);

	SE_SpatialID spatialID = SE_ID::createSpatialID();
	unsigned int* ids = spatialID.getID();
	SE_SimObjectID id(ids[0], ids[1], ids[2], ids[3]);

/*
    SE_Geometry* geometry = new SE_Geometry(spatialID, root);
    geometry->attachSimObject(this);
	SE_Application::getInstance()->getSimObjectManager()->set(spatialID, this);*/
    updateWorldTransform();
    updateBoundingVolume();

	parent->addChild(this);

}