Commit Graph

3153 Commits

Author SHA1 Message Date
Peter Schlaile
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
Campbell Barton
cd2ab75b73 - include pthreads for win32 globally (as with opengl).
- MSVC CFLAGS were being set by only checking WIN32, (breaking non-msvc win32 builds)
2010-11-21 09:10:50 +00:00
Janne Karhu
257a2553c0 Fix for [#23696] Receive Transparent produces shadows in diffuse pass
* Even Ton couldn't remember why that code was there, so problem solved by removing the code :)
2010-11-19 15:17:33 +00:00
Campbell Barton
7358a95c8a bugfix [#24807] nan pixel on Word BG with Angular Map coord texture
also avoid divide by zero with an empty raytree
2010-11-19 10:24:14 +00:00
Campbell Barton
a3773b6ec5 bugfix [#24783] Strange shadows on beveled curve; goes away with modifier
this bug wasnt in 2.4x, suspect this happened when normal flipping was removed.
2010-11-18 05:35:04 +00:00
Campbell Barton
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
Campbell Barton
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
Tamito Kajiyama
09ba291c55 Merged changes in the trunk up to revision 33112. 2010-11-17 00:58:03 +00:00
Ton Roosendaal
fe2df7849e Bugfix #23677
Very old bug: Material/Render: the "filter" option for transparent
absorption also works for alpha==0, but in that case another part
of render code just didn't add the faces in render list.
2010-11-16 17:10:39 +00:00
Campbell Barton
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
Ton Roosendaal
2153c663be Bug #22585
Using texture nodes for displacement crashes, a conflict between using
nodes in render and for displacement at same time. Code simply disables
texture nodes for displacement for now, until we have better handling for it.
(on our long todo)
2010-11-16 13:41:39 +00:00
Campbell Barton
91d544f322 fix for very old crash when setting an empty object as the camera and using stars. 2010-11-15 09:00:09 +00:00
Janne Karhu
1659e3fca7 Bug fix: memoryleak when using smoke heat/velocity data as texture
* In addition to fixing the memleak it's much better to always copy the voxeldata to the texture. Smoke data can change at any time due to some changes, so we can't depend on that data.
* Thanks to MiikaH for finding this!
2010-11-11 17:03:09 +00:00
Ton Roosendaal
4d9684ebdf Bugfix #20027
Texture Nodes didn't work for normal output anymore anymore.
It was caused by new handling of bump code using derivatives,
but that's not how texture nodes work now. In case a texture
has nodes, it uses the old (2.4) method.
2010-11-11 16:50:04 +00:00
Campbell Barton
718df71864 bugfix [#22794] Inconsistent behaviour with Panorama, border rendering 2010-11-09 01:37:58 +00:00
Janne Karhu
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
Tamito Kajiyama
43f4dbceb4 Merged changes in the trunk up to revision 32886. 2010-11-05 21:49:36 +00:00
Janne Karhu
951882e289 Fix for [#24510] VSE SceneStrip problem when rendering animation 2010-11-04 18:16:34 +00:00
Brecht Van Lommel
e8f08c612b Fix #24523: deep shadows are rendered although object's shadow casting is disabled. 2010-11-04 11:41:05 +00:00
Sergey Sharybin
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
Campbell Barton
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
Campbell Barton
fe8d5b81b0 use c90 compatible static initializers. 2010-11-03 06:31:53 +00:00
Janne Karhu
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
Campbell Barton
3367ef8b65 initialize structs to zero rather then using memset(). 2010-10-31 15:39:37 +00:00
Brecht Van Lommel
06abc862b0 Fix crashing running read full sample layers operator. 2010-10-31 11:51:10 +00:00
Campbell Barton
2777ba74b0 remove include paths which dont exist, fix for doc upload script which was getting the blender version twice and not working sometimes. 2010-10-27 13:52:12 +00:00
Campbell Barton
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
Matt Ebb
27b527c164 Fix [#23972] 2.54 beta crashes when rendering scene with many volume objects
Sticky-taped on more hacks to the already crumbling shading system.
2010-10-27 02:18:24 +00:00
Tamito Kajiyama
3b2515ba0e Merged changes in the trunk up to revision 32684. 2010-10-24 13:05:09 +00:00
Campbell Barton
c7ff23cc34 Added CMake macro REMOVE_STRICT_FLAGS(), this means developers can build with -Werror in their CMAKE_C_FLAGS_DEBUG (so all warnings give errors).
but external libs which we don't maintain & generated code will have -Werror removed.

This is GCC only, MSVC can be added easily.
2010-10-24 03:57:07 +00:00
Campbell Barton
2d9be2226a warning fixes. 2010-10-23 16:03:31 +00:00
Campbell Barton
c6976e7351 use explicit file paths for CMake rather then globing, This is recommended by cmake devs.
globbing vs explicit is discussed here.
http://www.cmake.org/pipermail/cmake/2008-December/025694.html

Practical implications are:
- developers need to keep CMakeLists.txt files up to date.
- Users wont get strange linking errors if they build after a file is added, since CMake detects CMakeLists.txt is modified and automatically reconfigure.
2010-10-23 04:05:55 +00:00
Janne Karhu
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
Janne Karhu
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
Janne Karhu
94aa87dd62 Fix for [#24293] Shadow pass is wrong
* The problem is that shadow pass is derived from the diffuse pass as
  shad = shad'/diff, where shad' = shad*diff. In cases where diff is
  0 and the division can't be done shad is left as shad' (=0).
* This all works just fine until the diffuse color is 0 on just one
  channel (no red in material color for example). In this case the shadow
  pass is left as 0 too regardless of the existence of an actual shadow,
  so the end result is a colored shadow!
* The only real solution is to use the original shadow intensity to
  determine if there actually is a shadow or not. This is now stored in
  shr->shad[3] from the lamp shadow calculation.

Note: The best solution would probably be to calculate the shadow pass on
it's own and not to derive it from the diffuse pass, but I didn't dare to
start messing up the shading code totally.
2010-10-19 16:10:30 +00:00
Tamito Kajiyama
894daa01be Merged changes in the trunk up to revision 32565. 2010-10-18 20:40:43 +00:00
Campbell Barton
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
Campbell Barton
7d10ad012d fix for bad use of UNUSED() with win32 & some other minor error checks. 2010-10-17 08:59:23 +00:00
Campbell Barton
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
Campbell Barton
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
Campbell Barton
e5fbd93cec editors/space_* build without unused args warnings 2010-10-16 08:03:28 +00:00
Campbell Barton
db09ca106d remove/tag unused args for view*.c, gpu*.c & image*.c 2010-10-15 12:29:02 +00:00
Campbell Barton
fbf208d63f add UNUSED() to modifiers, also removed some unused args. 2010-10-14 06:29:17 +00:00
Campbell Barton
7ef6836be4 bugfix [#24144] Small problem with texture (r32316)
an extra pixel was being drawn on a tiled image texture.
2010-10-12 08:32:53 +00:00
Nathan Letwory
737bc66f2a Add note about Inv Quad falloff of lamp that there seems to be a hack in use. 2010-10-11 09:52:25 +00:00
Tamito Kajiyama
d7cd6e349d Merged changes in the trunk up to revision 32390. 2010-10-09 22:30:01 +00:00
Campbell Barton
8a4fe62843 misc fixes found with clang's static checker. 2010-10-07 10:04:07 +00:00
Campbell Barton
352fbb1549 remove unused vol_get_density() call. 2010-10-06 14:53:13 +00:00
Campbell Barton
61d23ff95b minor edits so traceray() uses less stack memory, also remove memset() usage, initialize as {0}.
no functional change.
2010-10-06 14:47:40 +00:00
Tamito Kajiyama
854ef17700 Merged changes in the trunk up to revision 32271. 2010-10-03 11:33:32 +00:00