Разработка сайта для Вашего бизнеса. Веб дизайн. Дизайн логотипа, фирменного стиля, рекламная фотография . Комплексный рекламный креатив.

Ralex. We do the work.
На рынке с 1999го года. Средняя ценовая категория. Ориентация на эффективность решений.
Ознакомтесь с нашим портфолио
Узнайте больше о услугах
Свяжитесь с нами:
E-mail: [email protected]
Tel: (044) 587 - 84 - 78
Custom web design & дизайн и разработка сайта "под ключ"
Креативный, эффективный дизайн. Система управления сайтом (СУС).
Custom flexible разработка систем электронной коммерции
Система e-commerce разрабатывается под индивидуальные потребности. Гибкая функциональность.
Search Engine Optimzation & оптимизация под поисковые системы (SEO)
Постоянная оптимизация и мониторинг сайта в поисковых системах. Достигаем результата быстро и эффективно
Custom logo design & дизайн логотипа и фирменного стиля
Многолетний опыт. Огромное портфолио. Уникальное предложение и цена.
профессиональная рекламная фотография
креативно, смело, качественно
Custom logo design & рекламный креатив. дизайн рекламы
Многолетний опыт. Огромное портфолио. Уникальное предложение и цена.

Камера - Керівництво користувача Blend4Web 18.05.0

  1. Камера типу Target
  2. Камера типу Eye
  3. Камера типу Hover
  4. Завдання режиму управління
  5. Переміщення і поворот
  6. завдання лімітів
  7. Відлік кутових координат

Наша взаимовыгодная связь https://banwar.org/

Налаштування камери виставляються в панелі Properties на вкладці Camera (Object Data). Налаштування камери виставляються в панелі Properties на вкладці Camera (Object Data)

Налаштування, доступні для камери

Camera Move Style> Move Style

Режим управління камерою:

  • Target

    За замовчуванням камера знаходиться в режимі обертання навколо деякої точки (target). Положення точки обертання може бути змінено (див. панорамування ).

  • Eye

    Режим погляду дозволяє здійснювати обертання і переміщення від першої особи.

  • Hover

    У режимі нависання камера рухається паралельно горизонтальній опорній площині. Додатковими лімітами можна задати плавну траєкторію руху камери у напрямку до опорної точці.

  • Static

    У статичному режимі зміна положення камери здійснюється за допомогою анімації або через API.

Look At Cursor> Target Location

Доступно в режимі Target. Позиція точки, щодо якої буде обертатися камера. Кнопка Look At Cursor дозволяє скопіювати поточний стан курсору, а при натисканні на неї активна камера повертається в напрямку зазначеної точки.

Depth of Field

Описано в розділі Глибина різкості камери .

Для камери доступні настройки швидкості руху:

Camera Move Style> Camera Velocities> Translation Velocity

Актуально для режимів Target, Eye, Hover. Задає швидкість переміщення камери. Інтервал значень: \ (\ left [0, \ \ infty \ right) \). Значення за замовчуванням: 1.

Camera Move Style> Camera Velocities> Rotation Velocity

Актуально для режимів Target, Eye, Hover. Задає швидкість обертання камери. Інтервал значень: \ (\ left [0, \ \ infty \ right) \). Значення за замовчуванням: 1.

Camera Move Style> Camera Velocities> Zoom Velocity

Актуально для режимів Target, Hover. Задає швидкість наближення камери до опорної точці. Інтервал значень: \ (\ left [0, \ 0.99 \ right] \). Значення за замовчуванням: 0.1.

Для камери є кілька налаштувань, що обмежують / змінюють її рух тим або іншим чином. Вони об'єднані в групу Camera Limits.

Налаштування обмеження руху камери

Обмежувачі переміщення камери можуть відображатися безпосередньо у вьюпорте Blender. Для цього потрібно включити опцію Display Limits in Viewport.

Камера типу Target

Camera Move Style> Camera Limits> Distance Limits

Завдання мінімального і максимального відстаней від камери до точки обертання. Можна вибрати зі значень Min \ (\ le \) Max. Значення за замовчуванням: Min = 1, Max = 10. За замовчуванням вимкнено.

Camera Move Style> Camera Limits> Horizontal Rotation Limits

Обмеження горизонтального (навколо світової осі Z в Blender'е) обертання камери щодо відповідної точки. Обертання відбувається по дузі кола визначається значеннями Left Angle і Right Angle. Дуга обертання відповідає руху з Left Angle в Right Angle проти годинникової стрілки. Значення за замовчуванням: Left Angle = -45 °, Right Angle = 45 °. За замовчуванням вимкнено.

Camera Move Style> Camera Limits> Vertical Rotation Limits

Обмеження горизонтального (навколо світової осі Z в Blender'е) обертання камери щодо відповідної точки. Обертання відбувається по дузі кола визначається значеннями Left Angle і Right Angle. Дуга обертання відповідає руху з Left Angle в Right Angle проти годинникової стрілки. Значення за замовчуванням: Left Angle = -45 °, Right Angle = 45 °. За замовчуванням вимкнено.

Camera Move Style> Camera Limits> Pivot Translation Limits

Обмеження переміщення точки прив'язки камери. Значення за замовчуванням: MinZ = 0, MaxZ = 10. Чи не відображається у вьюпорте.

Camera Move Style> Camera Limits> Use Panning Mode

Дозволити панорамне переміщення камери.

Камера типу Eye

Blend4Web> Horizontal Rotation Limits

Обмеження горизонтального (навколо світової осі Z в Blender'е) обертання камери щодо відповідної точки. Обертання відбувається по дузі кола визначається значеннями Left Angle і Right Angle. Дуга обертання відповідає руху з Left Angle в Right Angle проти годинникової стрілки. Значення за замовчуванням: Left Angle = -45 °, Right Angle = 45 °. За замовчуванням вимкнено.

Camera Move Style> Camera Limits> Vertical Rotation Limits

Обмеження горизонтального (навколо світової осі Z в Blender'е) обертання камери щодо відповідної точки. Обертання відбувається по дузі кола визначається значеннями Left Angle і Right Angle. Дуга обертання відповідає руху з Left Angle в Right Angle проти годинникової стрілки. Значення за замовчуванням: Left Angle = -45 °, Right Angle = 45 °. За замовчуванням вимкнено.

Камера типу Hover

Camera Move Style> Camera Limits> Horizontal Translation Limits

Обмеження переміщення опорної точки вздовж осі X в світових координатах в Blender'е. Можна вибрати зі значень Min \ (\ le \) Max. Значення за замовчуванням: MinX = -10, MaxX = 10. За замовчуванням вимкнено.

Camera Move Style> Camera Limits> Vertical Translation Limits

Обмеження переміщення опорної точки вздовж осі Y в світових координатах в Blender'е. Можна вибрати зі значень Min \ (\ le \) Max. Значення за замовчуванням: MinY = -10, MaxY = 10. За замовчуванням вимкнено.

Camera Move Style> Camera Limits> Use Zooming

Дозволяє користувачеві наближати і видаляти камеру щодо опорної точки. При відключенні цього параметра положення камери щодо опорної точки буде фіксованим. За замовчуванням вимкнено.

Camera Move Style> Camera Limits> Distance Limits

Завдання мінімального і максимального відстаней від камери до точки перетину (опорна точка) напрямку погляду камери з горизонтальною опорною площиною (за замовчуванням з площиною XOY світових координат в Blender'е). Можна вибрати зі значень Min \ (\ le \) Max. Значення за замовчуванням: Min = 1, Max = 10. За замовчуванням вимкнено.

Camera Move Style> Camera Limits> Vertical Rotation Limits

Обмеження кута підйому камери (кута між напрямком погляду камери і горизонтальною площиною). Можна вибрати зі значень 0 ° \ (\ le \) Down \ (\ le \) Up \ (\ le \) 90 °. Значення за замовчуванням: Down = 0 °, Up = 90 °.

Camera Move Style> Camera Limits> Zero Level

Відстань від опорної площини камери до центру координат. За замовчуванням дорівнює нулю.

При включенні настройки Blend4Web> Use Zooming ліміти по відстані і куту підйому діятимуть одночасно, задаючи траєкторію руху камери у вертикальній площині.

Некоректне завдання лімітів по відстані або куту підйому призведе до відключення цієї настройки.

Camera Move Style> Camera Limits> Use Horizontal Rotation

Дозволити обертання камери в площині XOY Blender'а щодо опорної точки. За замовчуванням включено.

Камера типу Static

Камера цього типу не має обмежувачів, так як не контролюється користувачем.

Особливості завдання обмежень

Camera Space

Всі кути відраховуються відносно початкового положення і орієнтації камери.

World Space

Горизонтальні кути відраховуються щодо направлення осі Y в просторі світових координат, вертикальні - щодо площині XOY в світовому просторі в Blender'е.

Значення за замовчуванням: Camera Space.

Обмеження по горизонталі на прикладі TARGET камери:

Обмеження по вертикалі на прикладі TARGET камери:

Якщо батьком об'єкта є камера, для нього доступний набір параметрів, відомий як Viewport Alignment. Ці параметри знаходяться у вкладці Relations на панелі Object.

Ці параметри знаходяться у вкладці Relations на панелі Object

З їх допомогою об'єкт можна вирівняти відносно камери таким чином, що він завжди буде залишатися в одній і тій же точці екрану, незалежно від руху або повороту камери. Може застосовуватися, зокрема, для створення елементів інтерфейсу.

Може застосовуватися, зокрема, для створення елементів інтерфейсу

Всі елементи інтерфейсу, представлені на цьому зображенні, створені з використанням настройки Viewport Alignment.

Viewport Alignment

Цей параметр вмикає та вимикає використання всіх нижчеперелічених параметрів. За замовчуванням активовано.

Alignment

Цей параметр визначає, до якої точки екрану буде прив'язаний об'єкт. Може мати одне з наступних значень:

  • Top-Left - прив'язує об'єкт до лівого верхнього кута екрану

  • Top - прив'язує об'єкт до верхньої межі екрану

  • Top-Right - прив'язує об'єкт до правого верхнього кута екрану

  • Left - прив'язує об'єкт до лівої сторони екрану

  • Center - прив'язує об'єкт до центру екрану

  • Right - прив'язує об'єкт до правого боку екрану

  • Bottom-Left - прив'язує об'єкт до лівого нижнього кута екрану

  • Bottom - прив'язує об'єкт до нижньої межі екрану

  • Bottom-Right - прив'язує об'єкт до правого нижнього кута екрану

Значення за замовчуванням: Center.

Distance

Відстань між камерою і об'єктом, прив'язаним до неї. За замовчуванням дорівнює 10.

Fit to Camera

Натискання на цю кнопку розташує об'єкт щодо камери так, як він буде розташовуватися в движку. Може використовуватися для попереднього перегляду результатів прив'язки.

Детальна документація API модуля: посилання .

Положення і орієнтація камери в просторі визначаються конкретним режимом управління. У режимах EYE, TARGET і HOVER модель поведінки накладає ряд обмежень, наприклад, таких як вирівнювання вертикальної осі камери уздовж світової осі Y і постійна орієнтація камери на опорну точку. Для STATIC камери таких обмежень немає, тому вона краще підходить у випадках, коли потрібен більш повний контроль, наприклад, при процедурної анімації.

Основні функції управління камерою знаходяться в модулі camera . Частина з них, що відноситься до конкретного режиму управління, починається з відповідних префіксів: static_, eye_, target_ і hover_. Решта методи застосовні для всіх режимів.

Завдання режиму управління

Для зміни режиму і повного визначення моделі поведінки камери можна скористатися такими способами: static_setup () , eye_setup () , target_setup () і hover_setup () . Вони приймають об'єкт, що містить набір опціональних параметрів, що дозволяють задати положення камери, поворот, наявність лімітів тощо:

var camera = m_scenes. get_active_camera (); var POS = new Float32Array ([1, 1, 1]); var LOOK_AT = new Float32Array ([0, 0, 0]); var EYE_HORIZ_LIMITS = {left: Math. PI / 4, right: - Math. PI / 4}; var EYE_VERT_LIMITS = {down: - Math. PI / 4, up: Math. PI / 4}; var TARGET_DIST_LIMITS = {min: 1, max: 10}; var HOVER_DIST_LIMITS = {min: 1, max: 10}; var HOVER_ANGLE_LIMITS = {down: 0, up: - Math. PI / 4}; var HOVER_HORIZ_TRANS_LIMITS = {min: - 5, max: 3}; var HOVER_VERT_TRANS_LIMITS = {min: - 1, max: 1}; ... // setup STATIC camera by defining the new position and the new look-at point m_cam. static_setup (camera, {pos: POS, look_at: LOOK_AT}); // setup STATIC camera by defining the new look-at point and keeping the existing position m_cam. static_setup (camera, {look_at: LOOK_AT}); // setup STATIC camera by defining the new position and keeping the existing orientation m_cam. static_setup (camera, {pos: POS}); // setup EYE camera with horizontal rotation limits m_cam. eye_setup (camera, {pos: POS, look_at: LOOK_AT, horiz_rot_lim: EYE_HORIZ_LIMITS}); // setup EYE camera with vertical rotation limits m_cam. eye_setup (camera, {pos: POS, look_at: LOOK_AT, vert_rot_lim: EYE_VERT_LIMITS}); // setup TARGET camera with distance limits and panning mode m_cam. target_setup (camera, {pos: POS, pivot: LOOK_AT, dist_lim: TARGET_DIST_LIMITS, use_panning: true}); // setup HOVER camera on a fixed distance (without zooming) relatively to its pivot m_cam. hover_setup (camera, {pos: POS, pivot: LOOK_AT}); // setup HOVER camera with zooming (distance + angle limits) m_cam. hover_setup (camera, {pos: POS, pivot: LOOK_AT, dist_lim: HOVER_DIST_LIMITS, hover_angle_lim: HOVER_ANGLE_LIMITS}); // setup HOVER camera with translation limits m_cam. hover_setup (camera, {pos: POS, pivot: LOOK_AT, horiz_trans_lim: HOVER_HORIZ_TRANS_LIMITS, vert_trans_lim: HOVER_VERT_TRANS_LIMITS}); // setup HOVER camera with horizontal rotation enabled m_cam. hover_setup (camera, {pos: POS, pivot: LOOK_AT, enable_horiz_rot: true});

Особливість камери типу HOVER полягає в тому, що ліміти, що обмежують відстань і кут підйому, задають певну траєкторію руху у напрямку до опорної точці. Камера завжди буде знаходитися на даній траєкторії, тому її підсумкова позиція може відрізнятися від тієї, що була передана в методі hover_setup () (По суті відбувається її проекція на траєкторію). Якщо необхідно, щоб задане положення камери відразу знаходилося на деякій траєкторії, то можна скористатися методом hover_setup_rel () для відносного завдання лімітів.

var camera = m_scenes. get_active_camera (); var POS = new Float32Array ([1, 1, 1]); var PIVOT = new Float32Array ([0, 0, 0]); ... // setup HOVER camera with maintaining the given camera position and // ability to zoom-in and zoom-out equally m_cam. hover_setup_rel (camera, {pos: POS, pivot: PIVOT, dist_interval: 2, angle_interval: Math. PI / 4});

Перевірити поточний режим камери можна, використовуючи методи is_static_camera () , is_eye_camera () , is_target_camera () , is_hover_camera () або get_move_style () :

var camera = m_scenes. get_active_camera (); ... if (m_cam. Is_static_camera (camera)) console. log ( "STATIC camera!"); if (m_cam. get_move_style (camera) == m_cam. MS_EYE_CONTROLS) console. log ( "EYE camera!");

Примітка

Якщо потрібно змінити лише деякі аспекти поведінки камери, то варто скористатися окремими методами, описаними нижче.

Переміщення і поворот

Для повороту STATIC камери слід використовувати методи static_get_rotation () і static_set_rotation () - в них поворот описується кватернионами:

var camera = m_scenes. get_active_camera (); ... // rotation through a quaternion var _quat_tmp = new Float32Array (4); var old_quat = m_cam. static_get_rotation (camera, _quat_tmp); var new_quat = m_quat. rotateX (old_quat, Math. PI / 2, old_quat) m_cam. static_set_rotation (camera, new_quat);

Для EYE, TARGET і HOVER поворот здійснюється в сферичних координатах з використанням методів eye_rotate () , target_rotate () , hover_rotate () і rotate_camera () :

var camera = m_scenes. get_active_camera (); ... // rotate by given delta angles m_cam. eye_rotate (camera, Math. PI / 6, Math. PI / 2); // set absolute rotation in world space m_cam. eye_rotate (camera, Math. PI / 6, Math. PI / 2, true, true);

Поточні сферичні координати камери можна отримати, використовуючи метод get_camera_angles () :

var camera = m_scenes. get_active_camera (); var _vec2_tmp = new Float32Array (2); ... // get camera orientation in spherical coordinates var angles = m_cam. get_camera_angles (camera, _vec2_tmp); phi = angles [0]; theta = angles [1];

Доступ до позиції камери надають методи get_translation () і set_translation () . При цьому для режимів TARGET і HOVER переміщення означає паралельний перенесення всієї моделі, що включає позицію камери і опорну точку.

var camera = m_scenes. get_active_camera (); var _vec3_tmp = new Float32Array (3); ... // get camera position var pos = m_cam. get_translation (camera, _vec3_tmp); // set new position var new_pos = m_vec3. set (1, 0, 2, pos); m_cam. set_translation (camera, new_pos);

Додаткові методи для переміщення камери:

Примітка

Оскільки камера є об'єктом сцени, то при необхідності можна використовувати і методи модуля transform . Однак, результат може не завжди відповідати очікуванням через втручання моделі поведінки камери в кожному конкретному режимі.

завдання лімітів

Ліміти камери присутні в режимах EYE, TARGET і HOVER. Для призначення конкретного ліміту слід скористатися відповідним методом:

var camera = m_scenes. get_active_camera (); var _limits_tmp = {}; var EYE_HORIZ_LIMITS = {left: Math. PI / 4, right: - Math. PI / 4}; ... // get limits m_cam. eye_get_horizontal_limits (camera, _limits_tmp); // set limits m_cam. eye_set_horizontal_limits (camera, EYE_HORIZ_LIMITS);

Наявність лімітів можна перевірити методами has_distance_limits () , has_horizontal_rot_limits () , has_vertical_rot_limits () , has_horizontal_trans_limits () і has_vertical_trans_limits () .

Примітка

У режимі HOVER у камери завжди є ліміти по дистанції і розі підйому. У разі, якщо вони не були задані, ліміти автоматично розраховуються так, щоб зафіксувати камеру в поточному положенні щодо опорної точки.

Примітка

Присутні на камері ліміти можуть впливати на її позицію і орієнтацію, що виставляються через API.

Відлік кутових координат

При роботі з камерою через API (обертання, виставлення обмежень) відлік кутових координат ведеться наступним чином:

Для типів TARGET / HOVER:

Для типу EYE:

Категории
  • Биология
  • Математика
  • Краеведению
  • Лечебная
  • Наука
  • Физике
  • Природоведение
  • Информатика
  • Новости

  • Новости
    https://banwar.org/
    Наша взаимовыгодная связь https://banwar.org/. Запустив новый сайт, "Пари Матч" обещает своим клиентам незабываемый опыт и возможность выиграть крупные суммы.


    Наши клиенты
    Клиенты

    Быстрая связь

    Тел.: (044) 587-84-78
    E-mail: [email protected]

    Имя:
    E-mail:
    Телефон:
    Вопрос\Комментарий: