Ephere Lab review
- Multithreaded
- Lots of potential
- Needs more documentation
- A bit buggy
By Torbjörn Olsson, Jan 30, 2014
Introduction
QUICK SPECS
Lab
Software type: Max Plugin
Version: 1.0.4.0
Category: Authoring
Company: Ephere
SHARE
Lab is a plugin for 3DS Max that allows you to create other plugins that add new functionality to the software. It uses a node-based UI and enables you to create geometry objects, modifiers, spline objects, animation controllers, procedural textures and world space modifiers (for particles).
Ease of use
One of the things Ephere mentions is how easy it is to create new plugins using its interface. The company claims that you need no programming knowledge, something this reviewer doesn’t completely agree with, especially if you intend to get serious with Lab. If you don’t have a lot of experience scripting or coding you might actually find Lab overwhelming at first.
Having a basic understanding of programming and a fairly solid understanding of how 3D geometry is built up is essential when beginning to create plugins in Lab. Comparing Lab to other node-driven plugins for Max, like Thinkbox’s Magma interface or Cebas’ ThinkingParticles, Lab is definitely a bit more complex. Given the range of plugins that Lab can create, this is perhaps a necessity, though some concepts could have probably been simplified a bit.
The inclusion of more custom nodes that do a lot of common tasks would help ease new users into Lab. There are some, and they are very helpful, but more are needed for those who are new to the software.
It’s worth noting that while you can create world space modifiers to alter the motion of standard 3DS Max particle systems (not including Particle Flow), you cannot create spacewarps. This means that if you were hoping to use Lab to create spacewarps to generate forces for any plugin where you need to define a spacewarp then this might disappoint you. While this is a shame, Lab is still able to create a very wide range of plugins.
Interface
Lab’s graph editor overview
The interface itself is pretty straightforward and doesn’t take very long to get to grips with, especially after browsing through the documentation. One particularly great feature is the implementation of "meta nodes". By grouping together nodes that you often use and saving them as a meta node, it will show up in the library of nodes that you can re-use whenever you need to. By double clicking on a meta node you can see how it was constructed and what nodes were involved.
The suggestion mentioned earlier regarding the inclusion of more custom nodes that do a lot of common tasks could be implemented as additional meta nodes, so that while they could ease the creation of certain tasks, one could also easily open them up to see how they were constructed.
If there is one gripe I have about the user interface at the moment is that it doesn’t save the positions you left your nodes in. For those who like to keep nodes neatly organized, this can be frustrating. This is especially important in more complex setups.
It’s also worth mentioning that you can group any nodes. Double clicking a grouped node will open up a new sub-graph containing the nodes you grouped. This is exactly the same as using meta nodes except that the grouped nodes are only saved with that graph and can’t be re-used outside of the plugin you are working on.
Features
The fact that you can create so many different types of plugins in a unified interface is really fantastic. With the Point and Polygon modifiers you can create a wide array of modifiers and since you have access to time — defined in seconds rather than frames — almost any value can be animated inside the graph.
There’s also a powerful script node that can be used for running C# code, in case you run out of options in Lab. You can do almost as much using Lab’s mesh modifiers as you can with Thinkbox’s Genome. However, Genome’s Magma interface is much easier to understand if you are not a programmer and its documentation is much better. But of course Lab does so much more than just mesh modifiers.
Types of plugins you can create with Lab
In a lot of ways it’s comparing apples to oranges, even when just comparing the mesh modifier to Genome. The main reason is because while Genome is custom made for 3DS Max and its properties, Lab has no general idea of 3DS Maxspecific information — for good and for bad. That’s probably the biggest issue with Lab, and this is probably due to Ephere’s bigger vision of "Coden" where you write for one platform and then it’s compatible with other platforms such as Maya.
The GUIz that you can create with Lab seem slightly constricted, there’s no curve GUI element for example (Ephere mentioned this is on their to-do list), no layer GUI for managing several objects, and no sliders. Based on what I could find, you are limited to check boxes, value spinners, pick object buttons and lists for adding multiple objects (and that last one wasn’t documented anywhere that I could find).
One great feature of Lab is that once you’ve created a plugin, you can share them with anyone — including people that don’t own a copy of Lab. The only caveat is that whoever wants to use your plugin will have to download and install Coden (which is free). Right now there aren’t that many publicly available plugins but hopefully that will grow as Lab gains popularity.
There are some nifty ones up on Ephere’s website however, like a Tessendorf modifier for applying ocean waves to any geometry. From the same author there are also a flocking modifier, crude height-field wake generator and voxelizer available for download. In these cases quite a bit of C# was used, so it would be difficult for a non-programmer to achieve the same results on their own.
Nice review Tobbe. I had an impression that Lab was similar to ICE for Max. In the general sense yes, but it has to evolve more. The good thing about ICE is that is has lots of ready to use nodes that gives you the possibilities of create a lot of cool effects by joining stuff together.
Of course you can delve deeper with programming, but in general, with the provided nodes you can create some custom compound to do some cool things.
But I guess it’s a start. As it’s developed, it’ll improve.
Seems they arr following Softimage ICE
Thanks Tobbe! Good things to know.
I was a bit disappointed when you dropped the no spacewarp bomb, something I think many of us wish we could create on the fly, regardless still appears to a powerful and useful tool.
nice review Tobbe,
yes Ephere have a lot to do to fix all the errors, I was in the beta and I continue to try it, but because I’m also a Softimage and ICE user as well as genome I often find LAB frustrating, because a lot of functionnalities and usefull nodes are missing. And to be honest I almost never can finish a plugin Idea I started (which worked on ICE or sometimes in Genome), because of these problems. But the good things is that Marsel is nice and when I send error reports and have suggestions He always try to solve the problems I have. So I hope soon It’ll be really ready.
I really, really like this tool. Its surprisingly easy to write your own nodes in c#, for example when you need more complex stuff going. I usually let Lab handle input/output while custom nodes (that can be debugged in VS) does the hard work. And I agree that the ephere-guys are very helpful!