Вопрос - ответ

04 марта 2016 11:07 #7980

Вот файл.
Как я и говорил, и ссылка на текстуру это показала, файл самой текстуры находится не в репозитории. Переместите её в репозиторий и всё будет в порядке.
Blend4Web и всё такое. Тридешу тридэ, моделю модели.
05 марта 2016 13:24 #8015
Всем привет!
scenes.pick_object работает 0.3-0.5сек (достаточно большая задержка, т.е. клик на меше и только через пол секунды отклик: очень и очень заметно для пользователя и критично долго, все делается в памяти ведь, чтения с диска нет).

От чего зависит скорость pick_object? Может надо поменять немного алгоритм поиска объекта, по которому кликнули?

Ведь, как выяснил из-за этого и тормозит в том числе перемещение объекта мышью по сцене (создавал отдельную тему, потом удалил, решив, что это железо, но железо довольно мощное ж).

Так как в on_mouse_move я через pick_object тоже проверяю, над каким именно мешем находится перетаскиваемый объект (при этом pick_object сам по себе конечно не подходит для этого, т.к. он выдает как раз сам перемещаемый объект и только во время запаздывания перемещаемого меша от курсора выдает другой меш). Т.е. мне надо самому видимо, создать массив, в котором хранить координаты мешей (они проостой формы) на сцене и в онмаусмув искать по массиву, а не через pick_object. НО pick_object все равно работает медленно к сожалению (просто даже для выбора объекта пол секунды - это долго )
При этом, если отключить тени, то pick_object дает приемлемый отклик 0.03сек, то есть в 10! раз быстрее, как минимум. Как могут включенные тени влиять на pick_object ?

И еще вопрос. Можно ли как-то ограничить просчет теней по глубине/расстоянию? То есть может ли тормозить сцена из-за просчета теней потому например, что от меша, который отбрасывает тени идет просчет в сторону всех мешей, которые могут принимать тени, а между тем реально тень ложится только на 1% мешей сцены? Но вряд ли так, наверно ж просчет идтет от источника света по каждому полигону пока не ляжет на какой-либо меш.
05 марта 2016 14:05 #8016
Привет всем. Вопрос. Делаю стандартную сцену с кубом силами PM-а. Там пытаюсь реализовать трассировку лучей двумя коммандами, как в поставляемом примере, прям буква в букву:
m_cam.calc_ray(m_scenes.get_active_camera(), x, y, to);

… и ниже
var id = m_phy.append_ray_test_ext(obj_src, from, to, "ANY", ray_test_cb, true, false, true, true);


Но получаю два сообщения об ошибках js:
calc_ray: Non-compatible camera
append_ray_test_ext: No physics for object Camera

Галку "Enable Physics" я поставил. Куда рыть? Заранее спасибо.
show must go on
05 марта 2016 16:02 #8017
Куда рыть?
Возможно, в сцене поменять тип камеры например, на перспективную
(calc_ray не поддерживается ортогональной камерой вроде как)
05 марта 2016 16:23 #8018
Grohot, она и так перспективная :-(
show must go on
05 марта 2016 16:31 #8019
Ну я так предположил по мотивам темки, у меня такое же сообщение вроде вылезало.
Значит, прицепить тестовый пример, где это воспроизводится, а там может пока будешь делать и сам поймешь что не так )
05 марта 2016 16:45 #8020
Привет всем ещё раз.
Прикрепил
1. blend — файл(на всякий случай и json)
2. HTML-ку
3. JS, в котором пытаюсь вызвать calc_ray и append_ray_test_ext и получаю ошибку
calc_ray: Non-compatible camera
append_ray_test_ext: No physics for object Camera

ПРошу посмотреть, и подсказать, что я делаю не так.
show must go on
05 марта 2016 17:52 #8021
ares_495, попробовал открыть документацию
Там пишут:
- в настройках окружения "Enable Physics" (ну это есть)
- на камере на закладке Physics надо включить опцию "Enable Physics"
- во вкладке Material должна быть активирована панель Special: Collision (сделал это для материалов шара куба)
Все заработало вроде. Поправленный пример приложил. Запуск прямо из папки.
Спасибо за вопрос, возможно, тоже пригодится, а то через маусмув таскать меши как-то медленно получается, может так быстрее будет :) Правда ray_test_cb какая-то адская функция, с кучей вызовов api )
05 марта 2016 18:21 #8022
Добрый день, решить залить проект на GitHub, посмотрел "Публикация Blend4Web контента на GitHub Pages", но когда я ввожу "git push -u origin master" мне выдаёт "Username for 'https://github.com': " я ввожу свой username, он выдаёт "Password for 'https://мой username@github.com':" и здесь я не могу ничего написать, потому что клава блокируется…
05 марта 2016 18:35 #8023
А и ещё есть папка .git которой нет в вашем видео
 
Пожалуйста, зарегистрируйтесь или войдите под своей учетной записью , чтобы оставлять сообщения.