User posts Evgeny Rodygin
14 October 2016 19:09
Reply to post of user kimholderHi,
Our website already has a file structure it wouldn't make sense to redo, so i am trying to export the json files to a folder called 'blend4web' within the existing folder hierarchy. I have loaded it on our GitHub site to play with it before putting it on the official site. The scene doesn't load, though. What have i done wrong?
The GitHub site is here, and the repo is here.
The html is<iframe width="80%" height="auto" src="webplayer/webplayer.html?load=blend4web/LalandeMarkers.json">if you see this something is wrong</iframe>
The blend4web folder has the bin file, the json file, the image for the texture, and i threw in the blender file. The webplayer folder has everything from deploy/apps/webplayer in the SDK.
The path to json in the iframe should be set relatively to webplayer.html. So you need to put "../" before the folder path.
This code will work:
<iframe width="80%" height="auto" src="webplayer/webplayer.html?load=../blend4web/LalandeMarkers.json">if you see this something is wrong</iframe>
14 October 2016 11:03
- get_rendered_info() –> What is exactly this infos ? How display or exploit this ?You can just call this function and check the output. But not all browsers support the required extension. Chrome does support it.
- pause() –> This method pauses the application but what exactly ? The refresh ? The shadow calculation ? Events ? Everithing ?Yes. Basically it pauses everything: graphics/physics/logics. But you don't need to track if the page is active. Browsers are managing this for us. So the page doesn't make any calculations.
14 October 2016 10:20
Hi Marcos,
Yes, the problem of big sizes is really a common one for any 3D software.
Generally, such issues are being solved by dividing world into tiles and moving everything closer to the origin when a new tile is reached.
As of scaling a character. Check the Step Height parameter in character settings. It doesn't take scale into account, so you need to set a new value after scaling.
Yes, the problem of big sizes is really a common one for any 3D software.
Generally, such issues are being solved by dividing world into tiles and moving everything closer to the origin when a new tile is reached.
As of scaling a character. Check the Step Height parameter in character settings. It doesn't take scale into account, so you need to set a new value after scaling.
12 October 2016 16:29
Добрый день,
Изменять это свойство на данный момент невозможно.
Есть два варианта.
1) Пользоваться физическим рейкастингом, как это сделано в этом примере.
2) Скрывать нужный объект перед вызовом функции pick_object и потом его снова показывать.
Изменять это свойство на данный момент невозможно.
Есть два варианта.
1) Пользоваться физическим рейкастингом, как это сделано в этом примере.
2) Скрывать нужный объект перед вызовом функции pick_object и потом его снова показывать.
11 October 2016 16:43
Рывки происходят потому что все операции в коде выполняются в разных несвязанных потоках управления. Рендеринг Blend4Web в своём, анимация обрабатывается в потоке, который сам себя асинхронно запускает через setTimeout, а фактор обновляется в потоке созданном в setInterval. Во всех них время съезжает чуть-чуть друг относительно друга и это хорошо видно глазу. Если нажать на паузу, то съедет ещё сильнее.
Лучше всё это делать через сенсоры и использовать только два слота.
[EDIT]
Если детальнее, то фактор сбрасывается в ноль не одновременно со сменой анимации.
Лучше всё это делать через сенсоры и использовать только два слота.
[EDIT]
Если детальнее, то фактор сбрасывается в ноль не одновременно со сменой анимации.
11 October 2016 15:50
Hi,
You can use a three-lines Python script for this task.
1) Open "Text Editor" in Blender.
2) Create a new file and put the following text inside:
3) Select all required objects and press the "Run Script" button.
This approach can be used for any property you need.
You can use a three-lines Python script for this task.
1) Open "Text Editor" in Blender.
2) Create a new file and put the following text inside:
import bpy
for o in bpy.context.selected_objects:
o.b4w_selectable = True
3) Select all required objects and press the "Run Script" button.
This approach can be used for any property you need.
11 October 2016 15:00
Я предполагаю, что может быть не совсем очевидно в этом API. Лучше будет сказать, что смешиваются последние слоты, а не анимации. То есть, если вы применили скелетную анимацию к 7 и 8 слотам, то они и только они (слоты) будут смешиваться. При этом вы можете менять анимацию (m_anim.apply) на этих слотах, как вам угодно и уместить в них все варианты ходьбы персонажа. Пусть их будет хоть полторы тысячи.
У меня нет возможности делать более подробный пример, но надеюсь, я пролил свет на этот вопрос.
Вообще, этот функционал всё ещё экспериментальный, поэтому я бы на данный момент не стал строить с помощью него серьёзные приложения. Есть принципиальные моменты, которые мы изменим в ближайшем будущем.
У меня нет возможности делать более подробный пример, но надеюсь, я пролил свет на этот вопрос.
Вообще, этот функционал всё ещё экспериментальный, поэтому я бы на данный момент не стал строить с помощью него серьёзные приложения. Есть принципиальные моменты, которые мы изменим в ближайшем будущем.
11 October 2016 11:05
Ответ на сообщение пользователя OnisНет совсем никакой необходимости постоянно переназначать анимацию на новые слоты и тем более удалять её оттуда. Лучше её один раз применить и в дальнейшем просто менять фактор смешивания. Скачок в вашем примере обусловлен неточностью значений фактора смешивания и удалением анимации. Если нужны новые анимации их так же можно назначить на уже занятые слоты. Они просто перетрут навешенную анимацию.
Столкнулся со смешиванием двух анимаций, воспользовался этой статьей. Задача сделать плавно переходящие анимации. Воспользовался готовым исходником, сделал плавный переход от одной анимации к другой каждые 5 секунд, все хорошо, вот только в самом начале перехода проскальзывает кадр вообще не подходящий.
Ну и после недолгого проигрывания, анимация прекращается, полагаю, что это связно с тем что переменные m_anim.SLOT_+число закончились, подскажите как быть в этой ситуации?
Я изменил ваш пример так, что mix_factor меняется по синусу от step, давая плавное перетекание анимаций.
И ещё, я бы рекомендовал пользоваться встроенной системой сенсоров Blend4Web. setInterval не привязывается к обновлению кадров и может давать сильные рывки при небольших FPS.
03 October 2016 16:59
02 October 2016 21:46
Hi,
I assume, you are speaking about an application.You can just call the camera_anim.auto_rotate method inside a loading callback. It should do the trick.
I assume, you are speaking about an application.You can just call the camera_anim.auto_rotate method inside a loading callback. It should do the trick.