Will YafRay eventually replace the Blender renderer ?



With every release, YafRay gets more integrated into Blender. Yet I like the Blender native renderer, even though YafRay’s raytracing is better (and lets you use HDRI’s without effort). Not in the least because Blender renders it own files as you intend them to :slight_smile: . But I guess in time YafRay could deal with all this too. And it would probably be easier for the Blender development community to split the effort between a 3d-program and a renderer, instead of having to do it all themselves.

My question is : will the Blender renderer development slowly grind to a halt, while YafRay picks up speed, integrating all of Blender’s options on the way ? Or will a native Blender renderer always be necessary ?


My guess is that as time goes on, Yafray will be less and less of a factor. Here’s why:

  1. Blender’s increasing integration with the Renderman spec. There are several projects afoot to give Blender built-in Renderman support. I’ve played with one of the test builds for Renderman export to the Aqsis renderer, but there is no reason it would have to be limited to that. If Renderman export becomes as simple as choosing the RM renderer you want from a dropdown list and hitting “Render”, just like it is for Yafray, that will hit Yafray use hard.

  2. Speed. Yafray just doesn’t cut it yet. On the Blender internal side, it’s still lightening fast if set up correctly, which essential for animations. Yafray’s a raytracers, Blender internal is hybrid, with selective raytracing available if you really want it.

  3. Current internal renderer projects. Things in the works include distributed raytracing (blurred reflections/refraction) and full path tracing (true global illumination solution, as opposed to ambient occlusion which is just hemisphere-based) for color bleeding and photorealism. It’s easy to turn these things on and off, so you can get a scanline render in a couple of seconds, or turn on the advanced features for much better output, at the cost of speed, but with fewer surprises than an external renderer.

That’s it!


Thanks for the speedy reply.

Does Blender automatically use the hybrid rendering when turning raytrace on ?
Or were you referring to setting manually the ray traceability options per object ?

Now you’ve got me dreaming about Renderman support again … :slight_smile:


Speedy replies are no problem, especially as work is slow in November/December. :slight_smile:

If you turn on the RayMirror or RayTrans option within a material and turn on the Ray button in the render buttons, Blender uses raytracing for the appropriate reflections or refractions. Enabling the Ray button in render buttons will also allow the calculation of raytraced shadows when selected appropriately on your lamps. So, no it’s not automatic, but you need to set it per object. You need to set it per material (or lamp).

Mmmmm. Integrated Renderman support.


In your opinion, which renderman compliant renderer (free) is the best?
I don’t get around these much.
I think one of the only ones that I have seen is 3Delight.
thanks! :wip:


the integration of renderman support…yeah!!
There are 2 different projects:
a) the blenderman script
b) aqsis plug-in

the difference of the aqsis plug-in is , that it aimes to convert native blender-shaders into aqsis shaders. this project it still is a part of the tuhopuu-tree, but has to be rewritten from scratch. so: all the work done so far is facing complete-re-coding. quite a task!!
it originally limited itself to this : convert blender-shader to aqsis. so the real power of renderman, namely the use of custom procedural aqsis-shaders, were not planned in this integration…at least thats what I heard

aqsis is a reyes renderer = scanline, it does not have raytracing incl., but thinking that the original Pixar PRman , didnt have it until recent years, and what it aws able to do…

anyway: the renderman interface is THE most complex 3d environment around. in the old days at pixars, everything was coded, even animation!! the most powerful part of the renderman interface is the ability to program custom shader. every shader has to be seen as a little program by itself and has to be compiled for the specific render-engine you are going to use.

when the blenderman script finaly came out with a neat interface, I thought hey, renderman. but it is far from just hitting the renderbotton and wait for your nice image to be rendered.

the blenderman script gives you a choice of different render- engines available atm.
pixars renderman is moving around 8000,-$ if Im not misstaken per node.

then there are a number of renderman compilant render engines:
aqsis - open source - check http://aqsis.sourceforge.net/
pixies - freeware- it does include raytracing, but is not quite ready yet.
3delight - free for non-commercial use- the most mature of the freely available renderman render engines

but as I said, it is rather complicated to get anything done what looks nearly as good as the blender native renderer (without raytracing)

I would not hope that a fully renderman integration will happen any time soon, just because of the complexity of the matter.
Ive been fooling around with it for quite a while now, and have to say, that it is a hard nut to crack! It does involve coding knowledge or at least basic knowledge of c (so you know what a variable, etc. is) as the shading language SL is based on c
I was using liquid lately and things turned out to work quite nicely, as I aproached it a bit different.
so what do I need to render with renderman? an exporter to .rib files. blenderman is very limited in what it can do and so is ribbit (the wings plug-in for .rib export)
the only real good exporters to .rib are commercial (pixars RAT-renderman artist tools, a bundle of programs to export from maya) and very expensive. in fact RAT cost more than maya ! then there is liquid, again for maya, open-source , but far from user-friendly, when it comes down to it. the renderman interface is far from user friendly!! it takes skill to use it (and I dont have it…yet…hehe)

to understand what it is all about there are some sites to learn :
www.renderman.org where you find more than 200mb of sample shaders, .rib and .pdf s to read
and there are some interesting .pdf at www.3delight.com

learning it is a long term project, I have been on and off learning it and now I try to look into it a bit everyday. but-
it seems overkill at first glimpse, and it is! there are some “short-cuts”, for example programs for visual shader “writing” such as “the tool”= shaderman and shrimp for linux.
but it is of course still necessary to know how a shader is structured and that knowledge has to be learned, reading, so at least you know where to cut and paste in e-macs…hehe.

anyway, I am looking forward to an aqsis integration in blender, but frankly would not recommend having high-fly expectations in the beginning, as aqsis still is in full developement and the integration will not free all the potencial power it has…yet

yafray is right now going through restructuring its code, so further developement after that will become easyer. I would not say, that once aqsis is integrated, that yafray will suffer from this.
example is mental-ray and maya. you can have both liquid and aqsis (or 3delight, etc.) for free and it is not taking maya users by storm. why? because it is so darn complicated!!!

pls. excuse any wrong-spelling! I just hacked that one in in a hurry


No, I don’t see Yafray substituting the internal render engine.

Yes, I see Yafray been more heavily used by Blenderheads… why? Due to their quasi common origins. Blender and Yafray work and develop together like salt and pepper. Remember that Yafray was originaly designed with Blender in mind, and my blenderheads.

There are some interesting ideas going around the developers, to try to add hardware-based rendering into Yafray. It wont’ be final quallity render, but the word “preview” will change it’s meaning :D. Others are speaking of Gpu rendering for the game-engine, with yafray running on the background.

Now, I must come up front in defense of Yafray. First: Yes, it is slow. Now that the “slow” issue is out of the way, i must say that most blenderheads are not using Yafray to it’s true potential.

[b]The Yafray options integrated in the Blender UI are just the bare minimum to make a decent looking Yafray render.[b/] But there is more to it !!!

Yafray offers a lot more power than that. It is XTML based for a reason!! They are complete stand-alone programs just for tweaking the seetings on a Yafray file… and it is amazing how much can be tweaked! And yet there are also stand-alone programs just to create Yafray shaders… that has far more options than Blender can offer.

  1. The more render engines available, the better for YafRay.
  2. Yafray is an independent render engine.
  3. Really few people know to make good renders with YafRAy and there are few people involved in its development.



They are complete stand-alone programs just for tweaking the seetings on a Yafray file… there are also stand-alone programs just to create Yafray shaders…

which ones? URLs?
bagsias?..what else?

The more render engines available, the better for YafRay.

not only for YafRay, but also for US. :thumbsup:


Yes, I was talking about Baglias… I thought I had seen another one, but I can’t be sure anymore :sad:


The internal renderer evolves into a fast renderer with GI support soon as they are working on it already. (I got the latest build with the GI features and it already looks good allthough its still in an early stage)

Why not thinking about putting both projects together? The speed of the internal renderer and the flexibility of yafray so that you’ll have the possibility to write shaders for the internal renderer and use full GI in there.


It won’t be practical. Yafray works with Wings, Blender, 3D Studio Max, Maya, and some more apps… I mean, Yafray stoped been “blender-centric” long time ago.


I know Appollux, but I do not think of just integrating it into blender but sharing code so that the quality of both programs can be mixed into one outstanding renderer.

On the other hand - who uses yafray with 3dsmax/Maya?? I really don’t know anyone… but would be interested in hearing about people using it.

But anyways, I think, we will get a very good and performant scanline/raytrace/GI renderer with the possibility of writing modular shaders (hope hope hope) as the internal renderer :slight_smile:

Btw - dont get me wrong - I really like yafray and it’s quality! It’s allready an outstanding renderer.


Hmm… I don’t know if Blender and Yafray are actually sharing code, but I would guess they already are. The Yafray integration was coded into Blender by the main Yafray developers themself. And they keep updating the Yafray’s Blender Shader to mach, more or less, the Blender Internal Renderer.

About Yafray been used with other non-Blender apps, here you can find information and artwork. There is even this 3D app called Aztec that Blender-style Yafray integration… just press Render and Yafray will fire up.



i like blenders raytracer because it is super fast! i heard it got improved somewhat with this last release too. it’s cool that’s we have our own subforum here btw, thanks to whoever fixed that.
<edit> i like yafray too btw in fact my avatar was rendered with the ‘extractor’ plugin from days of old.



Just few words to say that i actually work on a script to export in the RIB format. I use Blenderman as a basis but pay more attention on the matérial. I think that you could export the geometry with simplicity, but the great power of renderman is shader and that why i work on the material interface.

I will use xml to describe the project and the shaders’ parameters.

The aqsis integration was very good and has the particularity to offer the same final image when you use Blender internal or aqsis. I use Pixie too, because it’s a ray tracer.

In the future, i think that the Blender internal engine will be use for previsualisation, and at the end of the production’s process we will use a renderman render.

But i’am only a man so it is difficult to see the future…

If people work on renderman exporter, i don’t want to re invent the wheel, so i can join you team…

See you soon,




I’d recommend you post to bf-committers or visit the blendercoders channel on irc and ask who to contact regarding working on renderman related stuff for Blender.



Yafray is to Blender, what Mental Ray is to 3DS Max or Maya. It sacrifices the speed of Blender’s internal render for a more physically accurate render. I think the only thing holding back Yafray from being truly integrated into Blender is the lack of formal documentation on its use, and the absence of previewing or specialised material/texture controls for Yafray within Blender’s interface.

By the way, here are some threads about the Yafray/Blender integration that users might find useful:
Blender/Yafray supported features update?
Using Yafray with Blender (wiki)


Ok, thanks for your comment.



I saw your posts on bf blender and blender.org forum. If no one responds in the next day or so I will track down the emails of the people you need to contact.