论坛

由用户创建的信息 Roman_Sementsov
22 September 2015 13:18
Смотрите, обьясню по порядку.
1) Создание пустой директории на жестком диске, куда будет помещен весь проект (в данном случае это пример)
2) Изготовление сцены в Blender'e. Сюда входит создание shape key, выставление галочек на объектах, создание нодового материала.
3) Сохраняем blend-файл в нашу директорию. Теперь производим экспорт в .json (тоже в нашу директорию). В директории теперь три файла: blend-файл. json-файл (содержит настройки сцены и объектов), bin-файл (тут у нас геометрия объектов).
4) Теперь будем писать логику работы приложения. Октрываем любой текстовый редактор (можно даже обычный Блокнот из Windows). Пишем первым делом HTML-файл. Сохраняем его в формате .html (example.html). Теперь пишем скрипт с логикой работы приложения и сохраняем его в формате .js (example.js)
Я обычно копирую отсюда текст .html и js. файла и изменяю их.

Ну а в самом приложении я навесил обработчик события движения мышки. Каждый раз при движении мышки будет вызываться функция mouse_move_cb
22 September 2015 10:16
Добрый день.
Подготовил для вас пример подобного функционала.
example_34.zip
Не забудьте настроить браузер для загрузки локальных ресурсов для просмотра примера или воспользуйтесь сервером разработчика
21 September 2015 09:53

И как вы поставили драйвера на одну шкалу ( шкала - это объект?) так, что драйвера действуют между определёнными расстояниями опледелёнными шкалой в morphing?

Добрый день.
В morphing из code_snippets в качестве управляющих слайдеров используются HTML-элементы, они созданы вручную, кодом на javascript (к драйверам из Blender'a они не имеет никакого отношения). А что касается их позиций, размеров, относительного расположения, то это настроено исключительно средствами CSS. Все тексты кодов доступны в SDK
09 September 2015 12:46
Hi.
Can you attache your blend file, please?
09 September 2015 10:57
09 September 2015 10:45
Hi.
You can use b4w.require or require (without b4w).
b4w is a global object, it's available from all modules. Also it has got the "require" function to get a module by name.

In the camera_animation.js a new user's module has registered.

b4w.register("camera_animation", function(exports, require) {

var m_data      = require("data");
var m_app       = require("app");
var m_cam       = require("camera");


In this case you've got the "require" function in you module.

In this example the "hello" function is wrote without a new module registration. In this case you should use b4w.require because you have got no the "require" function.

<script>
function hello() {
    var m_version = b4w.require("version");
    document.body.innerHTML = "Hello, Blend4Web " + m_version.version() + "!";
}
</script>
09 September 2015 09:53
08 September 2015 15:59
Добрый день.

Ответ на сообщение пользователя Кирилл
Да, как я понял b4w в предыдущей версии не учитывал этот параметр и всегда рисовал в repeat… А в заметках к релизу об этом ничего не сказано.

Тип маппинга для текстуры - это стандартное блендеровское свойство. Иными словами, мы его не добавляли и не меняем. Не могли бы вы сообщить, у вас для всех текстур по умолчанию выставлен тип отличный от repeat ?
08 September 2015 15:50
Добрый день.

Данный функционал нужен, что бы определить когда игрок вошёл в зону и в какой момент он вышел из этой же зоны.

Ну смотрите, игрок вошел в зону - пришел объект, с которым произошло столкновение. Игрок вышел из зоны, то есть перестал участвовать в физическом контакте, - пришел логический ноль. Когда изменился объект, возвращаемый сенсором (collision_pt.coll_obj), тогда персонаж покинул зону. Я вас правильно понял?

Тут только недостаток в том, если будет ghost объект внутри другого ghost объекта, то сенсор будет возвращать первый объект. Либо внутри ghost объекта будет происходить коллизия со стенкой - аналогичная ситуация.
08 September 2015 12:19