public CaptureManager(
			Resolution resolution,
  			bool captureImages,
		    bool captureAudio,
		    bool captureVideo,
		    CameraType cameraType,
		    string movieRecordingDirectory,
		    int movieSegmentDurationInMilliSeconds,
		    bool breakMovieIntoSegments )
		{
			this.resolution = resolution;
  			this.captureImages = captureImages;
		    this.captureAudio = captureAudio;
		    this.captureVideo = captureVideo;
			this.cameraType = cameraType;
			this.movieSegmentDurationInMilliSeconds = movieSegmentDurationInMilliSeconds;
			this.breakMovieIntoSegments = breakMovieIntoSegments;
			if ( captureAudio || captureVideo )
			{
			    this.movieRecordingDirectory =  Path.Combine( movieRecordingDirectory, getDateTimeDirectoryName( DateTime.Now ) );
				if ( Directory.Exists( this.movieRecordingDirectory ) == false )
				{
					Directory.CreateDirectory( this.movieRecordingDirectory );
				}
			}
		}
Exemple #2
0
    /// <summary>
    /// Create a brand-new UI hierarchy.
    /// </summary>

    static public GameObject CreateNewUI(CameraType type)
    {
        UIPanel p = NGUITools.CreateUI(type == CameraType.Advanced3D, NGUISettings.layer);

        Selection.activeGameObject = p.gameObject;
        return(Selection.activeGameObject);
    }
Exemple #3
0
 public bxrCubemap GetCameraCubeMap( CameraType type )
 {
     if( type == CameraType.Left )
         return left;
     else
         return right;
 }
Exemple #4
0
        private static void LoadAsset(LOD lod, LODGroup lodGroup, float distance, CameraType type)
        {
            var handle = AssetLoadManager.Instance.LoadAsset(lod, lod.Address, lod.Priority, distance);

            lod.Handle        = handle;
            handle.Completed += h =>
            {
                if (lod.CurrentState != State.Loading)
                {
                    AssetLoadManager.Instance.UnloadAsset(h);
                    return;
                }

                if (h.Status == AsyncOperationStatus.Failed)
                {
                    Debug.LogError("Failed to load asset: " + lod.Address);
                    h.Controller.CurrentState = State.Failed;
                    return;
                }

                // var go  =Addressables.InstantiateAsync(h.Result, lodGroup.transform, false);
                //
                //
                // Debug.Log(go.Result.name);
                GameObject gameObject = GameObject.Instantiate(h.Result, lodGroup.transform, false);
                h.Result = gameObject;
                gameObject.transform.parent = lodGroup.transform;
                h.Controller.CurrentState   = State.Loaded;
                lodGroup.OnDisableAllLOD(type);
            };
            lod.CurrentState = State.Loading;
        }
Exemple #5
0
        /// <summary>
        /// 摄像机。
        /// </summary>
        /// <param name="cameraType">类型</param>
        /// <param name="width">OpenGL窗口的宽度</param>
        /// <param name="height">OpenGL窗口的高度</param>
        public Camera(CameraType cameraType, double width, double height)
        {
            this.lastWidth  = width;
            this.lastHeight = height;

            IPerspectiveCamera perspectiveCamera = this;

            perspectiveCamera.FieldOfView = 60.0f;
            perspectiveCamera.AspectRatio = width / height;
            perspectiveCamera.Near        = 0.1;
            perspectiveCamera.Far         = 1000;

            const int    factor      = 100;
            IOrthoCamera orthoCamera = this;

            orthoCamera.Left   = -width / 2 / factor;
            orthoCamera.Right  = width / 2 / factor;
            orthoCamera.Bottom = -height / 2 / factor;
            orthoCamera.Top    = height / 2 / factor;
            orthoCamera.Near   = -1000;
            orthoCamera.Far    = 1000;

            this.Target   = defaultTarget;
            this.Position = defaultPosition;
            this.UpVector = defaultUpVector;

            this.CameraType = cameraType;
        }
Exemple #6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="userName"></param>
        /// <param name="password"></param>
        /// <param name="level"></param>
        /// <returns></returns>
        public int addCameraType(string typeName)
        {
            int rct = -1;

            try
            {
                CameraType mUser = getCameraTypeByName(typeName);

                if (mUser == null)
                {
                    if (!typeName.Equals(""))
                    {
                        rct = (int)this._sqlContext.Insert <DataBaseConfig.CameraType>(() => new DataBaseConfig.CameraType()
                        {
                            TypeName = typeName
                        });
                    }
                }
            }
            catch (Exception ex)
            {
                rct = -1;
                LogRecord.LogHelper.Exception(typeof(TCameraType), ex);
            }

            return(rct);
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="BasicCamera"/> class.
        /// </summary>
        /// <param name="cameraType">Type of the camera device to use.</param>
        /// <param name="captureUse">The desired usage of the camera capture device.</param>
        protected BasicCamera(CameraType cameraType, CaptureUse captureUse)
        {
            this.CameraController = new CameraController(cameraType, captureUse);
            this.TaskEngine       = new CameraTaskEngine();

            this.CameraController.FocusChanged += this.CameraControllerOnFocusChanged;
        }
Exemple #8
0
        /// <summary>
        /// 摄像机。
        /// </summary>
        /// <param name="cameraType">类型</param>
        /// <param name="width">OpenGL窗口的宽度</param>
        /// <param name="height">OpenGL窗口的高度</param>
        public Camera(CameraType cameraType, double width, double height)
        {
            this.lastWidth = width;
            this.lastHeight = height;

            IPerspectiveCamera perspectiveCamera = this;
            perspectiveCamera.FieldOfView = 60.0f;
            perspectiveCamera.AspectRatio = width / height;
            perspectiveCamera.Near = 0.01;
            perspectiveCamera.Far = 10000;

            const int factor = 100;
            IOrthoCamera orthoCamera = this;
            orthoCamera.Left = -width / 2 / factor;
            orthoCamera.Right = width / 2 / factor;
            orthoCamera.Bottom = -height / 2 / factor;
            orthoCamera.Top = height / 2 / factor;
            orthoCamera.Near = -10000;
            orthoCamera.Far = 10000;

            this.Target = defaultTarget;
            this.Position = defaultPosition;
            this.UpVector = defaultUpVector;

            this.CameraType = cameraType;
        }
Exemple #9
0
        } //END DestroyDuplicateInstance

        //-------------------------------//
        public void BeginLoadingTexture( CameraType cameraType, CubeSide cubeSide, ImageType imageType )
        //-------------------------------//
        {

            SetLoadedBool( cameraType, cubeSide, false );

            //if( showDebug ) { Debug.Log( "ImageFactory.cs BeginLoadingTexture() ( " + cameraType + ", " + cubeSide + ", " + imageType + " )" ); }

            if( XRSkyboxManager.instance.loadFrom == XRSkyboxManager.LoadFrom.DictionaryTexture )
            {
                SetDictionaryLoadedTexture( cameraType, cubeSide, imageType );
            }
            else if( XRSkyboxManager.instance.loadFrom == XRSkyboxManager.LoadFrom.ResourcesTexture )
            {
                SetTextureFromResourcesTexture( cameraType, cubeSide, imageType );
            }
            else if( XRSkyboxManager.instance.loadFrom == XRSkyboxManager.LoadFrom.ResourcesBytes )
            {
                StartCoroutine( SetTextureFromResourcesBytes( cameraType, cubeSide, imageType ) );
            }
            else if( XRSkyboxManager.instance.loadFrom == XRSkyboxManager.LoadFrom.StreamingAssetsBytes )
            {
                StartCoroutine( SetTextureFromStreamingAssetsBytes( cameraType, cubeSide, imageType ) );
            }

        } //END BeginLoadingTexture
        /// <summary>
        /// Initializes a new instance of the <see cref="CameraController"/> class.
        /// </summary>
        /// <param name="cameraType">Type of the camera device to use.</param>
        /// <param name="captureUse">The desired usage of the camera capture device.</param>
        /// <exception cref="ArgumentException"><paramref name="cameraType"/> is not supported.</exception>
        public CameraController(CameraType cameraType, CaptureUse captureUse)
        {
            this.CameraType = cameraType;
            this.CaptureUse = captureUse;

            this.ResetCaptureDevice(notifyProperties: false);
        }
        /// <summary>
        /// Gets all the <see cref="CameraType"/> and <see cref="Room"/> values for for the <see cref="Camera079"/> instances using <see cref="Camera079.cameraId"/> and <see cref="UnityEngine.GameObject"/> name.
        /// </summary>
        internal static void RegisterCameraInfoOnLevelLoad()
        {
            OrderedCameraTypes.Clear();

            ReadOnlyCollection <Camera079> cameras = Map.Cameras;

            int cameraCount = cameras.Count;

            for (int i = 0; i < cameraCount; i++)
            {
                Camera079 camera   = cameras[i];
                int       cameraID = camera.GetInstanceID();

                CameraType cameraType = (CameraType)cameraID;
                Room       room       = Map.FindParentRoom(camera.gameObject);

                if (OrderedCameraTypes.ContainsKey(cameraID))
                {
                    OrderedCameraTypes.Remove(cameraID);
                }
                if (OrderedCameraRooms.ContainsKey(cameraID))
                {
                    OrderedCameraRooms.Remove(cameraID);
                }

                OrderedCameraTypes.Add(cameraID, cameraType);
                OrderedCameraRooms.Add(cameraID, room);
            }
        }
Exemple #12
0
    /// <summary>
    /// Draw the custom wizard.
    /// </summary>

    void OnGUI()
    {
        NGUIEditorTools.SetLabelWidth(80f);

        GUILayout.Label("Create a new UI with the following parameters:");
        NGUIEditorTools.DrawSeparator();

        GUILayout.BeginHorizontal();
        NGUISettings.layer = EditorGUILayout.LayerField("Layer", NGUISettings.layer, GUILayout.Width(200f));
        GUILayout.Space(20f);
        GUILayout.Label("This is the layer your UI will reside on");
        GUILayout.EndHorizontal();

        GUILayout.BeginHorizontal();
        camType = (CameraType)EditorGUILayout.EnumPopup("Camera", camType, GUILayout.Width(200f));
        GUILayout.Space(20f);
        GUILayout.Label("Should this UI have a camera?");
        GUILayout.EndHorizontal();

        NGUIEditorTools.DrawSeparator();
        GUILayout.BeginHorizontal();
        EditorGUILayout.PrefixLabel("When ready,");
        bool create = GUILayout.Button("Create Your UI", GUILayout.Width(120f));

        GUILayout.EndHorizontal();

        if (create)
        {
            CreateNewUI(camType);
        }

        EditorGUILayout.HelpBox("This tool has become obsolete with NGUI 3.0.6. You can create UIs from the NGUI -> Create menu.", MessageType.Warning);
    }
        public void SetCurrentCamera(CameraType camType)
        {
            CurrentCamera.gameObject.SetActive(false);

            bool useDefault = true;

            switch (camType)
            {
            case CameraType.Horizontal:
            {
                if (_horizontalCamera != null)
                {
                    CurrentCamera = _horizontalCamera;
                    useDefault    = false;
                }
                break;
            }
            }

            if (useDefault)
            {
                CurrentCamera = _defaultCamera;
            }

            CurrentCamera.gameObject.SetActive(true);
            MoveCurrentCamTo(CamPosition, true);

            Debug.Log("Camera mode selected: " + CurrentCamera.name);
        }
    private void OnButtonEnvent()
    {
        //判断当前摄像头类型关闭当前协程切换成对应摄像头

        if (cameraType == CameraType.BackCamera)

        {
            StopCoroutine("ToOpenCamera");

            cameraType = CameraType.FrontCamera;

            StartCoroutine(ToOpenCamera(cameraType));

            //切换前后置摄像头需要镜像,不然拍摄左右会颠倒

            // rawImage.transform.eulerAngles = new Vector3(0, 90, 0);
        }

        else
        {
            StopCoroutine("ToOpenCamera");

            cameraType = CameraType.BackCamera;

            StartCoroutine(ToOpenCamera(cameraType));

            //切换前后置摄像头需要镜像回来,不然拍摄左右会颠倒

            // rawImage.transform.eulerAngles = new Vector3(0, -90, 0);
        }
    }
Exemple #15
0
    //카메라 효과
    void CameraEffect(CameraType cameraType)
    {
        Camera.main.fieldOfView = 60 + Mathf.Clamp(rigid.velocity.magnitude * 3, 0, 100);

        switch (cameraType)
        {
        case CameraType.thirdPerson:

            Camera.main.transform.localPosition = new Vector3(Mathf.Clamp(Input.GetAxis("Horizontal") * rigid.velocity.magnitude * 0.01f, -5, 5), effectinfo.thirdPersonCamera.localPosition.y, effectinfo.thirdPersonCamera.localPosition.z);
            Camera.main.transform.rotation      = effectinfo.thirdPersonCamera.rotation;

            foreach (GameObject mirror in effectinfo.Mirrors)
            {
                mirror.SetActive(false);
            }

            break;

        case CameraType.firstPerson:

            Camera.main.transform.localPosition = effectinfo.firstPersonCamera.localPosition;
            Camera.main.transform.rotation      = effectinfo.firstPersonCamera.rotation;

            foreach (GameObject mirror in effectinfo.Mirrors)
            {
                mirror.SetActive(true);
            }

            break;
        }
    }
Exemple #16
0
        } //END SetStreamingAssetsLoadedTexture


        //-----------------------------//
        private void SetLoadedTextureScaleAndSettings( CameraType cameraType, CubeSide cubeSide, TextureFormat format, bool useMipmap, int scaleX, int scaleY )
        //-----------------------------//
        {

            if( cameraType == CameraType.Left )
            {
                if( cubeSide == CubeSide.front )
                {
                    texture_Left_front = new Texture2D( scaleX, scaleY, format, useMipmap ); //, format, useMipmap );
                }
                else if( cubeSide == CubeSide.back )
                {
                    texture_Left_back = new Texture2D( scaleX, scaleY, format, useMipmap );
                }
                else if( cubeSide == CubeSide.left )
                {
                    texture_Left_left = new Texture2D( scaleX, scaleY, format, useMipmap );
                }
                else if( cubeSide == CubeSide.right )
                {
                    texture_Left_right = new Texture2D( scaleX, scaleY, format, useMipmap );
                }
                else if( cubeSide == CubeSide.top )
                {
                    texture_Left_top = new Texture2D( scaleX, scaleY, format, useMipmap );
                }
                else if( cubeSide == CubeSide.bottom )
                {
                    texture_Left_bottom = new Texture2D( scaleX, scaleY, format, useMipmap );
                }
            }
            else if( cameraType == CameraType.Right )
            {
                if( cubeSide == CubeSide.front )
                {
                    texture_Right_front = new Texture2D( scaleX, scaleY, format, useMipmap );
                }
                else if( cubeSide == CubeSide.back )
                {
                    texture_Right_back = new Texture2D( scaleX, scaleY, format, useMipmap );
                }
                else if( cubeSide == CubeSide.left )
                {
                    texture_Right_left = new Texture2D( scaleX, scaleY, format, useMipmap );
                }
                else if( cubeSide == CubeSide.right )
                {
                    texture_Right_right = new Texture2D( scaleX, scaleY, format, useMipmap );
                }
                else if( cubeSide == CubeSide.top )
                {
                    texture_Right_top = new Texture2D( scaleX, scaleY, format, useMipmap );
                }
                else if( cubeSide == CubeSide.bottom )
                {
                    texture_Right_bottom = new Texture2D( scaleX, scaleY, format, useMipmap );
                }
            }

        } //END SetLoadedTextureScale
    IEnumerator ToOpenCamera(CameraType type)

    {
        //获取摄像头权限

        yield return(Application.RequestUserAuthorization(UserAuthorization.WebCam));

        if (Application.HasUserAuthorization(UserAuthorization.WebCam))

        {
            //停止正在使用的摄像头

            if (webCamTexture != null)

            {
                webCamTexture.Stop();
            }

            //判断时候有摄像头

            if (WebCamTexture.devices.Length != 0)

            {
                //new一个摄像头并且设置分辨率和FPS,渲染到UI上

                webCamTexture = new WebCamTexture(WebCamTexture.devices[(int)type].name,

                                                  (int)resolution.x, (int)resolution.y, fps);

                rawImage.texture = webCamTexture;

                webCamTexture.Play();
            }
        }
    }
	/// <summary>
	/// Draw the custom wizard.
	/// </summary>

	void OnGUI ()
	{
		NGUIEditorTools.SetLabelWidth(80f);

		GUILayout.Label("Create a new UI with the following parameters:");
		NGUIEditorTools.DrawSeparator();

		GUILayout.BeginHorizontal();
		NGUISettings.layer = EditorGUILayout.LayerField("Layer", NGUISettings.layer, GUILayout.Width(200f));
		GUILayout.Space(20f);
		GUILayout.Label("This is the layer your UI will reside on");
		GUILayout.EndHorizontal();

		GUILayout.BeginHorizontal();
		camType = (CameraType)EditorGUILayout.EnumPopup("Camera", camType, GUILayout.Width(200f));
		GUILayout.Space(20f);
		GUILayout.Label("Should this UI have a camera?");
		GUILayout.EndHorizontal();

		NGUIEditorTools.DrawSeparator();
		GUILayout.BeginHorizontal();
		EditorGUILayout.PrefixLabel("When ready,");
		bool create = GUILayout.Button("Create Your UI", GUILayout.Width(120f));
		GUILayout.EndHorizontal();

		if (create) CreateNewUI(camType);

		EditorGUILayout.HelpBox("This tool has become obsolete with NGUI 3.0.6. You can create UIs from the NGUI -> Create menu.", MessageType.Warning);
	}
Exemple #19
0
        } //END SetLoadedTextureScale


        //-----------------------------//
        private void SetLoadedTextureWrapMode( CameraType cameraType, CubeSide cubeSide, TextureWrapMode wrapMode )
        //-----------------------------//
        {

            if( cameraType == CameraType.Left )
            {
                if( cubeSide == CubeSide.front )
                {
                    texture_Left_front.wrapMode = wrapMode;
                }
                else if( cubeSide == CubeSide.back )
                {
                    texture_Left_back.wrapMode = wrapMode;
                }
                else if( cubeSide == CubeSide.left )
                {
                    texture_Left_left.wrapMode = wrapMode;
                }
                else if( cubeSide == CubeSide.right )
                {
                    texture_Left_right.wrapMode = wrapMode;
                }
                else if( cubeSide == CubeSide.top )
                {
                    texture_Left_top.wrapMode = wrapMode;
                }
                else if( cubeSide == CubeSide.bottom )
                {
                    texture_Left_bottom.wrapMode = wrapMode;
                }
            }
            else if( cameraType == CameraType.Right )
            {
                if( cubeSide == CubeSide.front )
                {
                    texture_Right_front.wrapMode = wrapMode;
                }
                else if( cubeSide == CubeSide.back )
                {
                    texture_Right_back.wrapMode = wrapMode;
                }
                else if( cubeSide == CubeSide.left )
                {
                    texture_Right_left.wrapMode = wrapMode;
                }
                else if( cubeSide == CubeSide.right )
                {
                    texture_Right_right.wrapMode = wrapMode;
                }
                else if( cubeSide == CubeSide.top )
                {
                    texture_Right_top.wrapMode = wrapMode;
                }
                else if( cubeSide == CubeSide.bottom )
                {
                    texture_Right_bottom.wrapMode = wrapMode;
                }
            }

        } //END SetLoadedTextureWrapMode
    /// <summary>
    /// Draw the custom wizard.
    /// </summary>

    void OnGUI()
    {
        EditorGUIUtility.LookLikeControls(80f);

        GUILayout.Label("Create a new UI with the following parameters:");
        NGUIEditorTools.DrawSeparator();

        GUILayout.BeginHorizontal();
        NGUISettings.layer = EditorGUILayout.LayerField("Layer", NGUISettings.layer, GUILayout.Width(200f));
        GUILayout.Space(20f);
        GUILayout.Label("This is the layer your UI will reside on");
        GUILayout.EndHorizontal();

        GUILayout.BeginHorizontal();
        camType = (CameraType)EditorGUILayout.EnumPopup("Camera", camType, GUILayout.Width(200f));
        GUILayout.Space(20f);
        GUILayout.Label("Should this UI have a camera?");
        GUILayout.EndHorizontal();

        NGUIEditorTools.DrawSeparator();
        GUILayout.BeginHorizontal();
        EditorGUILayout.PrefixLabel("When ready,");
        bool create = GUILayout.Button("Create Your UI", GUILayout.Width(120f));

        GUILayout.EndHorizontal();

        if (create)
        {
            CreateNewUI();
        }
    }
Exemple #21
0
        } //END GetLoadedBool

        //-----------------------------//
        private void SetLoadedBool( CameraType cameraType, CubeSide cubeSide, bool loaded )
        //-----------------------------//
        {

            if( cameraType == CameraType.Left )
            {
                if( cubeSide == CubeSide.front )
                {
                    bool_Left_front_loaded = loaded;
                }
                else if( cubeSide == CubeSide.back )
                {
                    bool_Left_back_loaded = loaded;
                }
                else if( cubeSide == CubeSide.left )
                {
                    bool_Left_left_loaded = loaded;
                }
                else if( cubeSide == CubeSide.right )
                {
                    bool_Left_right_loaded = loaded;
                }
                else if( cubeSide == CubeSide.top )
                {
                    bool_Left_top_loaded = loaded;
                }
                else if( cubeSide == CubeSide.bottom )
                {
                    bool_Left_bottom_loaded = loaded;
                }
            }
            else if( cameraType == CameraType.Right )
            {
                if( cubeSide == CubeSide.front )
                {
                    bool_Right_front_loaded = loaded;
                }
                else if( cubeSide == CubeSide.back )
                {
                    bool_Right_back_loaded = loaded;
                }
                else if( cubeSide == CubeSide.left )
                {
                    bool_Right_left_loaded = loaded;
                }
                else if( cubeSide == CubeSide.right )
                {
                    bool_Right_right_loaded = loaded;
                }
                else if( cubeSide == CubeSide.top )
                {
                    bool_Right_top_loaded = loaded;
                }
                else if( cubeSide == CubeSide.bottom )
                {
                    bool_Right_bottom_loaded = loaded;
                }
            }

        } //END SetLoadedBool
Exemple #22
0
        private void changeProjectionYoolStripMenuItem_Click(object sender, EventArgs e)
        {
            var senderItem = sender as ToolStripMenuItem;

            int.TryParse(senderItem.Tag.ToString(), out int cameraTypeInt);
            CameraType type = (CameraType)cameraTypeInt;

            foreach (var item in projectionToolStripMenuItem.DropDownItems)
            {
                var meunItem = item as ToolStripMenuItem;
                if (meunItem == sender)
                {
                    meunItem.Checked = true;
                    int.TryParse(meunItem.Tag.ToString(), out cameraTypeInt);
                    Scene.Instance.GetMainCamera().Type = (CameraType)cameraTypeInt;
                }
                if ((meunItem != null) && (meunItem != sender))
                {
                    meunItem.Checked = false;
                }
            }

            if (type == CameraType.Orthographic)
            {
                projectionButton.Tag   = (int)CameraType.Orthographic;
                projectionButton.Image = Properties.Resources.Orthographic;
                Scene.Instance.GetMainCamera().Type = CameraType.Orthographic;
            }
            else
            {
                projectionButton.Tag   = (int)CameraType.Perspective;
                projectionButton.Image = Properties.Resources.Perspective;
                Scene.Instance.GetMainCamera().Type = CameraType.Perspective;
            }
        }
Exemple #23
0
        private void projectionButton_Click(object sender, EventArgs e)
        {
            var button = sender as ToolStripButton;

            int.TryParse(button.Tag.ToString(), out int cameraTypeInt);
            CameraType type = (CameraType)cameraTypeInt;

            if (type == CameraType.Perspective)
            {
                button.Tag   = (int)CameraType.Orthographic;
                button.Image = Properties.Resources.Orthographic;
                Scene.Instance.GetMainCamera().Type = CameraType.Orthographic;
            }
            else
            {
                button.Tag   = (int)CameraType.Perspective;
                button.Image = Properties.Resources.Perspective;
                Scene.Instance.GetMainCamera().Type = CameraType.Perspective;
            }

            foreach (var item in projectionToolStripMenuItem.DropDownItems)
            {
                var meunItem = item as ToolStripMenuItem;
                int.TryParse(meunItem.Tag.ToString(), out cameraTypeInt);

                if ((CameraType)cameraTypeInt != type)
                {
                    meunItem.Checked = true;
                }
                else
                {
                    meunItem.Checked = false;
                }
            }
        }
	/// <summary>
	/// Draw the custom wizard.
	/// </summary>

	void OnGUI ()
	{
		EditorGUIUtility.LookLikeControls(80f);

		GUILayout.Label("Create a new UI with the following parameters:");
		NGUIEditorTools.DrawSeparator();

		GUILayout.BeginHorizontal();
		NGUISettings.layer = EditorGUILayout.LayerField("Layer", NGUISettings.layer, GUILayout.Width(200f));
		GUILayout.Space(20f);
		GUILayout.Label("This is the layer your UI will reside on");
		GUILayout.EndHorizontal();

		GUILayout.BeginHorizontal();
		camType = (CameraType)EditorGUILayout.EnumPopup("Camera", camType, GUILayout.Width(200f));
		GUILayout.Space(20f);
		GUILayout.Label("Should this UI have a camera?");
		GUILayout.EndHorizontal();

		NGUIEditorTools.DrawSeparator();
		GUILayout.BeginHorizontal();
		EditorGUILayout.PrefixLabel("When ready,");
		bool create = GUILayout.Button("Create Your UI", GUILayout.Width(120f));
		GUILayout.EndHorizontal();

		if (create) CreateNewUI();
	}
Exemple #25
0
        public static void Update(Camera camera)
        {
            if (Camera.Type == CameraType.StaticCam)
            {
                camera.Reset();
            }
            else
            {
                if (Camera.Type == CameraType.RotationCam)
                {
                    camera.Rotate_World_Y(0.005f);
                    int uView = GL.GetUniformLocation(ACWWindow.mShader.ShaderProgramID, "uView");
                    GL.UniformMatrix4(uView, true, ref ACWWindow.mView);
                }
                else if (Camera.Type == CameraType.FollowCam)
                {
                    if (Sphere.DrawList.Count != 0)
                    {
                        ACWWindow.mView = Matrix4.CreateTranslation(0, 0, -10) * Matrix4.CreateTranslation(-Sphere.DrawList[0].mPosition);
                        int uView = GL.GetUniformLocation(ACWWindow.mShader.ShaderProgramID, "uView");
                        GL.UniformMatrix4(uView, true, ref ACWWindow.mView);

                        ACWWindow.mGroundModel = Matrix4.CreateTranslation(1, -0.5f, 0f);
                    }
                }
                else if (Camera.Type != CameraType.FreeCam)
                {
                    Camera.Type = CameraType.StaticCam;
                }
            }
        }
Exemple #26
0
        public Camera(CameraType type, CameraParameters parameters = null, string name = "") : base(name)
        {
            // Create/Save Name
            counter++;
            if (name == string.Empty)
            {
                Name = "Camera " + counter.ToString();
            }
            else
            {
                Name = name;
            }

            // Create/Save Parameters
            if (parameters == null)
            {
                Parameters = new CameraParameters();
            }
            else
            {
                Parameters = parameters;
            }

            // Create View Matrix
            LookAt(parameters.Position, parameters.Target, parameters.WorldUp);

            // Set both orthographic and perspective cameras
            SetPerspective(Parameters);
            SetOrthographic(Parameters);
            Type = type;
        }
Exemple #27
0
        public void SetCameraType(CameraType type)
        {
            Type = type;
            switch (type)
            {
            case CameraType.Behind:
            case CameraType.Parallel:
                Movable    = false;
                Orientable = false;
                PositionCamera(type);
                OrientToBoids();
                break;

            case CameraType.Tower:
                Movable    = false;
                Orientable = false;
                Position   = TowerCameraPosition;
                OrientToBoids();
                break;

            case CameraType.Free:
                Movable    = true;
                Orientable = true;
                var vertRads = Math.Asin(-Front.Y);
                Pitch = Utils.Rad2Deg(vertRads);
                Yaw   = Utils.Rad2Deg(Math.Acos(-Front.Z / Math.Cos(vertRads)));
                UpdateCameraVectors();
                break;
            }
        }
Exemple #28
0
        ///// <summary>
        ///// 默认目标为vec3(0, 0, -1)
        ///// </summary>
        //public static readonly vec3 defaultTarget = new vec3(0, 0, -1);

        ///// <summary>
        ///// 默认位置为vec3(0, 0, 0)
        ///// </summary>
        //public static readonly vec3 defaultPosition = new vec3(0, 0, 0);

        ///// <summary>
        ///// 默认上方为vec3(0, 1, 0)
        ///// </summary>
        //public static readonly vec3 defaultUpVector = new vec3(0, 1, 0);

        /// <summary>
        /// Camera.
        /// </summary>
        /// <param name="position">position in world space</param>
        /// <param name="target">target in world space.</param>
        /// <param name="up">up in world space.</param>
        /// <param name="cameraType">perspective or ortho?</param>
        /// <param name="width">canvas' width.</param>
        /// <param name="height">canvas' height.</param>
        public Camera(vec3 position, vec3 target, vec3 up, CameraType cameraType, double width, double height)
        {
            this.Position = position;
            this.Target   = target;
            this.UpVector = up;

            IPerspectiveCamera perspectiveCamera = this;

            perspectiveCamera.FieldOfView = 60.0f;
            perspectiveCamera.AspectRatio = width / height;
            perspectiveCamera.Near        = 0.1;
            perspectiveCamera.Far         = 10000;

            const int    factor      = 100;
            IOrthoCamera orthoCamera = this;

            orthoCamera.Left   = -width / 2 / factor;
            orthoCamera.Right  = width / 2 / factor;
            orthoCamera.Bottom = -height / 2 / factor;
            orthoCamera.Top    = height / 2 / factor;
            orthoCamera.Near   = -10000;
            orthoCamera.Far    = 10000;

            this.CameraType = cameraType;
        }
Exemple #29
0
        protected virtual void Start()
        {
            if (!EM_Settings.IsSubmoduleEnable(Submodule.Media))
            {
                curtain.SetActive(true);
                return;
            }
            else
            {
                curtain.SetActive(false);
            }


            takePictureButton.onClick.AddListener(TakePicture);
            recordVideoButton.onClick.AddListener(RecordVideo);
            pickButton.onClick.AddListener(PickFromGallery);
            saveImageButton.onClick.AddListener(SaveImage);
            clearViewsButton.onClick.AddListener(ClearDisplayedViews);
            randomTextureButton.onClick.AddListener(RandomDisplayImage);
            clearTexutreButton.onClick.AddListener(ClearDisplayImage);
            InitDropdownWithEnum(imageFormatDropdown, typeof(ImageFormat));

            InitDropdownWithEnum(cameraTypeDropdown, typeof(CameraType));
            cameraTypeDropdown.onValueChanged.AddListener(index => currentCameraType = (CameraType)index);

            bool hasFrontCamera = Media.Camera.IsCameraAvailable(CameraType.Front);
            bool hasRearCamera  = Media.Camera.IsCameraAvailable(CameraType.Rear);

            demoUtils.DisplayBool(frontCameraSupportedToggle, hasFrontCamera, hasFrontCamera ? "Front Camera Available" : "Front Camera Unavailable");
            demoUtils.DisplayBool(backCameraSupportedToggle, hasRearCamera, hasRearCamera ? "Rear Camera Available" : "Rear Camera Unavailable");
        }
    /// <summary>
    /// Enabled based on camera type.
    /// </summary>
    /// <param name="cameraType">Enable which camera.</param>
    public void EnableCamera(CameraType cameraType)
    {
        switch (cameraType)
        {
        case CameraType.FIRST_PERSON:
        {
            m_firstPersonCamera.enabled = true;
            m_thirdPersonCamera.enabled = false;
            m_topDownCamera.enabled     = false;
            Camera.main.fieldOfView     = m_firstPersonCamera.m_fieldOfViewSetting;
            break;
        }

        case CameraType.THIRD_PERSON:
        {
            m_firstPersonCamera.enabled = false;
            m_thirdPersonCamera.enabled = true;
            m_topDownCamera.enabled     = false;
            Camera.main.fieldOfView     = m_thirdPersonCamera.m_fieldOfViewSetting;
            break;
        }

        case CameraType.TOP_DOWN:
        {
            m_firstPersonCamera.enabled = false;
            m_thirdPersonCamera.enabled = false;
            m_topDownCamera.enabled     = true;
            Camera.main.fieldOfView     = m_topDownCamera.m_fieldOfViewSetting;
            break;
        }
        }
        m_currentCamera = cameraType;
    }
Exemple #31
0
    public void Awake()
    {
        _aspectCamera = GetComponent <Camera>();
        if (_aspectCamera.orthographic)
        {
            _ct = CameraType.Orthographic;
        }
        else
        {
            _ct = CameraType.Perspective;
        }

        _prevMode = _adjustMode;
        //_prevVerticalSnapMode = _verticalSnapMode;
        //_prevHorizontalSnapMode = _horizontalSnapMode;
        _prevWidth  = _mainAreaWidth;
        _prevHeight = _mainAreaHeight;
        _prevHSize  = horizontalSize;
        _prevVSize  = verticalSize;
        _prevHFOV   = horizontalFOV;
        _prevVFOV   = verticalFOV;

        _cameraPrevPixelWidth  = _aspectCamera.pixelWidth;
        _cameraPrevPixelHeight = _aspectCamera.pixelHeight;
    }
Exemple #32
0
        public void ShowCamera(CameraType cameraType)
        {
            //Reset Camera Priorities
            vCamMainMenu.Priority      = 0;
            vCamGamePlay.Priority      = 0;
            vCamLevelComplete.Priority = 0;


            switch (cameraType)
            {
            case CameraType.MainMenu:
                vCamMainMenu.Priority = 1;
                break;

            case CameraType.Gameplay:
                vCamGamePlay.Priority = 1;
                break;

            case CameraType.LevelComplete:
                vCamLevelComplete.Priority = 1;
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(cameraType), cameraType, null);
            }
        }
Exemple #33
0
        public override bool TrySetupObjectUIControl(EditorSceneBase scene, ObjectUIControl objectUIControl)
        {
            if (!Selected)
            {
                return(false);
            }

            objectUIControl.AddObjectUIContainer(new CameraUI(this, scene), "General Settings");

            if (mFields.Keys.Any(k => k.StartsWith("flag.")))
            {
                objectUIControl.AddObjectUIContainer(new CameraFlagsUI(this, scene), "Camera Flags");
            }

            // camera types "Cube", "Group", "Start", and "Other" load the chunk CameraParamChunkGame
            // "Event" loads CameraParamChunkEvent
            CameraType type = GetCameraType();

            if (type == CameraType.Cube || type == CameraType.Group || type == CameraType.Start || type == CameraType.Other)
            {
                objectUIControl.AddObjectUIContainer(new CameraGameFlagsUI(this, scene), "Camera Game Flags");
            }

            if (type == CameraType.Event)
            {
                objectUIControl.AddObjectUIContainer(new CameraEventFlagsUI(this, scene), "Camera Event Flags");
            }

            return(true);
        }
Exemple #34
0
        public void GetModelviewMatrix(CameraType type, out Matrix4 matrix)
        {
            this.GetModelviewMatrix(out matrix);
            Console.WriteLine(matrix);
            Console.WriteLine(left_modelview);
            Console.WriteLine(right_modelview);

            switch (type)
            {
            case CameraType.Default:
                // Nothing to do
                break;

            case CameraType.Left:
                Matrix4.Mult(ref matrix, ref left_modelview, out matrix);
                break;

            case CameraType.Right:
                Matrix4.Mult(ref matrix, ref right_modelview, out matrix);
                break;

            default:
                throw new NotSupportedException();
            }
        }
Exemple #35
0
        /// <summary>
        /// Initializes a new instance of the <see cref="CameraController"/> class.
        /// </summary>
        /// <param name="cameraType">Type of the camera device to use.</param>
        /// <param name="captureUse">The desired usage of the camera capture device.</param>
        /// <exception cref="ArgumentException"><paramref name="cameraType"/> is not supported.</exception>
        public CameraController(CameraType cameraType, CaptureUse captureUse)
        {
            this.CameraType = cameraType;
            this.CaptureUse = captureUse;

            this.ResetCaptureDevice(notifyProperties: false);
        }
 public void SetCamera(CameraType type)
 {
     foreach (GameObject camera in cameras)
     {
         camera.GetComponent <CameraController>().Show(type);
     }
 }
 public static ICamera Get(CameraType type)
 {
     switch (type)
     {
         case CameraType.Usb: return new UsbCamera(); //If using webcam
         case CameraType.Ip: return new IpCamera(); //If using D-LINK DCS930 or DCS932
         default: throw new ArgumentNullException("Camera Type not supported. Set Camera Type in Settings.");
     }
 }
Exemple #38
0
 public ThermoCam(SerializationInfo info, StreamingContext ctxt)
 {
     this._name          = (string)          info.GetValue("Nombre"   , typeof(string));
     this._address       = (string)          info.GetValue("Address"  , typeof(string));
     this._camType       = (CameraType)      info.GetValue("CamType"  , typeof(CameraType));
     this._devType       = (DeviceType)      info.GetValue("DevType"  , typeof(DeviceType));
     this._interfaceType = (InterfaceType)   info.GetValue("InterType", typeof(InterfaceType));
     this.SubZonas       = (List<SubZona>)   info.GetValue("SubZonas" , typeof(List<SubZona>));
 }
Exemple #39
0
 public static ICamera CreateCamera(Game game, CameraType cameraType)
 {
     switch (cameraType)
     {
         case CameraType.FlightCamera: return new BasicCamera(game);
         case CameraType.FreeLookCamera: return new FreeLookCamera(game);
         default: throw new Exception();
     }
 }
Exemple #40
0
 public CameraManager(GameScreen parent, CameraType cameraType, CameraSettings settings)
     : base(parent)
 {
     Settings = settings;
     Engine.Services.RegisterService(typeof(CameraManager), this);
     Viewport = Engine.GraphicsDevice.Viewport;
     Input = (Input)Engine.Services.GetService(typeof(Input));
     SetCamera(cameraType);
 }
        public XNAKinectCatalogCamera(Game1 game, CameraType type)
            : base(game)
        {
            _gameInstance = game;

            // Subscribe this as a game service to be accesible from the entire application
            game.Services.AddService(typeof(XNAKinectCatalogCamera), this);

            _cameraType = type;
        }
Exemple #42
0
 void CameraCheckingTouch()
 {
     if (Input.touchCount >= 3)
     {
         if (Input.GetTouch(2).phase == TouchPhase.Ended)
         {
             camtype = (CameraType)(((int)camtype + 1) % 3);
             CameraSwitch();
         }
     }
 }
        /// <summary>
        /// Gets the settings for the <paramref name="cameraType"/> specified.
        /// </summary>
        /// <param name="cameraType">Type of the camera to get settings for.</param>
        /// <returns>Settings for the <paramref name="cameraType" /> specified.</returns>
        public ICameraSettings GetCameraSettings(CameraType cameraType)
        {
            lock (this.cameraSettingsMap)
            {
                if (!this.cameraSettingsMap.ContainsKey(cameraType))
                {
                    this.cameraSettingsMap[cameraType] = new CameraSettings(cameraType);
                }

                return this.cameraSettingsMap[cameraType];
            }
        }
 public void SetCameraType(CameraType type, bool animated = false)
 {
     switch (type)
     {
     case CameraType.FirstPerson:
         SetFirstPersonCamera(animated);
         break;
     case CameraType.ThirdPerson:
         SetThirdPersonCamera(animated);
         break;
     }
 }
 void LoadShooter(CameraType type)
 {
     primaryShooter = new CameraShooter(type);
     primaryCapture.Children.Add(primaryShooter);
     Canvas.SetLeft(primaryShooter, 5);
     Canvas.SetTop(primaryShooter, 5);
     primaryShooter.InitWidth = 600;
     primaryShooter.InitHeight = 0.75 * primaryShooter.InitWidth;
     primaryShooter.ListenTap();
     primaryShooter.Captured += primaryShooter_Captured;
     primaryShooter.Initialized += primaryShooter_Initialized;
     primaryShooter.Start();
 }
Exemple #46
0
 void CameraCheckingPC()
 {
     if (Input.GetKeyDown(KeyCode.RightArrow))
     {
         camtype = (CameraType)(((int)camtype + 1) % 3);
         CameraSwitch();
     }
     if (Input.GetKeyDown(KeyCode.LeftArrow))
     {
         camtype = ((camtype - 1) < 0 ? camtype = CameraType.Copter : camtype--);
         CameraSwitch();
     }
 }
 public void SwitchCameraTo(CameraType cam)
 {
     for(int i = 0; i < (int)CameraType.size; i++)
     {
         if( i == (int)cam)
         {
             cameras[i].GetComponent<Camera>().enabled = true;
         } else
         {
             cameras[i].GetComponent<Camera>().enabled = false;
         }
     }
 }
Exemple #48
0
        public ThermoCam(System.Windows.Forms.Form f, CameraType camType, DeviceType devType, InterfaceType interfaceType)
        {
            this._camType = camType;
            this._devType = devType;
            this._interfaceType = interfaceType;

            //Crear nueva lista de zonas
            this.SubZonas = new List<SubZona>();

            ((System.ComponentModel.ISupportInitialize)(camara)).BeginInit();
            camara.Visible = false;
            f.Controls.Add(camara);
            camara.CameraEvent += camara_CameraEvent;
            ((System.ComponentModel.ISupportInitialize)(camara)).EndInit();
        }
Exemple #49
0
        public Camera(Point3D offset, Size resolution, Rectangle drawLocation, CameraType cameraStyle)
        {
            this.Offset = offset;

            this.CameraScreen = new Bitmap(resolution.Width, resolution.Height);

            this.DrawLocation = drawLocation;

            this.StartZDraw = 0;
            this.EndZDraw = 20;

            this.CameraStyle = cameraStyle;

            this.ShowBackground = true;
        }
Exemple #50
0
 public NxCamera(Viewport v,Vector3 pos,Vector3 target,CameraType t)
 {
     mTgt = target;
     mPos = pos;
     mType = t;
     mType = CameraType.Targeted;
     mFov = 45;
     mClipNear = 1;
     mClipFar = 20000;
     mProjection = Matrix.CreatePerspectiveFieldOfView(MathHelper.ToRadians( mFov),
         v.AspectRatio, mClipNear, mClipFar);
     if (mType == CameraType.Targeted)
         mView = Matrix.CreateLookAt(mPos, mTgt, Vector3.Up);
     else
         mView = Matrix.CreateTranslation(pos);
 }
Exemple #51
0
        public static CompositeTransform GetCameraTransformByOrientation(CameraType cameraType, PageOrientation orientation)
        {
            var scaleX = 1;
            var scaleY = 1;
            var rotation = 0;

            if (cameraType == CameraType.FrontFacing)
            {
                scaleX = -1;
                if (orientation == PageOrientation.LandscapeRight)
                {
                    rotation = 180;
                }
                else if (orientation == PageOrientation.LandscapeLeft)
                {
                }
                else if (orientation == PageOrientation.PortraitUp)
                {
                    rotation = 90;
                }
            }
            else
            {
                if (orientation == PageOrientation.LandscapeRight)
                {
                    scaleX = -1;
                    scaleY = -1;
                }
                else if (orientation == PageOrientation.LandscapeLeft)
                {
                    // all good
                }
                else if (orientation == PageOrientation.PortraitUp)
                {
                    rotation = 90;
                }
            }

            return new CompositeTransform
            {
                CenterX = 0.5, 
                CenterY = 0.5, 
                ScaleX = scaleX, 
                ScaleY = scaleY, 
                Rotation = rotation 
            };
        }
        /// <summary>
        /// Gets the photo camera of the <paramref name="cameraType"/> specified.
        /// </summary>
        /// <param name="cameraType">Photo camera type.</param>
        /// <returns>Photo camera.</returns>
        /// <exception cref="ArgumentException"><paramref name="cameraType"/> is not supported.</exception>
        public async Task<PhotoCamera> GetCameraAsync(CameraType cameraType)
        {
            if ((await DeviceHelper.GetCameraDeviceInfoAsync(cameraType)) == null)
            {
                throw new ArgumentException(string.Format(CultureInfo.InvariantCulture, "{0} camera is not supported.", cameraType), "cameraType");
            }

            lock (this.cameras)
            {
                if (!this.cameras.ContainsKey(cameraType))
                {
                    this.cameras[cameraType] = new PhotoCamera(cameraType);
                }

                return this.cameras[cameraType];
            }
        }
Exemple #53
0
        public Camera()
        {
            viewMatrix = Matrix.Identity;
            projectionMatrix = Matrix.Identity;

            headOffset = new Vector3(0, 15, 17);
            targetOffset = new Vector3(0, 5, 0);

            cameraType = CameraType.ChaseCamera;

            position = headOffset;
            reference = 0;
            turnAmount = Vector3.Zero;
            cameraUpVector = Vector3.Up;
            m_AngleX = 0;
            m_AngleY = 0;
        }
Exemple #54
0
 public static CameraController Factory( CameraType type, Game game )
 {
     CameraController cameraController = null;
     switch ( type ) {
         case CameraType.CAMERA_TYPE_FIRST_PERSON:
             cameraController = new FirstPersonCameraController( game );
             break;
         case CameraType.CAMERA_TYPE_TOP_DOWN:
             cameraController = new TopDownCameraController( game );
             break;
         case CameraType.CAMERA_TYPE_FREE:
         default:
             cameraController = new CameraController( game );
             break;
     }
     return cameraController;
 }
    public void SetThirdPersonCamera(bool animated = false)
    {
        if (_animating || cameraType == CameraType.ThirdPerson)
            return;

        _cameraType = CameraType.ThirdPerson;

        if (animated)
        {
            StartCoroutine(SetThirdPersonCameraAnimated());
        }
        else
        {
            SetFirstPersonComponentsEnabled(false);
            SetThirdPersonComponentsEnabled(true);
        }
    }
        /// <summary>
        /// Gets the camera device information with the <paramref name="cameraType"/> specified.
        /// </summary>
        /// <param name="cameraType">Camera type.</param>
        /// <returns>Device information, or <see langword="null"/>, if no suitable devices found.</returns>
        /// <exception cref="ArgumentException"><paramref name="cameraType"/> is not supported.</exception>
        public static async Task<DeviceInformation> GetCameraDeviceInfoAsync(CameraType cameraType)
        {
            Panel desiredPanel;
            switch (cameraType)
            {
                case CameraType.Primary:
                    desiredPanel = Panel.Back;
                    break;
                case CameraType.FrontFacing:
                    desiredPanel = Panel.Front;
                    break;
                default:
                    throw new ArgumentException(string.Format(CultureInfo.InvariantCulture, "Camera type {0} is not supported.", cameraType), "cameraType");
            }

            // Make sure the device info cache is populated.
            await DeviceHelper.EnumerateCameraDevicesAsync();

            return DeviceHelper.CameraDeviceInfoCache.ContainsKey(desiredPanel) ? DeviceHelper.CameraDeviceInfoCache[desiredPanel] : null;
        }
Exemple #57
0
 public void AddCamera(CameraType Type, string CameraName, Vector3 Position, float NearClip, float FarClip)
 {
     switch (Type) //<-- Switch with an enumeration found up top to add in additional cameras
     {
         case CameraType.Free:
             {
                 FreeCamera Dummy = new FreeCamera();
                 FreeCamera.Initialize(Dummy, Position, NearClip, FarClip, mGraphics.Peek.AspectRatio());
                 _Cameras.Add(CameraName, Dummy);
             }
             break;
         case CameraType.Fixed:
             {
                 FixedCamera Dummy = new FixedCamera();
                 FixedCamera.Initialize(Dummy, Position, NearClip, FarClip, mGraphics.Peek.AspectRatio());
                 _Cameras.Add(CameraName, Dummy);
             }
             break;
     }
 }
    /// <summary>
    /// Enabled based on camera type.
    /// </summary>
    /// <param name="cameraType">Enable which camera.</param>
    public void EnableCamera(CameraType cameraType)
    {
        switch (cameraType)
        {
            case CameraType.FIRST_PERSON:
            {
                transform.position = m_targetFollowingObject.transform.position;
                transform.rotation = m_targetFollowingObject.transform.rotation;
                break;
            }

            case CameraType.THIRD_PERSON:
            {
                startThirdPersonRotationX = 45.0f;
                startThirdPersonRotationY = -45.0f;
                startThirdPersonCameraCircleR = 0.0f;
                curThirdPersonCameraCircleR = 7.0f;
                curThirdPersonRotationX = startThirdPersonRotationX + (Mathf.PI * (0.0f / Screen.width));
                curThirdPersonRotationY = startThirdPersonRotationY + (Mathf.PI * (0.0f / Screen.height));
                
                Vector3 newPos = new Vector3(curThirdPersonCameraCircleR * Mathf.Sin(curThirdPersonRotationX),
                                             curThirdPersonCameraCircleR * Mathf.Cos(curThirdPersonRotationY),
                                             curThirdPersonCameraCircleR * Mathf.Cos(curThirdPersonRotationX));
                m_curOffset = m_thirdPersonCamOffset = newPos;
                
                transform.position = m_targetFollowingObject.transform.position + m_curOffset;
                transform.LookAt(m_targetFollowingObject.transform.position);
                break;
            }

            case CameraType.TOP_DOWN:
            {
                m_topDownCamOffset = new Vector3(0.0f, 7.0f, 0.0f);
                break;
            }
        }

        m_currentCamera = cameraType;
    }
Exemple #59
0
        public Match(Game game, Team homeTeam, Team awayTeam, CameraType cameraType, Difficulty difficulty, Weather weather, int duration, bool player2Cpu)
            : base(game)
        {
            CameraType = cameraType;
            Difficulty = difficulty;
            Weather = weather;
            Duration = duration;

            HomeTeam = homeTeam;
            AwayTeam = awayTeam;
            AwayTeam.IsHomeTeam = false;
            Player1Index = 0;
            Player2Index = 0;
            Player2Cpu = player2Cpu;

            Scenario = new Scenario2D(Game);
            Scenario2DPainter = new Scenario2DPainter(Game.GraphicsDevice, Scenario);
            timer = -1;
            Pause = false;
            DisplayRadar = true;
            hold = true;
            KickOff = true;
            KickOffStart = true;
            HomeTeamStart = true;
            FreeKickStart = false;
            TmpTeam = null;

            Ball = new Ball(game, Weather);
            Field = new Field(game);

            Panel = new Panel(game);
            //passing
            MaxPassSpeed = 800;
            MaxErrorAngle = 15;
            PerfectPassFactor = 2.8f;
            Rand = new Random();
            Audience = new Song[3];
        }
Exemple #60
0
        ///// <summary>
        ///// 默认目标为vec3(0, 0, -1)
        ///// </summary>
        //public static readonly vec3 defaultTarget = new vec3(0, 0, -1);
        ///// <summary>
        ///// 默认位置为vec3(0, 0, 0)
        ///// </summary>
        //public static readonly vec3 defaultPosition = new vec3(0, 0, 0);
        ///// <summary>
        ///// 默认上方为vec3(0, 1, 0)
        ///// </summary>
        //public static readonly vec3 defaultUpVector = new vec3(0, 1, 0);
        /// <summary>
        /// Camera.
        /// </summary>
        /// <param name="position">position in world space</param>
        /// <param name="target">target in world space.</param>
        /// <param name="up">up in world space.</param>
        /// <param name="cameraType">perspective or ortho?</param>
        /// <param name="width">canvas' width.</param>
        /// <param name="height">canvas' height.</param>
        public Camera(vec3 position, vec3 target, vec3 up, CameraType cameraType, double width, double height)
        {
            this.Position = position;
            this.Target = target;
            this.UpVector = up;

            IPerspectiveCamera perspectiveCamera = this;
            perspectiveCamera.FieldOfView = 60.0f;
            perspectiveCamera.AspectRatio = width / height;
            perspectiveCamera.Near = 0.1;
            perspectiveCamera.Far = 10000;

            const int factor = 100;
            IOrthoCamera orthoCamera = this;
            orthoCamera.Left = -width / 2 / factor;
            orthoCamera.Right = width / 2 / factor;
            orthoCamera.Bottom = -height / 2 / factor;
            orthoCamera.Top = height / 2 / factor;
            orthoCamera.Near = -10000;
            orthoCamera.Far = 10000;

            this.CameraType = cameraType;
        }