Exemplo n.º 1
0
        public bool GetCamParam(CamParam eParam, ref string strParamValue)
        {
            try
            {
                //if (IsConnected)
                //{
                switch (eParam)
                {
                case CamParam.Exposure:
                    strParamValue = VCDProp.RangeValue[VCDIDs.VCDID_Exposure].ToString();
                    break;

                case CamParam.FrameRate:
                    strParamValue = m_ImageControl.DeviceFrameRate.ToString();
                    break;

                case CamParam.Gain:
                    strParamValue = VCDProp.RangeValue[VCDIDs.VCDID_Gain].ToString();
                    break;

                default:
                    break;
                    //}
                    return(true);
                }

                return(true);
                //else
                //{
                //    throw new Exception("Please connect the Cmaera first");
                //}
            }
            catch (Exception ex)
            {
                //m_strLastErr = ex.Message;
                return(false);
            }
        }
    public IEnumerator Init()
    {
        #region debug
        if (isDebug)
        {
            // record params of camera
            camParam = new CamParam(new Vector3(50, 0, 0), heroCamera.fieldOfView);
            curConfig = GameObject.FindObjectOfType(typeof(LevelConfig)) as LevelConfig;
            curLevelCamera = GameObject.FindObjectOfType(typeof(LevelCamera)) as LevelCamera;

            InitRes();

            if (isDebugPvp)
            {
                flowType = FlowType.PVP;
                LevelData.levelType = 8;
            }
        }
        #endregion

        curConfig.Init();

        while (!isInit) yield return null;

        //my heros init :
        myPlayer.ExternalInit();

        switch (flowType)
        {
            case FlowType.PVP:
                InitPVP();
                break;
            default:
                InitPVE();
                break;
        }

        //顺计时开始
        StartCoroutine(BeginTimer());
        //默认计时显示
        UIBattleManager.instance.LoginCountUpTimer();
        InvokeRepeating("CountUpTimer", 0f, 1f);

        ExecuteAction();

        //Debug.Log(" wait time----------------------" + curLevelCamera.waitTimeToPlay);
        if (curLevelCamera)
        {
            if (curLevelCamera.waitTimeToPlay > 0)
                yield return new WaitForSeconds(curLevelCamera.waitTimeToPlay);

            if (curLevelCamera.open.Count > 0)
            {
                int endIndex = curLevelCamera.open.Count - 1;
                foreach (CameraPathBezierAnimator cpa in curLevelCamera.open)
                {
                    cpa.animationTarget = heroCamera.transform;
                }

                curLevelCamera.open[endIndex].AnimationFinished += CameraFinish;
                curLevelCamera.open[0].Play();
                Debug.Log("Camera Play --------------");
            }
            else CameraFinish();
        }
        else
        {
            Debug.Log("LevelCamera is Null --------------");
            CameraFinish();
        }
    }
Exemplo n.º 3
0
        public bool SetCamParam(CamParam eParam, string strParamValue)
        {
            try
            {
                switch (eParam)
                {
                case CamParam.Exposure:
                    //VCDProp.RangeValue[VCDIDs.VCDID_Exposure] = Convert.ToInt32(strParamValue);
                    ExposureSwith        = (TIS.Imaging.VCDSwitchProperty)m_ImageControl.VCDPropertyItems.FindInterface(VCDIDs.VCDID_Exposure + ":" + VCDIDs.VCDElement_Auto + ":" + VCDIDs.VCDInterface_Switch);
                    ExposureSwith.Switch = false;    //关闭自动曝光
                    //绝对曝光对象初始化
                    ExposureAbsoluteValue = (TIS.Imaging.VCDAbsoluteValueProperty)m_ImageControl.VCDPropertyItems.FindInterface(VCDIDs.VCDID_Exposure + ":" + VCDIDs.VCDElement_Value + ":" + VCDIDs.VCDInterface_AbsoluteValue);
                    double time = 1 / Convert.ToDouble(strParamValue);
                    if (time <= ExposureAbsoluteValue.RangeMin)
                    {
                        ExposureAbsoluteValue.Value = ExposureAbsoluteValue.RangeMin;
                    }
                    else if (time >= ExposureAbsoluteValue.RangeMax)
                    {
                        ExposureAbsoluteValue.Value = ExposureAbsoluteValue.RangeMax;
                    }
                    else
                    {
                        ExposureAbsoluteValue.Value = time;
                    }

                    break;

                case CamParam.FrameRate:
                    //m_ImageControl.DeviceFrameRate = float.Parse(strParamValue);
                    break;

                case CamParam.Gain:
                    //VCDProp.RangeValue[VCDIDs.VCDID_Gain] = Convert.ToInt32(strParamValue);
                    GainSwith        = (TIS.Imaging.VCDSwitchProperty)m_ImageControl.VCDPropertyItems.FindInterface(VCDIDs.VCDID_Gain + ":" + VCDIDs.VCDElement_Auto + ":" + VCDIDs.VCDInterface_Switch);
                    GainSwith.Switch = false;    //关闭自动增益
                    //绝对增益对象初始化
                    GainAbsoluteValue = (TIS.Imaging.VCDAbsoluteValueProperty)m_ImageControl.VCDPropertyItems.FindInterface(VCDIDs.VCDID_Gain + ":" + VCDIDs.VCDElement_Value + ":" + VCDIDs.VCDInterface_AbsoluteValue);
                    double GValue = Convert.ToDouble(strParamValue) / 1000;
                    if (GValue <= GainAbsoluteValue.RangeMin)
                    {
                        GainAbsoluteValue.Value = GainAbsoluteValue.RangeMin;
                    }
                    else if (GValue >= GainAbsoluteValue.RangeMax)
                    {
                        GainAbsoluteValue.Value = GainAbsoluteValue.RangeMax;
                    }
                    else
                    {
                        GainAbsoluteValue.Value = GValue;
                    }
                    break;

                default:
                    break;
                }
                return(true);
            }
            catch (Exception ex)
            {
                //    m_strLastErr = ex.Message;
                return(false);
            }
        }
    //创建资源
    void CreateRes()
    {
        camParam = new CamParam(new Vector3(50, 0, 0), heroCamera.fieldOfView);

        //level resources
        GameObject go = (GameObject)Instantiate(prbLevelRes);
        go.transform.parent = transform;

        //level config
        go = (GameObject)Instantiate(prbLevelConfig, Vector3.zero, Quaternion.identity);
        curConfig = go.GetComponent<LevelConfig>();
        go.transform.parent = transform;

        if (prbLevelCamera)
        {
            //level camera path animation
            go = (GameObject)Instantiate(prbLevelCamera);

            curLevelCamera = go.GetComponent<LevelCamera>();
            go.transform.parent = transform;
        }

        //开始
        StartCoroutine(Init());
        InitRes();
    }