Blender Git Commit Log

Git Commits -> Revision 3ce1dc9

Revision 3ce1dc9 by Ton Roosendaal (master)
December 29, 2003, 16:52 (GMT)
Area lights and more...

- New lamp type added "Area". This uses the radiosity formula (Stoke) to
calculate the amount of energy which is received from a plane. Result
is very nice local light, which nicely spreads out.
- Area lamps have a 'gamma' option to control the light spread
- Area lamp builtin sizes: square, rect, cube & box. Only first 2 are
implemented. Set a type, and define area size
- Button area size won't affect the amount of energy. But scaling the lamp
in 3d window will do. This is to cover the case when you scale an entire
scene, the light then will remain identical
If you just want to change area lamp size, use buttons when you dont want
to make the scene too bright or too dark
- Since area lights realistically are sensitive for distance (quadratic), the
effect it has is quickly too much, or too less. For this the "Dist" value
in Lamp can be used. Set it at Dist=10 to have reasonable light on distance
10 Blender units (assumed you didnt scale lamp object).
- I tried square sized specularity, but this looked totally weird. Not
committed
- Plan is to extend area light with 3d dimensions, boxes and cubes.
- Note that area light is one-sided, towards negative Z. I need to design
a nice drawing method for it.

Area Shadow

- Since there are a lot of variables associated with soft shadow, they now
only are available for Area lights. Allowing spot & normal lamp to have
soft shadow is possible though, but will require a reorganisation of the
Lamp buttons. Is a point of research & feedback still.
- Apart from area size, you now can individually set amount of samples in
X and Y direction (for area lamp type 'Rect'). For box type area lamp,
this will become 3 dimensions
- Area shadows have four options:
"Clip circle" : only uses a circular shape of samples, gives smoother
results
"Dither" : use a 2x2 dither mask
"Jitter" : applys a pseudo-random offset to samples
"Umbra" : extra emphasis on area that's fully in shadow.

Raytrace speedup

- improved filling in faces in Octree. Large faces occupied too many nodes
- added a coherence check; rays fired sequentially that begin and end in
same octree nodes, and that don't intersect, are quickly rejected
- rendering shadow scenes benefits from this 20-40%. My statue test monkey
file now renders in 19 seconds (was 30).

Plus:

- adjusted specular max to 511, and made sure Blinn spec has again this
incredible small spec size
- for UI rounded theme: the color "button" displayed RGB color too dark
- fixed countall() function, to also include Subsurf totals
- removed setting the 'near' clipping for pressing dot-key numpad
- when you press the buttons-window icon for 'Shading Context' the context
automaticilly switches as with F5 hotkey

Please be warned that this is not a release... settings in files might not
work as it did, nor guaranteed to work when we do a release. :)

Commit Details:

Full Hash: 3ce1dc90656241420303ff08865ea79a98248c18
SVN Revision: 1772
Parent Commit: 65aeef1
Lines Changed: +504, -227

19 Modified Paths:

/source/blender/blenkernel/intern/object.c (+13, -11) (Diff)
/source/blender/blenloader/intern/readfile.c (+13, -0) (Diff)
/source/blender/include/blendef.h (+2, -1) (Diff)
/source/blender/include/butspace.h (+1, -0) (Diff)
/source/blender/include/interface.h (+1, -2) (Diff)
/source/blender/makesdna/DNA_lamp_types.h (+16, -3) (Diff)
/source/blender/render/extern/include/render_types.h (+8, -8) (Diff)
/source/blender/render/intern/source/ray.c (+145, -106) (Diff)
/source/blender/render/intern/source/rendercore.c (+91, -10) (Diff)
/source/blender/renderconverter/intern/convertBlenderScene.c (+71, -6) (Diff)
/source/blender/src/butspace.c (+30, -24) (Diff)
/source/blender/src/buttons_scene.c (+2, -2) (Diff)
/source/blender/src/buttons_shading.c (+82, -39) (Diff)
/source/blender/src/drawobject.c (+9, -1) (Diff)
/source/blender/src/edit.c (+5, -4) (Diff)
/source/blender/src/header_buttonswin.c (+9, -5) (Diff)
/source/blender/src/interface_draw.c (+1, -0) (Diff)
/source/blender/src/previewrender.c (+4, -4) (Diff)
/source/blender/src/view.c (+1, -1) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021