Typical Render engien platform

Well I will try to do a common platform for the Render engiens . . . . What I propouse is going to need the help form a lot of persons since I do not think there is One person that is an expert on all renders engiens . . . so this is what I think.

I want to do a common language for describing the scene so I can reused for all lenguages. So each renderengien will have a file that is going to have a special extension like “.rend” . I will do something so It apear inside the render options, then depending on the file that you pick it will tell Blender how you mist descrive the render

A basic example will be for point lights . So the lenguage will be something like this
~if ~" " ~" "



~if ~lamptype="Lamp"~[
<light type="" glow_intensity="0.000000" glow_offset="0.000000" glow_type="0" name="~lampname" power="20.000000" cast_shadows="~if~lampshadow~'on'~'off'" >
    <from x=" ~lampposx" y="~lampposy" z="~lampposz" />
    <color r="~lampColorr" g="~lampColorg" b="~lampColorb" />


light_source {
 rgb <~lampColorr,~lampColorg,~lampColorb>


light " ~lampname" "mib_light_spot" (   
  "shadow" ~if~lampshadow~'on'~'off,
  "color" ~lampColorr ~lampColorg ~lampColorb
 origin ~lampposx  ~lampposy ~lampposz
end light
instance  "~lampname_Inst" "~lampname"
end instance

and the diferent Outputs will be


<light type="pointlight" glow_intensity="0.000000" glow_offset="0.000000" glow_type="0" name="LAMP1" power="20.000000" cast_shadows="off" >
    <from x="-6.255759" y="6.176141" z="6.734407" />
    <color r="1.000000" g="1.000000" b="1.000000" />


light_source {
 rgb <1,1,1>
 fade_distance 20


light "light_OBLamp.001" "mib_light_spot" ( 
  "shadow" on,
  "color" 1 1 1
 origin -6.25576 6.17614 6.73441
end light
instance  "light_OBLamp.001_Inst" "light_OBLamp.001"
end instance

So in that way we will have a flexible library of renders


Awesome RCruiz, awesome! I wish I could do more, but the only way I can help you with is testing :slight_smile:

Why do you not write all this in xml ?

well this is the best way that I could think but If you have an other idea then please put how the diferent .rend will look for the example that I first show.

This is a proposal so any help will do some good

Un Saludo