public bool CompareTypes(Camera c) { return c.GetCameraType() == eType; }
public FindCameraType(Camera.ECamType _type) { eType = _type; }
public Camera GetCamera(Camera.ECamType type) { return m_CameraList.Find(new FindCameraType(type).CompareTypes); }
public bool CompareID(Camera c) { return c.GetID() == iID; }
public int CreateCamera(Camera.ECamType type, bool bActive, Object3D target, Vector3 pos, Vector3 rot) { int iCameraID = ++m_iIDCameraCounter; if (GetCamera(iCameraID) != null) return INVALID_CAMERA_ID; if (type == Camera.ECamType.ECAMERA_TYPE_TARGET) { CameraTarget newCamera = new CameraTarget(); newCamera.Init(iCameraID, target); m_CameraList.Add(newCamera); } else if (type == Camera.ECamType.ECAMERA_TYPE_FREE) { CameraFree newCamera = new CameraFree(); newCamera.Init(iCameraID, pos, rot); m_CameraList.Add(newCamera); } if (bActive) { // we set as active camera by default the first created one m_iActiveCameraID = iCameraID; } return iCameraID; }