void Awake() { if (ins != null && ins != this) { Destroy(this.gameObject); } ins = this; DontDestroyOnLoad(this.gameObject); SetResizeCameraAgain(); }
public static bool IsOutOfCamera(MyCameraController _camera, Vector3 _point, Vector2 _size) { Vector3 _posCam = _camera.transform.position; Vector2 _sizeCam = _camera.sizeOfCamera; if (_point.x + _size.x / 2 < _posCam.x - _sizeCam.x / 2 || _point.x - _size.x / 2 > _posCam.x + _sizeCam.x / 2 || _point.y + _size.y / 2 < _posCam.y - _sizeCam.y / 2 || _point.y - _size.y / 2 > _posCam.y + _sizeCam.y / 2) { return(true); } return(false); }
/// <summary> /// 构造可渲染对象 /// </summary> /// <param name="context"></param> /// <param name="factory"></param> public RayCastedGlobe(ApplicationWindow window) : base(window) { _camera = new MyCameraController(); Shape = Ellipsoid.ScaledWgs84; }
public void UpdatePosAgain(float _currentVelocity) { Vector3 _pos = Vector3.zero; MyCameraController _camera = AnimalRacing_GamePlay_Manager.instance.mainCamera; AnimalRacing_RaceTrack_Col_Controller _firstCol = null; AnimalRacing_RaceTrack_Col_Controller _lastCol = null; if (canMoveReverseCamera) { for (int i = 0; i < listColGlass.Count; i++) { if (listColGlass[i].percentReverseVeclocity > 0f) { _pos = listColGlass[i].transform.position; _pos.x += listColGlass[i].percentReverseVeclocity * _currentVelocity / 100f; listColGlass[i].transform.position = _pos; } } for (int i = 0; i < listColTree00.Count; i++) { if (listColTree00[i].percentReverseVeclocity > 0f) { _pos = listColTree00[i].transform.position; _pos.x += listColTree00[i].percentReverseVeclocity * _currentVelocity / 100f; listColTree00[i].transform.position = _pos; } } for (int i = 0; i < listColTree01.Count; i++) { if (listColTree01[i].percentReverseVeclocity > 0f) { _pos = listColTree01[i].transform.position; _pos.x += listColTree01[i].percentReverseVeclocity * _currentVelocity / 100f; listColTree01[i].transform.position = _pos; } } } _firstCol = GetFirstCol(listColGlass); _pos = _firstCol.transform.position; if (_pos.x + _firstCol.mySize.x / 2 <= _camera.transform.position.x - _camera.sizeOfCamera.x / 2f) { _lastCol = GetLastCol(listColGlass); _pos.x = _lastCol.transform.position.x + _lastCol.mySize.x; _firstCol.transform.position = _pos; } _firstCol = GetFirstCol(listColTree00); _pos = _firstCol.transform.position; if (_pos.x + _firstCol.mySize.x / 2 <= _camera.transform.position.x - _camera.sizeOfCamera.x / 2f) { _lastCol = GetLastCol(listColTree00); _pos.x = _lastCol.transform.position.x + _lastCol.mySize.x; _firstCol.transform.position = _pos; } _firstCol = GetFirstCol(listColTree01); _pos = _firstCol.transform.position; if (_pos.x + _firstCol.mySize.x / 2 <= _camera.transform.position.x - _camera.sizeOfCamera.x / 2f) { _lastCol = GetLastCol(listColTree01); _pos.x = _lastCol.transform.position.x + _lastCol.mySize.x; _firstCol.transform.position = _pos; } }
void Start() { MyCameraController.instance = this; myTransform = transform; }