Slashdot Log In
The State of Open Source 3D Modeling
Posted by
kdawson
on Sun May 06, 2007 12:42 PM
from the first-mover-advantage dept.
from the first-mover-advantage dept.
gmueckl writes "Since Blender was released as open source in 2002, it has basically owned the open source 3D modeling scene. Its development has seen a massive push by both the community and supporting organizations. However, the program has been showing its age all along and efforts to improve on it have either been blocked or have failed in the past (note the dates). Authors of new modules are forced to jump through hoops to get their work glued onto the basic core, which still dates from the early 90s and has gone almost unchanged since. There are many other active projects out there like Art of illusion, K-3D, and Moonlight|3D. Each of them offers a modern, much saner, more coherent, and more powerful basic architecture and could match Blender in a couple of months' time with some extra manpower. So how come these projects don't get the level of support they deserve? How come developers are still willing to put up with such an arcane code base?"
Related Stories
[+]
Technology: Blender Foundation to Create Open Movie, Open Game 100 comments
Eloquence writes "The Blender Foundation, which maintains the open source 3D tool Blender, has announced two new projects, codenamed Peach and Apricot. Project Peach will be a new open source movie, following in the footsteps of last year's Elephants Dream project (which was initially codenamed Orange). Apricot, on the other hand, will use Blender in conjunction with open source 3D framework Crystal Space to create an open game, thereby showcasing both technologies."
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
It's there, and it works (Score:5, Insightful)
As much as people may hate Blender, the main advantage of the program is that it is there, and that most things work. Some parts are even great. Personally I happen to like the poly-workflow, which is very fast. The main problem with blender for most users is that it takes a while to learn, but once it's learnt, it has a very effective workflow.
I think that the OP is very optimistic when he sais that it takes only a few months to port everything (and the kitchensink) to another app, that is just impossible, even with open code.
Re: (Score:3, Interesting)
If you look at even commercial software such as Maya or 3ds max there is essentially very little difference other than the interface and i find 3ds max interface perplexing confused and illogical (looks like some one ate to many widgets and threw-up) blender was a semi steep learning curve but once you have the basics a bit guesswork you can make some alright looking models even without any experience.
But then again i like Povr
Re: (Score:3, Insightful)
It does sound like some Pollyanna that either hasn't coded or hasn't tried coding 3D software. 3D programming on that level is HARD.
Heck, I even tried making a 2D CAD program once. The basic math was relatively easy but the UI and object database handling is a bitch. 3D is is a lot worse in many respects, the main advanta
Re:It's there, and it works (Score:5, Informative)
Parent
Re:It's there, and it works (Score:5, Insightful)
Pretty much every developer that has joined Blender has spent some time looking over the codebases of the other opensource 3D applications. Your claim of a month is absolutely ridiculous - even a year would be an insane time line. At a minimum you are looking at a requiring a similar sized developer base as Blender at least 3 years of full time development before any of the other 3D apps can even come close to Blenders functionality as of right now.
Here is a very brief list of what you need to approach the basic functionality that Blender has
Modeling tools - asside from Blender the only half reasonable polygon modeling tool available is Wings3D(which is written in Erlang). In addition to a strong core of standard polygon modeling tools Blender also has sculpt modeling, curve modeling, metaball modeling, NURBS, etc.
UV Unwrapping - wings has basic UV unwrapping - Blenders are considered one of the best implementations in the 3D industry. As far as I'm aware all of the apps you mention have at best very basic tools.
Texturing - Blender has full node based materials and texturing; Blender has 3D painting and texturing tools. To my knowledge none of the apps you propose have either of those features.
Basic animation - you need good rigging and skinning tools for character animation. You need cage deformation, hooks, a driver system etc. I think AOI has okay rigging but other than that?
Simulation - physics, particles, fluids, crowds, hair. Presumably some of the apps you list have very basic collision integrated? Some also might have very basic particles. The difference between where they are at, and where they would need to be to match Blenders current capabilities is tremendous.
Compositing - not crucial for a 3D application to have - but this is a powerful feature of Blender having an integrated compositor in its rendering pipeline.
Rendering - do any of the projects you list have multipass rendering even?
Scripting - Blenders API has been refactored a few times, this has caused some pain among scripters, but the API has been steadily maturing and is quite large and powerful.
Exporters and Importers - how many and how mature are exporters for any of your suggested programs? A fairly complete and mature exporter or importer can in itself represent numerous man years of effort.
Sequencer - again not crucial to meet the definition of a standard 3D animation suite - but again a powerful feature that is part of Blender.
Logic nodes and game engine - yet another feature that wouldn't be a strict requirement to become a reasonable competitor in the 3D animation suite space, but another tool that is an important part of Blender for part of our user base.
I get the impression that you have absolutely no idea how much time and effort it would take to become a serious competitor as a 3D animation suite. No disrespect but Moonlight 3D isn't even 1% of the way there, and yet in your estimation it would only take a month to 'catch up'.
LetterRip
Parent
Re: (Score:3, Insightful)
And may I say: The sequencer is one of the BEST parts of blender. Nothing beats whipping up a short presentation movie with the blender sequencer. It is quite intuitive for a blender user, since it uses the same key and mouse mappings. We use it all the time when we want to stitch together some clips.
Re:It's there, and it works (Score:4, Insightful)
Parent
Re: (Score:3, Insightful)
Lack of ngons is a serious workflow deficiency and something that forces one to kludge around when building models. No point stating quad-only models are better anyway, supporting ngons isn't about that. Having ngons while you model speeds up the workflow when you don't have to work around them and can leave them in temporarily.
Apparently work is done to introduce a new mesh type and tools that support ngons. Just pointing out that right now blender's workflow is rather restricting.
Re:It's there, and it works (Score:4, Insightful)
People like to bitch about the interface -- yes, it is confusing at first. But you have to use it for more than a few hours. Do the blender tutorial. After playing with blender, I took a class in 3dsmax -- seriously, once you learn the keystrokes for blender, you never want to go back. In this, it's comparable to vi or emacs.
Most likely, the OP got his nose bent out of joint because they wouldn't switch over to XML, so he decided to slander the project on slashdot.
Parent
Rewriting (Score:3, Insightful)
Re: (Score:3, Insightful)
Re: (Score:3, Informative)
Re:Rewriting (Score:5, Insightful)
In what manner?
'Blender still suffers from that'
In what way does blender suffer?
'have a solid design which is able to grow'
In what way are the designs solid? What about the design of blender makes it less solid? Specifically what aspect of blender is unable to grow and what is the difference in these other applications that makes them able to grow?
'applications like Maya, Softimage and Houdini have demonstrated that'
In what manner?
'Comparing blender to all of those on a design level makes blender stand out as the toy.'
In what fashion?
Do you have any constructive criticism or is this entire post just a troll? Can you name any specific features, design constructs, or methods that are actually superior in these applications or do you just prefer in the interface in the commercial applications you learned in?
Parent
Re:Rewriting (Score:4, Interesting)
Parent
Re:Rewriting (Score:5, Informative)
I'm sorry sir but you seriously mistaken,
"
Blender is a design that was never intended to grow into what it is now. Remember that it was an inhouse developement of an animation studio so the whole application was designed to get the job done that was at hand."
Perhaps you should read about Blenders actual history?
http://www.blender.org/blenderorg/blender-foundat
Blender was a rewrite of the inhouse design tool of neo-geo. The design of the rewrite was very forward looking. There were a few design errors, one such design error due to Blender being used inhouse is that the input design wasn't made easily customizable. This error is one that we are going to correct with Blender 2.50.
"But when the program itself was commercialized it started to outgrow itself. This was never anticipated and Blender still suffers from that."
It had been anticipated that Blender was to be commercialized. The technological and design foundations of Blender are pretty impressive. Blender has had some issues (all but a small handful of which have been addressed), but not anticipating commercialization is not one of them.
"The other applications that I pointed out have a solid design which is able to grow. Commercial applications like Maya, Softimage and Houdini have demonstrated that. Comparing blender to all of those on a design level makes blender stand out as the toy."
I suspect that you have close to zero knowledge about the designs of XSI, Maya, or Houdini similar to your close to zero knowledge of Blenders design.
Blender has been able to sustain absolutely ridiculous growth rates in its code base and functionality. Professional 3D artists find the pace of development eye popping/jaw dropping.
LetterRip
Parent
Showing age? (Score:5, Insightful)
It's earned a fluid simulator. Particle effects have been dramatically improved, yafray integration was a huge improvement for rendering, materials can now be created with a node based system.. the list goes on and on. The feature enhancements that went into the latest point release is worth an essay all on their own:
http://www.blender.org/development/release-logs/b
Blender stays afloat because it's seeing active development and is already a mature platform. People are used to the interface (one that newbies hate, but veterans fall in love with), and it runs on all three of the major operating systems.
I don't think an aging codebase is a critical flaw. Too often people think redesigning the wheel is a panacea for repairing a kludgy system, without realizing that all code projects fall prey to this at some point in their life. Sure we could rewrite Blender.. but to what end? It'd take another 5 years to get where we are now.
Level of support (Score:5, Funny)
Because the issue hasn't been posted to the front page of
Blender changes over time (Score:5, Insightful)
There have been huge changes to Blender over time. For example, the physics engine in the game engine was replaced with a much better one. The original poster is apparently wound up about some XML import/export thing, which is minor. You can write Blender import/export filters in Python, and many such filters exist.
Blender has some problems, but converting its files to an XML format isn't one of them.
Re:Blender changes over time (Score:5, Informative)
Another problem is Blenders old user interface code. It dates back quite some time and it surely has been updated time and again. But because it is a library that does everything by itself on top of OpenGL and thin wrappers around the actual windowing system it did not get proper support for multiple screens yet although this has been called for some time now. User interface translations are a similar topic which has been tried time and again and still isn't fully accomplished. Back in the days when Blender ran on SGI workstations the decision for an own UI toolkit made sense. But times change.
Parent
Re: (Score:3, Informative)
Then you're probably happy to hear, or already aware, that the UI/event part of blender is slated for rewrite.
blender is here to stay. (Score:3, Interesting)
blender already has quite a lot of features, not to mention game engine and other tools.
plug the fact that it's light weight, fast and cross platform. (while maintaining the same UI everywhere.)
blender may have some old cruft every here and there.
but it doesn't really bother me.
so what do these are "not yet here" apps offer me?
Re:blender is here to stay. (Score:4, Informative)
Blender worked on 64 bit platforms, but it wasn't recommended since the output of the files wasn't guaranteed to be portable between 32 and 64 bit versions of Blender. For 2.44 being 64 bit clean again (it was for the majority of its history) was one of the goals.
"Also, I think it's a personal problem, but I haven't been able to get Blender to even work on my system."
Sounds like a bad opengl driver, you can try upgrading or downgrading your driver; turning down hardware accelleration; and turning off antialiasing - those tend to fix 99% of the common issues.
LetterRip
Parent
Doesn't matter (Score:3, Insightful)
But it doesn't matter anyway. Basically, the hype and bullshit surrounding the 3d modeling app market is already so saturated and misinformed, it makes a SNES vs. Genesis debate in the cafeteria in the 6th grade look like a congressional fact finding comittee. Almost anyone involved in 3d modeling as a hobby develops their own ideas about what is good and what is bad for their way of working. Most of the time, Open Source modeling apps fall in the "bad" column.
It's obvious (Score:5, Funny)
Re:It's obvious (Score:5, Insightful)
Actually it is the Vi of the 3D Modeling world; it has small footprint and a marginally steep learning curve, but when you get it (in three or so weeks) you will be amazed at what you can accomplish with relatively little effort.
Parent
Re: (Score:3, Informative)
I know that Blender's capabilities blows POV-Ray's out of the water, but I couldn't do simply and easy stuff easily with Blender that I can with POV-Ray. Every so often I'll spend a
you question isn't so much a question... (Score:4, Insightful)
Blender probably "owns" the open source 3D graphical modeling scene because it's the most complete, full fledged, and the most mature of all the applications out there, with the exception of POVray. aside from blender(combined with yafray), the only other apps i use(and would consider recommending) would be wings3d(currently testing sunflow). typically i'll start with wings, import into blender, and use yafray for rendering. this combo seems to work well, wings is superior to blender in certain types of modelling. i don't think the other apps you mentioned play well with other apps, maybe that's the problem...
i've tried many of the OSS 3D apps out there(including AOI, have not tried k3d or moonlight thou) and the problem was often that the user interface was clumsy, the code was only available on one platform(i.e. moray), or the project was not mature enough for real work.
blender is'nt the easiest 3d app to work with, but then again 3d modelling in and of itself is not an easy task. since this discussion is about 3d modellers, it's important that an artist is able to navigate, switch tools, and move around an application in as smooth and fluid like as possible. it might seem like an oxymoron, but it is possible to do this in wings and blender(i never thought it would be). blender especially is a steep curve application, but once you get to know the most basic commands of edge/vector/face selection, creation and editing of primitives and vertices, things start moving quite well. there is a lot of thought that went into both blender and wings UI to make them easy to use. can you say that about k3d/aoi/moonlight?
you complain about the underlying architecture, but it's not the code that a user is interfacing with, and the interface is what is driving a highly graphical app like blender. it helps when architecture and UI are both well conceived.
does that answer your question(s)?
Re: (Score:3)
It's a pain. (Score:3, Insightful)
But the problem is that it's just barely good enough - such that developers simply don't feel it worth the (not inconsiderable) effort to do something truly world-class to replace it. Artists eventually learn it's weirdnesses.
If blender mysteriously vanished overnight, we'd be in a terrible state for the next year - but what would emerge as a result would be a hundred times better.
Tricky.
Re:It's a pain. (Score:5, Informative)
Cheers
Parent
Re: (Score:3, Interesting)
Same can be said for 3DSMAX. Extremely powerful because it's evolved, but with a terrible, archaic user interface that newcomers like VUE leave for dead. Same for Poser and DAZ.
Being first to market is a huge advantage, but in time, you're left lugging a dinosaur around while sleek, warm blooded animals breed and overrun you. Say... is that snow?
How about the state of 3D Parametric Modelling? (Score:3, Insightful)
Re: (Score:3, Informative)
Re: (Score:3, Funny)
I third that. The FOSS community is sorely lacking a professional-quality 3d modeller/drafting software.
Oh sure. Give us a sec to drop everything and get right on that.
So, I would venture the beginnings of a features list:
Is this one of those "Pick Two" lists?
could match in a couple of months' time? (Score:5, Insightful)
- Each of them: great, there are three projects offering equivalent functionality, each hoping to supplant the current favorite? And which, pray thee, should an experienced developer contribute to? "Any of them"? --- bzzt, wrong answer. You're asking somebody to contribute when there is a 2 in 3 chance the contribution will be dead code when one of these emerges as a favorite? A born-into-money aristorcrat who doesn't have to make his own living can do that; the rest of us have more limited time and can't. Hint: companies pay product managers quite a bit to keep developers from doing wasted work, partly to avoid overhead but partly because wasting a developer's work is the fastest way to kill any enthusiasm. Picking one option (even if it's wrong) is better than indecisiveness. And if you truly think multiple options are the best, then find a way for them to coexist (pluggable rendering cores) instead of killing each other off.
- modern, much saner, more coherent, and more powerful: all of these are in the eye of the beholder. But here's an opportunity to defend yourself: if these new architectures are that much more powerful, it must be possible to implement the blender architecture with them. Which happens to be a sane migration path, instead of the throw-away-anything-old not-invented-here approach of an entirely new project. Blender is open source: fork it and insert the new architecture, instead of griping about how somebody else should do something better. (I know full well this isn't as simple as I'm making it out to sound. But you know full well these new architectures aren't unambiguously better than the old.)
- could match Blender in a couple of months' time: such a confident development-time prediction! Anyone with predictions that solid should be administrator of a project already! Now that I'm done being sarcastic, "a couple of months" is totally unrealistic. Every additional developer needs ~1 month to get up to speed on a new codebase (and understand what Blender does), another X months to implement the new functionality to match Blender, and 2X months to work the bugs out of the new functionality. Wine has been a few months from being usable for general apps for years; Gnome has been a few months and a few developers from being able to replace Windows for years; Windows has been a few months from being bug-free for a decade.
I don't mean to degrade the whole idea of finding something better than Blender. It's a fantastic goal, advances the state-of-the-art, and all sorts of other good things. I do dispute the misrepresentation of the ease with which it can be done: if it were even a tenth that easy, it would already be done.Developers are willing to put up with the arcane code base because (1) it works, (2) it's Good Enough, which means anything newer has to overcome the training / usability barriers associated with switching, and (3) the newer options are not unambiguously "better". Remember: if app Bar (Blender) is already the standard, app Foo (these alternatives) not only has to be better for someone just starting, but also has to be better for an experienced user of Bar.
If you want to learn Blender.. (Score:5, Informative)
There's hope for Inkscape (Score:3, Informative)
My daughter just attended a seminar where the UI expert posited the three Es. Ease of use, ease of remembering and something else that translated as power. The way the presenter described it, you couldn't have all three. Bullroar. A good program is one that I can use intuitively. If I am going to use the program a lot, there are shortcuts available. For instance, my students can get something to work with menus and the mouse. I can do the same thing two or three times as fast from the keyboard. I guess the thing is that a decent program has more than one possible UI.
Why is it always just the UI? (Score:4, Informative)
This is to all those people who claim that you just have to learn to use Blenders user interface: My question really was initially not that much about the user interface, but the user interface really is at the core of the problem, but not in the way you probably expect.
The alternative applications that I have pointed out are really designed for a job. They adhere to basic MVC patterns and whatever else you would expect from such a big application. These patterns really are a big advantage when it comes down to coding stuff. Blender on the other hand has a "user interface driven design", as Ton once said. And this term fits well: the user interface - and I almost literally mean the buttons on screen and whatever event handling that is attached to it - are the only glue that keeps everything together. So when you talk about the user interface you also talk about Blender's internals. There is not much of an abstraction between the user interface and the data that is manipulated. So the bottom line is that any change to Blender's user interface is a change to Blender's design.
Re:Why is it always just the UI? (Score:4, Informative)
Parent
Professional roots (Score:3, Informative)
Most everyone else is coming from a hobbiest viewpoint. and are most always doomed to stay there, if they manage to survive at all.
Re: (Score:3, Insightful)
Blender will remain on top... (Score:5, Informative)
I want to check it out so I go to the never-changing site of AoI and look at the gallery. Well, maybe they keep their best stuff somewhere else....That stuff has been there forever.
Next I go to K-3D, fondly remembering the build-in tutorials in the 'old' K-3D, the one before the never-ending refactor. Site doesn't load.
Head over to Moonlight3D. Hey, I remember that from about 10 year ago! Sad story: guys write Moonlight (closed source) Later they come up with Moonlight Atelier. Loads better but still closed source. (Linuxgraphics.fr had a nice Moonlight section) They open source the old code base, lose interest in Atelier and that's it. End of story. OK, so some guys decide to try to revive the old codebase, did some hacks and changes. Project died. This seems to be the legacy. Go look at news. Hey! Who's that posting there? It's our old friend gmueckl! So the anti-Blender tirade looks like a serious bout of jealousy to me...
If that is the competition Blender has, I suspect it'll be on top for quite a bit longer.... Just compare development pace, feature set, support (2 modern Blender books with a third one on order), roadmap.
The submitter is a troll (Score:5, Insightful)
Blender has weedy parts in its codebase, everyone knows that. Any programm this complex and mature has those. But they are being replaced fast and thouroughly by a thriving core team lead by the founder of Blender. Blender runs out of the box on 7 plattforms and has a featureset that closely competes with current topline commercial tools. Try to catch up on that alone 'in a few months' Mr. Smartass. Blender is responisble for the recent price drops in the 3D tool industry alone and when it eventually fully supports Renderman yet some toolmakers are going to have to redo their businessmodel big time.
The usual UI bickering is bogus aswell. Apart from being just as hard to learn as any tool of same capabilities, blenders UI has been comletely OpenGL accelerated from the begining - one of the things it's unique in iirc. Blender's learning curve is steep, as with any high-end 3D tool without a stack of books. But with the amount of material and books available on the web for free nowadays makes this learning curve not nearly as hard as it was 5 years ago. The featureset is breathtaking and has commercial providers such as Newtek struggling to catch up in some areas (notice the recent addition of an improrved node editor to Lightwave 9 - nothing but a response to Blenders node editor). Sidenote: I own a professional licence of LW 8, a commercial licence of Blender (from the NaN days) *and* use Blender since back in the days of 1.8. I haven't updated to LW 9 for the very reason that Blender 2.43, a few little things aside, offers everything professional 3D needs. And then some - an full-blown integrated compositor for instance.
Blender is as mature and developed as any open source project could wish for. As *any* software project could wish for actually. Features and improvement are being added on a regular basis and it's fully backwards compliant with any blender file, and it's professional roots not only show but have become more and more visible.
Bottom line: The submitter of the above article either doesn't know what he is talking about or is a troll. Or both.
Re:It would help even more... (Score:3, Informative)
I looked at K3D for a bit...one of the most awesome features I saw was the record/playback used for tutorials. The K3D interface, at the time, also needed some work. However, over the last couple of years, I see it has come quite a ways as well. I think there's room for both- they both use different approaches, and will appeal to different kinds of users. K3D needs something to boost its profile - Blender had the Orange project,
Re: (Score:3, Insightful)
Re:Blender and stupid hot keys (Score:5, Insightful)
**I'd like to see a freeware/OSS project take the approach Luxology is taking with modo. First, they baked out the modeler end of the app in the first release. Then in the second major release we got a render engine and texturing/painting tools (and of course refinements and improvements to the modeling end of things). Presumably, in the third major release we'll get animation (and other improvements to modeling and texturing and rendering). I personally like this approach because instead of stretching yourself too thin focusing on everything at once, you start off by getting the basics of each "component" right. This seems to be a result of their Nexus core, which from what I gather is a developmental platform, where they can "bake" out various versions of the program.
Parent
Re: (Score:3, Interesting)
Re:First Post (Score:5, Informative)
I have attempted to use K3D and blender, and still play about with them. Blender is a nice looking interface, but it is daunting and has a tall learning curve. It uses massively complicated menus and certainly to someone who was taught on 3DS MAX a difficult interface and no foreseeable improvement to MAX from the get go. K3D, however, I liked. It has a simple interface, and its tree set-up for objects is a good way to edit and change objects settings. The only problem that I could see with this program was that the interface looked old and felt cluttered even on the 21inch screen I was using. I would hope that developers could look at K3D more and develop it further, as I believe it has the potential to rival 3DS MAX, Maya and Blender
Thanks,
Badspyro
Parent
Re:First Post (Score:5, Insightful)
My main three complaints, as a new user, were that:
- Mouse gestures suck and should be disabled by default.
- Mouse gestures suck and there should be a WAY to disable them at all.
- The widgets are crude to the point of crying, and it's hard to manipulate things using them or get a bearing from them.
As far as 3d goes, it's very very powerful. As powerful as the commercial apps in most respects. Certainly, unless you're working for Pixar or Blizzard, it has everything you need, and then some. You tend to specialize in 3d work anyway, learning to model machines or humans, or monsters, or being an excellent animator, or kicking butt at textures and/or lighting. You tend to learn one method of modeling as your main method. And you most definitely get picky about which suite you're using. The point is, few people actually use more than the smallest subset of the suite to do their jobs. You don't really need 98% of what a 3D suite is capable of. And so, even though there are a few things you might not have in Blender that you have in Max or Maya, by the time you get to that point where you actually would feel the lack of them, you'll likely already have them. Blender is, after all, actively developed.Honestly, the primary reason Blender doesn't have a larger following in the industry is momentum. Learning a 3D suite is a task comparable to learning another language. Most people don't have the time or will to do that.
For anyone wanting to learn 3D, brace your shoulders and push past the month or two it will take to feel comfortable with Blender. If you don't have what it takes to learn Blender, you're going nowhere in 3D anyway. And you'll find that, whiz-banginess aside, Blender can do what Max can do. And in my opinion, it's faster.
Parent
Re: (Score:4, Informative)
You'll rarely, if ever, find a studio using one program. Certainely none of the bigger ones, and I don't even know of any smaller studios that rely on one piece of software for all their needs. For the hobbyist though, this isn't always a viable option due to the costs associated with some of the software.
Modeling especially, seems to be segmented. Model a base mesh in modo/Silo, bring it into ZBrush/Mudbox for sculpting, rebuilding topology in modo or Silo again, and then bringing it all together into Maya/XSI/3DS/LW/etc.
Parent