From 3544a4bd366c98bd5e514c7637ce0b1a369b6282 Mon Sep 17 00:00:00 2001 From: Nathan Letwory Date: Sun, 19 Oct 2008 21:39:50 +0000 Subject: [PATCH] === Blender Python API === * fix two typos in RenderLayer API (renderosiy -> renderosity in two places. Will break .py's saved with render_save_layers.py, just fix passRadiosiy and passRadiosiyXOR) * add some docs on RenderLayer API * fix some copy/paste leftover in render_save_layers.py --- release/scripts/render_save_layers.py | 6 +- source/blender/python/api2_2x/doc/Render.py | 7 ++ .../blender/python/api2_2x/doc/Renderlayer.py | 92 +++++++++++++++++++ source/blender/python/api2_2x/sceneRender.c | 4 +- 4 files changed, 104 insertions(+), 5 deletions(-) create mode 100644 source/blender/python/api2_2x/doc/Renderlayer.py diff --git a/release/scripts/render_save_layers.py b/release/scripts/render_save_layers.py index ad1265be50c..c91fcce7948 100644 --- a/release/scripts/render_save_layers.py +++ b/release/scripts/render_save_layers.py @@ -45,7 +45,7 @@ from Blender import Scene sce = Scene.GetCurrent() rend = sce.render -# default filename: theme's name + '_theme.py' in user's scripts dir: +# default filename: filename + scenename + '_renderlayer.py' in user's scripts dir: default_fname = Blender.Get("scriptsdir") if not default_fname: default_fname = Blender.Get("uscriptsdir") @@ -81,10 +81,10 @@ Remember to also set author, version and possibly url(s) above. You can also define an __email__ tag, check some bundled script's source for examples. \"\"\" -# This script was automatically generated by the save_theme.py bpython script. +# This script was automatically generated by the render_save_layers.py bpython script. # By default, these generated scripts are released as Public Domain, but you # are free to change the license of the scripts you generate with -# save_theme.py before releasing them. +# render_save_layers.py before releasing them. import Blender from Blender import Scene diff --git a/source/blender/python/api2_2x/doc/Render.py b/source/blender/python/api2_2x/doc/Render.py index 5300fdab808..e578e306e8a 100644 --- a/source/blender/python/api2_2x/doc/Render.py +++ b/source/blender/python/api2_2x/doc/Render.py @@ -1228,3 +1228,10 @@ class RenderData: @rtype: int (if prototype is empty) @return: Current new map value for the scene. """ + + def addRenderLayer(): + """ + Add a new render layer to the rendering context, see L{RenderLayer}. + @rtype: RenderLayer + @return: The newly created renderlayer. + """ diff --git a/source/blender/python/api2_2x/doc/Renderlayer.py b/source/blender/python/api2_2x/doc/Renderlayer.py new file mode 100644 index 00000000000..60b8ec46b74 --- /dev/null +++ b/source/blender/python/api2_2x/doc/Renderlayer.py @@ -0,0 +1,92 @@ +# Blender.Scene.Render.RenderLayer module and the RenderLayer PyType object + +""" +The Blender.Scene.Render.RenderLayer submodule. + +Scene.Render.RenderLayer +======================== + +This module provides access to B{Render Layers} in Blender. + +Example:: + import bpy + sce = bpy.data.scenes.active + render = sce.render + layer = render.addRenderLayer() + render.removeRenderLayer(layer) +""" + +class RenderLayer: + """ + The RenderLayer object + ====================== + @type name: string + @ivar name: Get or set the name for the L{RenderLayer} + @type lightGroup: group + @ivar lightGroup: group of lights + @type enable: bool + @ivar enable: enable this render layer + @type enableZMask: bool + @ivar enableZMask: Only render what's in front of the solid z values + @type enableZMaskAll: bool + @ivar enableZMaskAll: Fill in Z values for solid faces in invisible layers, for masking + @type enableSolid: bool + @ivar enableSolid: Render Solid faces in this Layer + @type enableZTra: bool + @ivar enableZTra: Render Z-Transparent faces in this Layer (On top of Solid and Halos) + @type enableHalo: bool + @ivar enableHalo: Render Halos in this Layer (on top of Solid) + @type enableEdge: bool + @ivar enableEdge: Render Edge-enhance in this Layer (only works for Solid faces) + @type enableSky: bool + @ivar enableSky: Render Sky or backbuffer in this Layer + @type enableStrand: bool + @ivar enableStrand: Render Strands in this Layer + @type layerMask: bool + @ivar layerMask: ... + @type zLayerMask: bool + @ivar zLayerMask: ... + + @type passCombined: bool + @ivar passCombined: Deliver full combined RGBA buffer + @type passZ: bool + @ivar passZ: Deliver Z values pass + @type passSpeed: bool + @ivar passSpeed: Deliver Speed Vector pass + @type passNormal: bool + @ivar passNormal: Deliver Normal pass + @type passUV: bool + @ivar passUV: Deliver Texture UV pass + @type passMist: bool + @ivar passMist: Deliver Mist factor pass (0-1) + @type passIndex: bool + @ivar passIndex: Deliver Object Index pass + @type passColor: bool + @ivar passColor: Deliver shade-less Color pass + @type passDiffuse: bool + @ivar passDiffuse: Deliver Diffuse pass + @type passSpecular: bool + @ivar passSpecular: Deliver Specular pass + @type passShadow: bool + @ivar passShadow: Deliver Shadow pass + @type passAO: bool + @ivar passAO: Deliver AO pass + @type passReflect: bool + @ivar passReflect: Deliver Raytraced Reflection pass + @type passRefract: bool + @ivar passRefract: Deliver Raytraced Reflection pass + @type passRadiosity: bool + @ivar passRadiosity: Deliver Radiosity pass + + + @type passSpecularXOR: bool + @ivar passSpecularXOR: Deliver Specular pass XOR + @type passShadowXOR: bool + @ivar passShadowXOR: Deliver Shadow pass XOR + @type passAOXOR: bool + @ivar passAOXOR: Deliver AO pass XOR + @type passRefractXOR: bool + @ivar passRefractXOR: Deliver Raytraced Reflection pass XOR + @type passRadiosityXOR: bool + @ivar passRadiosityXOR: Deliver Radiosity pass XOR + """ \ No newline at end of file diff --git a/source/blender/python/api2_2x/sceneRender.c b/source/blender/python/api2_2x/sceneRender.c index ea74b72b9ef..4e1051176fd 100644 --- a/source/blender/python/api2_2x/sceneRender.c +++ b/source/blender/python/api2_2x/sceneRender.c @@ -3589,7 +3589,7 @@ static PyGetSetDef BPy_RenderLayer_getseters[] = { (getter)RenderLayer_getPassBits, (setter)RenderLayer_setPassBits, "Deliver Raytraced Reflection pass", (void *)SCE_PASS_REFRACT}, - {"passRadiosiy", + {"passRadiosity", (getter)RenderLayer_getPassBits, (setter)RenderLayer_setPassBits, "Deliver Radiosity pass", (void *)SCE_PASS_RADIO}, @@ -3611,7 +3611,7 @@ static PyGetSetDef BPy_RenderLayer_getseters[] = { (getter)RenderLayer_getPassXorBits, (setter)RenderLayer_setPassXorBits, "Deliver Raytraced Reflection pass XOR", (void *)SCE_PASS_REFRACT}, - {"passRadiosiyXOR", + {"passRadiosityXOR", (getter)RenderLayer_getPassXorBits, (setter)RenderLayer_setPassXorBits, "Deliver Radiosity pass XOR", (void *)SCE_PASS_RADIO},