Commit Graph

3153 Commits

Author SHA1 Message Date
b9fe5399e8 Revert bump mapping patch for now, backwards compatibility is not good enough,
we may need to preserve the previous method.
2011-01-07 16:55:56 +00:00
f01cac08e7 Fix #25078: texture mapping options (e.g. size) not working correctly with bump.
This problem was in both new bump and new new bump. The derivatives used for
bump mapping did not include the mapping, which gave mismatched offset for the
taps, now just do the mapping beforehand.
2011-01-07 15:41:24 +00:00
c8e0ca44a3 Improved bump mapping patch by M.G. Kishalmi (lmg) and M.S. Mikkelsen (sparky).
Many thanks to them!

For comparison, see here:
http://kishalmi.servus.at/3D/bumpcode/

Based on algorithm in: Mikkelsen M. S.: Simulation of Wrinkled Surfaces Revisited.
http://jbit.net/~sparky/sfgrad_bump/mm_sfgrad_bump.pdf

This fixes bugs:
#24591: Artefacts/strange normal mapping when anti-aliasing is on
#24735: Error at the Normal function.
#24962: Normals are not calculated correctly if anti-aliasing is off
#25103: Weird artefacts in Normal

This will break render compatibility a bit, but fixing this bugs would have also
done that, so in this case it should be acceptable.

Patch committed with these modifications:
* Bump method Old/3-Tap/5-Tap option in UI, 3-Tap is default
* Only compute normal perturbation vectors when needed
* Fix some middle of block variable definitions for MSVC
2011-01-07 14:42:01 +00:00
a15189f845 fix for clang static check warnings.
- convertblender.c, remove assignments to unused vars.
- readfile.c, fix 2 possible crashes. null pointers were being checked for then used later without checking.
- space_graph.c, use switch statement for automatic color assignment rather then a float array.
2011-01-06 01:35:07 +00:00
5f64450726 remove assignments which are unused. 2011-01-06 01:29:13 +00:00
26024445ac Fix #23604: external shadows for volume materials don't work 2011-01-05 14:20:48 +00:00
22b97743ef avoid int/float comparisons within a number of for loops in deep shadow map compression.
gives minor overall speedup.
2011-01-03 06:13:50 +00:00
27b0bfef77 fix for possible comparison of un-initialized variable.
vol_get_bounds() only runs when shi->flippednor==0, but is.hit.ob was being checked afterwards irrespective.
2011-01-03 04:46:37 +00:00
ddcb91fc21 Merged changes in the trunk up to revision 34010. 2011-01-02 18:34:32 +00:00
a7ceeafd71 - correct typos in comments.
- move boxpack struct out of the public header.
2011-01-02 11:06:50 +00:00
3c96b00500 Bugreport, IRC
Compositor: "Read & Compo Full Sample Buffers" option stopped after
1 pass; the break callback was returning '1' falsely.

Also made it show "wait cursor" again, since it doesn't run in 
thread nor updates UI while compositing buffers. Check console for
progress for now.
2010-12-28 10:39:27 +00:00
b2be78c0cc Bugfix #25392
Compositor: Texture node didn't use texture-nodes itself.
Now composites initialize texture nodes correctly.

Also reviewed the fix for crashing texture nodes for displace.
It appears texture nodes also are used for sculpt/paint 
brushes, in these cases it can be allowed again. But, don't
do this during rendering for now!
2010-12-27 19:26:38 +00:00
3ead3c4ff3 Merged changes in the trunk up to revision 33894.
A note for branch users: CMake 2.8 on 64-bit Windows Vista raised
an error in line 948 of soc-2008-mxcurioni/CMakeLists.txt due to
an invalid argument for the blender_include_dirs macro:

  blender_include_dirs(${OPENGL_INCLUDE_DIR})

The command above should be:

  blender_include_dirs("${OPENGL_INCLUDE_DIR}")
2010-12-27 01:38:23 +00:00
c4a56fda6d Bugfix #24966
Hair render: using strand "Blender Unit" size didn't correctly
clip for larger/wider strands. Now code clips strands based
on the maximum width.

Also found bad code for using clipping flags, which was mixed up,
and probably caused hair strands to be missing in cases.
2010-12-26 17:47:17 +00:00
5e382eb8e5 rename blenderlib to blender_add_lib 2010-12-22 23:09:30 +00:00
51a7995269 Bugfix, IRC, textures or displacement on metaballs didnt work.
Commit 32361 from Campbell made quite a silly optimize mistake...

ver->orco= orco+=3;

Which is of course not:

ver->orco= orco; orco+=3;

Triple tsk!
2010-12-22 14:43:24 +00:00
6b1258f5b8 Bugfix #25301
Material Node trees:
SSS wasn't displaying in Nodes.

Implementation notes:
- Currently copying local data for preview render, only copies
  the base material. Node materials are re-used.
- This causes data to be in 2 "main" databases... complex.
- To make it work for preview, I had to add another loop in the
  SSS code that checks the original Main dbase. That's marked
  as warning in code to be fixed up.

Another bug:
- Material properties "SSS presets" copied settings to the
  active material, not to the displayed one. Added RNA call 
  to retrieve this from Objects.

(Next commit will fix preset scripts)
2010-12-20 13:02:33 +00:00
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
7507a5f959 Bugfix #25288
SSS preview render didn't happy.
Was caused by using a Material copy for preview renders (to prevent
crashing in other cases). There were actually 2 errors:
- material copy should be added to preview-main database
- the render was invoked using wrong main database even!
2010-12-19 11:39:55 +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
3368a595da Merged changes in the trunk up to revision 33765. 2010-12-18 11:49:12 +00:00
fd90685a48 remove some paranoid NULL checks, since the pointers are used already. 2010-12-17 19:05:10 +00:00
902b239aa8 no functional changes: SETLOOPER macro assumed a scene was defined called 'sce' used to loop over, now make this an argument, helps to make it clear what's going on. 2010-12-17 15:37:59 +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
12a93c5b0f Fix for [#25256] Particles with trailcount > 1 does not render if particles system is baked to Disk Cache. 2010-12-17 13:29:40 +00:00
4e26b4ec38 Bugfix #22794
Panorama render is now border-render safe.
2010-12-16 12:49:48 +00:00
d3070ad9ac Bugfix #23658
Render: Alpha calculated for ray-traced transparency could overflow beyond 1.0.
Gets clamped now.
2010-12-16 11:31:04 +00:00
9ac68ad4ab Bugfix #22040
Old bug report:

Image Editor, Painting: crash when texture was visible in 
Material or Texture preview. Was caused by paint code
freeing mipmaps. Now replaced with a mipmap tag (to be done
again), and a new mipmap function that doesn't re-allocate.
2010-12-14 18:02:41 +00:00
93cbc840e0 Fix for [#25198] Smoke gets shown before simulation starts
* Smoke is now only drawn/rendered after the simulation frame range starts.
* This does not apply to simulation end frame though, so that any remaining smoke can for example be faded away nicely through material settings.
2010-12-14 14:45:56 +00:00
5d2966283b UI Cleanup: Halo materials and textures
* Textures applied to halo materials showed influence option for normal particles. This was really confusing, and with the cleanup I revealed a couple of hidden features too!
** Particles actually allow for textures to change halo size and hardness, but my guess is that nobody knew since the names were wrong in the ui!
** I also added the option to change the "add" value with a texture, since it was just silly not to have it.
* Halo material properties are also a bit cleaner now.
2010-12-08 20:10:59 +00:00
afacd18498 use lowercase for cmake builtin names and macros, remove contents in else() and endif() which is no longer needed. 2010-12-08 08:43:06 +00:00
9c76ff3f2e "Particle" texture coordinates for halo materials:
* Particle age can now be used as the texture x-coordinate, and location in a particle trail as the y-coordinate.
* This finally enables particles in 2.5 to change their color (or any other texturable material property) by their age.
* In 2.4x this was accomplished with the "100 frames == particle age", but this was both non-intuitive and slow as the animation system had to be recalculated for every particle.
* Currently these are 2d coordinates (age/lifetime == x-coordinate, trail particle index/number of trail particles == y-coordinate), but other particle properties or possibly even a user definable property can be added as coordinates in the future.
* On the code side this uses the same coordinate definition number (for halo materials) as strand coordinates (for surface materials). This is also nice as they intuitively mean nearly the same thing, i.e. along strand or during particle life.
2010-12-07 12:58:25 +00:00
b5c2f9df95 Bug fix: Halos didn't use texture alpha 2010-12-07 12:29:51 +00:00
8a2eb1f590 * Merged changes in the trunk up to revision 33492.
* Fixed a bug in listing all style modules in source/blender/blenlib/intern/bpath.c.
2010-12-06 01:23:18 +00:00
9668c29ba0 bpath iterator updates
- loop over sequencer plugin and texture voxel paths.
- fix leak in python bpy.utils.blend_path() and use PyUnicode_DecodeFSDefault() to ensure correct paths with different encodings.
- operators to make paths absolute & relative now redraw the view.
2010-12-05 23:14: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
cd97253502 - added GCC warning -Wstrict-prototypes
- fixed bug in paste material, exposed by stricter warnings.
- removed/renamed various shadowed vars.
- removed BGE lamp.colour, only allow lamp.color attribute.
2010-12-03 12:30:59 +00:00
b45c3363fd fix for some pedantic warnings. 2010-12-03 01:52:28 +00:00
38eb5fe75c bugfix [#24913] Text bevel normals wrong
error was introduced 33269, to fix [#24834].

this only reverts a small part of that commit, added note not to change this.
2010-12-02 05:39:43 +00:00
42d6603cae Add option for CMake to build libredcode, also use CODEC prefix for ffmpeg, quicktime & sndfile options. 2010-11-30 18:52:39 +00:00
5fe2a16385 Fix [#20241] half-transparent objects in volume have no shadow. 2010-11-29 07:07:08 +00:00
e8397e6193 include headers in cmake source, added a script to check for consistency, reporting missing headers & C files.
this is important so IDE's using CMake integration always get blender headers. - QtCreator & MSVC for eg, probably others too.
2010-11-29 04:35:56 +00:00
4c82be95fd Fix:
[#24170] Camera inside volume error
[#24838] Light inside Volume material drops on it's walls - it may be double

Problem in a previous bugfix commit, reverted back, the original bug is still fixed too.
2010-11-29 01:05:20 +00:00
34ea1cf0b2 minor changes to the python api.
- pep8 script was giving an error on non utf8 scons source files.
- use PyList_SET_ITEM macro when list type is ensured.
- all mathutils types use subtypes to create new types when available.
- use defines MAT3_UNITY, MAT4_UNITY to initialize unit matrices.
2010-11-28 06:03:30 +00:00
a04603d2a0 Merged changes in the trunk up to revision 33348. 2010-11-27 12:48:35 +00:00
4efffc90f9 Bug fix: voxeldata texture extension didn't work.
* Code was using tex->extend instead of vd->extend.
2010-11-26 14:33:44 +00:00
ca6cc30368 Fix #24855: disabling shadows didn't disable AO/env with ray transparency
and AO multiply mode.
2010-11-26 03:50:14 +00:00
250c2fe3e5 Fix #24834: curves extrude + bevel gave bad normals on rendering.
This happened when removing vertex normal flipping in the render engine. But
actually the normal of the first face in the curve was flipped on rendering,
because it used a different vertex order than other places. Also removed the
hack that computes a face normal only from a triangle instead of a quad.
2010-11-23 20:32:15 +00:00
8f657c174d Fix: 8bit raw and 'blender voxel' voxel data texture formats didn't support relative paths 2010-11-21 23:36:29 +00:00