Форум

Сообщения, созданные пользователем Кирилл Осипов
30 октября 2017 12:31
Hello.
What behavior are you expecting?
Right now camera orientation is defined by HMD orientation in VR mode. Also camera type changes to Eye type.
Команда Blend4Web
kirill@blend4web.com
23 октября 2017 12:50
Ответ на сообщение пользователя Кирилл Осипов
Здравствуйте.

Это фундаментальная проблема отрисовки полупрозрачных объектов. Обобщенных "правильных" методов её решения, насколько мне известно, не существует. Указанный вами костыль является каноническим (тени от мешей с Alpha Clip материалами).
Команда Blend4Web
kirill@blend4web.com
23 октября 2017 12:47
Здравствуйте.

Это фундаментальная проблема отрисовки полупрозрачных объектов. Обобщенных "правильных" методов её решения, насколько мне известно, не существует. Указанный вами костыль является классическим (тени от мешей с Alpha Clip материалами).
Команда Blend4Web
kirill@blend4web.com
27 сентября 2017 12:30
Hello.
It seems iPhone browsers does not support WebVR API and DeviceOrientation API. I am going to check it later.

Chrome I do get the Stereoscopic and VR option (but it only works on setting).
When you view your app on a desktop machine can you switch render quality to the Low Quality?
Команда Blend4Web
kirill@blend4web.com
05 сентября 2017 16:03
Будет исправлено в следующем релизе.

Проблему можно решить заменой функции rotate_camera на следующую:
exports.rotate_camera = function(cam_obj, angle_phi, angle_theta, time, cb) {
    if (m_cam.get_move_style(cam_obj) == m_cam.MS_STATIC) {
        m_print.error("rotate_camera(): not supported for STATIC cameras");
        return;
    }

    if (_is_camera_rotating)
        return;

    if (!cam_obj) {
        m_print.error("rotate_camera(): you must specify the camera object");

        return;
    }

    if (!angle_phi && !angle_theta) {
        m_print.error("rotate_camera(): you must specify the rotation angle");

        return;
    }

    time = time || DEFAULT_CAM_ROTATE_TIME;

    _is_camera_rotating = true;

    function fin_cb() {
        if (_is_camera_rotating) {
            _is_camera_rotating == false;

            if (cb)
                cb();
        }
    }

    var delta_phi   = 0;
    var cur_animator_phi = m_time.animate(0, angle_phi, time, function(e) {
        m_cam.rotate_camera(cam_obj, delta_phi - e, 0);
        delta_phi = e;

        if (e >= angle_phi) {
            m_time.clear_animation(cur_animator_phi);
            fin_cb();
        }
    });

    var delta_theta = 0;
    var cur_animator_theta = m_time.animate(0, angle_theta, time, function(e) {
        m_cam.rotate_camera(cam_obj, 0, delta_theta - e);
        delta_theta = e;

        if (e >= angle_theta) {
            m_time.clear_animation(cur_animator_theta);
            fin_cb();
        }
    });
}
Команда Blend4Web
kirill@blend4web.com
13 июля 2017 10:03
I think you could try to use data from gamepad (don't forget to use the get_vr_controller_id method).
Команда Blend4Web
kirill@blend4web.com
03 июля 2017 16:35
if (m_main.detect_mobile()){
        _move_delta[0] -= (coords[0] - move_x) * drag_mult;
        _move_delta[1] -= (coords[1] - move_y) * drag_mult;
    } else {
        _move_delta[0] += (coords[0] - move_x) * drag_mult;
        _move_delta[1] += (coords[1] - move_y) * drag_mult;
    }


I think it is a good solution. Also you can freely copy/paste code from modules in the "addons" directory to your application code.
Команда Blend4Web
kirill@blend4web.com
27 июня 2017 09:55
Hello.

if ( ENABLE_3D )
{
	m_hmd_conf.update ();

	if ( DEBUG )
		m_hmd.enable_hmd(m_hmd.HMD_NOME_MOUSE_ALL_AXES );
	else
		m_hmd.enable_hmd(m_hmd.HMD_ALL_AXES_MOUSE_NONE);
}

Here is a little misprint (HMD_NOME_MOUSE_ALL_AXES), but fortunately it does not affect on your app. If you want to set your own camera behavior, you just call m_hmd.enable_hmd(m_hmd.HMD_NONE_MOUSE_ALL_AXES).
Команда Blend4Web
kirill@blend4web.com
01 июня 2017 18:43
Здравствуйте.
Могу предложить несколько решений (если вы программист):
1) Использовать ray сенсор, который будет "выстреливать" луч из камеры.
2) Создать в Blender'e физический параллелепипед перед камерой, сделать камеру родителем параллелепипеда. Использовать collision сенсор для того, чтобы определять столкновение параллелепипеда с дверью.
Команда Blend4Web
kirill@blend4web.com
31 мая 2017 13:28
Hello.

It seems there is a wrong path to the .ogg-file .
You can just select the "stroke" object in .blend-file and change the path to the sound file, for example, "deploy/assets/code_snippets/vr/".
Команда Blend4Web
kirill@blend4web.com