由用户创建的信息 Mikhail Luzyanin
07 December 2016 14:11
I managed to combine some of the animated materials together (had 5 animated water and 2 gas materials before, now 1 each) and got rid of the extra mask textures (before 4, now 2). I cleaned up all the extra materials from the Blender file as well. I took new screenshots from the viewer (see att.) and as you can see the textures take now nearly 30 megs less than before. Unfortunately, the result was really minimal, the load still takes about 50 seconds instead of 30 as before adding the animations. Any other ideas - besides cleaning up the meshes (which I will do anyway soonish…)?Yes, I see that amount of draw calls has decreased, but there's still lot of tham. Also optimisation of amount and image size can help. May be you can send your application (or just a animated part) in the support email, so we can look on it deeply.
Blend4Web和所有这种身份的人。
07 December 2016 10:19
06 December 2016 19:21
Thanks Mikhail,Yes, I analysed your screenshots, It's really helpfull for understanding the problem. As, I said before it's not due to amount of animation, rather directly. So, I'll try to explaint. When you add any animation to an object it makes it dynamic, so that maked them independent from other objects. All objects with the same material batched into one meta-object, but after that each of this object started to be independent and created a so called "Draw Call" (you can see the amount of then in the top-right corner) each of this objects started to render separatly. This increases the load on the GPU.
Here are the screenshots, hope they help to analyse what's going on in the scene. Clearly the geometry and the textures take both a huge junk of MiBs, so I think they are the ones I need to go through first. However, the loading process slowed down remarkably when I added the animations and with them the new transparent materials. Any tips would be greatly appreciated!
So, you need optimize your objects in that way: combine as many materials into one material, may be you can make one animation for longer part of tubes and then play it step by step using NLA animation strip. It's only the way. So, than less the draw calls then better for perfomance, than less the dynamic objects than better for perfomans. You can add huge amount of animations but if they all will be played on only one dynamic object - this will increase perfomance of your application.
Blend4Web和所有这种身份的人。
06 December 2016 15:43
Only downside with this setting is that because of all the animations, the loading time of the data in the beginning has nearly doubled even though the amound of data in MiBs hasn't actually grown much at all. Is there any way optimize the animations so that the load wouldn't take that long? Or is there an better way to change the materials, perhapMost of animations are very simple, event for shaders so they can't slow loading too much, but complex materials and very big amount of them can. Can you make a screencshot from viewer with the loaded scene in it with hud info on. I marked with red which information will be helpfull to understand what slows it.
It's also will be helful if you send us a screenshots with Batch View, Opaque Wireframe and Render Time debug modes on.
Blend4Web和所有这种身份的人。
02 December 2016 18:52
02 December 2016 17:32
02 December 2016 16:58
02 December 2016 10:14
01 December 2016 10:33