Did Cycles overcome Blender Internal?

Alright,so i want to ask if cycles have become better,not only in speed, but in quality then BI,given the fact that it still missing some key features that BI have.

BI tends to be fast until you add raytracing to the mix. Cycles is able to quickly place samples for raytraced effects that would slow BI almost to a stop.

One needs to note though that I’m talking with the assumption that you also have ‘no caustics’ checked and the diffuse bounces set to 0 (to emulate limitations of BI), as Cycles can become pretty slow to render due to some GI effects needing a ton of samples to resolve (which, as I said, can’t be used for truly direct comparisons due to BI not supporting such effects).

Simply put, BI was never designed to become a full-fledged raytracer, check the render25 branch and you would realize that there’s no good foundation for it in the codebase. What BI could become though is a very comprehensive legacy (but not totally physics based) rendering solution with things like half-lambert shading, enhanced NPR, a large assortment of legacy specular and diffuse models, radiosity that is actually good ect… (sort of like what Renderman became).

BI is very good and useable. I know, I am a troll.

Cycles overcoming BI as the basic bake engine for sure.
These are the news.

For those with limited compute power (cpu only), BI is still much faster until you go heavy on raytrace effects. Bang for the buck, BI is hard to beat, especially where NPR is involved.

Even if you turned off all bounces from cycles, BI is still faster. There is no point in using BI anymore, I don’t think, apart from speed on not realistic images.

I don’t actually know how you would like to define better, as I don’t know of an absolute definition of would a good renderer is. Cycles is physically more accurate than BI, but does that make it better? Being a physicist myself, I find the terms physics-based and physically accurate used for renderers actually a bit strange, as all renderers are in some sense physics based and one could argue that no renderer is truly physically accurate. I understand how these terms sre used in the field of 3d, but I still find them odd. As a physicist, I do find cycles to be much more intuitive. But again, does that make it better?

Is that with ‘no caustics’ checked in Cycles and blurry reflections on all diffuse surfaces in BI?

Try having a high number of raytraced samples for interacting raytraced effects in BI and things will really slow down, and that’s even with the fact that blurry reflections and refractions will only work for the first eye bounce. This is due to how BI was not designed to do heavy raytracing, Sgraham even wound up proving that fact when it was found that GI in his patch was slow on outdoor scenes (an easy lighting situation that Cycles can quickly resolve).

If you want an example that BI is especially bad at in terms of speed, make a complex glass object using both refractions and reflections, watch BI choke as it struggles to get a few lines done a minute.

Cycles is a much more modern and streamlined engine, so in that regard it has definitely overtaken BI. Cycles is slower than BI in almost all cases, but that’s because it’s a path tracer, and that type of engine will always be slower than a well tuned scanline rendering. Tuning that scanline engine though is usually a major task.

I think this might also come down to what you like.

Cycles is more a biased GI render engine geared towards photo realism.
BI is more like a graphic tool which can do a lot of nice looking stuff but not really photo realism at the same level.

BI’s only major drawback is the painfully slow and in my opinion useless raytracer.
The moment you use something blurred it is unusable.

Otherwise I think it is still a pretty good engine to use while I must say I would also consider Yafaray.

The best renderer is the one that gets you the result you want, the fastest.

But don’t put in feature requests for BI, because yes, it’s legacy.

To paraphrase PhysicsGuy more or less:

“…but in quality then BI…” PyC0de, if quality means photographic realism why yes it has but that has been the case since day one. I’m just having a time with the word quality here. A scanline renderer can give you a different look and for many people it is way faster. And, will continue to be for years maybe. Since we have Blenderheads all over the world with a wide range of equipment.

I’ve found recently that I can do some exterior animations with Cycles using Branched Path Tracing. (Reasonable Render Times) But, I happen to have a Nvidia card such as it is. However, that doesn’t mean I want photorealism all the time. Nor can I duplicate BIs look in Cycles. Or, want to spend the time noodling for what takes minutes in BI to set up. Damn boring world if every piece of art and every ad attempted to mimic a camera. These damn render engines are just another tool in your arsenal not unlike brushes and airbrushes were years ago.

And, ‘Ace’ you’ve had me wondering for some time now. Does Blender need a new scanline renderer. It’s the only one I ever used so I don’t know what other scanline renderers are capable of. And, I’m not inclined to download trial versions to find out. “… BI was not designed to do heavy raytracing” Does that mean other scanline renderers were?

The main commercial engines I know of that were hybrids at one point are Mental Ray and Renderman.

  • Mental Ray is widely derided nowadays by people who use Autodesk software due to its slow speed and the mishmash of features that don’t always work well with each other, most of those users use an engine like Vray as a result.

  • Renderman was actually gutted by Pixar in recent years to clean out all of the cruft and bring it into the modern era of pathtracing, Monster’s University for instance uses a lot less in the way of traditional scanline techniques than their previous works.

BI can perhaps indeed be made to work much better as a raytracer, but it would require a very intensive code cleanup that Brecht figured would take about as long as writing a new engine with a modern design in mind. This is why I say that BI could potentially become a premier scanline solution by expanding on that side rather than expending tons of effort to make it a pathtracer,

Millions of polygons alone can kill BI.

Rasterizer which uses game engine is fast.
3D Viewport is even faster, easy to set up, and the picture quality is ideal - no artifacts out too low number of samples.

I learned this the hard way on one of my first renders. 3 days for 1/3 of a complete image with 6 wineglasses. Even with cpu rendering, Cycles is faster by an order of magnitude when you want realistic glass.

For my own uses, the only thing BI can really use at the moment is a more robust/faster ray trace engine(at least render glass fast enough to finish within a day :P), though woefully, implementing one is better said than done from what I’ve read about BI.

cycles is no good for simple things and NPR.

-It has absolutely no support for glsl viewport- so kind of bad for game related assets.

  • It is noisy as hell. Did I mention slow? So for an image sequence- for anyone without a beast computer- simply not an option.

So yeah. It has not overcome BI. It will take a lot of work to do that.

Actually in post #12 I lied about not using any scanline but BI without even realizing it. I had an animated scene with a polished hardwood floor taking up about 1/3 of the frame. And, if memory serves me to get the least little bit of reflection, sheen, on that floor was out of the question with BI due to render times.

But, not in YafaRay using ‘Direct Light’. Now is YafaRay not a scanline renderer when set to Direct Lighting. And, yes I realize it’s a hybrid, Ace. By the way it was set to Direct Lighting with no caustics which in my mind makes it a scanline only. Regardless it pulled off what Blender Internal could not.

-It has absolutely no support for glsl viewport- so kind of bad for game related assets.

  • It is noisy as hell. Did I mention slow? So for an image sequence- for anyone without a beast computer- simply not an option.

Not quite.

  1. GLSL is not BI. Unfortunately it should be developed further. It also shares BI UI (some of it), that’s all.
  2. Noisy as hell.
    Here’s a scenario. Supposing we have baked some textures (cycles bake is my favorite) and go for a close to GLSL setting. Unfortunately, we need some ray traced reflection. And a bit smoothed shadow casting.
    BI is faster than a 0 bounces / ~10 samples cycles render? On my tests cycles is 2x faster. (both engines on CPU)
    It will become 4x faster on heavy meshes, if not crashing. Noise on 0 bounces? I don’t think so. 4 or 8 bounces are needed for AA only.

IMO the truth is: We need a good modern raster engine. And, a modern GLSL renderer.
As long BI exists, no one will have a look to these needs.

A bit of an overstatement, but we can all agree that cycles is certainly slower under simple lighting and shading requirements.

For me, it’s human time versus machine time. I can spend some time tweaking and balancing a shader in BI, add in some fake AO, add in a bunch of bounce lights to make the lighting less flat, and still get a result that is only almost what I want. But in cycles, I just set up the shaders and hit go. It does take more time, but time spent rendering seems less tedious than time spent tweaking an balancing. But, I do have a pretty beefy computer, I rarely do animations, and I’m paid hourly.

Once cycles was added in, I was sold almost immediately. It does everything I want a renderer to do, and it has the look that I was always struggling to get in BI. My needs certainly do not represent the whole, but if you are looking for high quality renders (especially stills) Cycles is definitely the way to go.