Camera
Описание
Camera — это устройство, через которое игрок видит мир.
Точка пространства экрана определяется в пикселях. Нижняя левая точка экрана (0,0); верхняя правая точка экрана (pixelWidth,pixelHeight). Положение z в мировых единицах от Camera.
Точка пространства viewport нормализована и относится к Camera. Нижняя левая точка Camera — (0,0); верхняя правая — (1,1). Положение z в мировых единицах из Camera.
Мировая космическая точка определяется в глобальных координатах (например, Transform.position).
Дополнительные ресурсы: компонент камеры.
Статические свойства
| Свойство | Описание |
|---|---|
| allCameras | Возвращает все включенные камеры в Scene. |
| allCamerasCount | Количество камер в текущем Scene. |
| current | Камера, с которой мы в настоящее время рендерируем, для низкоуровневого управления рендерингом (только для чтения). |
| kMaxAperture | Максимально допустимая апертура. |
| kMaxBladeCount | Максимальное число лопастей для диафрагмы с апертурой. |
| kMinAperture | Минимальная допустимая апертура. |
| kMinBladeCount | Минимальное число лопастей для диафрагмы с апертурой. |
| main | Первый включенный компонент Camera, помеченный "MainCamera" (только для чтения). |
| onPostRender | Делегирование, которое можно использовать для выполнения пользовательского кода после того, как Camera отобразит сцену. |
| onPreCull | Делегирование, которое можно использовать для выполнения пользовательского кода до того, как Camera вычеркнет сцену. |
| onPreRender | Делегирование, которое можно использовать для выполнения пользовательского кода до того, как Camera отобразит сцену. |
Свойства
| Свойство | Описание |
|---|---|
| activeTexture | Получает временную цель RenderTexture для этого Camera. |
| actualRenderingPath | Путь отображения, используемый в настоящее время (только для чтения). |
| allowDynamicResolution | Динамическое масштабирование разрешения. |
| allowHDR | Высокий динамический диапазон рендера. |
| allowMSAA | MSAA рендеринг. |
| anamorphism | Анаморфизм камеры. Чтобы использовать это свойство, включите UsePhysicalProperties. |
| aperture | Апертура камеры. Чтобы использовать это свойство, включите UsePhysicalProperties. |
| areVRStereoViewMatricesWithinSingleCullTolerance | Определяет, пригодны ли матрицы стереовидения для однопроходного удаления. |
| aspect | Соотношение сторон (ширина делится на высоту). |
| backgroundColor | Цвет, которым будет очищен экран. |
| barrelClipping | Обрезка камеры. Чтобы использовать это свойство, включите UsePhysicalProperties. |
| bladeCount | Количество лезвий в объективе камеры. Чтобы использовать это свойство, включите UsePhysicalProperties. |
| cameraToWorldMatrix | Матрица, которая преобразует пространство камеры в мировое пространство (только для чтения). |
| cameraType | Определяет, к какому виду относится эта камера, с помощью перечисления CameraType. |
| clearFlags | Как камера очищает фон. |
| clearStencilAfterLightingPass | Должна ли камера очищать буфер шаблона после прохождения отложенного света? |
| commandBufferCount | Число командных буферов, установленных на этой камере (только для чтения). |
| cullingMask | Это используется для выборочного отображения частей Scene. |
| cullingMatrix | Задает настраиваемую матрицу для камеры, используемую для всех запросов на удаление. |
| curvature | Кривость лопастей. Чтобы использовать это свойство, включите UsePhysicalProperties. |
| depth | Глубина Camera в порядке отображения камеры. |
| depthTextureMode | Как и если камера генерирует текстуру глубины. |
| eventMask | Маска для выбора слоев, которые могут вызывать события на камере. |
| farClipPlane | Расстояние дальней плоскости обрезки от Camera, в единицах мира. |
| fieldOfView | Вертикальное поле зрения Camera в градусах. |
| focalLength | Фокусное расстояние камеры, выраженное в миллиметрах. Чтобы использовать это свойство, включите UsePhysicalProperties. |
| focusDistance | Фокусное расстояние объектива. Чтобы использовать это свойство, включите UsePhysicalProperties. |
| forceIntoRenderTexture | Следует ли принуждать камеру к рендерингу в RenderTexture. |
| gateFit | Для камеры существует два ворота, ворота сенсора и ворота разрешения. Физическое ворота сенсора камеры определяется свойством sensorSize, ворота разрешения определяются целевой областью рендеринга. |
| iso | Чувствительность сенсора камеры. Чтобы использовать это свойство, включите UsePhysicalProperties. |
| isProcessingRenderRequest | Обрабатывает ли камера в настоящее время запрос на отображение. |
| layerCullDistances | Расстояния отсечения по слоям. |
| layerCullSpherical | Как выполнить выселение по слоям для Camera. |
| lensShift | Смещение объектива камеры. Смещение объектива относительно размера датчика. Например, сдвиг объектива 0.5 смещает датчик на половину его горизонтального размера. |
| nearClipPlane | Расстояние близкой плоскости обрезки от Camera, в единицах мира. |
| nonJitteredProjectionMatrix | Получить или установить необработанную проекционную матрицу без смещения камеры (без трещин). |
| opaqueSortMode | Непрозрачный режим сортировки объектов. |
| orthographic | Является ли камера орфографической (истинной) или перспективной (ложной)? |
| orthographicSize | Половина размера Camera в орфографическом режиме. |
| overrideSceneCullingMask | Устанавливает маску выделения, используемую для определения того, какие объекты из каких сцен рисовать. См. EditorSceneManager.SetSceneCullingMask. |
| pixelHeight | Высота камеры в пикселях (без учета динамического масштабирования разрешения) (только для чтения). |
| pixelRect | Где на экране находится камера, отображаемая в координатах пикселей. |
| pixelWidth | Насколько широка камера в пикселях (без учета динамического масштабирования разрешения) (только для чтения). |
| previousViewProjectionMatrix | Получить матрицу проекции вида, используемую в последнем кадре. |
| projectionMatrix | Матрица 4x4, которая используется для преобразования пространственных координат мира в пространственные координаты клипа. |
| rect | Где на экране камера отображается в нормализованных координатах. |
| renderCloudsInSceneView | Отображает ли Unity облака в виде Scene для этой камеры. |
| renderingPath | Путь отображения, который должен использоваться, если это возможно. |
| scaledPixelHeight | Высота камеры в пикселях (с учетом динамического масштабирования разрешения) (только для чтения). |
| scaledPixelWidth | Насколько широка камера в пикселях (с учетом динамического масштабирования разрешения) (только для чтения). |
| scene | Если не null, камера будет отображать только содержимое указанного Scene. |
| sensorSize | Размер сенсора камеры, выраженный в миллиметрах. |
| shutterSpeed | Время экспозиции камеры, в секундах. Чтобы использовать это свойство, включите UsePhysicalProperties. |
| stereoActiveEye | Возвращает глаз, который в настоящее время рендируется. Если вызвать, когда стерео не включено, то возвращается Camera.MonoOrStereoscopicEye.Mono. Если вызвать во время обратного вызова рендеринга камеры, например OnRenderImage, то возвращается глаз, который в настоящее время рендируется. Если вызвать вне обратного вызова рендеринга и включено стерео, то возвращается глаз по умолчанию, который Camera.MonoOrStereoscopicEye.Left. |
| stereoConvergence | Расстояние до точки, в которой сходятся виртуальные глаза. |
| stereoEnabled | Стереоскопическое отображение. |
| stereoSeparation | Расстояние между виртуальными глазами. Используйте это, чтобы узнать или задать текущее разведение глаз. Учтите, что большинство VR-устройств сообщают это значение сами, и тогда его установка не даст эффекта. |
| stereoTargetEye | Определяет, в какой глаз VR дисплея Camera отображается. |
| targetDisplay | Установить целевой дисплей для этого Camera. |
| targetTexture | Текстура рендеринга назначения. |
| transparencySortAxis | Ось, которая описывает направление, вдоль которого измеряются расстояния до объектов для целей сортировки. |
| transparencySortMode | Прозрачный режим сортировки объектов. |
| useJitteredProjectionMatrixForTransparentRendering | Следует ли использовать для отображения прозрачности матрицу с колебаниями? |
| useOcclusionCulling | Использует ли Camera окклюзионное вычеркивание во время отображения. |
| usePhysicalProperties | Включите usePhysicalProperties для использования физических свойств камеры для вычисления поля зрения и фрустума. |
| velocity | Получить скорость камеры в пространстве (только для чтения). |
| worldToCameraMatrix | Матрица, которая превращает мир в пространство камеры. |
Открытые методы
| Метод | Описание |
|---|---|
| AddCommandBuffer | Добавить буфер команд, которые будут выполняться в указанном месте. |
| AddCommandBufferAsync | Добавляет командный буфер в очереди асинхронных вычислений GPU и выполняет этот командный буфер, когда обработка графики достигает заданной точки. |
| CalculateFrustumCorners | При заданных координатах окон вычисляет векторы пространства обзора, указывающие на четыре угла фрустум на указанной глубине камеры. |
| CalculateObliqueMatrix | Вычисляет и возвращает матрицу наклонной близкопланарной проекции. |
| CopyFrom | Заставляет настройки этой камеры соответствовать другим камерам. |
| CopyStereoDeviceProjectionMatrixToNonJittered | Задает матрицу проекции без колебаний, взятую из VR SDK. |
| GetCommandBuffers | Получить командные буферы для выполнения в указанном месте. Этот API доступен только с Встроенным рендерером. |
| GetGateFittedFieldOfView | Получает эффективное вертикальное поле обзора камеры, включая GateFit. Соответствие ворота сенсора и ворота разрешения влияет на окончательное поле обзора. Если соотношение сторон ворота сенсора равно соотношению сторон ворота разрешения или если камера не находится в физическом режиме, то этот метод возвращает то же значение, что и свойство fieldofview. |
| GetGateFittedLensShift | Получает эффективное смещение объектива камеры, включая GateFit. Соответствие ворота сенсора и ворота разрешения влияет на окончательную наклонность проекции. Если соотношение сторон ворота сенсора равно соотношению сторон ворота разрешения, то этот метод возвращает то же значение, что и свойство lenshift. Если камера не находится в физическом режиме, то этот метод возвращает Vector2.zero. |
| GetStereoNonJitteredProjectionMatrix | Получает матрицу проекции без колебаний для конкретного левого или правого стереоскопического глаза. |
| GetStereoProjectionMatrix | Получает матрицу проекции определенного левого или правого стереоскопического глаза. |
| GetStereoViewMatrix | Получает матрицу левого или правого вида определенного стереоскопического глаза. |
| RemoveAllCommandBuffers | Удалить все командные буферы, установленные на этой камере. |
| RemoveCommandBuffer | Удалить буфер команд от исполнения в указанном месте. |
| RemoveCommandBuffers | Удалить буферы команд от выполнения в указанном месте. |
| Render | Рендирование камеры вручную. |
| RenderToCubemap | Отрисовывать с этой камеры в статическую кубическую карту. |
| RenderWithShader | Рендер камеры с заменой шейдера. |
| Reset | Вернуть все параметры камеры в исходное состояние. |
| ResetAspect | Вернуть соотношение сторон к соотношению сторон экрана. |
| ResetCullingMatrix | Сделайте запросы на удаление отражают камеры встроенные параметры. |
| ResetProjectionMatrix | Сделать проекцию отражать нормальные параметры камеры. |
| ResetReplacementShader | Удалить замену шейдера из камеры. |
| ResetStereoProjectionMatrices | Сбросить камеру на использование вычисленных проекционных матриц Unity для всех стереоскопических глаз. |
| ResetStereoViewMatrices | Сбросить камеру на использование матриц вычисления Unity для всех стереоскопических глаз. |
| ResetTransparencySortSettings | Сброс параметров сортировки прозрачности этого Camera к значениям по умолчанию. Настройки прозрачности по умолчанию взяты из GraphicsSettings, а не непосредственно из этого Camera. |
| ResetWorldToCameraMatrix | Сделайте так, чтобы положение рендеринга отражало положение камеры в Scene. |
| ScreenPointToRay | Возвращает луч, проходящий от камеры через точку экрана. |
| ScreenToViewportPoint | Преобразует позицию из экранного пространства в пространство окна просмотра. |
| ScreenToWorldPoint | Преобразует точку из экранного пространства в мировое пространство, где мировое пространство определяется как система координат на самом верху иерархии вашей игры. |
| SetReplacementShader | Сделать рендеринг камеры с заменой шейдера. |
| SetStereoProjectionMatrix | Задает пользовательскую матрицу проекции для конкретного стереоскопического глаза. |
| SetStereoViewMatrix | Задает настраиваемую матрицу представления для конкретного стереоскопического глаза. |
| SetTargetBuffers | Настраивает Camera на отображение в выбранных буферах одного или нескольких RenderTextures. |
| SubmitRenderRequest | Отправляет запрос на рендеринг камере вне цикла рендеринга Unity. |
| TryGetCullingParameters | Получить параметры отбора для камеры. |
| ViewportPointToRay | Возвращает луч, проходящий от камеры через точку окна просмотра. |
| ViewportToScreenPoint | Преобразует позицию из пространства окна в пространство экрана. |
| ViewportToWorldPoint | Преобразует позицию из пространства viewport в мировое пространство. |
| WorldToScreenPoint | Преобразует позицию из мирового пространства в экранное пространство. |
| WorldToViewportPoint | Преобразует позицию из мирового пространства в пространство просмотра. |
Статические методы
| Метод | Описание |
|---|---|
| CalculateProjectionMatrixFromPhysicalProperties | Вычисляет матрицу проекции из фокусного расстояния, размера сенсора, смещения объектива, расстояния в ближней плоскости, расстояния в дальней плоскости и параметров Gate fit. Для вычисления матрицы проекции без учета Gate fit используйте Camera.GateFitMode.None. Дополнительные ресурсы: GateFitParameters |
| FieldOfViewToFocalLength | Преобразует поле зрения в фокусное расстояние. Используйте либо высоту датчика и вертикальное поле зрения, либо ширину датчика и горизонтальное поле зрения. |
| FocalLengthToFieldOfView | Преобразует фокусное расстояние в поле зрения. |
| GetAllCameras | Заполняет массив Camera текущими камерами в Scene, без выделения нового массива. |
| HorizontalToVerticalFieldOfView | Преобразует горизонтальное поле зрения (FOV) в вертикальное FOV, на основе значения параметра соотношения сторон. |
| VerticalToHorizontalFieldOfView | Преобразует вертикальное поле зрения (FOV) в горизонтальное FOV, на основе значения параметра соотношения сторон. |
Сообщения
| Сообщение | Описание |
|---|---|
| OnPostRender | Функция события, которую вызывает Unity после того, как Camera отображает сцену. |
| OnPreCull | Функция события, которую вызывает Unity до того, как Camera вычеркивает сцену. |
| OnPreRender | Функция события, которую вызывает Unity перед тем, как Camera рендирует сцену. |
| OnRenderImage | Функция события, которую вызывает Unity после того, как Camera закончил рендеринг, которая позволяет изменить окончательное изображение Camera. |
| OnRenderObject | OnRenderObject вызывается после того, как камера отобразила Scene. |
| OnWillRenderObject | OnWillRenderObject вызывается для каждой камеры, если объект видим. |
Делегаты
| делегат | Описание |
|---|---|
| CameraCallback | Тип делегирования для обратных вызовов камеры. |
Унаследованные члены 4
Свойства
| Свойство | Описание |
|---|---|
| enabled | True, если это Поведение включено, в противном случае false. |
| isActiveAndEnabled | Проверяет, включён ли компонент, прикреплен ли он к GameObject, который активен в иерархии, и вызван ли OnEnable компонента. |
| gameObject | GameObject, к которому прикреплен данный компонент. Компонент всегда прикрепляется к игровому объекту. |
| tag | Тег этого игрового объекта. |
| transform | Transform прикреплен к этому GameObject. |
| transformHandle | TransformHandle этого GameObject. |
| hideFlags | Должен ли объект быть скрытым, сохраняться с Scene или изменяться пользователем? |
| name | Имя объекта. |
Открытые методы
| Метод | Описание |
|---|---|
| BroadcastMessage | Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте или любом из его дочерей. |
| CompareTag | Проверяет тег GameObject на соответствие определенному тегу. |
| GetComponent | Получает ссылку на компонент типа T на том же GameObject, что и указанный компонент. |
| GetComponentInChildren | Получает ссылку на компонент типа T на том же GameObject, что и указанный компонент, или на любого ребенка GameObject. |
| GetComponentIndex | Получает индекс компонента на его родительском GameObject. |
| GetComponentInParent | Получает ссылку на компонент типа T на том же GameObject, что и указанный компонент, или на любой родитель GameObject. |
| GetComponents | Получает ссылки на все компоненты типа T на том же GameObject, что и указанный компонент. |
| GetComponentsInChildren | Получает ссылки на все компоненты типа T на том же GameObject, что и указанный компонент, и на любого ребенка GameObject. |
| GetComponentsInParent | Получает ссылки на все компоненты типа T на том же GameObject, что и указанный компонент, и любой родитель GameObject. |
| SendMessage | Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте. |
| SendMessageUpwards | Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте и на каждом предшественнике поведения. |
| TryGetComponent | Получает компонент указанного типа, если он существует. |
| GetInstanceID | Получает экземпляр ID объекта. |
| ToString | Возвращает имя объекта. |
Статические методы
| Метод | Описание |
|---|---|
| Destroy | Удаляет GameObject, компонент или ресурс. |
| DestroyImmediate | Немедленно уничтожает указанный объект. Используйте с осторожностью и только в режиме редактирования. |
| DontDestroyOnLoad | Не уничтожать целевой Объект при загрузке нового Scene. |
| FindAnyObjectByType | Получает любой активный загруженный объект типа Type. |
| FindFirstObjectByType | Получает первый активный загруженный объект типа Type. |
| FindObjectsByType | Получает список всех загруженных объектов типа Type. |
| Instantiate | Клонирует исходный объект и возвращает клон. |
| InstantiateAsync | Захватывает моментальный снимок первоначального объекта (который должен быть связан с каким-либо GameObject) и возвращает AsyncInstantiateOperation. |
Операторы
| Оператор | Описание |
|---|---|
| bool | Существует ли объект? |
| оператор!= | Сравнивает, если два объекта ссылаются на разные объекты. |
| оператор == | Сравнение двух ссылок на объекты для определения того, относятся ли они к одному и тому же объекту. |