Commit Graph

73 Commits

Author SHA1 Message Date
ea13ec1699 Spelling Cleanup 2012-03-01 12:20:18 +00:00
f66f33cefc rename RNA_property_is_set() --> RNA_struct_property_is_set() in preperation to add a second version of the function which takes the property rather then its name. 2012-01-11 16:32:12 +00:00
d7d856a23d Color management: add "Color Unpremultiply" option for images and render settings.
For premultiplied alpha images, this makes any color space conversion for the image
or render output work on color without alpha multiplied in.

This is typically useful to avoid fringing when the image was or will be composited
over a light background. If the image will be composited over a black background on
the other hand, leaving this option off will give correct results.

In an ideal world, there should never be any color space conversion on images with
alpha, since it's undefined what to do then, but in practice it's useful to have
this option.

Patch by Troy Sobotka, with changes by me.
2011-12-30 14:17:11 +00:00
b9ff5840a6 Code refactoring: add unified image buffer functions for doing float => byte,
byte => float, float => float, byte => byte conversions with profile, dither
and predivide. Previously code for this was spread out too much.

There should be no functional changes, this is so the predivide/table/dither
patches can work correctly.
2011-12-28 13:29:33 +00:00
11bacd403f Fix #29523: RenderEngine.update_progress() doesn't redraw UI. 2011-12-07 11:29:24 +00:00
0e2c8cdcdd move image settings into their own structure so the interface can be shared where image saving settings are needed.
currently file out node and render output share this struct & UI.
2011-11-21 20:19:58 +00:00
c4e029a274 Fix #29287: cycles and other external render engines did not print correct frame
number in background render.
2011-11-16 12:47:37 +00:00
224c26f891 Fix #28998: sequence rendering with wrong progress bar
Show overall progress when doing sequence rendering. Nice for cases when
you're using sequencer to combine video strips only, without rendering
scenes and so. If scene strips are used in sequencer, per-frame rendering
would be used (because of scene rendering sets per-frame progress).
2011-11-03 17:06:12 +00:00
d55298ee3c Fix #29109: bpy.ops.render.render() with scene parameter missed compositing,
previous bugfix needed a bit more refining.
2011-11-01 14:51:44 +00:00
4a04f72069 remove $Id: tags after discussion on the mailign list: http://markmail.org/message/fp7ozcywxum3ar7n 2011-10-23 17:52:20 +00:00
Lukas Toenne
0d7bd0f9b6 Adds an update flag to the bNode struct (similar to bNodeTree->update).
This prevents access to non-existent typeinfo during type initialization,
when node types have been removed and such nodes are deleted from older files.
All blenkernel functions now only set the node->update flag instead of directly
calling the update function.  All operators, etc. calling blenkernel functions
to modify nodes should make a ntreeUpdate call afterward (they already did that
anyway).

Editor/RNA/renderer/etc. high-level functions still can do immediate updates by
using nodeUpdate and nodeUpdateID (replacing NodeTagChanged/NodeTagIDChanged
respectively). These old functions were previously used only for setting
compositor node needexec flags and clearing cached data, but have become generic
update functions that require type-specific functionality (i.e. a valid typeinfo
struct).
2011-10-19 17:08:35 +00:00
f157a543c6 /blender/editors: Removed final points in UI strings and messages.
Plus a few cuts in very long lines…
2011-09-19 12:26:20 +00:00
8ddd2db648 RenderEngine API: add self.report() error reporting function for render engines,
works the same as for operators. Also includes some refactoring of render error
reporting code to use ReportList.
2011-06-28 16:25:07 +00:00
f6de4fecfa Bugfix #27519
Full Sample AA (FSA) was failing in cases. Bug report was an empty
scene (with compo nodes) linking in another .blend scene (with render).

That case gave warning "FSA not supported with rendering". That now is
allowed.

Then I noticed FSA was giving corrupt sample buffers or crashes in cases, 
especially on first buffer, this appeared to be a missing compo tag on 
first sample buffer.

Lastly, to make FSA render a tiny bit less frustrating: added render window
statistic to show which of the FSA steps is being done.
2011-06-12 13:35:17 +00:00
54b97c1d9d Code refactor: split code for render updates and opening render view into
separate files, no functional changes.
2011-05-19 11:34:11 +00:00
b5c2598a6b use UNUSED in some more function args, no functional changes. 2011-05-04 04:00:53 +00:00
abcdf9573a add back support for rendering local view camera. 2011-04-30 04:29:36 +00:00
5b920bc2ff Some strings to store ID names were too small, could cause stack corruption.
corrected these and replaced 'sizeof(((ID *)NULL)->name)-2' with 'MAX_ID_NAME-2'.
2011-04-19 06:59:49 +00:00
6a91cf9adb noticed a problem with rendering non-active scenes in the node editor.
- 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.
2011-04-19 06:37:29 +00:00
6bdb5e75ce fix [#27015] RNA Bug: Unpacking sounds with a long ID name fails: sound ID length wrong?!
also fix for OBJECT_OT_proxy_make and RENDER_OT_render using incorrect lengths for ID names.
2011-04-18 15:20:19 +00:00
6d3546069c fix [#26713] Video Sequencer: Audio mute after making meta strip copy/paste
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.
2011-04-01 08:51:12 +00:00
9b9c4184c8 misc nodes & editors: floats were being implicitly promoted to doubles, adjust to use floats.
+ minor update to demo_mode
2011-03-28 17:08:33 +00:00
6bc3b99016 Forgot to add to log of previous commit:
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.
2011-03-25 17:16:22 +00:00
11920f7880 Bugfix #26195
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.
2011-03-25 17:11:32 +00:00
Nathan Letwory
95100afc12 doxygen: blender/editors tagged. 2011-02-27 20:29:51 +00:00
962a4386bc Bugfix #26188
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.
2011-02-23 15:52:05 +00:00
Nathan Letwory
5b607701a7 doxygen: prevent GPL license block from being parsed as doxygen comment. 2011-02-23 10:52:22 +00:00
c30149991c Experimental option to build blender as a python module, rather then blender embedding python.
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()
2011-02-20 23:39:29 +00:00
e3cc8f00cc From the todo:
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.
2011-02-19 16:55:01 +00:00
c8be8a7c6d Bugfix 25965
New "auto render" now prevents calling anim-updates, that's
not needed (and popped back transformed keyed objects).
2011-02-07 18:09:27 +00:00
5c421c328e Todo/feature request
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.
2011-02-07 16:41:57 +00:00
8f21a43535 split BKE_utildefines.h, now it only has blender specific defines like GS() MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h.
no functional changes.
2011-01-07 18:36:47 +00:00
490c0758cb Bugfix #25357
Having 2 windows open, rendering to image editor, activate other
window and press F11 -> UI went haywire. Simple fix prevents
render output to be closed in this case.
2010-12-24 13:24:26 +00:00
7bca6bcf1f Bugfix #25259
Compositor: using the icon "render only this layer" now shows
progress in header, allows it to stop, and signals composite in
end.
2010-12-17 17:06:36 +00:00
d2f84e0f79 Bugfix #25191
F11 pushed a render window to back, but not popped it.
This also works for user prefs btw, not bad ;)
2010-12-13 17:40:06 +00:00
263830f000 Enabled GCC -Wwrite-strings warning for CMake and replaced many 'char's for 'const char's,.
Only one functional change where Transform orientations passed "" to BIF_createTransformOrientation() which could then have the value written into.
2010-12-03 17:05:21 +00:00
fd3c8214d0 Bug fix:
When 2nd window open, the code that tried to find an Image editor in the
the active window failed.
2010-11-18 08:44:50 +00:00
e60393b8a8 option to immediately write single render to a file added for OpenGL render. 2010-11-16 15:15:20 +00:00
1e245cc589 option to write images to a files on single frame renders, this isn't accessed by the UI at the moment, but could eventually be used for saving test-renders.
The main reason to have this is so renders can be scripted to write to a specific file without having to do annoying tricks like set a dummy start/end frame range, render an animation and work out the current frame image will be written to, then rename after rendering.

Also made some 'char *' args into 'const char *'
2010-11-16 14:40:46 +00:00
4c12298832 Bugfix #20812 (and probably others)
Issue: in user preferences window, using file selecting caused the
the userpref window to be saved, and not closing.

Reason: design error (by me) in using screen->full tag for denoting
a temporarily screen (like file window). Fixed by using a new 
screen->temp variable for it.

System remained unstable though, noticed another issue with freeing
temp screens in wrong places. Seems nice stable now! Will check on
the wiki for relarted issues now.
2010-11-09 14:54:59 +00:00
8d38358f4b Fix for [#24569] F11 no longer functional after image save
* Same fix was already in ED_area_prevspace().
2010-11-06 22:37:29 +00:00
b350954501 [#23095] If no camera is present, a render starts but does nothing, and we have no "No camera" warning
Improve camera checking and move it before starting render jobs
2010-11-03 13:10:09 +00:00
1f2469d992 bugfix [#24508] Render and changing scenes crashes.
The scenes 'Render' is kept by blender while blender runs but the callbacks were not cleared when the render was done.
In this case the callback would reference a freed render job.

This isn't normally a problem because on re-rendering new callbacks are set, however the sequencer can render a previously rendered scene without setting up callbacks.
Simple fix is to to dummy callbacks applied onto the scenes 'Render' struct once its finished.
2010-11-03 11:14:02 +00:00
f130d4c0a7 bugfix [#24455] Scene is left at last rendered frame from rendering an animation 2010-11-02 09:34:32 +00:00
106867910e use unsigned int for all layers. 2010-10-19 01:21:22 +00:00
f81248265d tag UNUSED() for operator exec() and invoke() functions. 2010-10-15 01:36:14 +00:00
ab56b4b5b9 2.5: rendering thread-safety experiment, when setting G.rt to 101, it will
render from a Main database created from the undo buffer. That means extra
memory usage and processing needed, but gives no interference with other
data.

Still won't work entirely since there are a few things that don't get
flushed always (editmode, sculpt, ..) and some places that use globals.
2010-08-13 14:29:56 +00:00
a773d8836f Bugfix: [#23149] Showing cache instead of rendering with the VSE 2010-08-08 16:47:58 +00:00
8c455e1da8 remove unused includes 2010-08-08 08:33:47 +00:00
5fa7d1c1b4 2.5: code changes to reduce the usage of G.main and pass it along
or get it from the context instead.
2010-08-01 12:47:49 +00:00