Commit Graph

1560 Commits

Author SHA1 Message Date
Tamito Kajiyama
f4e9c5d71e Merged changes in the trunk up to revision 27817. 2010-03-28 22:45:14 +00:00
Tamito Kajiyama
840ba8e8e7 Fixed the full sample anti-aliasing support in Freestyle.
The render pipeline has been extended to better work with
Freestyle stroke rendering.  Struct Render has a new member
ListBase freestyle_renders to keep Render instances generated
through stroke rendering in Freestyle.  The number of
elements (LinkData instances with LinkData::data pointing to a
Render instance) in freestyle_renders is the same as the scene
render layers of the scene being rendered.  When the k-th scene
render layer has the Freestyle option enabled, the k-th element
of freestyle_renders refers to a Render instance that holds
Freestyle render results for the scene layer.  This association
between the scene render layer and the Render instance is used to
merge the Freestyle render results into the corresponding render
results for the scene render layer.
2010-03-28 17:46:10 +00:00
Brecht Van Lommel
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
Brecht Van Lommel
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
Brecht Van Lommel
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
Tamito Kajiyama
009d7819c1 Merged changes in the trunk up to revision 27779. 2010-03-26 20:18:39 +00:00
Brecht Van Lommel
05b1f00858 fix rendering another scene from the compositor not working.
(commit 27745 by Brecht from render25 branch)
2010-03-26 10:41:48 +00:00
Matt Ebb
fda6082c68 Fix for ben dansie, incorrect gamma with render baking.
Linear/gamma issues weren't really considered in baking yet.
2010-03-26 01:31:43 +00:00
Tamito Kajiyama
048f357f41 Merged changes in the trunk up to revision 27752. 2010-03-25 21:40:08 +00:00
Campbell Barton
1e9bf0cfdb spaces -> tabs, (4 spaces == 1 tab, only for white space preceding text) 2010-03-22 09:30:00 +00:00
Tamito Kajiyama
29adfa7d64 Merged changes in the trunk up to revision 27647. 2010-03-21 19:55:51 +00:00
Guillermo S. Romero
42ac4a3e7d Fix syntax for ID keyword. 2010-03-21 01:14:04 +00:00
Brecht Van Lommel
2b34078fb2 the string 'Environment' is too long for a pass name, was causing crashes in FSA. use Env instead.
(commit 27536 by Campbell from render25 branch)
2010-03-16 18:00:45 +00:00
Brecht Van Lommel
243314ac19 implify skipping quad->tri was being done even when the main simplify option was disabled.
(commit 27512 by Campbell from render25 branch)
2010-03-16 17:58:13 +00:00
Brecht Van Lommel
f17dcf58c8 Fixes for thread related render / compositing crashes:
* Viewer node could free image while it is being redrawn, viewer image
  buffers now need acquire/release to be accessed as was already the
  case for render results.
* The Composite node could free the image buffers outside of a lock,
  also causing simultaneous redraw to crash.
* Especially on Windows, re-rendering could crash when drawing an image
  that was freed. When RE_RenderInProgress was true it would access the
  image buffer and simply return it while it could still contain a pointer
  to a render result buffer that was already freed. I don't understand
  why this case was there in the first place, so I've removed it.

Possibly fixes bugs #20174, #21418, #21391, #21394.
2010-03-16 16:58:45 +00:00
Brecht Van Lommel
ed076d74ef Rendering from 3d view in local view or with unlocked layer was not
working yet, now layer is passed along to render engine, changes quite
a few files because simple swapping trick no longer works with threading.
2010-03-14 20:24:11 +00:00
Brecht Van Lommel
7ecba90f65 Remove SAT texture filter. It's not working, thought it was but that's
because the mipmap was not being refreshed. Also this will be problematic
to support when I add tile/mipmap cache, so would not rather not try to.
Can be added back afterwards if someone wants to make it work.
2010-03-14 18:22:04 +00:00
Brecht Van Lommel
b2fba2eebe Fix #21171: ztransp render aliasing problem. 2010-03-14 14:26:46 +00:00
Brecht Van Lommel
00d1e56f3d Fix for warning introduced in passes commit, also removed some more
radiosity code.
2010-03-12 13:19:32 +00:00
Brecht Van Lommel
353a078d4c Fix #21211: new indirect/environment/emit passes weren't showing up
in compositor and outliner yet.
2010-03-12 12:29:12 +00:00
Matt Ebb
86c237b3a5 Added ability to save and load planar environment maps, rather than only cube. 2010-03-12 02:44:18 +00:00
Tamito Kajiyama
8521442257 Merged changes in the trunk up to revision 27420. 2010-03-11 20:04:25 +00:00
Matt Ebb
69a7060678 Restored Environment maps
* Fixed up RNA and UI
* Brought back 'Save' and 'Clear' operators (in the little triangle menu in 
environment map properties)
* While I was at it, noticed that environment maps were only using 8bit 
colour, changed it to use full 32bit float instead for proper HDR colour etc,
so environment map reflections have the correct colour range
--> http://mke3.net/blender/devel/2.5/env_hdr.jpg

This fixes [#20904] Environment Map does not render; also missing panel
2010-03-11 07:43:49 +00:00
Campbell Barton
1708ac0723 rename some functions to use easier to understand names.
'BLI_makestringcode' --> 'BLI_path_rel'
'BLI_convertstringcwd' --> 'BLI_path_cwd'
'BLI_convertstringframe' --> 'BLI_path_frame'
'BLI_convertstringframe_range' --> 'BLI_path_frame_range'
'BLI_make_cwdpath' --> 'BLI_path_cwd'
2010-03-09 17:36:23 +00:00
Brecht Van Lommel
69a486e038 Fix render baking crashing on windows/mac. Problem was increased
max number of threads caused Blender to run out of stack space,
now just does dynamic allocation.
2010-03-09 16:34:28 +00:00
Campbell Barton
d4756d395b remove for bad-level-call & some minor changes to make camera switching neater. 2010-03-09 07:41:04 +00:00
Sergey Sharybin
838842581c - Fixed trouble with rendering curves with disabled modifiers, which are
disabled for realtime displaying but enabled for rendering.
- Calculate tex space for curves before modifiers applying.
2010-03-08 13:49:13 +00:00
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
Tamito Kajiyama
6f4ff64570 Merged changes in the trunk up to revision 27226 (Blender 2.5 alpha 2 release point). 2010-03-02 21:57:16 +00:00
Tamito Kajiyama
6a681bca45 Made an attempt for fixing an instability issue regarding animation
rendering.

RE_BlenderFrame() and RE_BlenderAnim() are Blender's internal
top-level rendering API functions for a single frame and a series of
frames, respectively.  These functions rely on global variables to
keep render pipeline states.  Freestyle's stroke rendering was also
using RE_BlenderFrame to render a temporary scene of stroke meshes.
These nested calls of the top-level rendering API functions were
causing broken render pipeline states and eventually led to a crash.

This commit is intended to fix the issue, by introducing an rendering
API function RE_RenderFreestyleStrokes specifically used for stroke
rendering in Freestyle.  The new function does not do anything with
regard to the global variables in the rendering API implementation.
2010-03-01 21:51:14 +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
Tamito Kajiyama
b21a994076 Merged changes in the trunk up to revision 27178. 2010-02-28 03:44:15 +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
Tamito Kajiyama
709678ca87 Merged changes in the trunk up to revision 26976. 2010-02-16 22:34:43 +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
Tamito Kajiyama
ca908e21e2 Added support for transparent stroke colors (again).
Transparent strokes are rendered by means of transparent vertex colors.
To make this possible, Blender's internal renderer has been slightly
extended to allow transparent vertex colors.  When Material::vcol_alpha
is non-zero, the renderer takes MCol::a into account.
2010-02-16 02:10:27 +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
Tamito Kajiyama
f022cc4f90 Added changes for escaping from rendering by pressing the ESC key.
ESC key press checks are performed 1) before entering Freestyle, and
2) after the completion of the view map creation.
2010-02-13 11:37:34 +00:00
Tamito Kajiyama
135a944c66 Merged changes in the trunk up to revision 26856. 2010-02-13 01:13:16 +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