Commit Graph

1529 Commits

Author SHA1 Message Date
Campbell Barton
c50bfd486e fix for using an un-initialized pointer & quiet compiler wanring on raytrace test. 2010-03-06 22:30:09 +00:00
Sergey Sharybin
d0c70ad1d5 Constructive modifiers for curves and surfaces
Used approach with creating DerivedMesh for curves whet they've got such modifiers.

Available modifiers are: array, edge split, mirror, solidify, subsurf.
2010-03-05 16:47:52 +00:00
Campbell Barton
f4298de8aa utility function object_camera_matrix, moved code from RE_SetCamera into this.
use for getting the render matrix of a camera (view plane, winmat, clipstart/end) without rendering.
2010-03-05 14:06:39 +00:00
Campbell Barton
19154014b8 remove viewfac from Render struct, its only used locally 2010-03-05 13:00:48 +00:00
Brecht Van Lommel
1b30b13a4d Fix #21227, #21346 and #21336: image texture wasn't centered correctly
when sculpting and using it from material nodes.
2010-03-01 18:11:09 +00:00
Campbell Barton
9352c9f0c1 use negate_v3 rather then multiplying a vector by -1.0 (no functional changes) 2010-02-26 09:02:52 +00:00
Brecht Van Lommel
494538db13 Fix integer overflow problem in deep shadow buffer. 2010-02-22 15:03:13 +00:00
Brecht Van Lommel
ad01c90ee3 Revert render slots commit for release, I can't find the bug or even redo
it myself, there will still be render slots just old implementation.
2010-02-16 19:24:04 +00:00
Brecht Van Lommel
f809cb6fcb Last minute fixes for render crash. 2010-02-16 18:58:15 +00:00
Brecht Van Lommel
2061f91741 Render Slots: change the implementation by moving it from the render to the
image code, this should be clearer and makes reusing the Render struct later
on easier.
2010-02-16 15:49:22 +00:00
Brecht Van Lommel
bd638da9a0 Texture Nodes:
* Remove the manual OSA method but rather pass on derivatives to the
  textures. This means that at the moment e.g. the bricks node is not
  antialiased, but that image textures are now using mipmaps. Doing
  oversampling on the whole nodetree is convenient but it is really
  the individual textures that can do filtering best and quickest.
* Image textures in a texture node tree were not color corrected and
  did not support 2d mapping, now it's passing along shadeinput to
  make this possible. Would like to avoid this but not sure how.
* Fix preview not filling in all pixels when scaling or rotating in
  the texture nodes.
2010-02-16 15:45:19 +00:00
Brecht Van Lommel
9bd50214d3 Fix artifacts in bump map render with Object coordinates. Float precision
is problematic here with coordinates being transform by matrix and back by
inverse, so tweaked the epsilons to avoid the problem.
2010-02-15 16:45:45 +00:00
Brecht Van Lommel
12cd5617ea Fix very long render time when using a large filter size with the new
image sample code. I've added a dumb clamping now of dxt/dyt, probably
could use a smarter solution but it's not likely to be noticeable.
2010-02-15 08:29:01 +00:00
Brecht Van Lommel
4be8384e27 Fix #20391: onlyshadow material doesn't render transparent shadows.
Fix #21033: AO + onlyshadow problem. Reverting to the old behavior which
I don't really understand, but at least it's compatible.
2010-02-13 13:17:15 +00:00
Campbell Barton
081c1205a3 correct fsf address 2010-02-12 13:34:04 +00:00
Brecht Van Lommel
d98603129c Added an option "Cast Approximate" to control if a material should cast
shadow when using approximate AO, separate from "Traceable".
2010-02-11 15:43:31 +00:00
Campbell Barton
c2b2ccde45 fix for python not being able to call operators with a executuon context. 2010-02-10 11:10:38 +00:00
Brecht Van Lommel
10240261e9 J-key render switching back, now with 10 slots.
Implementation note: this was done by giving each Render a slot number,
and for every slot a new Render will be created. Not sure if this is
ideal, but it ensures that all passes, render info, etc are separate so
you can also compare render layers and passes, in 2.4x only whatever it
was currently displaying was backed up.
2010-02-09 19:37:37 +00:00
Brecht Van Lommel
ce38137449 Shadow Buffers:
* Bugfix, rasterization was shifted half a pixel.
* Remove scaling of bias by render size, there is something to be
  said for doing to compensate for lower shadow buffer xy resolution,
  however the z-resolution does not change and this seems to have a
  larger effect.
* Remove clamping of filter size by soft factor. Now it is clamped to
  1 pixel instead to ensure there is some AA. Why this was done this
  way is not clear to me, however on decreasing shadow buffer resolution
  this would change the softness by increasing the filter size.
2010-02-09 13:58:07 +00:00
Brecht Van Lommel
ec7df03c86 Warning fixes, one actual bug found in sequencer sound wave drawing. Also
changed some malloc to MEM_mallocN while trying to track down a memory leak.
2010-02-08 13:55:31 +00:00
Martin Poirier
5882355a56 Patch by matd (on irc).
Disables save buffers and full sample when render border is turned on (render doesn't work otherwise because save buffers doesn't support border rendering).
2010-02-07 18:06:12 +00:00
Brecht Van Lommel
f9917af00b Fix #20914: non-normalized AO baking was not working anymore. 2010-02-07 15:24:10 +00:00
Brecht Van Lommel
7d2c4384e2 Fix #20147: AO + onlyshadow wasn't being done right, also updated this
code to work with new ao/env separation.
2010-02-07 11:17:19 +00:00
Brecht Van Lommel
65d05fca0d Fix #20488: fields render was crashing. 2010-02-07 10:42:45 +00:00
Brecht Van Lommel
de90619a46 Fix #20452: motion blur buttons were missing. Motion blur samples
are now also decoupled from antialiasing samples. Implemented by
Matt, I'm just committing the patch.
2010-02-06 20:25:17 +00:00
Campbell Barton
1f3e277121 bugfix [#20709] Strange rendering artifacts in raytraced refraction 2010-02-03 13:54:09 +00:00
Campbell Barton
f80617ab37 render simplify option to disable triangulation.
- triangulating non planer quads is needed to resolve some artifacts however this also ends up triangulating most faces in - Suzzane subsurf level 4 for eg.
this check could be tuned for better performance but for now skipping it is useful for test renders.
2010-02-02 15:51:44 +00:00
Tom Musgrove
f2a8bb3498 this restores building on mingw with Collada support, also it restores cross compiling, thanks to Sergey Sharybin for the patch. Note that the icons for linux cross might not be committed here, if not i'll add them in another commit 2010-02-01 18:39:41 +00:00
Brecht Van Lommel
da41eb178b Fix #20830: only rendering Z pass did not give correct Z values. 2010-01-31 23:27:40 +00:00
Matt Ebb
02c6d160d7 Fix [#20901] OPENEXR: Incorrect gamma from colour management
Was working correctly on float render buffers, but not 8bpc render buffers 
(only generated from sequence editor)
2010-01-31 20:53:04 +00:00
Campbell Barton
f749d0361f - hash characters in the path would confuse the output file name and not add numbers to it (when rendering animations).
- added an option to BLI_convertstringframe and BLI_convertstringframe_range to add digits if not found.
- removed BLI_convertstringframe where its obviously not needed - such as loading movies and sounds.
2010-01-30 22:33:47 +00:00
Campbell Barton
3f93d27c4a cmake vars are not using _BF_ in var names. 2010-01-30 19:29:24 +00:00
Damien Plisson
62ebf87d85 OSX : update build scripts for updated openCollada libs + ray tracing optimization option in cmake
OpenCollada new version (721) lib has additional lib files to link with.

Added BF_RAY_OPTIMIZATION option in CMake (as the one in scons) for building SIMD optimized ray tracing code.
2010-01-30 19:07:48 +00:00
Brecht Van Lommel
147e782979 Fix #20662: normal map rendering with negative factor didn't flip
the direction correctly.
2010-01-30 14:41:51 +00:00
Brecht Van Lommel
72cb4548a7 Fix #20223: texture stencil does not work on normal. 2010-01-28 11:40:38 +00:00
Brecht Van Lommel
5445dda295 Ambient Occlusion split up into:
Ambient occlusion: multiplied with direct lighting by default, add
is also still available and more blending methods might be added if
they are useful. This is fundamentally a non physical effect.

Environment lighting: always added as you would expect (though you can
subtract by specifying negative energy). This can be just white or take
colors or textures from the world.

Indirect lighting: only supported for AAO at the moment (and is still
too approximate), and also is always added. A factor is available to
specify how much is added, though value 1.0 is correct.

Also:
* Material ambient value now defaults to 1.0.
* Added Environment, Indirect and Emit pass.
* "Both" blending method is no longer available.
* Attenuation, sampling parameters are still shared, some could be split
  up, though if they are different this would affect performance.
2010-01-27 21:40:08 +00:00
Brecht Van Lommel
f268ab1eba Attempt to fix strand + new bump crash (they can't work together). 2010-01-27 10:30:10 +00:00
Campbell Barton
641774436f am learning bad spelling from blender. grr 2010-01-26 14:00:13 +00:00
Daniel Genrich
83dfade37a Smoke: The well known Miika Hämäläinen (aka MiikaH) patch (http://blenderartists.org/forum/showthread.php?t=158317&page=42)
* Better (and windows enabled) OpenMP handling (> 2x-5x speed)
* More Volumetric Texture mapping options (heat, etc) <-- Matt if that's not to your liking, just revert that part, it's separate anyway
* Initial velocity taken from particle settings (no more slow starting)
* Option to select compression method (there seem to be a bug in my high compression usage, at least it's been reported to result in exploding smoke - better use low compression for the time being)

It's been tested since a while but as usual please report any (new!) bugs. ;-)
2010-01-25 15:10:14 +00:00
Matt Ebb
22ca6f69ca Fix for own bug, voxel data texture was freeing smoke data when it shouldn't
have been.
2010-01-20 09:57:47 +00:00
Campbell Barton
abb5214a8f removed 3D view listener for changing the background image frame.
do this on drawing instead since SCREEN_OT_animation_step isnt calling the notifier (assume this is to be more efficient?). this isnt slow so is ok to do on drawing.

rename BKE_image_user_calc_imanr to BKE_image_user_calc_frame
2010-01-19 14:04:33 +00:00
Matt Ebb
ffd035db62 Fix [#20702] Problems with Colormanagement
Own bug in previous fix here..
2010-01-18 02:10:55 +00:00
Matt Ebb
61d4ff5890 Fix for saved animation image sequence renders being too dark
(caused by my recent color management commit)
2010-01-14 00:03:58 +00:00
Brecht Van Lommel
54bb90bc7e Fix rendering of normal maps, was broken by new bump mapping. 2010-01-13 11:37:08 +00:00
Matt Ebb
0e39609468 Fix [#20557] animated node values haven't effect while render animatión
Was only updating the animation system for the render process - if scene render was skipped
(as is the case for comp trees without renderlayer nodes) then the animation system wouldn't
update.

Added in an update here, Aligorith, maybe you'd like to doublecheck.
2010-01-13 03:21:55 +00:00
Brecht Van Lommel
6a0308aad3 Raytrace: only print debug info when running with -d option. 2010-01-12 19:45:01 +00:00
Campbell Barton
a868e8623c - RNA support for returning copied strings from functions, flagging strings as PROP_THICK_WRAP does this.
- scene.render_data.frame_path(frame=num), returns the output path for rending images of video.
- scene.render_data.file_extension, readonly attribute, gives the extension ".jpg", ".mov" etc
- player support was guessing names, use the above functions to get the actual names used, accounting for #'s replacing numbers.
2010-01-08 13:52:38 +00:00
Martin Poirier
0cc7b5800c Renderer: Change default test_break function to check G.afbreek to work correctly in background mode correctly. 2010-01-06 20:16:01 +00:00
Matt Ebb
06e6011ae9 Restored Compositor 're-render single layer' functionality (buttons on renderlayer comp nodes).
This works with operator properties - if you pass the name of a scene and renderlayer to 
the screen.render operator, it will render that layer as a single layer re-render.
2010-01-06 00:09:07 +00:00
Matt Ebb
f02dde5de7 Patch from Raul Fernandez Hernandez - volume render multiple scattering fixes
Also: Changed 'Spread' value to be proportional to the light cache voxel grid 
(i.e. 0.5 spreads half the width of the grid), so that it's independent of light 
cache resolution. This means that results should be similar as you increase/
decrease resolution.
2010-01-03 23:45:13 +00:00