Unity WebcamTexture расширенные настройки (экспозиция, фокус, масштабирование) - PullRequest
0 голосов
/ 30 октября 2018

У меня есть камера, работающая в Unity, которая использует WebcamTexture. Согласно https://docs.unity3d.com/ScriptReference/WebCamTexture.html, нет никаких функций для изменения настроек экспозиции или фокусировки.

Просто чтобы прояснить:

  1. Есть ли способ изменить экспозицию WebcamTexture?
  2. Если нет, есть ли другой способ отрегулировать экспозицию без с помощью WebcamTexture?
  3. Если нет, то какие широко используемые API / инструменты я могу использовать в Unity для получения видеокамеры с этими настраиваемыми настройками?

1 Ответ

0 голосов
/ 30 октября 2018

Есть ли способ изменить экспозицию WebcamTexture?

Нет. Вы можете на Android с AndroidJavaObject, но это хак и может перестать работать при каждом обновлении Unity. Кроме того, он будет работать только на Android, но не на iOS, Windows, Mac и других платформах.

Если нет, есть ли другой способ отрегулировать экспозицию без использования WebcamTexture

Опять нет. Вы не можете изменять настройки камеры при использовании WebcamTexture.

Если нет, то какие широко используемые API / инструменты я могу использовать в Unity? для получения камеры с этими регулируемыми настройками?

Единственный способ изменить указанные вами настройки камеры - создать плагин API камеры для каждой платформы. Это нелегко сделать, так как вам нужно знать много языков программирования, чтобы заставить его работать, таких как Java для Android, Objective-C для iOS и Mac, C ++ для Windows и Linux и Javascript для WebGL, а затем использовать C # для их объединения. Это действительно занимает много времени, и поэтому лучше использовать существующий плагин.

Самый лучший плагин - NatCam . Этот плагин может контролировать экспозицию, фокус и масштабирование камеры , но это не бесплатно. Оно того стоит.

Вы можете установить экспозицию и смещение экспозиции как:

DeviceCamera.RearCamera.ExposureMode = ExposureMode.Locked;
NatCam.Camera.ExposureBias = NatCam.Camera.MinExposureBias;

Чтобы установить режим фокусировки:

NatCam.Camera.FocusMode = FocusMode.TapToFocus | FocusMode.AutoFocus;

Для увеличения камеры:

NatCam.Camera.ZoomRatio = 2.0f;

Вы можете найти полное руководство по NatCam здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...