Is it about time for Blender's Internal renderer to be retired?

This would mean that Brecht and the few other devs. who are working on BI will have to decide if it’s worth working on the Internal renderer vs. retiring the old engine and getting the exporter API to the point where all of Blender’s features can be converted and accessed to appear in render engines such as Luxrender and Yafaray. (including SSS, volumetrics, toon/ramp shading, and node trees).

Retiring BI and getting all of Blender’s features working in say, Luxrender would be an advantage through the fact that if it was Brecht only working on BI he’ll never be able to catch up with the likes of Luxrender since there’s a whole render-centric team on that project. Outsourcing Blender’s rendering capability entirely to a free external renderer will free up the BI devs. to fix 2.5 issues and create a fuller render API. Lux for example is about to get an OpenCL based core and the code is likely much better in structure than BI’s code which means no massive time spent untangling code.

It’d be interesting to see the capability to render the Durian project with Lux for one thing, people would also have a professional-grade render engine always available which will not hold Blender’s ability to deliver the final image back, above that being all that being as free as Blender itself.

Citing all these things, should BI be retired or is it still worth working on it?

Mh tough question.

BI compared to all other render engines I used in the past is one of the weakest one.
I do not know how much manpower is needed and accessible to bring Blender features
which it badly needs, fast raytrace, good GI.

However on the other side, I think ditching it would be not a good decisions.
Not everybody can buy VRay. Not everybody needs VRay. And for certain visual tasks
Blender Internal is more than sufficient.

Plus if Blender gets a new element, lets say volumetric smoke, it also needs a system
to render it.

For me this is a question of compatibility.

I think with the API you can now perfectly attach other engines which in the long run make
Blender more usable in environments where a different render engines is used.

But the internal system should be continued to evolve as well.

Answer: No, at least in short and midterm. Maybe in longterm.

Yes those lighting fast gpu thing on Luxrender and accurate/realistic rendering from Yafray would be great on Blender, but translating everything that the BI can do to them is gonna take too long, besides the issue of them updating and Blender playing catch up to that.

But trying to make the internal renderer to catch up the quality of those 2 is also an issue you could say, so the best solution would be having all renderer disponible while trying to make the adaptation of one of those 2 into Blender, and only after that is achieved the discussion of “ditching the BI” can be made, before is plain useless.

Also there is the NPR (non photorealistic rendering) not everyone out there needs/wants only photorealism. For example new features like freestyle are being implemented into blender, I hardly believe thats even possible on the other 2.

Not everybody can buy VRay. Not everybody needs VRay.

As I mentioned there are free renderers capable of realistic GI like Luxrender and Yafaray, and the fact they’re GPL means it’s nearly impossible for those 2 to go commercial and no longer be free.

I am a fan of photorealism, however, if someone wants to make a really quick render or needs a an AVI file of their project and they have to render the entire 30 second animation overnight, Yafaray or LuxRender are not the best for the job. The Blender Internal I think is still useful for rasterizing, that animation when you don’t need quality renders, like an animation demo that focuses purely on the animation and not the render. And just because it’s not a complete render engine with everything you need for perfect renders, it’s great if you want to create stylized animations.

Take South Park. They use Maya, and they have almost everything set to “shadeless”. They never use photorealism. The Blender Internal is easily a better candidate for something as stylized as that. Other 2D animations would greatly benefit from the rasterizing capabilities of Blender. Not everyone uses Blender for 3D. Blender could be thought of as an alternative for Flash, but I haven’t really seen that been utilized yet… hmmm… ideas :D.

I don’t like yafaray, and I don’t like luxrender. The things I need, I do with ambient occlusion, and I’ve seen some pretty neat things being achieved with material nodes

Lux and Yafaray are slow. For anything that doesn’t require realistic lighting (practically everything I do), BI is the best option.

…really?

look at all these new improvements with the render branch. do you really think it’s time to throw it out right after durian goes to prove it’s useable in a production environment?

seems to me like that’d be the worst decision to make.

Blender internal renderer should be an independent component of Blender with its own programming interface. Usable from command line without starting Blender. Imagine writing directly on console window:

python
>>> from blender import *
>>> myCube=Cube()
>>> myLamp=Sun(pos=(2,2,0))
>>> render(scene=[myCube,myLamp],output="output001.png")

what you’ve been smoking, AD? You know Blender is traditional animation package, where raytracing is a dirty word.

Besides, aside from renderman implementations, I know of no other non-raytracing renderer targetting fake and fast shadows, reflections and other maps… GI in BI is some kind of bonus to be used wisely – as in bakes – and yet I guess will not replace dear spot rigs to many…

Don’t get me wrong, I enjoy physically-based unbiased renderers like Lux, but that’s because I’m mostly a stills guy… :slight_smile:

I’m with Jeepster, BI has finally reached a point where it does everything I want (indirect lighting) and I can (finally) move on from trying to get things looking the way I want and start making actual project specific content!

Here’s a little example I posted in Blender Tests:
http://blenderartists.org/forum/showthread.php?t=191287

I’ve been testing the render 25 branch when I have some free time and I have to say the quality I’m seeing is marvelous. I hope the BF continues to develop it further.

As for Yafaray being slow that’s not my experience at all. I think it’s 'effing fast. I wait with anticipation for the GSOC Blender gui port to be finished.

  • 1 for agreement.

The BI is far better now than it used to be, and whether or not it becomes it’s own separate component or not is neither here nor there in my opinion.

I think that having the internal render is by far the best thing we could have. AD I am really amazed that you are starting such a thread as this:no::eek:. Did you have a bad render day?

I have used many different renders in my work, Mental ray with XSI, as well as the free ones that you have mentioned. My experiences with Lux wasn’t all that good, and the speed would definitely be an issue if one was to seriously consider it for animation work. (:eek::eek:)

Durian and the development work that has happened because of the 2.5 release has brought so many new and useful additions to the internal render that it would be just plain stupid to rip it out now that it has begun to improve.

The new render API has still got a little bit to go before it is really efficient enough for enough rendering engines to jump on board.

But if you think we need a devoted rendering team to be assigned to the BI development then maybe with enough support this could happen…:stuck_out_tongue:

Never!

And here are some the simple reasons why.

An animation program such as Blender should always remain self-contained. Leaving the door open to 3 rd party development is fine but depending on it is just a bad idea. An artist should open up a 3D program and be able to go from concept to rendering the final product and only have to resort to the same consistent documentation, work flow, and so on. 3rd party products should be the choice of the artist not the requirement. And dropping development on something as vital as rendering is simply short-sighted and goes against the spirit of Blender - and other apps for that matter - in providing a one stop solution for the completion of a product.

Decisions to use other composting programs is a choice, for instance, not a requirement. One has one in Blender. If we are to stop development on that and the sequencer as well? Sure many artists use a whole tool box of various programs. That is fine. It just should not be that an artist is forced to do so because the internal render engine has not seen any development for some time. Sure the current engine has been lagging. The new one is much better and needs improvement. That should continue. Don’t set up intentionally the same problem Blender has had as a result of an outdated rendering package all these years to date.

I personally do not like using Yafaray and the idea of an external renderer, as far as what I have seen in other packages as well has always seemed to present problems. That is my personal opinion.

Also think it is a bad idea to suggest that developers should make thier priority another software’s functionality. And literally dreaming to suggest that stopping dev in one area would give enough time to solve the complex issues of using an external engine. It is also just backwards as far as a priority is concerned. The priority should always remain dedicated to Blender. And also if the effort to solve the problems of an external engine should fail? Or not be up to the expected level? Then what?

Blender foundation is formed on the concept of forwarding the Blender platform not other 3rd party software. It would borderline on criminality to abandon the development of such a vital part of Blender in favor of supporting another program. This is for many reasons. And there is no guarantee that the Yafaray or other 3P development will continue in the far future. Should development of those softwares come to a halt it would leave Blender without a vital appendage. Time and effort lost to put a viable rendering capability back into Blender in the future would be exponential at that point. There would be too much time and effort to make up. And it could cripple Blender indefinitely should that come to pass.

So you say, “well that could never happen.”

But I say. Why even open the door for that? It is a real possibility. And sure Blender development could stop as well. But fine. Let Blender live or die on it’s own merits or lack of, and don’t waste vital time and effort catering to 3P software.

It would also be a huge disservice to the Blender community to assume that everyone would want to go with a 3D solution for rendering.

Look around at the gallery. How many use the internal render? Why?

Personal preference, lack of aptitude or desire for using a plugin. The list could go on.

I Support Blender for it’s spirit which is to offer a one-stop-shop for making animation without an undue dependence on other software to complete the task for which Blender and other programs like it have been developed to perform.

I gotta say yea, get rid of the renderer, who needs it?.. Plenty of other choices out there… Then actually why stop there? Who uses the VSE?? dump that as well… Plenty of choices out there when it comes to compositing, so let’s get rid of that also… Same goes for modelling, so ditch that too…

So would we be left with? Animation? Well, since we can’t model/render/composite or edit anything, why would we need animation tools? So dump them also…

Seriously, AceDragon, have you not read this and all the responses to removing little used features???

Randy

While Blender Internal lacks a bit of the good features/power of other render engines, it’s extremely good, because we can use it with the compositor! I think Blender Internal could be REALLY good in the future, especially if a node based material editor is coming in the future :)! There are many cases where you simply don’t need GI for your jobs. For instance, we render every job in my company without GI and we’ve got no problems with it (well we’re also not making ultra-realistic renderings).

Lux is not a good choice if you want to do unrealistic things. How could you create an animation of Peter Pan’s shadow in Luxrender ?
Luxrender and Yafaray are still unable to bake a texture.
There is a lot of people who use Blender to create games.
I have seen blender running on netbook .
Many supporters are not 3D professionnals.
Do you think that every teacher who want to initiate his pupils to 3D has got the latest powerful workstation on the market with a graphic card supporting GPU acceleration ?

It’s not a good idea. Development is better than destruction.

I prefer BI.

I still want to be able to do a quick render to see if my model displays correctly, if I need more realistic results I can always export it and render with Yafa or Lux, or even Octane.