it keeps storing a previous buffer for as long you don't render showing
this previous buffer.
If you render showing the previous buffer, it stores the current render.
To make this more clear, the window title shows "previous" when it shows
the stored copy.
Added code to make 'Collapse Edges' handle UV's intelligently. This seems to work in just about every case that I can test, so it's turned on by default.
Also completely removed the 'collapse faces' command and code. I'm not sure what I was thinking with this in the first place since edge collapse does the same job while in in face mode. Because of this there is now just one single command that covers both situations called 'Collapse' which uses the edge collapse code.
to take over now, but I'm available for help. Main notes for completing:
- Yafray module uses old global R all over... is now a pointer handle.
It can be temporally bypassed by straight copying, which I do now.
- I am not sure in what pixel format Yafray renders... Blender now only
uses float buffers. In the code, marked with XXX I've added the
rudimentary code for retrieving buffers.
- This integration will skip compositing when Yafray render is used.
- Shaded drawmode is back (shift+z).
Note it still only uses orco texture; but lighting/shading is using
the internal render module entirely.
- "Make Sticky" option back.
(Also fix in sticky texture render, was wrong scaled)
This commit brings back:
- Field Render
- MBlur Render (old style)
- Border render with or without cropping
Note: Field Render is not supported in Compositor yet. Blurring or filter
will destroy field information.
Both MotionBlur as Field render are done before Compositing happens.
Fixes:
- The "Save Buffers" option only worked on single frame renders, not for
Anim render.
- Found an un-initalized variable in Render initialize... this might have
caused the unknown random crashes with render.
Code restructure:
Cleaned up names and calls throughout the pipeline, more clearly telling
what goes on in functions.
This is visible in the updated first image of the Wiki doc:
http://mediawiki.blender.org/index.php/BlenderDev/RenderPipeline
[ #4228 ] Blender.Image.Load(filename) loads only on the first loading
- Image.Load() will now reload the image buffer when a image of the same name is loaded again
- small textual change in render code
- save_rendered_image_cb_real has a popup window embedded in it that prevents automation through python as a result python scripts would get a popup which is ignorned by the script
- modified so python scripts overwrite the image by default
- added documentation to Render - saveRenderedImage has an option to save the zbuffer along with the image
(off by default)
- fixed a really annoying runtime error of uninitialized data being passed to a method in pipeline.c during a render
Fulfilling a very old feature request: a new Mesh Primitives module is
introduced, which gives script writers access to the Blender mesh datablocks
created from the "Add->Mesh" menu. You can now do this:
from Blender import *
me = Mesh.Primitives.UVsphere(10,20,3) # 10 segments, 20 rings, diameter 3
ob = Object.New('Mesh','mySphere')
ob.link(me)
sc = Scene.GetCurrent()
sc.link(ob)
Using "Fresnel" for transparency only worked when material had "ZTransp"
set. That's not a real problem, but it made Fresnel not work for Materials
used in Nodes.
Now a Fresnel on alpha works always.
"Copy Modifiers" (CTRL+C) only copied a single modifer, when a specific
type was choosen. Now it copies all modifiers with indicated type.
(Like: when you have a X, Y, Z mirror modifier).
Material Nodes: The Texture node didn't do the standard "2d mapping" yet
in case an Image Texture is used. Caused wrong mapping for example for UV
coordinate inputs.
- added a method Action.getFrameNumbers()
returns the frames at which keyframes were inserted for this action
example usage:
import Blender
myobj = Blender.Object.Get('Armature')
myaction = myobj.getAction()
frames = myaction.getFrameNumbers()
for frame in frames:
print 'bones at frame %d' % frame
myobj.evaluatePose(frame)
pose = myobj.getPose()
for bone in pose.bones.values():
print bone.head, bone.tail
only images input in compositor. Currently still renders in the scene's
own resolution. It also doesn't show scanline/tile updates yet while
rendering.