Форум

Работа с несколькими обьектами

01 октября 2015 21:54 #4185
Наверно уже где-то описывалось, но искал и не смог найти.
Собственно загружаю сцену и добавляю туда обьекты с которыми потом собираюсь работать через API
Делаю так
m_data.load('scene.json');
m_data.load('objects1file.json');
m_data.load('objects2file.json');


Хочу получить объекты из 1го файла с объектами
var object= m_scenes.get_object_by_name("objects1FileObject1");


Вместо objects1FileObject1 пробывал имя объекта из бленда и из файла JSON, пишет - "B4W ERROR: get object objects1FileObject1: not found"

Если подключать только объекты из первого файла
m_data.load('objects1file.json');


То объекты возвращаются функцией. Скажите как получить объекты в моем случае?
02 октября 2015 07:36 #4190
В случае динамически загружаемых сцен используйте метод с указанием второго аргумента - идентификатора сцены.

var object= m_scenes.get_object_by_name("objects1FileObject1", 1);
Руководитель разработки
02 октября 2015 09:32 #4191
Функция
m_data.load('objects1file.json');

возвращает идентификатор загруженной сцены. Это цифра, первой загруженной сцене соответствует 0, второй 1, и так далее.

Если вы передадите в функцию data.load вторым параметром функцию-callback, которая вызывается по завершению загрузки указанной сцены, то в этот callback также передается параметром идентификатор загруженной сцены или data_id, как его еще называют.

Идентификатор загруженной сцены (data_id) введен для того, чтобы не возникало путанницы при использовании функции m_scenes.get_object_by_name, к примеру. Если вы загрузите два раза одинаковую сцену, то у вас на сцене будет по два экземляра каждого объекта с одинаковым именем. Чтобы не было путанницы был введен data_id, по которому вы можете указать с какой именно сцены вы хотите взять объект. data_id передается вторым параметром в функцию
m_scenes.get_object_by_name("objects1FileObject1", 1);

По умолчанию (если ничего не передавать кроме имени объекта) этот параметр равен 0, что соответствует первой загруженной методом m_data.load сцене
Разработчик Blend4Web
02 октября 2015 11:05 #4193
Ясно, спасибо большое
 
Пожалуйста, зарегистрируйтесь или войдите под своей учетной записью , чтобы оставлять сообщения.