From VRML to WebGL: Part V

vcard's picture

From VRML to WebGL

Continued from Part I, Part II, Part III and Part IV

This post is about the best 3D graphical editors to convert and create WebGL content for the on going virtual Web.

5 - 3D Graphical editors and Web deployers

WebGL 3D editors and converters
Although Javascript middleware libraries may be fundamental at some point in the building process, common graphic creators might have a hard time dealing with them. Nothing like using a good graphical 3D editor, indeed. Fortunately a significant number of new editors, tools and plugins (for mainstream 3D editors) appear daily. Look for news and info about them in places like http://learningwebgl.com/blog/.

One of the most interesting new editors is Coppercube (http://www.ambiera.com/coppercube/), a commercial product. Appeared a couple of years ago and was the first WebGL ready 3D editor. Uses CopperLicht, an open source WebGL library developed by the same owner. Coppercube is not (yet) as full featured as mainstream 3D editors like blender, but is clean, easy to use and has been until now one of the few tools around that made WebGL content development easy, practical and exciting, as its demos and user forums show. Check our own tests here.
Unfortunately the absence of a free editor version for non profit users and education somehow restrained a potentially larger dissemination that this fine product have merited. Now that the big named editors are committing to be WebGL ready, coppercube faces a harder fight.

A duo of essential free editors to deploy 3D on the Web
As wee see it today, by the products already in place, the ones coming soon and the intentions declared, Unity 3D is the best positioned to build and deploy Web 3D content, either it is games or interactive virtual scenes and environments, for multiple purposes. Since Unity is not a 3D modeler, designers will need to choose a modeler of their preference and constitute their duo virtuoso of tools.

Unity 3D (unity3d.com)
The reasons why in our vision Unity 3D is a fundamental tool to build and deploy Web 3D content are:

  • Unity is a key tool to deploy games and dynamic virtual environments on several platforms: desktop, mobile and Web. Unity Has committed itself to WebGL, starting on the coming soon version 5 (already available in beta, while you don't have it use Unity Web plugin to publish your scenes)
  • Unity 3D had, for a long time, a hardly interesting free version since it did not include some essential features of 3D (like dynamic shadows, among others) and that disappointed users. Al that has changed now, Unity has a more open policy in favor of free users and in 2014 the free version come out complete (only a couple of very "high" advanced features, more directed to professional developers differentiate it from the paid version) and now, in our view, the free version is totally adequate for non-profit users and education.
  • Adding to this Unity renewed the interface editor (GUI) starting from version 4.6. The 3D editor is now more intuitive and easier to learn for new users.
  • Multiuser worlds can be created with current Unity version but it is not an easy task so Unity has also committed itself to deploy, in a short time, tools and features to simplify the creation of multiuser 3D environments and games, an area much appreciated by former VRML/X3D creators and from other 3D communities.

Why Unity's WebGL deployer is so important?
Unity commitment to WebGL is not to be seen as one more in a long list. Unity 3D will be the first "big named" 3D/game editor to have a full WebGL deployer (not a limited exporter for simple stuff). As a reference tool for games and interactive virtual scenes/worlds creation with everything we like to have, including avatars, special effects, and so on, Unity's WebGL deployer has to be incredibly advanced, a first of a kind, in order to generate correctly all the interaction and special effects demanded by commercial games.
This defines a new era for WebGL where we change from experiments with limited tools (even coppercube is an experiment, some features are absent or still in development), limited exporters and "specific" tools to full grown 3D applications that offer in WebGL all we had before for other technologies/3D formats.  All this available for free! It has been already declared that WebGL deployment will be available for both, free and pro versions of Unity 3D.
Take a look at the new Unity build window showing WebGL deploy on the article about the first commercially available Unity WebGL game!. This article has important information and is a vivid confirmation of what we said about Unity´s WebGL deployer importance (update: Unity 5.0 was launched on March 3 2015, confirmed all the information we have advanced here and gone even further with more features and good news for non profit users and education).

Unity uses assets (3D content) that can be created by any modeler you use or prefer, even the easy to use Vivaty Studio (the editor that web3d.org recommends to create VRML/X3D environments) or Sketchup since both export to 3D formats used by Unity. Look in unity manual for more info, like this "How do I import Models from my 3D app?"; once you get it, the process is simple and intuitive. Unity manual has special workflow advices to work with mainstream editors like 3D Studio Max (Max is free for education) and Blender, among others.

If you do not have preference for a specific 3D editor or want to try one of the best around, install Blender. Beginners will probably prefer the more intuitive Sketchup. Use one of these fine 3D editors together with Unity 3D and you will have a duo virtuoso of free tools that constitutes a solid base for a seamless Web 3D content creation workflow.

Blender (www.blender.org)
Free and one of the best tools for 3D. Does not have (yet) its own WebGL exporter, out of the box, but now we can install the excellent Blend4Web exporter plugin (https://www.blend4web.com/en/) and enjoy its promising WebGL conversions.
Blender is a complete tool and can also create games (includes its own game engine) and interactive virtual scenes. With Blend4Web plugin scenes with limited interactivity can be deployed to the web but not games (not yet at least) nor highly interactive virtual scenes. As said before, Blender is much more interesting if used with Unity 3D. In this duo virtuoso Blender is the modeler for objects and scenes that Unity (which reads blender files directly) uses to create the action of the game/virtual environment and deploy to end user platforms. Look in Unity manual for useful info on how to integrate both seamlessly (http://docs.unity3d.com/Manual/HOWTO-ImportObjectBlender.html) or in other sources (http://www.zakjr.com/blog/blender-to-unity-workflow-part-1/).

Have in mind that Blender is a serious choice, surely a good one in the long run, but is not the easiest choice. Even if you have previous 3D editing experience will need at least a week of serious dedication to get the hang of Blender. For a quick evaluation about if this is the 3D modeler for you, do the quick 13 steps of Beginner's Guide to Blender and/or view the fine and comprehensible eight instructional videos of Blender Virtual Smart Book (a free course, also available for mobile devices)

Sketchup (http://www.sketchup.com)
A powerful 3D editor, very intuitive and much easier to work with than blender. Skectchup free version is a great 3d creation tool and exports to collada (.dae), an universal format that Unity3D can import quite well.
Has good documentation, instructional videos, a huge collection of free 3D objects and plugins. Adding to this, Sketchup has a legion of followers and tons of free tutorials and resources on the Web. For these reasons many creators, specially 3D beginners (but advanced creators too) choose it as their primary 3D modeler.

We have presented here a selection of tools, most free, to deploy 3D on the Web. This is intended mainly for students and 3D creation beginners. There are, of course, other alternatives, tools and choices, free or paid, to deploy WebGL content. Keep looking and learning!

Please feel free to comment any of the posts and add your own information or corrections so we make emends to the text. Thanks!

Vitor Cardoso

 

Comments

Alain's picture

Hello!

an ancient visitor  from icity asked me to have ancient icity worlds watchable in his HTC vive.

I worked hard! and made many tests,

and at the end I use some script from cobweb

He said that it was OK!

( except he can't use the keyboard, but just the mouse)

 

http://mixed3d.net/artvrml/010218.htm

 

By Alain
vcard's picture

Hi Alain :)

Yes the conversion is nicely done but the world works only with the mouse. May be you can use Unity to convert these worlds to WebGL.

vcard

By vcard