Blog

We are proud to announce a new release of Blend4Web, an open source framework for creating interactive 3D web content. In this release you'll find: new features in the project manager, new logic nodes, improved anti-aliasing and support for textures of any size.

Project Manager

The graphics shell for managing projects, which was presented in the previous release, has been further developed thanks to feedback from our community.

Updated project manager interface.

Projects can now be exported and imported. This significantly simplifies migrating to new SDK versions, provides the possibility of running and debugging projects on different platforms and allows developers to share their work with colleagues. Projects can now be removed as well.

Two new project creation options have been added: WebPlayer JSON and WebPlayer HTML. These options can be used to create non-programming projects which work in the standard web player.

Interface for creating new projects.

For convenient navigation, sorting projects by name is now possible. Also, the SDK's stock projects can be hidden by clicking the corresponding button at the top.

Java runtime is now included in the SDK by default, so now you are not required to install it separately in order to build apps.

Alongside the button which opens the SDK index, there is now a button for running the project manager.

Interface for working with the development server.

An important usability improvement: the Fast Preview button exports your scene in a temporary directory and opens it in the browser. This way, you are no longer required to save your blend file and choose the right file path for export first, if you just want to perform a quick test.

Logic Editor

The new node Move Camera has been implemented for setting the camera's location and pivot.

Move Camera node.

The Switch Select node works almost as the original Select node and can be used to assign different actions to be performed when the user selects each object from a series. This node can make the logic tree much more compact if there are many interactive objects of the same kind in a scene.

Switch Select node.

One more node - Play Sound - like its name suggests, can play back sound from a certain speaker.

The Math Operation node now offers the Random operation to generate arbitrary numbers uniformly distributed on an interval. The Send Request node, besides GET requests, now offers the possibility to send POST requests with key-value parameters.

Math/Random and Send Request/Post nodes.

We prepared an example on how the random number generator can be used to make animation more diverse.

Anti-Aliasing

The anti-aliasing algorithm FXAA has been updated for version 3.11 and this improves both quality and performance of rendering, especially for Ultra quality. We have also added the menu AA Quality to tweak quality of anti-aliasing.

Menu for tweaking anti-aliasing quality.

Textures

Now it is much easier for newcomers to do texturing. Starting today, Blend4Web will forgive you for using non-power-of-two images (or NPOT, this is when the dimensions are not 256, 512, 1024, etc). Such textures will be automatically resized to the right dimensions when loaded in order to meet the requirements of the WebGL 1.0 specification. As a result, both mipmapping and using the Repeat extension type are now possible for such textures.

Another improvement is that textures will be automatically scaled down if their size exceeds WebGL limitations - this is especially important for older devices which cannot handle >4K textures.

Other Improvements

It is now possible to animate the intensity and color of light sources. This animation can also be used in the NLA editor.

Animating lamp params.

Blender 2.76 simplified gamma correction rules for node materials. Blender's behavior in relation to vertex color is now the same as for textures, namely, vertex color is converted to linear space inside the Geometry node automatically. For consistency, this behavior is now reproduced in Blend4Web as well.

Conclusion

This Blend4Web version is compatible with Blender 2.76. Blend files of all presented examples are included in the SDK distribution. The complete list of changes and bug fixes can be found in the release notes.

The new "move camera" node is just what I needed. It's hugely important to be able to move the camera target around efficiently

It seems that the node "snaps" the camera to the new location immediately if you switch between 2 target objects. Is there any way to smooth out the translation a bit? i tried to animate the target object's location, but that didn't seem to work. It would be really nice to be able to have the target change location smoothly.

But yeah, very exciting release again! The switch select node is also very useful.

The new "move camera" node is just what I needed. It's hugely important to be able to move the camera target around efficiently

It seems that the node "snaps" the camera to the new location immediately if you switch between 2 target objects. Is there any way to smooth out the translation a bit? i tried to animate the target object's location, but that didn't seem to work. It would be really nice to be able to have the target change location smoothly.