Commit Graph

302 Commits

Author SHA1 Message Date
b8e47fd160 Bugfix #25301
Preview render for node shaders broke, caused by localizing 
materials last week, to prevent thread crashes. Fixed now.
Also added a temp fix to draw color-management corrected
node previews default. Will follow scene setting tomorrow.

Also: SSS in nodes doesn't render yet. Was issue in 2.4 too...
2010-12-19 20:12:12 +00:00
b58dbbd51b Extreme makeover of pointcache code:
* Pointcache code was quite ugly looking and complicated, so here are mostly just cosmetic adjustments, but some improved logic also.
* Slight cleanup of pointcache ui too.
* Shouldn't have any functional changes what so ever, so poke me right away if something seems off.
2010-12-18 15:03:31 +00:00
f53e8b78b4 Bug fix:
When compositing without render (Enable composite, no renderlayer nodes)
the option Full Sample AA caused havoc. Added warning for this case
and gracefully stop render.
2010-12-17 15:24:03 +00:00
4e26b4ec38 Bugfix #22794
Panorama render is now border-render safe.
2010-12-16 12:49:48 +00:00
0400745c0a Fix part of #25040: rendering multiple scenes from compositing nodes didn't
restore current scene properly afterwards.
2010-12-05 10:14:34 +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
a0517e6338 == Sequencer ==
* documented and rewrote the render interface of the sequencer.
  (now, the geometry / render_type / etc. settings are stored within a
  seperate structure called SeqRenderData that is passed within the code.)

* that fixes
  * cache problems, since the caching system didn't keep track of
    proxy files vs. final renders.
  * is a necessary step, to bring back frame blending in speed effect
    (the SeqRenderData structure elements are already there)
  * will make motion blur render options available within the sequencer!

* this patch also fixes:
  * "easy retiming" using speed effects. (in Blender 2.49, you could 
    add a speed effect and resize the source track to retime it to that
    length)
  * adds labels for the Original dimensions for Image + Movie tracks
    (worked in 2.49, too)
2010-11-21 20:00:31 +00:00
51dcbdde03 use 'const char *' by default with RNA functions except when the value is flagged as PROP_THICK_WRAP.
Also use const char in many other parts of blenders code.

Currently this gives warnings for setting operator id, label and description since these are an exception and allocated beforehand.
2010-11-17 09:45:45 +00:00
f791d74f10 writing single images from a render (own commit r33104), wasn't checking if the render was cancelled which would crash when writing the image.
also remove paranoid checks for writing TAGA, Other formats - BMP, JPEG, Iris don't do this.
2010-11-17 04:02:19 +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
718df71864 bugfix [#22794] Inconsistent behaviour with Panorama, border rendering 2010-11-09 01:37:58 +00:00
9e7c968113 Bug fix: Rendering with anti-aliasing disabled and full samples enabled crashed
* Disabling anti-aliasing disables full samples in ui, so do that in render code too.
2010-11-06 21:32:58 +00:00
951882e289 Fix for [#24510] VSE SceneStrip problem when rendering animation 2010-11-04 18:16:34 +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
3a8c37bb24 "Fix" for [#22537] motion blur render result incorrect when full sample anti-aliasing is selected
* FSA and motion blur can't work nicely together the way they're currently implemented, so I disabled this in the ui and code.
* FSA is used if both are selected.
* Also changed the name "Full Sample Motion Blur" to "Sampled Motion Blur" to avoid confusion with full sample anti-aliasing.
2010-11-01 13:51:11 +00:00
06abc862b0 Fix crashing running read full sample layers operator. 2010-10-31 11:51:10 +00:00
7b8db3fab7 [#24414] Render hanging on small render border.
large render sizes could cause an the threaded tile processor to hang because winx * winy wrapped into a negative value.
also convert winx/winy to floats before multiplying for vector passs.
2010-10-27 10:36:22 +00:00
3161622f4c Fix for [#24361] Only first frame is working with glow in Render Animation using Video Editing - Effect - Glow 2010-10-22 22:31:40 +00:00
cfcf82803a Temporary fix for sequencer bugs #22925, #21429, #21783, #24165
* This fix is really only a bandage, as the underlying issue is that sequencer preview render doesn't yet use the job system.
* The sequencer preview can start a full render of the scene, and this can collide with other preview/actual renders in many cases.
* Drawing the sequencer preview is now disabled when an other render is in progress, but the sequence preview rendering could have already been started before the other render, so this doesn't really fix anything.
* For now only OpenGL rendering can be used for the sequencer preview reliably until it's reimplemented using the job system.
* Using the job system in the future can handle the clashes between different renders properly and will give users a nice progress bar to indicate something is happening while the preview is recalculated.
2010-10-21 17:00:38 +00:00
4d37cf90b9 remove G.sce, use G.main->name instead.
Both stored the filename of the blend file, but G.sce stored the last opened file.
This will make blender act differently in some cases since a relative path to the last opened file will no longer resolve (which is correct IMHO since that file isnt open and the path might not even be valid anymore).

Tested linking with durian files and rendering to relative paths when no files is loaded however we may need to have some operators give an error if they are used on the default startup.blend.
2010-10-18 06:41:16 +00:00
30b79ddcc6 - fixed remaining unused warnings.
- omit render code from this warning (cmake only), until render branch is merged.
- moved -Wunused-parameter warning to apply to all C code in blender (not just ./source/blender), (cmake only).
2010-10-17 06:38:56 +00:00
8268a4be71 most unused arg warnings corrected.
- removed deprecated bitmap arg from IMB_allocImBuf (plugins will need updating).
- mostly tagged UNUSED() since some of these functions look like they may need to have the arguments used later.
2010-10-16 14:32:17 +00:00
e5fbd93cec editors/space_* build without unused args warnings 2010-10-16 08:03:28 +00:00
db09ca106d remove/tag unused args for view*.c, gpu*.c & image*.c 2010-10-15 12:29:02 +00:00
77b7ba0bfb fix for dark images from the sequencer when color management is disabled.
the render engine assumes the RenderResult's rectf is not in linear color space when color management is disabled so the sequencer and opengl render need to follow this else it results in dark images.
2010-08-26 09:12:10 +00:00
d1759639dc - remove unused includes IMB_*, BIF_* & MEM_*
- remove MEM_guardedalloc.h from header files (include directly)
2010-08-16 05:46:10 +00:00
0738ae7688 2.5: more removal of G.main. 2010-08-13 14:23:44 +00:00
e81df3a6fa Fix #23238: crash rendering multiple scenes from compositor. 2010-08-12 13:58:10 +00:00
7a55728b40 Fix crash in point cache baking due to my recent changes. 2010-08-04 08:58:38 +00:00
9b006d6d00 Fix preview render crash after recent G.main changes. 2010-08-01 20:36:24 +00:00
f3cca3e192 2.5: more G.main changes. 2010-08-01 12:57:01 +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
65fcb0edcf == Sequencer ==
This patch cleans up the sequencer core by replacing the caching system
(TStripElems) with a hash based system, which is:

a) a lot faster
b) a lot more readable
c) a lot more memory conserving

The new caching system is also a good building ground for

a) sub frame precision rendering (even on scene strips)
b) multi core rendering (threaded rendering is still disabled, but can 
   be extended now to arbitrary core numbers)

I tested the code on an extensive editing session today and had no 
crashes during 4 hours of editing. So I consider it very stable.
2010-07-23 16:57:11 +00:00
c7ce37471d == Sequencer ==
Bugfix: free_imbuf_seq() was closing IMB anim handles on nearly every 
change of RNA variables. This can be *very* slow, if you twiddle with 
parameters during playback. Especially multicam editing...

Now: we close IMB anim handles only on refresh_all() and filepath 
changes.
2010-07-19 20:01:18 +00:00
a3d822f857 Rendering from the sequencer in background mode was printing frame 0 for every frame 2010-07-17 17:36:53 +00:00
c5d6665cb3 fix for rendering sequencer float buffers, need to convert into linear color space for the render buffer. 2010-07-13 19:52:04 +00:00
358738c1aa Fix #22354, #22727, #22501: image window not display correct
renders with compositing and slots.
2010-07-07 14:28:22 +00:00
03fa4bb999 Partial cleanup of timing system, with some guidance from Joshua:
* Fractional frames support has been changed to use a new var, scene->r.subframe. 
This is a 0.0-1.0 float representing a subframe interval, used in generating a final float 
frame number to evaluate animation system etc.
* Changed frame_to_float() and some instances of bsystem_time() into a convenience function:
float BKE_curframe(scene) which retrieves the floating point current frame, after subframe
and frame length corrections.
* Removed blur_offs and field_offs globals. These are now stored in render, used to 
generate a scene->r.subframe before render database processing.
2010-06-27 05:39:55 +00:00
6e92ddf8b3 Progress indicators for threaded jobs
Now, rather than the bit-too-alarming stop sign, threaded wmJobs 
display a progress indicator in the header. This is an optional feature
for each job type and still uses the same hardcoded ui template
(could use further work here...).

Currently implemented for:
Render - parts completed, then nodes comped
Compositor - nodes comped
Fluid Sim - frames simulated
Texture Bake - faces baked

Example: http://mke3.net/blender/devel/2.5/progress.mov
2010-05-27 08:22:16 +00:00
4178b44b35 - correct --help message
- fix implicit decloration of DAG_scene_sort()
- same fix for tiff as made in renderbranch
- rename 'combined peak' --> 'peak' for shorter messages while rendering.
2010-05-24 11:40:45 +00:00
8ab5ae6a78 Exr reading error print has a bit more detail now, to debug problems. 2010-05-07 09:46:54 +00:00
a7cbd5008e merging revisions 28564-28569 from render branch into trunk 2010-05-04 12:31:24 +00:00
23ad9588ad Some fixes from the render branch:
* Take border render into account when drawing grid before for render
  result becomes visible.
* Use antialiasing for rendering icon previews.
* Fix Full Sample not drawing render result while rendering.
* Mesh Deform Modifier: also forgot to commit this file.
2010-04-23 18:02:50 +00:00
a14398c883 Small fix: scene name in render stats string. 2010-04-14 17:15:58 +00:00
7efe41bc22 Fix [#21257] Renders blank images when audio clip is present.
Only render sequencer when there are non-audio strips on the timeline.
2010-04-07 01:21:10 +00:00
9822e07be6 Attempted fixes for render crashes on windows, still can't redo them here
in a virtual machine, maybe that has some different threading behavior.
Also should fix a problem with displaying render passes and multiple slots.
2010-04-01 12:51:24 +00:00
0eaa89971f External render engines now have option bl_postprocess to determine
if compositing, sequencer, fields, etc should be rendered, or if the
render does that itself. The weak point is that this only applies to
rendering, so if you open the compositor, it will still run on the
rendered result. Enabled by default, set to False to disable.
2010-03-28 14:45:09 +00:00
7aab31430f External render engines can now render previews as well, disabled by
default, set RenderEngine property bl_preview = True to enable it.
2010-03-28 13:48:11 +00:00
57101c4fd2 Second attempt at committing the different render slot implementation. This
has a fix that hopefully solves the problem on mac/win. Also fixes #21322,
render slots not working well with FSA.
2010-03-27 15:35:34 +00:00