 1, 2, 3. Привет, всем. Меня зовут Александр. Я разработчиком Blender4Web. И я тоже участвовал в разработке Blender. Теперь я хочу поговорить о present и future Blender и Blender4Web. Итак, First, let's define what is present and future. The present is of course Blender 2.7 and when I'm talking about the future I'm referring to Blender 2.8. If somebody is not familiar with Blender4Web, Blender4Web is a framework for developing of 3D web applications and Blender4Web is closely integrated with Blender In fact, you have no need to use other tools just Blender and Blender4Web and publish your models or prepare your models for more rich applications and so Blender4Web was designed by too much Blender report and today Blender internal report is most developed. So Blender4Web uses Blender internal report features its shading system and also Blender4Web has its own extensions for shading no system and for additional effects configured on the additional panels So let's let's look at some life examples to show how these extensions are working First example is this Sunny Poises in dessert You can see Translucency Translucently leaves of palm tree You can see Bloom Environment You can also see this bloom on water You can see Animated Texture on water You can see Soft Shadows Let's go to the next Example It's a Pokemon This Pokemon demo was released before The game Pokemon Go became so popular and It was made by our artist who is a big fan of Pokemon So here you can see Reflections caused by Red crystal You can see also glow Crystal You can see Animated steam around this character And also you can see motion bloom Next Example uses Similar approach Here you see Animated Flames Attractive example Really Let's go BlendForWeb also supports Parallax effect It's commonly used effect So it's just available in BlendForWeb Next Demo Demonstration of Depth of Field effect And here is shown Bokeh effect Next Now I would like to get down to the low level and to try to understand at which technology point BlendForWeb and Blender now today are So I highlighted here some important points First is the start of history of OpenGL Second is release of OpenGL 2.0 And third is release of OpenGL 4.3 So Second and third point had opened for us significantly different techniques of rendering For example with OpenGL 2.0 we have gotten fragment on vertex shader and also in extensions we have received possibilities to make render to multiple targets so it became available to make to implement the third techniques with sufficient performance and actually deferred techniques for example deferred lighting has some advantages for example you are not limited in amounts of lights so you can see that you can use really a big amount of lights and the second point which is a modern has a modern approach for example compute shaders and it's used for example in Doom game released in 2016 so here is used clusterization and actually here is used forward rendering which and the limitness of amounts of lights is resolved with clusterization of camera fruits too and where is WebGL and WebGL actually here today WebGL 1.0 is widely used and stable and it is wide range of devices but actually it's today for example for mobile devices you can't do you can't implement deferred rendering with OpenGL 1.0 because of lack of these extensions for multiple render targets and WebGL 2.0 actually has these abilities in its core but anyway for mobile devices deferred rendering is too heavy so it's hard to have a deal with all these buffers and do not expose for example so we think that WebGL BlenderViewPort future BlenderViewPort should use most modern techniques and should not be limited by for example deferred lighting which really making limits on the diversity of materials so I would like to say that that are available for implementation today with current system must be available in future report and here is actually a real commercial projects made by our partners you can see on the left non-photorealistic shader and actually non-photorealism I think perfectly suits for such purposes like infographics and on the right you can see realistic material of diamond and actually it looks very realistic I think so today shader node system which is really outdated and today is still really has many abilities and very flexible and we are participating in Blender development and we are already have committed some patches so here is our contribution first is vector transform and normal map and particle was ported from cycles to viewport it significantly expanded abilities for Blender internal node system also we have added support for cube maps and environment and cube maps for environment and materials and we have added support for environment lighting for Blender internal viewport and you can see how it looks before and how it looks now in Blender 2.78 on the top picture you can see how you can see impact of environment lighting and on the picture with elephants we can see reflections and with these patches actually today you can achieve some renders which are close to modern engines you probably saw this article by Eddie Burrows so he compared these two renders and actually I think that you can achieve more close result by implementing Fresnel effect and somebody can say that Blender Blender internal of viewport is not able to render dynamic reflections yes, it's correct but actually Blend4Web can do this and today Blend4Web I think has all possibilities to make non-photorealistic materials and photorealistic materials yes and implement close and close implement these materials to modern engines and we of course going to do our work on improving Blender 2.8 and we really think that the future of Blender is great and today is great team formed around Blender viewport project and we will participate in it and of course we will working on future viewport and integration of Blender4Web and now I would like to show you how fast Blender4Web is developing so the first example is we have made reflections we have improved reflections and before we before only opaque materials can be reflected and now you can see transparent materials also can be reflected we have improved our depth of field effect we edit bokeh effect so you also saw example with umbrella and here is just another one we have edit support for all Blender 2.0 shader nodes it's vector and RGB curves it's color ramp and this nodes allows you to make various gradients and also we have edit support for vector transform which allows you to convert your vector data object world and camera space and also normal map has been supported it allows you to make to make normals for your object and also and even mix many normal maps with different UVs and also we have edit support for tangent shading it's not working today in Blender viewport but it's working Blender for web and we think that we will add this we will do this work for viewport 2 also we have released our first long term support distribution it's production radio distribution and it will be receiving bug fixes and API will be kept for one year and it is available for our pro users and also we have significant event for us it's first Blender for web conference it was held in Moscow and official language was English so if you are interested you can find our presentation on YouTube and I would like to invite you to the next Blender for web conference next spring next point is contests at the beginning of this year we have started to make contests contests and the first contest was related to New Year and Christmas and we were so pleased with results of our contestants so we decided to continue to do these great things so today we are holding retro car contest and it's still open and you can actually you still have time to participate in this contest and here is just just winners of past contests this year we also started to fill our material library and today we have around 30 realistic materials we have improved our logic node system we have added possibility to make interactions between javascript and between logic node system and we are using it in development of our game called Tigger's Tale which has been released this year too and actually we we develop our logic node system so we separate programmer work and game designer work next point is profiler it's really important feature it allows you to see which part of your model most heavy and you can now optimize your shaders so red tone you can see it's for heavy shaders and green tone for light shaders we also have made deep optimizations on GPU and CPU first optimizations related to better batching we implemented cluster algorithm for batching next is today we used we use geometry instancing extension of WebGL and it allows us to save a lot of RAM and to decrease calculations on vertex shader also we have optimized our mesh data and it's it's important for some old GPUs so rearranging of mesh data cost on some systems very big increase of performance and of course we have optimized our javascript code also we worked with gamepads and actually with virtual reality and for gamepads we have done configurator so you can configure your pad or wheel we just you can map your buttons of your device with a standard layout which you can see on the picture and for VR we also have implemented configurator and actually we worked with many a lot of virtual reality devices for example gearware it's occult's rift it's cardboard devices yeah so and in the next game it's actually such white screen it's my first experience you can try who want to try you can see you can see how this all in features and working hard to make these features available in our every month release and we're really happy that we are using Blender and that our users can do really cool features and even and even innovation features yeah you saw examples with ring boutique so I think thank you for your attention if you have any questions if you have any questions just remember my face and that's good thank you