11 years agosvn merge -r 17502:18705
Daniel Genrich [Wed, 28 Jan 2009 00:43:46 +0000 (00:43 +0000)]
svn merge -r 17502:18705

11 years agoFix for bug #18087: Editing of object name and modifiers did not
Brecht Van Lommel [Tue, 27 Jan 2009 22:09:23 +0000 (22:09 +0000)]
Fix for bug #18087: Editing of object name and modifiers did not
work in editing buttons if the object data was linked.

11 years agoFix for bug #18167: setting Constraint.Settings.SCRIPT checked for type
Brecht Van Lommel [Tue, 27 Jan 2009 21:26:31 +0000 (21:26 +0000)]
Fix for bug #18167: setting Constraint.Settings.SCRIPT checked for type
Object rather than Text so did not work when assigning a text to it.

11 years agoFix for bug #18183: crash when using "Bake Constraints" script. The constraint
Brecht Van Lommel [Tue, 27 Jan 2009 21:19:19 +0000 (21:19 +0000)]
Fix for bug #18183: crash when using "Bake Constraints" script. The constraint
remove function was not working correct, this code uses a pretty bad hack, did
not clean it up, but at least it should work now.

11 years agoFix for bug #17961: crash with material copy/past and GLSL.
Brecht Van Lommel [Tue, 27 Jan 2009 20:17:32 +0000 (20:17 +0000)]
Fix for bug #17961: crash with material copy/past and GLSL.

11 years agoFix for bug #18066: made UV Unwrap > Reset same as the default UV
Brecht Van Lommel [Tue, 27 Jan 2009 19:59:12 +0000 (19:59 +0000)]
Fix for bug #18066: made UV Unwrap > Reset same as the default UV
coordinates when creating a new layer.

11 years ago[#17850] Copying text from Eric4 to Blender crashes Blender
Campbell Barton [Tue, 27 Jan 2009 08:17:35 +0000 (08:17 +0000)]
[#17850] Copying text from Eric4 to Blender crashes Blender
The crash is caused by calling XGetWindowProperty when is zero.
Not a proper fix because clipboard can paste the data without trouble.

11 years agolet the game engine compile, if WITH_FFPEG is not defined (so we don't have video...
Erwin Coumans [Mon, 26 Jan 2009 06:31:06 +0000 (06:31 +0000)]
let the game engine compile, if WITH_FFPEG is not defined (so we don't have video textures in that case)

11 years agoVolume rendering: multiple scattering
Matt Ebb [Mon, 26 Jan 2009 02:42:17 +0000 (02:42 +0000)]
Volume rendering: multiple scattering

This is mostly a contribution from Raul 'farsthary' Hernandez - an approximation for
multiple scattering within volumes. Thanks, Raul! Where single scattering considers
the path from the light to a point in the volume, and to the eye, multiple scattering
approximates the interactions of light as it bounces around randomly within the
volume, before eventually reaching the eye.

It works as a diffusion process that effectively blurs the lighting information
that's already stored within the light cache.

A cloudy sky setup, with single scattering, and multiple scattering:

To enable it, there is a menu in the volume panel (which needs a bit of cleanup, for
later), that lets you choose between self-shading methods:

* None: No attenuation of the light source by the volume - light passes straight
through at full strength
* Single Scattering: (same as previously, with 'self-shading' enabled)
* Multiple Scattering: Uses multiple scattering only for shading information
* Single + Multiple: Adds the multiple scattering lighting on top of the existing
single scattered light - this can be useful to tweak the strength of the effect,
while still retaining details in the lighting.

An example of how the different scattering methods affect the visual result:

The multiple scattering methods introduce 3 new controls when enabled:
* Blur: A factor blending between fully diffuse/blurred lighting, and sharper
* Spread: The range that the diffuse blurred lighting spreads over - similar to a
blur width. The higher the spread, the slower the processing time.
* Intensity: A multiplier for the multiple scattering light brightness

Here's the effect of multiple scattering on a tight beam (similar to a laser). The
effect of the 'spread' value is pretty clear here:

Unlike the rest of the system so far, this part of the volume rendering engine isn't
physically based, and currently it's not unusual to get non-physical results (i.e.
much more light being scattered out then goes in via lamps or emit). To counter this,
you can use the intensity slider to tweak the brightness - on the todo, perhaps there is a more automatic method we can work on for this later on. I'd also like to check
on speeding this up further with threading too.

11 years ago== Python: Space Handler Scriptlinks ==
Willian Padovani Germano [Sun, 25 Jan 2009 17:49:39 +0000 (17:49 +0000)]
== Python: Space Handler Scriptlinks ==

Bugfix (patch #18216)

I made a mistake on my previous try to fix this. I fixed something, tested, decided I should move the call to run spacehandlers to a better place, but missed removing the old call (ugh). Thanks Steven Truppe (rocketmagnet) for emailing me about it and for the patch.

11 years agoBGE patch 18211: Bug Fix for: [#18175] error on anaglyph view of a splitted viewport.
Benoit Bolsee [Sat, 24 Jan 2009 21:19:35 +0000 (21:19 +0000)]
BGE patch 18211: Bug Fix for: [#18175] error on anaglyph view of a splitted viewport.

11 years ago* make sure openjpeg stuff compiles and links properly.
Nathan Letwory [Sat, 24 Jan 2009 18:09:03 +0000 (18:09 +0000)]
* make sure openjpeg stuff compiles and links properly.
  - since we use this only as statically linked, I took out
    some confusing #ifdefs.

11 years agojpeg2000 commit missed the 2 most important files.
Campbell Barton [Sat, 24 Jan 2009 10:19:29 +0000 (10:19 +0000)]
jpeg2000 commit missed the 2 most important files.

11 years ago[#18164] jpeg2000 patch, with some fixes from Peter too.
Campbell Barton [Fri, 23 Jan 2009 21:08:01 +0000 (21:08 +0000)]
[#18164] jpeg2000 patch, with some fixes from Peter too.

Support for jpeg2000 and writing DCI Cinema standard files.

* 12 and 16bit channel depths are converted from/to blenders float buffer.
* Grayscale/RGB with alpha supported.
* Theres an option to save color channels as YCC rather then RGB.
* Quality 100 saves lossless
* The UI is a bit weired because of the DCI standards need to be given to the encoder.

11 years agoBGE API cleanup: shape action actuator.
Benoit Bolsee [Thu, 22 Jan 2009 17:40:47 +0000 (17:40 +0000)]
BGE API cleanup: shape action actuator.

11 years ago== Scripts ==
Willian Padovani Germano [Wed, 21 Jan 2009 15:45:31 +0000 (15:45 +0000)]
== Scripts ==

- Scripts Help Browser: error parsing doc info wrapped in triple single quotes, like done in the 3ds importer. Thanks Jean-Michel (jms) for informing me about it.

11 years agoBGE API cleanup: action actuator.
Benoit Bolsee [Wed, 21 Jan 2009 13:54:53 +0000 (13:54 +0000)]
BGE API cleanup: action actuator.

11 years agoBugfix: Transform Snap
Martin Poirier [Sun, 18 Jan 2009 22:09:29 +0000 (22:09 +0000)]
Bugfix: Transform Snap

Would crash if snapping from a mesh in edit mode to a group instance including that same mesh.

Reported by UncleZeiv on IRC

11 years agominor corrections
Campbell Barton [Fri, 16 Jan 2009 10:51:30 +0000 (10:51 +0000)]
minor corrections

11 years agohave had few requests to use blender for performing background tasks
Campbell Barton [Thu, 15 Jan 2009 22:16:29 +0000 (22:16 +0000)]
have had few requests to use blender for performing background tasks
- visualizing data, rendering scenes automatically and character rendering on a server.

This example script shows how you can run blender in background mode, parse arguments from the command line to generate a simple scene and render/save it.

11 years agoblender was crashing if no argument was given after '-t'
Campbell Barton [Thu, 15 Jan 2009 18:06:06 +0000 (18:06 +0000)]
blender was crashing if no argument was given after '-t'
mesh.faces.deltete(...) with an empty list no longer returns an error.

11 years agoBGE patch 18065: gameobj mass writeable + setmass actuator. This patch allows to...
Benoit Bolsee [Wed, 14 Jan 2009 22:33:39 +0000 (22:33 +0000)]
BGE patch 18065: gameobj mass writeable + setmass actuator. This patch allows to change the mass of a dynamic or rigid body object during the game. Two methods are available: in a Python script by setting the mass attribute of the game object; by logic brick with the Edit Object->Dynamics->Set Mass actuator. The mass can only be set on dynamic objects and must be a positive floating point value.

11 years agoBGE patch: dynamically update the coumpound parent shape when parenting to a compound...
Benoit Bolsee [Tue, 13 Jan 2009 22:59:18 +0000 (22:59 +0000)]
BGE patch: dynamically update the coumpound parent shape when parenting to a compound object.

This patch modifies the way the setParent actuator and KX_GameObject::setParent() function
works when parenting to a compound object: the collision shape of the object being parented
is dynamically added to the coumpound shape.
Similarly, unparenting an object from a compound object will cause the child collision shape
to be dynamically removed from the parent shape provided that is was previously added with

Note: * This also works if the object is parented to a child of a compound object: the
        collision shape is added to the compound shape of the top parent.
      * The collision shape is added with the transformation (position, scale and orientation)
        it had at the time of the parenting.
      * The child shape is rigidly attached to the compound shape, the transformation is not
        affected by any further change in position/scale/orientation of the child object.
      * While the child shape is added to the compound shape, the child object is removed from
        the dynamic world to avoid superposition of shapes (one for the object itself and
        one for the compound child shape). This means that collision sensors on the child
        object are disabled while the child object is parent to a compound object.
      * There is no difference when setParent is used on a non-compound object: the child
        object is automatically changed to a static ghost object to avoid bad interaction
        with the parent shape; collision sensors on the child object continue to be active
        while the object is parented.
      * The child shape dynamically added to a compound shape modifies the inertia of the
        compound object but not the mass. It participates to collision detection as any other
        "static" child shape.

11 years agoBullet bug fix: bad pointer in btCompoundShape::addChildShape() - patch submited...
Benoit Bolsee [Tue, 13 Jan 2009 22:21:04 +0000 (22:21 +0000)]
Bullet bug fix: bad pointer in btCompoundShape::addChildShape() - patch submited to Bullet forum. This bug fix is needed in preparation of the setparent coumpound shape patch.

11 years agopatch from Thomas Dinges, update URLs in help scripts
Campbell Barton [Tue, 13 Jan 2009 15:48:27 +0000 (15:48 +0000)]
patch from Thomas Dinges, update URLs in help scripts

11 years agofix for big in yesterdays commit, color values were not initialized
Campbell Barton [Tue, 13 Jan 2009 05:55:48 +0000 (05:55 +0000)]
fix for big in yesterdays commit, color values were not initialized

11 years ago* Little feature, blend texture can have extrapolation modes (like repeat).
Matt Ebb [Tue, 13 Jan 2009 02:39:46 +0000 (02:39 +0000)]
* Little feature, blend texture can have extrapolation modes (like repeat).

This should probably go in trunk, but I'll stay away for now with all the 2.5 work on.

11 years agocan now add sequencer effects with the python api
Campbell Barton [Mon, 12 Jan 2009 15:58:32 +0000 (15:58 +0000)]
can now add sequencer effects with the python api
also fixed crashes when incorrect args were used

cross = 13; track= 5; frame = 1 # no effect constants, seq1, seq2), frame, track)

11 years ago[#18082] make bypass the gui and accept arguments...
Campbell Barton [Mon, 12 Jan 2009 04:07:06 +0000 (04:07 +0000)]
[#18082] make bypass the gui and accept arguments when called from another script
from Bill N (slow67)

Also made and add UV's if they didn't exist.

11 years ago== Scripts ==
Willian Padovani Germano [Sun, 11 Jan 2009 16:13:00 +0000 (16:13 +0000)]
== Scripts ==

- Scripts Help Browser: Brendon Murphy requested and Kevin Morgan implemented a "run script" button.
- AC3D importer: option to store emis color from .ac file in mirror color in Blender (the exporter has the option to export mirror color as emis). Patch by Francesco Brisa.

Thanks for the contributions.

11 years ago* fixed an incredibly silly typo-bug in light cache
Matt Ebb [Thu, 8 Jan 2009 22:49:03 +0000 (22:49 +0000)]
* fixed an incredibly silly typo-bug in light cache

11 years agodon't raise exceptions on some errors unless debugging
Campbell Barton [Wed, 7 Jan 2009 11:27:17 +0000 (11:27 +0000)]
don't raise exceptions on some errors unless debugging

11 years agoconfusion between Inline and externproto nodes
Campbell Barton [Wed, 7 Jan 2009 03:34:12 +0000 (03:34 +0000)]
confusion between Inline and externproto nodes

11 years agoAdded support for EXTERNPROTO's and fixed a bug where relative Inline URL's that...
Campbell Barton [Tue, 6 Jan 2009 12:30:28 +0000 (12:30 +0000)]
Added support for EXTERNPROTO's and fixed a bug where relative Inline URL's that included a path didn't load

11 years agostring extraction wasnt working + minor changes
Campbell Barton [Tue, 6 Jan 2009 08:58:45 +0000 (08:58 +0000)]
string extraction wasnt working + minor changes

11 years agoleft testing lines uncommitted by mistake
Campbell Barton [Mon, 5 Jan 2009 10:54:26 +0000 (10:54 +0000)]
left testing lines uncommitted by mistake

11 years agoadded static python option for mingw
Campbell Barton [Mon, 5 Jan 2009 03:26:18 +0000 (03:26 +0000)]
added static python option for mingw

11 years agoC files reference "libredcode/format.h", which only exist in extern/libredcodec/forma...
Campbell Barton [Sun, 4 Jan 2009 07:56:51 +0000 (07:56 +0000)]
C files reference "libredcode/format.h", which only exist in extern/libredcodec/format.h, so for now adding "extern/" as an include when redcode is enabled lets it compile,
noticed there are some win32 ifdef's that don't do anything.

should be fixed properly but this at least compiles for now.

11 years ago[#18142] Blender FBX export outputs broken vertex colors when using vertex paint
Campbell Barton [Sat, 3 Jan 2009 14:02:14 +0000 (14:02 +0000)]
[#18142] Blender FBX export outputs broken vertex colors when using vertex paint
from Kevin Hsu (caywen)
use fix suggested in report

11 years agoBGE bug #18070 fixed: 2dFilter actuator is always pulsed.
Benoit Bolsee [Fri, 2 Jan 2009 22:15:05 +0000 (22:15 +0000)]
BGE bug #18070 fixed: 2dFilter actuator is always pulsed.

11 years agoBGE API cleanup: more bricks converted to attributes.
Benoit Bolsee [Fri, 2 Jan 2009 22:09:57 +0000 (22:09 +0000)]
BGE API cleanup: more bricks converted to attributes.

11 years agoBGE API Cleanup: update the python attribute definition framework.
Benoit Bolsee [Fri, 2 Jan 2009 17:43:56 +0000 (17:43 +0000)]
BGE API Cleanup: update the python attribute definition framework.

* Value clamping to min/max is now supported as an option for integer, float
  and string attribute (for string clamping=trim to max length)
* Post check function now take PyAttributeDef parameter so that more
  generic function can be written.
* Definition of SCA_ILogicBrick::CheckProperty() function to check that
  a string attribute contains a valid property name of the parent game object.
* Definition of enum attribute vi KX_PYATTRIBUTE_ENUM... macros.
  Enum are handled just like integer but to be totally paranoid, the sizeof()
  of the enum member is check at run time to match integer size.
* More bricks updated to use the framework.

11 years agofix for a memory leak in NMesh (deprecated api) while looking at bug report...
Campbell Barton [Thu, 1 Jan 2009 16:18:54 +0000 (16:18 +0000)]
fix for a memory leak in NMesh (deprecated api) while looking at bug report...
[#18139] Memory Leaks while using Py_BuildValue

11 years agoBGE API cleanup: introduction of a generic framework to link Python attributes to...
Benoit Bolsee [Wed, 31 Dec 2008 20:35:20 +0000 (20:35 +0000)]
BGE API cleanup: introduction of a generic framework to link Python attributes to logic brick class member. See KX_PYATTRIBUTE macros in PyObjectPlus.h.

11 years agoVolume rendering
Matt Ebb [Wed, 31 Dec 2008 05:08:04 +0000 (05:08 +0000)]
Volume rendering

* Fixed an old problem where if both the camera and a solid surface were
inside a volume, the volume wouldn't attenuate in front of the surface (was
visible in the blender conference art festival clouds animation:

* Initial support for refracting solids inside volumes. I might be able to
make this work better, but not sure at the moment. It's a bit dodgy,
limited by the code that does the recursive ray shading - it's really not
set up for this kind of thing and could use a refactor very much.

11 years agouse higher precession pi
Campbell Barton [Wed, 31 Dec 2008 02:13:38 +0000 (02:13 +0000)]
use higher precession pi

11 years agoBGE API cleanup: more consistent type check on set attribute (mouse and keyboard...
Benoit Bolsee [Tue, 30 Dec 2008 16:44:34 +0000 (16:44 +0000)]
BGE API cleanup: more consistent type check on set attribute (mouse and keyboard so far). Check type after name so that the user get a type error when assigning a wrong type to a built-in attribute.

11 years agoscript was adding UV's rather then vertex Colors (this was correct before uv & vcol...
Campbell Barton [Tue, 30 Dec 2008 08:25:36 +0000 (08:25 +0000)]
script was adding UV's rather then vertex Colors (this was correct before uv & vcol layers existed)

11 years agomistake in previous commit, stopped CurNurbs from appending
Campbell Barton [Tue, 30 Dec 2008 05:00:19 +0000 (05:00 +0000)]
mistake in previous commit, stopped CurNurbs from appending

11 years agoFirst batch of GE API cleanup.
Benoit Bolsee [Mon, 29 Dec 2008 16:36:58 +0000 (16:36 +0000)]
First batch of GE API cleanup.

The principle is to replace most get/set methods of logic bricks by direct property access.
To make porting of game code easier, the properties have usually the same type and use than
the return values/parameters of the get/set methods.
More details on

Old methods are still available but will produce deprecation warnings on the console:

"<method> is deprecated, use the <property> property instead"

You can avoid these messages by turning on the "Ignore deprecation warnings" option in Game menu.

PyDoc is updated to include the new properties and display a deprecation warning
for the get/set methods that are being deprecated.

11 years agoMSVC project file update for ffmpeg device lib, release build
Benoit Bolsee [Mon, 29 Dec 2008 14:26:36 +0000 (14:26 +0000)]
MSVC project file update for ffmpeg device lib, release build

11 years ago* disable back buffer selection drawing while projection painting (was redoing for...
Campbell Barton [Wed, 24 Dec 2008 21:53:15 +0000 (21:53 +0000)]
* disable back buffer selection drawing while projection painting (was redoing for every update while painting)
* remove unneeded return from game engines py api - ConvertPythonToGameObject

11 years ago* bpy curve api wouldn't give correct errors for bad arguments when appending nurbs.
Campbell Barton [Wed, 24 Dec 2008 15:46:26 +0000 (15:46 +0000)]
* bpy curve api wouldn't give correct errors for bad arguments when appending nurbs.
* the radius on the curves first point was ignored.
* was giving all points a tilt of 1.0

11 years agofix for own mistake - [#18119] Texture Paint: "clone from layer" button not drawn...
Campbell Barton [Wed, 24 Dec 2008 02:06:34 +0000 (02:06 +0000)]
fix for own mistake - [#18119] Texture Paint: "clone from layer" button not drawn in buttons window

11 years agoimproved PROTO support, works for many testfiles now.
Campbell Barton [Tue, 23 Dec 2008 06:47:43 +0000 (06:47 +0000)]
improved PROTO support, works for many testfiles now.

11 years agoVolume rendering:
Matt Ebb [Mon, 22 Dec 2008 20:28:02 +0000 (20:28 +0000)]
Volume rendering:

* Multithreaded volume light cache

While the render process itself is multithreaded, the light cache pre-process
previously wasn't (painfully noticed this the other week rendering on some
borrowed octocore nodes!). This commit adds threading, similar to the tiled render -
it divides the light cache's voxel grid into 3d parts and renders them with the
available threads.

This makes the most significant difference on shots where the light cache pre-
process is the bottleneck, so shots with either several lights, or a high res light
cache, or both. On this file (3 lights, light cache res 120), on my Core 2 Duo it now
renders in 27 seconds compared to 49 previously.

11 years agopose_grab_with_ik_clear(): fix bug with memory used after being freed.
Benoit Bolsee [Mon, 22 Dec 2008 16:56:14 +0000 (16:56 +0000)]
pose_grab_with_ik_clear(): fix bug with memory used after being freed.

11 years agoWIP - support for VRML PROTO's
Campbell Barton [Mon, 22 Dec 2008 15:05:07 +0000 (15:05 +0000)]
WIP - support for VRML PROTO's

11 years agoBugfix - Fixed crashes in Action Editor on Ctrl-L due to missing NULL checks.
Joshua Leung [Mon, 22 Dec 2008 10:52:17 +0000 (10:52 +0000)]
Bugfix - Fixed crashes in Action Editor on Ctrl-L due to missing NULL checks.

11 years agodefine WITH_CCGSUBSURF isnt used anymore
Campbell Barton [Sun, 21 Dec 2008 03:11:32 +0000 (03:11 +0000)]
define WITH_CCGSUBSURF isnt used anymore

11 years agoBugfix since rev 2, BLO_setversionnumber() was using sizeof(array), which gives the...
Campbell Barton [Sat, 20 Dec 2008 17:09:45 +0000 (17:09 +0000)]
Bugfix since rev 2, BLO_setversionnumber() was using sizeof(array), which gives the sizeof the pointer, not the array.
On a 64bit system I assume this would set 8 chars of a 4 char array.

Turns out this isnt such a problem since BLO_setversionnumber isn't used anymore but way as well commit.

11 years agoid prop update function was receiving a tuple when it only needed a single arg
Campbell Barton [Sat, 20 Dec 2008 08:41:46 +0000 (08:41 +0000)]
id prop update function was receiving a tuple when it only needed a single arg

11 years agopatch [#18110] [patch] Update blenderplayer.exe -h text
Campbell Barton [Sat, 20 Dec 2008 07:12:38 +0000 (07:12 +0000)]
patch [#18110] [patch] Update blenderplayer.exe -h text
from Mitchell Stokes (moguri)

11 years agoAdd G_FILE_IGNORE_DEPRECATION_WARNINGS option to G.fileflags in preparation of BGE...
Benoit Bolsee [Fri, 19 Dec 2008 20:35:53 +0000 (20:35 +0000)]
Add G_FILE_IGNORE_DEPRECATION_WARNINGS option to G.fileflags in preparation of BGE python API cleanup

11 years agoTypo was making actuator.getExecutePriority() crash
Campbell Barton [Fri, 19 Dec 2008 03:26:41 +0000 (03:26 +0000)]
Typo was making actuator.getExecutePriority() crash

11 years agoBugfix for crash with loading fluidsim files, reported by Gimble3d and nudelZ
Daniel Genrich [Thu, 18 Dec 2008 22:08:57 +0000 (22:08 +0000)]
Bugfix for crash with loading fluidsim files, reported by Gimble3d and nudelZ

11 years agoFFmpeg upgrade to revision 12758 (avformat version 52.13): support libavdevice for...
Benoit Bolsee [Wed, 17 Dec 2008 20:52:39 +0000 (20:52 +0000)]
FFmpeg upgrade to revision 12758 (avformat version 52.13): support libavdevice for video capture in VideoTexture module (BGE). Makefile, CMake, scons updated. FFmpeg binaries will have to be rebuilt for certain OS (irix), win32 binaries already up to date. You MUST do a clean rebuild after this patch. Scons users: pay attention that the config/<os> files have changed, adapt your in consequence

11 years ago* commit r17900 by Genscher was wrong.
Nathan Letwory [Wed, 17 Dec 2008 05:40:40 +0000 (05:40 +0000)]
* commit r17900 by Genscher was wrong.
  - Instead of defining such defines for the entire codebase in, add
    the right checks and definitions to the places where it matters.
  - Only check+set WITH_BULLET instead of also GAMEBLENDER=1
  - NOTE: No global defines allowed in BlenderLib.

11 years agoReverting revision 17417 which broke cloth collisions which check also in blenkernel...
Daniel Genrich [Wed, 17 Dec 2008 00:41:07 +0000 (00:41 +0000)]
Reverting revision 17417 which broke cloth collisions which check also in blenkernel/intern for WITH_BULLET

11 years agoApplying scons compiling fix for windows/mingw (to get compiler warnings to show...
Joshua Leung [Tue, 16 Dec 2008 22:57:15 +0000 (22:57 +0000)]
Applying scons compiling fix for windows/mingw (to get compiler warnings to show up). This has already been applied in other branches too

11 years agoPatch from Banlu Kemiyatorn
Campbell Barton [Tue, 16 Dec 2008 12:32:10 +0000 (12:32 +0000)]
Patch from Banlu Kemiyatorn
replace VecMulf(var,-1) with new VecNegf(var) function.

11 years agofix for [bf-blender-Bug Tracker][18089] scons compiling bug
Campbell Barton [Tue, 16 Dec 2008 11:26:55 +0000 (11:26 +0000)]
fix for [bf-blender-Bug Tracker][18089] scons compiling bug
and removed unused vars

11 years agoB
Chris Want [Mon, 15 Dec 2008 20:53:45 +0000 (20:53 +0000)]
Linking of blenderplayer was failing with unresolved symbols
(initVideoTexture) when building without FFMPEG. Needs
testing with SCons and Makefiles.

11 years agoMake sure that WITH_OPENEXR is defined when sources are configured
Chris Want [Mon, 15 Dec 2008 17:47:57 +0000 (17:47 +0000)]
Make sure that WITH_OPENEXR is defined when sources are configured
with OpenEXR in the CMake system. This is a compilation fix from
Miguel A. Figueroa Villanueva for building Debug versions of Blender
using OpenEXR (thanks!).

11 years agobugfix #17989
Ton Roosendaal [Mon, 15 Dec 2008 08:37:39 +0000 (08:37 +0000)]
bugfix #17989

Patch from Xavier Thomas.

Compositor, filter node, had shifted output when used on single-value

11 years agoTouch/NoOverwrite options were not disabled for video.
Campbell Barton [Mon, 15 Dec 2008 08:29:31 +0000 (08:29 +0000)]
Touch/NoOverwrite options were not disabled for video.

11 years ago* msvc compile fix
Matt Ebb [Mon, 15 Dec 2008 05:49:56 +0000 (05:49 +0000)]
* msvc compile fix

11 years agoPython API
Ken Hughes [Mon, 15 Dec 2008 05:30:09 +0000 (05:30 +0000)]
Python API
Bugfix #18044: missing return statements in getter for displacement modifier
caused incorrect values to be returned.

11 years agoDXF exporter, updated
Remigiusz Fiedler [Sun, 14 Dec 2008 21:26:24 +0000 (21:26 +0000)]
DXF exporter, updated
v1.28 - 2008.12.13 by Steeve/BlenderArtists
- bugfix for EXTMIN/EXTMAX to suit Cycas-CAD

11 years agobugfix in pickMeshRayFaceWeight() in bpymodules/
Remigiusz Fiedler [Sun, 14 Dec 2008 18:39:58 +0000 (18:39 +0000)]
bugfix in pickMeshRayFaceWeight() in bpymodules/

11 years ago* Compile fixes for voxeldata.c (thanks jms)
Matt Ebb [Sun, 14 Dec 2008 02:22:29 +0000 (02:22 +0000)]
* Compile fixes for voxeldata.c (thanks jms)

* Fixed a typo in the patch that made trilinear interpolation really slow

* Replaced the patch's trilinear interpolation code with the existing trilinear code from pbrt / light cache (first stage of unifying this voxel interpolation code)

11 years ago(no commit message)
Jens Ole Wund [Sat, 13 Dec 2008 23:11:12 +0000 (23:11 +0000)]

11 years agoadding hint
Jens Ole Wund [Sat, 13 Dec 2008 23:04:36 +0000 (23:04 +0000)]
adding hint
Building on NSIS_Installer fails when path to NSIS tools is not set

11 years agoprojection paint cleanup (nothing to see here)
Campbell Barton [Sat, 13 Dec 2008 16:11:52 +0000 (16:11 +0000)]
projection paint cleanup (nothing to see here)
* BarycentricWeightsPersp2f was calling BarycentricWeights2f, and re-weighting. Changed so the re-weighting isnt needed.
* replaced tri_depth_2d with VecZDepthOrtho and VecZDepthPersp
* project_paint_occlude_ptv_clip now calls project_paint_occlude_ptv to remove duplicate code.

11 years agoand the new voxel data files..
Matt Ebb [Sat, 13 Dec 2008 05:43:10 +0000 (05:43 +0000)]
and the new voxel data files..

11 years ago* Volume Rendering: Voxel data
Matt Ebb [Sat, 13 Dec 2008 05:41:34 +0000 (05:41 +0000)]
* Volume Rendering: Voxel data

This commit introduces a new texture ('Voxel Data'), used to load up saved voxel
data sets for rendering, contributed by Raúl 'farsthary' Fernández Hernández
with some additional tweaks. Thanks, Raúl!

The texture works similar to the existing point density texture, currently it
only provides intensity information, which can then be mapped (for example) to
density in a volume material. This is an early version, intended to read the
voxel format saved by Raúl's command line simulators, in future revisions
there's potential for making a more full-featured 'Blender voxel file format',
and also for supporting other formats too.

Note: Due to some subtleties in Raúl's existing released simulators, in  order
to load them correctly the voxel data texture, you'll need to raise the
'resolution' value by 2. So if you baked out the simulation at resolution 50,
enter 52 for the resolution in the texture panel. This can possibly be fixed in
the simulator later on.

Right now, the way the texture is mapped is just in the space 0,0,0 <-> 1,1,1
and it can appear rotated 90 degrees incorrectly. This will be tackled, for now,
probably the easiest way to map it is with and empty, using Map Input -> Object.

Smoke test:

One more note, trilinear interpolation seems a bit slow at the moment, we'll
look into this.

For curiosity, while testing/debugging this, I made a script that exports a mesh
to voxel data. Here's a test of grogan ( converted to voxels,
rendered as a volume:

The script is available here:

* Another smaller thing, brought back early ray termination (was disabled
previously for debugging) and made it user configurable. It now appears as a new
value in the volume material: 'Depth Cutoff'. For some background info on what
this does, check:

* Also some disabled work-in-progess code for light cache

11 years agoProjection Painting, merge from branch
Campbell Barton [Fri, 12 Dec 2008 18:59:17 +0000 (18:59 +0000)]
Projection Painting, merge from branch

 - Painting onto multiple images at once.
 - Clone with an offset similar to the gimp, also an option to clone between UV layers, (not both offset and between layers atm)
 - Stencil layer, similar to The Gimp's quickmask.
 - Face mask mode - (painting onto only selected faces).
 - Texture brushes (so image and texture-node brushes too)
 - Seam bleed so you don't see gaps when painting over UV seams (new option set in the panit panel)
 - Occlusion (only point onto the first face under the paintbrush, can also be used for masking out parts of the model to paint onto) - (new option set in the paint panel)
 - Muti-threaded, each thread operates on its own bucket.
 - Support partial updates to speedup OpenGL texture refreshing.
 - Support tile based multiple undo's
 - Support float image buffers.
 - Backface culling (new option set in the paint panel)
 - All color blending modes - Add/Multiply.. etc.
 - Airbrush rate. (used to be broken)
 - Improve the way paint is mixed when painting, so painting with 0.2 alpha will not accumulate above 0.2 alpha on the image as you paint.
 - Option to use normals to fade out strokes on the edge of a surface to avoid ugly edges. (same as Vertex Paints "Normal" option)

Known Problems
 - Not directly related to painting but changes in selection flags are not updated on the final derived mesh.
 - Smear tool has some distortion when in perspective mode.
 - While in perspective view any faces with 1 vert behind the viewpoint, will be completely ignored.
 - Painting can be initially slow while buckets are being initialized, a number of solutions exist.
 - Size 1 brushes don't work yet.
 - When painting onto large faces its still possible to get artifacts.
 - Spatial optimizations are needed to skip occluded faces and test pixel occlusion. (will look into using blenders BVH )

11 years agominor changes projection-paint
Campbell Barton [Fri, 12 Dec 2008 18:31:34 +0000 (18:31 +0000)]
minor changes

11 years agoview.c
Campbell Barton [Fri, 12 Dec 2008 17:56:19 +0000 (17:56 +0000)]
 * Renamed view_autodist to view_mouse_depth
 * Accept args for mouse location and pixel distance around the hotspot used to lookup the depth.
 * removed persp(PERSP_VIEW) within this function, since it didnt set the view back.

 * normal falloff now works as Brecht suggests. Normal limit of 80 will blend between 80 and 85deg,  70deg limit blends between 70-80deg.
 * convert normal falloff to radians on initializing rather then on every comparison.
 * Ctrl+Click setting the cursor in its own function.
 * projection painting wasnt accounting for an exception for too high pressure values on first touch in windows for some tablets.
 * removed grease pencil benchmark function

11 years agoVRML/X3D
Campbell Barton [Fri, 12 Dec 2008 05:46:07 +0000 (05:46 +0000)]
* Improved compatibility with VRML files
* Extract strings so they dont get modified for parsing, filename URL's with {} [] dont break importing anymore.
* Cameras were rotated incorrectly
* inline files were not opened with GZip
* Animation Support - currently only loc/scale/rot (scale untested)
* Lists of image URLs now use the first image from the list since there is no support for dynamic switching.
* use imagemagick to convert GIF's so they load in linux. (WIP - could be extended, At least it should not break anything)

BPyMathutils angle2ToLength function could be simplified (pointed out by brecht)

11 years agoVideoTexture.ImageMirror: if the mirror is horizontal in mesh coord, take the Y axis...
Benoit Bolsee [Thu, 11 Dec 2008 23:02:33 +0000 (23:02 +0000)]
VideoTexture.ImageMirror: if the mirror is horizontal in mesh coord, take the Y axis as the up direction for the UV map. If the mirror is not perfectly vertical(horizontal), the projection of the Z(Y) axis on the mirror plane is the mirror Up direction.

11 years agofix for [18069] open nurbs curve snaps end to centerpoint
Campbell Barton [Wed, 10 Dec 2008 11:42:26 +0000 (11:42 +0000)]
fix for [18069] open nurbs curve snaps end to centerpoint
made nurbs surface curves use the same number of points as nurbs curves.

11 years agomerge from trunk - r17500 to HEAD
Campbell Barton [Wed, 10 Dec 2008 09:45:48 +0000 (09:45 +0000)]
merge from trunk - r17500 to HEAD

11 years agomove the paint buttons from the image view and buttons window into one function.
Campbell Barton [Wed, 10 Dec 2008 05:41:21 +0000 (05:41 +0000)]
move the paint buttons from the image view and buttons window into one function.

11 years agotweaks to brush falloff and alpha, giving nicer looking strokes.
Campbell Barton [Wed, 10 Dec 2008 03:13:48 +0000 (03:13 +0000)]
tweaks to brush falloff and alpha, giving nicer looking strokes.

11 years agobugfix - [#18063] Projection paint branch: draw tool "drops out" when model extends...
Campbell Barton [Tue, 9 Dec 2008 14:30:05 +0000 (14:30 +0000)]
bugfix - [#18063] Projection paint branch: draw tool "drops out" when model extends beyond view borders
reported by michael williamson.

Was caused by point inside triangle test using an error limit that didnt adjust for different size triangles.

11 years agoImageMirror: add clip attribute to limit clipping distance of mirror rendering
Benoit Bolsee [Tue, 9 Dec 2008 14:16:10 +0000 (14:16 +0000)]
ImageMirror: add clip attribute to limit clipping distance of mirror rendering

11 years ago* tablet pressure changing opacity while painting didnt work
Campbell Barton [Tue, 9 Dec 2008 08:21:53 +0000 (08:21 +0000)]
* tablet pressure changing opacity while painting didnt work
* pixels with <= the current opacity are not painted onto, speeds up painting especially with low spacing. (only when airbrush is disabled)
* use qsort rather then own crufty sorting function
* grouped projection painting functions together.

11 years agowip commit to work on at home, nothing to see
Matt Ebb [Tue, 9 Dec 2008 07:19:55 +0000 (07:19 +0000)]
wip commit to work on at home, nothing to see

11 years agoFix mistake in last commit.. it's pic + 1 ;)
Diego Borghetti [Tue, 9 Dec 2008 04:57:42 +0000 (04:57 +0000)]
Fix mistake in last commit.. it's pic + 1 ;)