Форум

Различные виды использования Blend4web в браузере

04 марта 2015 19:32 #1592
С сылками получилось, Спасибо.
Разбираюсь теперь со скрытием объектов. Пробую чтобы они обратно вернулись. Так понял что прыжками мы можем вернуть в исходное состояние.
04 марта 2015 20:54 #1594

Ответ на сообщение пользователя Семенцов Роман
Можно сделать чтобы по нажатию на объект появлялись новые html-элементы на странице. Привожу пример
Вариант с HTML появлением не работает.
05 марта 2015 09:47 #1597

Разбираюсь теперь со скрытием объектов. Пробую чтобы они обратно вернулись. Так понял что прыжками мы можем вернуть в исходное состояние.
Не совсем. Приложение самостоятельно выполняет слоты с первого до последнего. И делает эту процедуру по кругу, т.е. после выполнения последнего слота снова начинает выполнять первый слот. Для того, чтобы "защитить" некоторые слоты от автоматического выполнения используются слоты "JUMP", например. Когда приложение натыкается на слот "JUMP" она "перепрыгивает" на указанный слот, не выполняя автоматически все те слоты, которые находятся между "JUMP" и слотом, куда осуществляется переход.
В примере с hide и show для объектов, скрытие необходимо было произвести лишь один раз при старте приложения. Поэтому самым последним слотом стоит слот "JUMP", не дающий снова скрыть объекты
Разработчик Blend4Web
05 марта 2015 10:03 #1599

Вариант с HTML появлением не работает
Еще раз проверил прикрепленное приложение. Выдает такие результаты:


После нажатия кнопки:



Логика реализована следующим образом:
function main_canvas_click(e) {
    if (e.preventDefault)
        e.preventDefault();

    var x = e.clientX;
    var y = e.clientY;

    var obj = m_scenes.pick_object(x, y);

    if (obj)
        if (m_scenes.get_object_name(obj) == "Cube_new") {
            var elem = document.getElementById("elem");
            elem.style.display = "block";
        }
}

Изначально элемент скрыт, а при нажатии на объект сцены он появляется
Разработчик Blend4Web
 
Пожалуйста, зарегистрируйтесь или войдите под своей учетной записью , чтобы оставлять сообщения.