icon is set'
* Main problem was calling BKE_icon_changed too much, blocked previews
from updating
* Also fixed clearing the icon when it's not a valid image path
Review link: http://codereview.appspot.com/4356045/
- the frame from the current scene wasn't used - whereas with rendering it is, set the current frame as is done when node rendering.
- camera switching also failed, added a call to it.
- Assigning local materials to library objects disabled
(crashes on undo/redo cases)
- Disabling options in Material buttons to add/remove slots
on library data
- Drawing Object ID template in Object properties, this
allows browse active Object, but especially shows library
status then.
Problems was in 0-based numbering vs. 1-based. Fonts are getting converted to
displists when they're displaying and here base conversion happens, so no need
in conversion when assigning material to selected text.
This makes indices more inconsistant, but saves compatibility in both of
directions. Maybe in further releases we'll make indices consistent.
Texture preview render now doesn't increment/decrement material->texture
user counts anymore. Blenders library.c code could use some overhaul
once to support data relinkage and copying around better. :)
was not recursively restoring sound strips on paste.
also found many duplicate functions were defining the transform mode as in int but getting as an enum, use enum for both now.
Conflicts resolved:
source/blender/makesrna/RNA_enum_types.h
According to the changes in revision 35667, the Freestyle-related code
in release/scripts/ui/ was moved to release/scripts/startup/bl_ui/.
The purpose was to set a wait-cursor draw on 3d windows. I tried for
but it keeps failing... inside threads you can't do UI stuff. Needs
further thinking, probably something via jobs system.
When rendering, during processing scene data, drawing in 3d window
is now locked. Can get extended to more areas in UI easily.
At least this solves all crashes with conflicting memory access in
render && 3d drawing. Deleting objects via operators or delete
modifiers isn't locked yet.
Also fixed: crash on quitting a renderwindow when it was rendering.
Pressing ESC on material icon preview changes made it stop updating
the icons. Was caused by default 'break' callback testing ESC and
not resetting it. Now it uses same break callback as other previews.
we cant ensure that a requested buffer can be allocated so report opengl errors when failing to allocate the buffer (rather then printing to console).
this is common enough and generic error isn't too helpful to users.
- "need exec" flag was cleared in wrong tree for preview renders
(it should clear it in the copy, i did in original).
This fixes projection paint on images with previews open
- Previews for nodes were copied always, now only for previews
invoked by node editor itself.
Two bugs in one:
- Lukas commit monday for new group/socket handling accidentally removed
to set socketype in stacks, which as used by (texture) nodes to detect
whether value, color or vector had to be read.
Result was that all texture nodes were rendering as B&W
- Old 2.5 bug: preview renders for texture nodes didn't call a
NodeEndExec function, which gave crashes on deleting nodes.
The change in interface_hanlers.c is only a comment to explain
how keymaps are being found.
Having 2 or more windows open, a render in another window made the
other (active) window fail badly on F11 key (show render).
Now things should go smoothly. If a render is being shown in
inactive windows, they get popped to the front nicely.
CMake build option WITH_PYTHON_MODULE, will build ./bin/bpy.so
This allows 'bpy' to be imported from python or other applications/IDE's which embed python, eg:
python -c "import bpy ; bpy.ops.render.render(write_still=True)"
This runs in background mode and has similar restrictions to running a script:
blender --background --python test.py
TODO:
- install to site-packages with blender scripts
- add support for imp.reload()
New render output option "No Output", which renders without
forcing an editor to show an image. Nice for people who
prefer to setup composites with background image view.
When using masks or other simple 3D elements in composites, doing
a layer re-rendering on a node is a bit clumsy all the time.
This commit does two things to help:
- new hotkey "Z" in node editor automatically finds render layer
that changed and re-renders it + composites
- option "Auto Render" does same, but then after every transform
edit in 3D window
The latter is experimental; real & proper system for this requires
full threaded render support (like previews). But it works!
Demo file:
http://download.blender.org/demo/test/auto_composite.blend
Important fix:
After any render, all the render layers were tagged "changed", which
caused any edit to first totally recomposte everthing. Now it only
composites changes.
Implementation notes
- DAG scene flush now sets 'changed' flags in render layer nodes
- Added notifier for 'transform finished' to trigger the update,
this is temporarily.