Revision: 26170
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=26170
Author:   eman
Date:     2010-01-21 21:45:45 +0100 (Thu, 21 Jan 2010)

Log Message:
-----------
merge: 25584:26031

Modified Paths:
--------------
    branches/nurbs25/SConstruct
    
branches/nurbs25/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
    
branches/nurbs25/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
    
branches/nurbs25/extern/bullet2/src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp
    
branches/nurbs25/extern/bullet2/src/BulletSoftBody/btSoftRigidDynamicsWorld.h
    branches/nurbs25/intern/audaspace/CMakeLists.txt
    branches/nurbs25/intern/audaspace/FX/AUD_DelayReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_DoubleReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_FaderReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_FaderReader.h
    branches/nurbs25/intern/audaspace/FX/AUD_LoopFactory.h
    branches/nurbs25/intern/audaspace/FX/AUD_LoopReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_PitchFactory.h
    branches/nurbs25/intern/audaspace/FX/AUD_RectifyReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_RectifyReader.h
    branches/nurbs25/intern/audaspace/FX/AUD_ReverseReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_VolumeFactory.h
    branches/nurbs25/intern/audaspace/FX/AUD_VolumeReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_VolumeReader.h
    branches/nurbs25/intern/audaspace/Makefile
    branches/nurbs25/intern/audaspace/OpenAL/AUD_OpenALDevice.cpp
    branches/nurbs25/intern/audaspace/OpenAL/AUD_OpenALDevice.h
    branches/nurbs25/intern/audaspace/SConscript
    branches/nurbs25/intern/audaspace/SDL/AUD_SDLDevice.cpp
    branches/nurbs25/intern/audaspace/SDL/AUD_SDLDevice.h
    branches/nurbs25/intern/audaspace/SRC/AUD_SRCResampleFactory.cpp
    branches/nurbs25/intern/audaspace/SRC/AUD_SRCResampleFactory.h
    branches/nurbs25/intern/audaspace/SRC/AUD_SRCResampleReader.cpp
    branches/nurbs25/intern/audaspace/SRC/AUD_SRCResampleReader.h
    branches/nurbs25/intern/audaspace/ffmpeg/AUD_FFMPEGReader.cpp
    branches/nurbs25/intern/audaspace/ffmpeg/AUD_FFMPEGReader.h
    branches/nurbs25/intern/audaspace/intern/AUD_Buffer.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_Buffer.h
    branches/nurbs25/intern/audaspace/intern/AUD_BufferReader.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_C-API.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_C-API.h
    branches/nurbs25/intern/audaspace/intern/AUD_ChannelMapperFactory.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_ChannelMapperFactory.h
    branches/nurbs25/intern/audaspace/intern/AUD_ChannelMapperReader.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_ConverterFactory.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_ConverterFactory.h
    branches/nurbs25/intern/audaspace/intern/AUD_ConverterFunctions.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_ConverterFunctions.h
    branches/nurbs25/intern/audaspace/intern/AUD_ConverterReader.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_ConverterReader.h
    branches/nurbs25/intern/audaspace/intern/AUD_IDevice.h
    branches/nurbs25/intern/audaspace/intern/AUD_MixerFactory.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_MixerFactory.h
    branches/nurbs25/intern/audaspace/intern/AUD_NULLDevice.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_NULLDevice.h
    branches/nurbs25/intern/audaspace/intern/AUD_ReadDevice.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_ReadDevice.h
    branches/nurbs25/intern/audaspace/intern/AUD_SinusReader.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_SoftwareDevice.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_SoftwareDevice.h
    branches/nurbs25/intern/audaspace/intern/AUD_Space.h
    branches/nurbs25/intern/audaspace/intern/AUD_StreamBufferFactory.cpp
    branches/nurbs25/intern/audaspace/intern/Makefile
    branches/nurbs25/intern/audaspace/jack/AUD_JackDevice.cpp
    branches/nurbs25/intern/audaspace/jack/AUD_JackDevice.h
    branches/nurbs25/intern/audaspace/make/msvc_9_0/audaspace.vcproj
    branches/nurbs25/intern/audaspace/sndfile/AUD_SndFileReader.cpp
    branches/nurbs25/intern/audaspace/sndfile/AUD_SndFileReader.h
    branches/nurbs25/intern/audaspace/sndfile/Makefile
    branches/nurbs25/intern/bsp/intern/BSP_CSGMesh.h
    branches/nurbs25/intern/ghost/CMakeLists.txt
    branches/nurbs25/intern/ghost/GHOST_C-api.h
    branches/nurbs25/intern/ghost/GHOST_ISystem.h
    branches/nurbs25/intern/ghost/GHOST_Types.h
    branches/nurbs25/intern/ghost/SConscript
    branches/nurbs25/intern/ghost/intern/GHOST_C-api.cpp
    branches/nurbs25/intern/ghost/intern/GHOST_SystemCarbon.cpp
    branches/nurbs25/intern/ghost/intern/GHOST_SystemCarbon.h
    branches/nurbs25/intern/ghost/intern/GHOST_SystemCocoa.h
    branches/nurbs25/intern/ghost/intern/GHOST_SystemCocoa.mm
    branches/nurbs25/intern/ghost/intern/GHOST_SystemWin32.cpp
    branches/nurbs25/intern/ghost/intern/GHOST_SystemWin32.h
    branches/nurbs25/intern/ghost/intern/GHOST_SystemX11.cpp
    branches/nurbs25/intern/ghost/intern/GHOST_SystemX11.h
    branches/nurbs25/intern/ghost/intern/GHOST_Window.cpp
    branches/nurbs25/intern/ghost/intern/GHOST_Window.h
    branches/nurbs25/intern/ghost/intern/GHOST_WindowCarbon.cpp
    branches/nurbs25/intern/ghost/intern/GHOST_WindowCarbon.h
    branches/nurbs25/intern/ghost/intern/GHOST_WindowCocoa.h
    branches/nurbs25/intern/ghost/intern/GHOST_WindowCocoa.mm
    branches/nurbs25/intern/ghost/intern/GHOST_WindowWin32.cpp
    branches/nurbs25/intern/ghost/intern/GHOST_WindowWin32.h
    branches/nurbs25/intern/ghost/intern/GHOST_WindowX11.cpp
    branches/nurbs25/intern/ghost/intern/GHOST_WindowX11.h
    branches/nurbs25/intern/ghost/intern/Makefile
    branches/nurbs25/projectfiles_vc9/blender/editors/ED_editors.vcproj
    branches/nurbs25/release/scripts/io/engine_render_pov.py
    branches/nurbs25/release/scripts/io/export_3ds.py
    branches/nurbs25/release/scripts/io/export_fbx.py
    branches/nurbs25/release/scripts/io/export_obj.py
    branches/nurbs25/release/scripts/io/export_ply.py
    branches/nurbs25/release/scripts/io/export_x3d.py
    branches/nurbs25/release/scripts/io/netrender/__init__.py
    branches/nurbs25/release/scripts/io/netrender/balancing.py
    branches/nurbs25/release/scripts/io/netrender/client.py
    branches/nurbs25/release/scripts/io/netrender/master.py
    branches/nurbs25/release/scripts/io/netrender/master_html.py
    branches/nurbs25/release/scripts/io/netrender/model.py
    branches/nurbs25/release/scripts/io/netrender/operators.py
    branches/nurbs25/release/scripts/io/netrender/slave.py
    branches/nurbs25/release/scripts/io/netrender/ui.py
    branches/nurbs25/release/scripts/io/netrender/utils.py
    branches/nurbs25/release/scripts/modules/bpy/__init__.py
    branches/nurbs25/release/scripts/modules/bpy/ops.py
    branches/nurbs25/release/scripts/modules/rigify/__init__.py
    branches/nurbs25/release/scripts/modules/rigify/copy.py
    branches/nurbs25/release/scripts/modules/rigify/finger_curl.py
    branches/nurbs25/release/scripts/modules/rigify/neck_flex.py
    branches/nurbs25/release/scripts/modules/rigify/palm_curl.py
    branches/nurbs25/release/scripts/modules/rigify/spine_pivot_flex.py
    branches/nurbs25/release/scripts/op/add_armature_human.py
    branches/nurbs25/release/scripts/op/add_mesh_torus.py
    branches/nurbs25/release/scripts/op/mesh.py
    branches/nurbs25/release/scripts/op/object.py
    branches/nurbs25/release/scripts/op/screen_play_rendered_anim.py
    branches/nurbs25/release/scripts/op/wm.py
    branches/nurbs25/release/scripts/presets/render/HDTV_1080p.py
    branches/nurbs25/release/scripts/presets/render/HDTV_720p.py
    branches/nurbs25/release/scripts/presets/render/TV_PAL.py
    branches/nurbs25/release/scripts/presets/render/TV_PAL_16_colon_9.py
    branches/nurbs25/release/scripts/templates/operator.py
    branches/nurbs25/release/scripts/ui/space_image.py
    branches/nurbs25/release/scripts/ui/space_info.py
    branches/nurbs25/release/scripts/ui/space_node.py
    branches/nurbs25/release/scripts/ui/space_sequencer.py
    branches/nurbs25/release/scripts/ui/space_text.py
    branches/nurbs25/release/scripts/ui/space_userpref.py
    branches/nurbs25/release/scripts/ui/space_view3d.py
    branches/nurbs25/release/scripts/ui/space_view3d_toolbar.py
    branches/nurbs25/source/Makefile
    branches/nurbs25/source/blender/Makefile
    branches/nurbs25/source/blender/blenkernel/BKE_DerivedMesh.h
    branches/nurbs25/source/blender/blenkernel/BKE_anim.h
    branches/nurbs25/source/blender/blenkernel/BKE_animsys.h
    branches/nurbs25/source/blender/blenkernel/BKE_brush.h
    branches/nurbs25/source/blender/blenkernel/BKE_colortools.h
    branches/nurbs25/source/blender/blenkernel/BKE_deform.h
    branches/nurbs25/source/blender/blenkernel/BKE_fcurve.h
    branches/nurbs25/source/blender/blenkernel/BKE_global.h
    branches/nurbs25/source/blender/blenkernel/BKE_group.h
    branches/nurbs25/source/blender/blenkernel/BKE_idprop.h
    branches/nurbs25/source/blender/blenkernel/BKE_image.h
    branches/nurbs25/source/blender/blenkernel/BKE_key.h
    branches/nurbs25/source/blender/blenkernel/BKE_node.h
    branches/nurbs25/source/blender/blenkernel/BKE_object.h
    branches/nurbs25/source/blender/blenkernel/BKE_particle.h
    branches/nurbs25/source/blender/blenkernel/BKE_pointcache.h
    branches/nurbs25/source/blender/blenkernel/BKE_screen.h
    branches/nurbs25/source/blender/blenkernel/BKE_sound.h
    branches/nurbs25/source/blender/blenkernel/BKE_utildefines.h
    branches/nurbs25/source/blender/blenkernel/BKE_writeavi.h
    branches/nurbs25/source/blender/blenkernel/BKE_writeffmpeg.h
    branches/nurbs25/source/blender/blenkernel/intern/DerivedMesh.c
    branches/nurbs25/source/blender/blenkernel/intern/action.c
    branches/nurbs25/source/blender/blenkernel/intern/anim.c
    branches/nurbs25/source/blender/blenkernel/intern/anim_sys.c
    branches/nurbs25/source/blender/blenkernel/intern/armature.c
    branches/nurbs25/source/blender/blenkernel/intern/boids.c
    branches/nurbs25/source/blender/blenkernel/intern/brush.c
    branches/nurbs25/source/blender/blenkernel/intern/cdderivedmesh.c
    branches/nurbs25/source/blender/blenkernel/intern/cloth.c
    branches/nurbs25/source/blender/blenkernel/intern/colortools.c
    branches/nurbs25/source/blender/blenkernel/intern/constraint.c
    branches/nurbs25/source/blender/blenkernel/intern/deform.c
    branches/nurbs25/source/blender/blenkernel/intern/depsgraph.c
    branches/nurbs25/source/blender/blenkernel/intern/fcurve.c
    branches/nurbs25/source/blender/blenkernel/intern/font.c
    branches/nurbs25/source/blender/blenkernel/intern/gpencil.c
    branches/nurbs25/source/blender/blenkernel/intern/group.c
    branches/nurbs25/source/blender/blenkernel/intern/idprop.c
    branches/nurbs25/source/blender/blenkernel/intern/image.c
    branches/nurbs25/source/blender/blenkernel/intern/ipo.c
    branches/nurbs25/source/blender/blenkernel/intern/key.c
    branches/nurbs25/source/blender/blenkernel/intern/library.c
    branches/nurbs25/source/blender/blenkernel/intern/material.c
    branches/nurbs25/source/blender/blenkernel/intern/mesh.c
    branches/nurbs25/source/blender/blenkernel/intern/modifier.c
    branches/nurbs25/source/blender/blenkernel/intern/node.c
    branches/nurbs25/source/blender/blenkernel/intern/object.c
    branches/nurbs25/source/blender/blenkernel/intern/particle.c
    branches/nurbs25/source/blender/blenkernel/intern/particle_system.c
    branches/nurbs25/source/blender/blenkernel/intern/pointcache.c
    branches/nurbs25/source/blender/blenkernel/intern/scene.c
    branches/nurbs25/source/blender/blenkernel/intern/sequencer.c
    branches/nurbs25/source/blender/blenkernel/intern/softbody.c
    branches/nurbs25/source/blender/blenkernel/intern/sound.c
    branches/nurbs25/source/blender/blenkernel/intern/subsurf_ccg.c
    branches/nurbs25/source/blender/blenkernel/intern/text.c
    branches/nurbs25/source/blender/blenkernel/intern/texture.c
    branches/nurbs25/source/blender/blenkernel/intern/writeavi.c
    branches/nurbs25/source/blender/blenkernel/intern/writeffmpeg.c
    branches/nurbs25/source/blender/blenlib/BLI_bpath.h
    branches/nurbs25/source/blender/blenlib/BLI_listbase.h
    branches/nurbs25/source/blender/blenlib/BLI_math_color.h
    branches/nurbs25/source/blender/blenlib/BLI_math_geom.h
    branches/nurbs25/source/blender/blenlib/BLI_math_vector.h
    branches/nurbs25/source/blender/blenlib/intern/BLI_kdopbvh.c
    branches/nurbs25/source/blender/blenlib/intern/bpath.c
    branches/nurbs25/source/blender/blenlib/intern/freetypefont.c
    branches/nurbs25/source/blender/blenlib/intern/listbase.c
    branches/nurbs25/source/blender/blenlib/intern/math_color.c
    branches/nurbs25/source/blender/blenlib/intern/math_geom.c
    branches/nurbs25/source/blender/blenlib/intern/math_vector.c
    branches/nurbs25/source/blender/blenlib/intern/math_vector_inline.c
    branches/nurbs25/source/blender/blenlib/intern/pbvh.c
    branches/nurbs25/source/blender/blenloader/intern/readfile.c
    branches/nurbs25/source/blender/blenloader/intern/writefile.c
    branches/nurbs25/source/blender/collada/DocumentExporter.cpp
    branches/nurbs25/source/blender/collada/DocumentImporter.cpp
    branches/nurbs25/source/blender/editors/CMakeLists.txt
    branches/nurbs25/source/blender/editors/animation/anim_channels_defines.c
    branches/nurbs25/source/blender/editors/animation/anim_channels_edit.c
    branches/nurbs25/source/blender/editors/animation/anim_draw.c
    branches/nurbs25/source/blender/editors/animation/anim_markers.c
    branches/nurbs25/source/blender/editors/animation/drivers.c
    branches/nurbs25/source/blender/editors/animation/keyframes_draw.c
    branches/nurbs25/source/blender/editors/animation/keyframes_edit.c
    branches/nurbs25/source/blender/editors/animation/keyframes_general.c
    branches/nurbs25/source/blender/editors/armature/editarmature.c
    branches/nurbs25/source/blender/editors/armature/poseSlide.c
    branches/nurbs25/source/blender/editors/armature/poselib.c
    branches/nurbs25/source/blender/editors/armature/poseobject.c
    branches/nurbs25/source/blender/editors/curve/curve_intern.h
    branches/nurbs25/source/blender/editors/curve/curve_ops.c
    branches/nurbs25/source/blender/editors/curve/editcurve.c
    branches/nurbs25/source/blender/editors/curve/editfont.c
    branches/nurbs25/source/blender/editors/gpencil/gpencil_buttons.c
    branches/nurbs25/source/blender/editors/gpencil/gpencil_edit.c
    branches/nurbs25/source/blender/editors/gpencil/gpencil_paint.c
    branches/nurbs25/source/blender/editors/include/ED_anim_api.h
    branches/nurbs25/source/blender/editors/include/ED_curve.h
    branches/nurbs25/source/blender/editors/include/ED_mball.h
    branches/nurbs25/source/blender/editors/include/ED_object.h
    branches/nurbs25/source/blender/editors/include/ED_view3d.h
    branches/nurbs25/source/blender/editors/include/UI_interface.h
    branches/nurbs25/source/blender/editors/include/UI_interface_icons.h
    branches/nurbs25/source/blender/editors/include/UI_resources.h
    branches/nurbs25/source/blender/editors/interface/interface.c
    branches/nurbs25/source/blender/editors/interface/interface_anim.c
    branches/nurbs25/source/blender/editors/interface/interface_handlers.c
    branches/nurbs25/source/blender/editors/interface/interface_icons.c
    branches/nurbs25/source/blender/editors/interface/interface_intern.h
    branches/nurbs25/source/blender/editors/interface/interface_layout.c
    branches/nurbs25/source/blender/editors/interface/interface_ops.c
    branches/nurbs25/source/blender/editors/interface/interface_regions.c
    branches/nurbs25/source/blender/editors/interface/interface_templates.c
    branches/nurbs25/source/blender/editors/interface/interface_widgets.c
    branches/nurbs25/source/blender/editors/interface/resources.c
    branches/nurbs25/source/blender/editors/interface/view2d.c
    branches/nurbs25/source/blender/editors/interface/view2d_ops.c
    branches/nurbs25/source/blender/editors/mesh/editmesh.c
    branches/nurbs25/source/blender/editors/mesh/editmesh_add.c
    branches/nurbs25/source/blender/editors/mesh/editmesh_lib.c
    branches/nurbs25/source/blender/editors/mesh/editmesh_mods.c
    branches/nurbs25/source/blender/editors/mesh/editmesh_tools.c
    branches/nurbs25/source/blender/editors/mesh/loopcut.c
    branches/nurbs25/source/blender/editors/mesh/mesh_intern.h
    branches/nurbs25/source/blender/editors/mesh/mesh_ops.c
    branches/nurbs25/source/blender/editors/mesh/meshtools.c
    branches/nurbs25/source/blender/editors/metaball/mball_edit.c
    branches/nurbs25/source/blender/editors/object/Makefile
    branches/nurbs25/source/blender/editors/object/SConscript
    branches/nurbs25/source/blender/editors/object/object_add.c
    branches/nurbs25/source/blender/editors/object/object_constraint.c
    branches/nurbs25/source/blender/editors/object/object_edit.c
    branches/nurbs25/source/blender/editors/object/object_group.c
    branches/nurbs25/source/blender/editors/object/object_hook.c
    branches/nurbs25/source/blender/editors/object/object_intern.h
    branches/nurbs25/source/blender/editors/object/object_modifier.c
    branches/nurbs25/source/blender/editors/object/object_ops.c
    branches/nurbs25/source/blender/editors/object/object_relations.c
    branches/nurbs25/source/blender/editors/object/object_select.c
    branches/nurbs25/source/blender/editors/object/object_shapekey.c
    branches/nurbs25/source/blender/editors/object/object_transform.c
    branches/nurbs25/source/blender/editors/object/object_vgroup.c
    branches/nurbs25/source/blender/editors/physics/Makefile
    branches/nurbs25/source/blender/editors/physics/particle_boids.c
    branches/nurbs25/source/blender/editors/physics/particle_edit.c
    branches/nurbs25/source/blender/editors/physics/physics_intern.h
    branches/nurbs25/source/blender/editors/physics/physics_ops.c
    branches/nurbs25/source/blender/editors/render/render_preview.c
    branches/nurbs25/source/blender/editors/screen/CMakeLists.txt
    branches/nurbs25/source/blender/editors/screen/Makefile
    branches/nurbs25/source/blender/editors/screen/area.c
    branches/nurbs25/source/blender/editors/screen/screen_edit.c
    branches/nurbs25/source/blender/editors/screen/screen_ops.c
    branches/nurbs25/source/blender/editors/screen/screendump.c
    branches/nurbs25/source/blender/editors/sculpt_paint/paint_image.c
    branches/nurbs25/source/blender/editors/sculpt_paint/paint_intern.h
    branches/nurbs25/source/blender/editors/sculpt_paint/paint_ops.c
    branches/nurbs25/source/blender/editors/sculpt_paint/paint_stroke.c
    branches/nurbs25/source/blender/editors/sculpt_paint/paint_utils.c
    branches/nurbs25/source/blender/editors/sculpt_paint/paint_vertex.c
    branches/nurbs25/source/blender/editors/sculpt_paint/sculpt.c
    branches/nurbs25/source/blender/editors/sound/sound_ops.c
    branches/nurbs25/source/blender/editors/space_action/action_edit.c
    branches/nurbs25/source/blender/editors/space_action/action_intern.h
    branches/nurbs25/source/blender/editors/space_action/action_ops.c
    branches/nurbs25/source/blender/editors/space_action/action_select.c
    branches/nurbs25/source/blender/editors/space_buttons/buttons_context.c
    branches/nurbs25/source/blender/editors/space_buttons/buttons_header.c
    branches/nurbs25/source/blender/editors/space_buttons/space_buttons.c
    branches/nurbs25/source/blender/editors/space_console/console_draw.c
    branches/nurbs25/source/blender/editors/space_console/console_intern.h
    branches/nurbs25/source/blender/editors/space_console/console_ops.c
    branches/nurbs25/source/blender/editors/space_console/space_console.c
    branches/nurbs25/source/blender/editors/space_file/filelist.c
    branches/nurbs25/source/blender/editors/space_file/writeimage.c
    branches/nurbs25/source/blender/editors/space_graph/Makefile
    branches/nurbs25/source/blender/editors/space_graph/SConscript
    branches/nurbs25/source/blender/editors/space_graph/graph_buttons.c
    branches/nurbs25/source/blender/editors/space_graph/graph_edit.c
    branches/nurbs25/source/blender/editors/space_graph/graph_intern.h
    branches/nurbs25/source/blender/editors/space_graph/graph_ops.c
    branches/nurbs25/source/blender/editors/space_image/image_buttons.c
    branches/nurbs25/source/blender/editors/space_image/image_draw.c
    branches/nurbs25/source/blender/editors/space_image/image_header.c
    branches/nurbs25/source/blender/editors/space_image/image_ops.c
    branches/nurbs25/source/blender/editors/space_image/space_image.c
    branches/nurbs25/source/blender/editors/space_info/info_ops.c
    branches/nurbs25/source/blender/editors/space_logic/logic_window.c
    branches/nurbs25/source/blender/editors/space_nla/nla_edit.c
    branches/nurbs25/source/blender/editors/space_node/drawnode.c
    branches/nurbs25/source/blender/editors/space_node/node_draw.c
    branches/nurbs25/source/blender/editors/space_node/node_edit.c
    branches/nurbs25/source/blender/editors/space_node/node_header.c
    branches/nurbs25/source/blender/editors/space_node/node_intern.h
    branches/nurbs25/source/blender/editors/space_node/node_ops.c
    branches/nurbs25/source/blender/editors/space_node/node_select.c
    branches/nurbs25/source/blender/editors/space_outliner/outliner.c
    branches/nurbs25/source/blender/editors/space_sequencer/sequencer_draw.c
    branches/nurbs25/source/blender/editors/space_sequencer/sequencer_edit.c
    branches/nurbs25/source/blender/editors/space_text/space_text.c
    branches/nurbs25/source/blender/editors/space_text/text_header.c
    branches/nurbs25/source/blender/editors/space_text/text_ops.c
    branches/nurbs25/source/blender/editors/space_view3d/drawarmature.c
    branches/nurbs25/source/blender/editors/space_view3d/drawobject.c
    branches/nurbs25/source/blender/editors/space_view3d/space_view3d.c
    branches/nurbs25/source/blender/editors/space_view3d/view3d_buttons.c
    branches/nurbs25/source/blender/editors/space_view3d/view3d_draw.c
    branches/nurbs25/source/blender/editors/space_view3d/view3d_edit.c
    branches/nurbs25/source/blender/editors/space_view3d/view3d_header.c
    branches/nurbs25/source/blender/editors/space_view3d/view3d_intern.h
    branches/nurbs25/source/blender/editors/space_view3d/view3d_ops.c
    branches/nurbs25/source/blender/editors/space_view3d/view3d_select.c
    branches/nurbs25/source/blender/editors/space_view3d/view3d_snap.c
    branches/nurbs25/source/blender/editors/space_view3d/view3d_toolbar.c
    branches/nurbs25/source/blender/editors/space_view3d/view3d_view.c
    branches/nurbs25/source/blender/editors/transform/transform.c
    branches/nurbs25/source/blender/editors/transform/transform.h
    branches/nurbs25/source/blender/editors/transform/transform_constraints.c
    branches/nurbs25/source/blender/editors/transform/transform_conversions.c
    branches/nurbs25/source/blender/editors/transform/transform_generics.c
    branches/nurbs25/source/blender/editors/transform/transform_manipulator.c
    branches/nurbs25/source/blender/editors/transform/transform_ops.c
    branches/nurbs25/source/blender/editors/transform/transform_orientations.c
    branches/nurbs25/source/blender/gpu/GPU_draw.h
    branches/nurbs25/source/blender/gpu/intern/gpu_draw.c
    branches/nurbs25/source/blender/imbuf/intern/amiga.c
    branches/nurbs25/source/blender/imbuf/intern/bmp.c
    branches/nurbs25/source/blender/imbuf/intern/dds/dds_api.cpp
    branches/nurbs25/source/blender/imbuf/intern/divers.c
    branches/nurbs25/source/blender/imbuf/intern/hamx.c
    branches/nurbs25/source/blender/imbuf/intern/iris.c
    branches/nurbs25/source/blender/imbuf/intern/jpeg.c
    branches/nurbs25/source/blender/imbuf/intern/openexr/openexr_api.cpp
    branches/nurbs25/source/blender/imbuf/intern/png.c
    branches/nurbs25/source/blender/imbuf/intern/radiance_hdr.c
    branches/nurbs25/source/blender/imbuf/intern/readimage.c
    branches/nurbs25/source/blender/imbuf/intern/targa.c
    branches/nurbs25/source/blender/imbuf/intern/tiff.c
    branches/nurbs25/source/blender/makesdna/DNA_ID.h
    branches/nurbs25/source/blender/makesdna/DNA_action_types.h
    branches/nurbs25/source/blender/makesdna/DNA_anim_types.h
    branches/nurbs25/source/blender/makesdna/DNA_armature_types.h
    branches/nurbs25/source/blender/makesdna/DNA_brush_types.h
    branches/nurbs25/source/blender/makesdna/DNA_constraint_types.h
    branches/nurbs25/source/blender/makesdna/DNA_gpencil_types.h
    branches/nurbs25/source/blender/makesdna/DNA_lamp_types.h
    branches/nurbs25/source/blender/makesdna/DNA_material_types.h
    branches/nurbs25/source/blender/makesdna/DNA_node_types.h
    branches/nurbs25/source/blender/makesdna/DNA_object_force.h
    branches/nurbs25/source/blender/makesdna/DNA_object_types.h
    branches/nurbs25/source/blender/makesdna/DNA_scene_types.h
    branches/nurbs25/source/blender/makesdna/DNA_screen_types.h
    branches/nurbs25/source/blender/makesdna/DNA_space_types.h
    branches/nurbs25/source/blender/makesdna/DNA_text_types.h
    branches/nurbs25/source/blender/makesdna/DNA_userdef_types.h
    branches/nurbs25/source/blender/makesdna/DNA_view3d_types.h
    branches/nurbs25/source/blender/makesdna/DNA_windowmanager_types.h
    branches/nurbs25/source/blender/makesdna/intern/Makefile
    branches/nurbs25/source/blender/makesrna/RNA_access.h
    branches/nurbs25/source/blender/makesrna/RNA_define.h
    branches/nurbs25/source/blender/makesrna/RNA_types.h
    branches/nurbs25/source/blender/makesrna/intern/CMakeLists.txt
    branches/nurbs25/source/blender/makesrna/intern/Makefile
    branches/nurbs25/source/blender/makesrna/intern/makesrna.c
    branches/nurbs25/source/blender/makesrna/intern/rna_ID.c
    branches/nurbs25/source/blender/makesrna/intern/rna_access.c
    branches/nurbs25/source/blender/makesrna/intern/rna_action.c
    branches/nurbs25/source/blender/makesrna/intern/rna_armature.c
    branches/nurbs25/source/blender/makesrna/intern/rna_armature_api.c
    branches/nurbs25/source/blender/makesrna/intern/rna_brush.c
    branches/nurbs25/source/blender/makesrna/intern/rna_constraint.c
    branches/nurbs25/source/blender/makesrna/intern/rna_curve.c
    branches/nurbs25/source/blender/makesrna/intern/rna_define.c
    branches/nurbs25/source/blender/makesrna/intern/rna_fcurve.c
    branches/nurbs25/source/blender/makesrna/intern/rna_gpencil.c
    branches/nurbs25/source/blender/makesrna/intern/rna_image.c
    branches/nurbs25/source/blender/makesrna/intern/rna_image_api.c
    branches/nurbs25/source/blender/makesrna/intern/rna_internal.h
    branches/nurbs25/source/blender/makesrna/intern/rna_internal_types.h
    branches/nurbs25/source/blender/makesrna/intern/rna_key.c
    branches/nurbs25/source/blender/makesrna/intern/rna_main.c
    branches/nurbs25/source/blender/makesrna/intern/rna_main_api.c
    branches/nurbs25/source/blender/makesrna/intern/rna_material.c
    branches/nurbs25/source/blender/makesrna/intern/rna_mesh.c
    branches/nurbs25/source/blender/makesrna/intern/rna_mesh_api.c
    branches/nurbs25/source/blender/makesrna/intern/rna_nla.c
    branches/nurbs25/source/blender/makesrna/intern/rna_nodetree.c
    branches/nurbs25/source/blender/makesrna/intern/rna_object.c
    branches/nurbs25/source/blender/makesrna/intern/rna_object_api.c
    branches/nurbs25/source/blender/makesrna/intern/rna_object_force.c
    branches/nurbs25/source/blender/makesrna/intern/rna_particle.c
    branches/nurbs25/source/blender/makesrna/intern/rna_pose.c
    branches/nurbs25/source/blender/makesrna/intern/rna_scene.c
    branches/nurbs25/source/blender/makesrna/intern/rna_scene_api.c
    branches/nurbs25/source/blender/makesrna/intern/rna_screen.c
    branches/nurbs25/source/blender/makesrna/intern/rna_sculpt_paint.c
    branches/nurbs25/source/blender/makesrna/intern/rna_space.c
    branches/nurbs25/source/blender/makesrna/intern/rna_text.c
    branches/nurbs25/source/blender/makesrna/intern/rna_texture.c
    branches/nurbs25/source/blender/makesrna/intern/rna_ui_api.c
    branches/nurbs25/source/blender/makesrna/intern/rna_userdef.c
    branches/nurbs25/source/blender/makesrna/intern/rna_vfont.c
    branches/nurbs25/source/blender/makesrna/intern/rna_wm.c
    branches/nurbs25/source/blender/makesrna/intern/rna_wm_api.c
    branches/nurbs25/source/blender/nodes/intern/CMP_nodes/CMP_image.c
    branches/nurbs25/source/blender/nodes/intern/CMP_nodes/CMP_outputFile.c
    branches/nurbs25/source/blender/nodes/intern/CMP_nodes/CMP_rgb.c
    branches/nurbs25/source/blender/nodes/intern/SHD_nodes/SHD_rgb.c
    branches/nurbs25/source/blender/python/generic/bpy_internal_import.c
    branches/nurbs25/source/blender/python/generic/euler.c
    branches/nurbs25/source/blender/python/generic/matrix.c
    branches/nurbs25/source/blender/python/generic/quat.c
    branches/nurbs25/source/blender/python/generic/vector.c
    branches/nurbs25/source/blender/python/intern/bpy_driver.c
    branches/nurbs25/source/blender/python/intern/bpy_interface.c
    branches/nurbs25/source/blender/python/intern/bpy_operator.c
    branches/nurbs25/source/blender/python/intern/bpy_operator_wrap.c
    branches/nurbs25/source/blender/python/intern/bpy_operator_wrap.h
    branches/nurbs25/source/blender/python/intern/bpy_rna.c
    branches/nurbs25/source/blender/python/intern/bpy_rna.h
    branches/nurbs25/source/blender/python/intern/bpy_util.c
    branches/nurbs25/source/blender/python/intern/bpy_util.h
    branches/nurbs25/source/blender/python/sphinx_doc_gen.py
    branches/nurbs25/source/blender/quicktime/apple/Makefile
    branches/nurbs25/source/blender/quicktime/apple/qtkit_export.m
    branches/nurbs25/source/blender/quicktime/apple/quicktime_export.c
    branches/nurbs25/source/blender/quicktime/apple/quicktime_import.c
    branches/nurbs25/source/blender/quicktime/quicktime_export.h
    branches/nurbs25/source/blender/render/extern/include/RE_pipeline.h
    branches/nurbs25/source/blender/render/extern/include/RE_shader_ext.h
    branches/nurbs25/source/blender/render/intern/include/rayobject.h
    branches/nurbs25/source/blender/render/intern/raytrace/rayobject_vbvh.cpp
    branches/nurbs25/source/blender/render/intern/raytrace/reorganize.h
    branches/nurbs25/source/blender/render/intern/raytrace/svbvh.h
    branches/nurbs25/source/blender/render/intern/source/convertblender.c
    branches/nurbs25/source/blender/render/intern/source/envmap.c
    branches/nurbs25/source/blender/render/intern/source/pipeline.c
    branches/nurbs25/source/blender/render/intern/source/rayshade.c
    branches/nurbs25/source/blender/render/intern/source/rendercore.c
    branches/nurbs25/source/blender/render/intern/source/shadeoutput.c
    branches/nurbs25/source/blender/render/intern/source/texture.c
    branches/nurbs25/source/blender/render/intern/source/volume_precache.c
    branches/nurbs25/source/blender/render/intern/source/volumetric.c
    branches/nurbs25/source/blender/windowmanager/CMakeLists.txt
    branches/nurbs25/source/blender/windowmanager/SConscript
    branches/nurbs25/source/blender/windowmanager/WM_api.h
    branches/nurbs25/source/blender/windowmanager/WM_types.h
    branches/nurbs25/source/blender/windowmanager/intern/Makefile
    branches/nurbs25/source/blender/windowmanager/intern/wm_event_system.c
    branches/nurbs25/source/blender/windowmanager/intern/wm_files.c
    branches/nurbs25/source/blender/windowmanager/intern/wm_gesture.c
    branches/nurbs25/source/blender/windowmanager/intern/wm_init_exit.c
    branches/nurbs25/source/blender/windowmanager/intern/wm_operators.c
    branches/nurbs25/source/blender/windowmanager/intern/wm_window.c
    branches/nurbs25/source/blender/windowmanager/wm.h
    branches/nurbs25/source/blender/windowmanager/wm_event_types.h
    branches/nurbs25/source/blenderplayer/CMakeLists.txt
    branches/nurbs25/source/blenderplayer/bad_level_call_stubs/stubs.c
    branches/nurbs25/source/creator/SConscript
    branches/nurbs25/source/creator/creator.c
    branches/nurbs25/source/darwin/Makefile
    branches/nurbs25/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
    branches/nurbs25/source/gameengine/Converter/BL_BlenderDataConversion.cpp
    branches/nurbs25/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
    branches/nurbs25/source/gameengine/GamePlayer/common/CMakeLists.txt
    branches/nurbs25/source/gameengine/GamePlayer/common/SConscript
    branches/nurbs25/source/gameengine/GamePlayer/ghost/CMakeLists.txt
    branches/nurbs25/source/gameengine/GamePlayer/ghost/GPG_Application.cpp
    branches/nurbs25/source/gameengine/GamePlayer/ghost/SConscript
    branches/nurbs25/source/gameengine/Ketsji/KX_GameObject.cpp
    branches/nurbs25/source/gameengine/Ketsji/KX_PyConstraintBinding.cpp
    branches/nurbs25/source/gameengine/Ketsji/KX_PythonInit.cpp
    branches/nurbs25/source/gameengine/Ketsji/KX_PythonInit.h
    branches/nurbs25/source/gameengine/PyDoc/API_intro.py
    branches/nurbs25/source/gameengine/PyDoc/GameLogic.py
    branches/nurbs25/source/gameengine/PyDoc/GameTypes.py
    branches/nurbs25/source/gameengine/PyDoc/Rasterizer.py
    branches/nurbs25/source/gameengine/Rasterizer/RAS_CameraData.h
    
branches/nurbs25/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp
    
branches/nurbs25/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h
    branches/nurbs25/source/nan_compile.mk
    branches/nurbs25/source/nan_definitions.mk
    branches/nurbs25/source/nan_link.mk
    branches/nurbs25/tools/Blender.py
    branches/nurbs25/tools/btools.py

Added Paths:
-----------
    branches/nurbs25/intern/audaspace/FX/AUD_AccumulatorFactory.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_AccumulatorFactory.h
    branches/nurbs25/intern/audaspace/FX/AUD_AccumulatorReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_AccumulatorReader.h
    branches/nurbs25/intern/audaspace/FX/AUD_ButterworthFactory.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_ButterworthFactory.h
    branches/nurbs25/intern/audaspace/FX/AUD_ButterworthReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_ButterworthReader.h
    branches/nurbs25/intern/audaspace/FX/AUD_EnvelopeFactory.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_EnvelopeFactory.h
    branches/nurbs25/intern/audaspace/FX/AUD_EnvelopeReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_EnvelopeReader.h
    branches/nurbs25/intern/audaspace/FX/AUD_HighpassFactory.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_HighpassFactory.h
    branches/nurbs25/intern/audaspace/FX/AUD_HighpassReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_HighpassReader.h
    branches/nurbs25/intern/audaspace/FX/AUD_LowpassFactory.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_LowpassFactory.h
    branches/nurbs25/intern/audaspace/FX/AUD_LowpassReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_LowpassReader.h
    branches/nurbs25/intern/audaspace/FX/AUD_SquareFactory.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_SquareFactory.h
    branches/nurbs25/intern/audaspace/FX/AUD_SquareReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_SquareReader.h
    branches/nurbs25/intern/audaspace/FX/AUD_SumFactory.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_SumFactory.h
    branches/nurbs25/intern/audaspace/FX/AUD_SumReader.cpp
    branches/nurbs25/intern/audaspace/FX/AUD_SumReader.h
    branches/nurbs25/intern/audaspace/fftw/
    branches/nurbs25/intern/audaspace/fftw/AUD_BandPassFactory.cpp
    branches/nurbs25/intern/audaspace/fftw/AUD_BandPassFactory.h
    branches/nurbs25/intern/audaspace/fftw/AUD_BandPassReader.cpp
    branches/nurbs25/intern/audaspace/fftw/AUD_BandPassReader.h
    branches/nurbs25/intern/audaspace/fftw/Makefile
    branches/nurbs25/intern/audaspace/intern/AUD_LinearResampleFactory.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_LinearResampleFactory.h
    branches/nurbs25/intern/audaspace/intern/AUD_LinearResampleReader.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_LinearResampleReader.h
    branches/nurbs25/intern/audaspace/intern/AUD_Mixer.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_Mixer.h
    branches/nurbs25/intern/ghost/intern/GHOST_EventTrackpad.h
    branches/nurbs25/release/scripts/modules/bpy/app.py
    branches/nurbs25/release/scripts/modules/rigify/arm_biped.py
    branches/nurbs25/release/scripts/modules/rigify/leg_biped.py
    branches/nurbs25/release/scripts/modules/rigify/leg_quadruped.py
    branches/nurbs25/release/scripts/modules/rigify/mouth.py
    branches/nurbs25/release/scripts/modules/rigify/stretch.py
    branches/nurbs25/release/scripts/modules/rigify/stretch_twist.py
    branches/nurbs25/release/scripts/modules/rigify/track_dual.py
    branches/nurbs25/release/scripts/modules/rigify/track_reverse.py
    branches/nurbs25/release/scripts/op/uv.py
    branches/nurbs25/release/scripts/templates/operator_uv.py
    branches/nurbs25/source/blender/collada/Makefile
    branches/nurbs25/source/blender/editors/object/object_bake.c
    branches/nurbs25/source/blender/editors/space_view3d/drawanimviz.c
    branches/nurbs25/source/blender/makesrna/intern/rna_animviz.c
    branches/nurbs25/source/gameengine/PyDoc/PhysicsConstraints.py
    branches/nurbs25/source/gameengine/PyDoc/VideoTexture.py

Removed Paths:
-------------
    branches/nurbs25/intern/audaspace/SDL/AUD_SDLMixer.cpp
    branches/nurbs25/intern/audaspace/SDL/AUD_SDLMixer.h
    branches/nurbs25/intern/audaspace/SDL/AUD_SDLMixerFactory.cpp
    branches/nurbs25/intern/audaspace/SDL/AUD_SDLMixerFactory.h
    branches/nurbs25/intern/audaspace/SDL/AUD_SDLMixerReader.cpp
    branches/nurbs25/intern/audaspace/SDL/AUD_SDLMixerReader.h
    branches/nurbs25/intern/audaspace/fftw/AUD_BandPassFactory.cpp
    branches/nurbs25/intern/audaspace/fftw/AUD_BandPassFactory.h
    branches/nurbs25/intern/audaspace/fftw/AUD_BandPassReader.cpp
    branches/nurbs25/intern/audaspace/fftw/AUD_BandPassReader.h
    branches/nurbs25/intern/audaspace/fftw/Makefile
    branches/nurbs25/intern/audaspace/intern/AUD_FloatMixer.cpp
    branches/nurbs25/intern/audaspace/intern/AUD_FloatMixer.h
    branches/nurbs25/intern/audaspace/intern/AUD_IMixer.h
    branches/nurbs25/release/scripts/modules/rigify/arm_biped_generic.py
    branches/nurbs25/release/scripts/modules/rigify/leg_biped_generic.py
    branches/nurbs25/release/scripts/modules/rigify/leg_quadruped_generic.py

Modified: branches/nurbs25/SConstruct
===================================================================
--- branches/nurbs25/SConstruct 2010-01-21 19:43:27 UTC (rev 26169)
+++ branches/nurbs25/SConstruct 2010-01-21 20:45:45 UTC (rev 26170)
@@ -500,7 +500,7 @@
                                        else:                                   
        dir = os.path.join(env['BF_INSTALLDIR'], '.blender')                    
        
                                        dir += os.sep + 
os.path.basename(scriptpath) + dp[len(scriptpath):]
                                        
-                                       source=[os.path.join(dp, f) for f in df]
+                                       source=[os.path.join(dp, f) for f in df 
if f[-3:]!='pyc']
                                        
scriptinstall.append(env.Install(dir=dir,source=source))
 
 #-- icons
@@ -611,7 +611,11 @@
                                                
'${LCGDIR}/ffmpeg/lib/avformat-52.dll',
                                                
'${LCGDIR}/ffmpeg/lib/avdevice-52.dll',
                                                
'${LCGDIR}/ffmpeg/lib/avutil-50.dll',
-                                               
'${LCGDIR}/ffmpeg/lib/swscale-0.dll']
+                                               
'${LCGDIR}/ffmpeg/lib/swscale-0.dll',
+                                               
'${LCGDIR}/ffmpeg/lib/libfaac-0.dll',
+                                               
'${LCGDIR}/ffmpeg/lib/libfaad-2.dll',
+                                               
'${LCGDIR}/ffmpeg/lib/libmp3lame-0.dll',
+                                               
'${LCGDIR}/ffmpeg/lib/libx264-67.dll']
        if env['WITH_BF_JACK']:
                dllsources += ['${LCGDIR}/jack/lib/libjack.dll']
        windlls = env.Install(dir=env['BF_INSTALLDIR'], source = dllsources)

Modified: 
branches/nurbs25/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
===================================================================
--- 
branches/nurbs25/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
  2010-01-21 19:43:27 UTC (rev 26169)
+++ 
branches/nurbs25/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
  2010-01-21 20:45:45 UTC (rev 26170)
@@ -412,31 +412,6 @@
                                        // restore
                                        
collisionObject->internalSetTemporaryCollisionShape(saveCollisionShape);
                                }
-                       } else {
-                               if (collisionShape->isSoftBody()) {
-                                       btSoftBody* softBody = 
static_cast<btSoftBody*>(collisionObject);
-                                       btSoftBody::sRayCast softResult;
-                                       if 
(softBody->rayTest(rayFromTrans.getOrigin(), rayToTrans.getOrigin(), 
softResult)) 
-                                       {
-                                               
btCollisionWorld::LocalShapeInfo shapeInfo;
-                                               shapeInfo.m_shapePart = 0;
-                                               shapeInfo.m_triangleIndex = 
softResult.index;
-                                               // get the normal
-                                               btVector3 normal = 
softBody->m_faces[softResult.index].m_normal;
-                                               btVector3 rayDir = 
rayToTrans.getOrigin() - rayFromTrans.getOrigin();
-                                               if (normal.dot(rayDir) > 0) {
-                                                       // normal always point 
toward origin of the ray
-                                                       normal = -normal;
-                                               }
-                                               
btCollisionWorld::LocalRayResult rayResult
-                                                       (collisionObject,
-                                                        &shapeInfo,
-                                                        normal,
-                                                        softResult.fraction);
-                                               bool    normalInWorldSpace = 
true;
-                                               
resultCallback.addSingleResult(rayResult,normalInWorldSpace);
-                                       }
-                               }
                        }
                }
        }

Modified: 
branches/nurbs25/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
===================================================================
--- 
branches/nurbs25/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
    2010-01-21 19:43:27 UTC (rev 26169)
+++ 
branches/nurbs25/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
    2010-01-21 20:45:45 UTC (rev 26170)
@@ -354,7 +354,7 @@
 
        /// rayTest performs a raycast on all objects in the btCollisionWorld, 
and calls the resultCallback
        /// This allows for several queries: first hit, all hits, any hit, 
dependent on the value returned by the callback.
-       void    rayTest(const btVector3& rayFromWorld, const btVector3& 
rayToWorld, RayResultCallback& resultCallback) const; 
+       virtual void rayTest(const btVector3& rayFromWorld, const btVector3& 
rayToWorld, RayResultCallback& resultCallback) const; 
 
        // convexTest performs a swept convex cast on all objects in the 
btCollisionWorld, and calls the resultCallback
        // This allows for several queries: first hit, all hits, any hit, 
dependent on the value return by the callback.

Modified: 
branches/nurbs25/extern/bullet2/src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp
===================================================================
--- 
branches/nurbs25/extern/bullet2/src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp 
    2010-01-21 19:43:27 UTC (rev 26169)
+++ 
branches/nurbs25/extern/bullet2/src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp 
    2010-01-21 20:45:45 UTC (rev 26170)
@@ -22,6 +22,7 @@
 #include "btSoftBodyHelpers.h"
 
 
+//#define USE_BRUTEFORCE_RAYBROADPHASE 1
 
 
 
@@ -140,3 +141,140 @@
                }               
        }       
 }
+
+
+struct btSoftSingleRayCallback : public btBroadphaseRayCallback
+{
+       btVector3       m_rayFromWorld;
+       btVector3       m_rayToWorld;
+       btTransform     m_rayFromTrans;
+       btTransform     m_rayToTrans;
+       btVector3       m_hitNormal;
+
+       const btSoftRigidDynamicsWorld* m_world;
+       btCollisionWorld::RayResultCallback&    m_resultCallback;
+
+       btSoftSingleRayCallback(const btVector3& rayFromWorld,const btVector3& 
rayToWorld,const btSoftRigidDynamicsWorld* 
world,btCollisionWorld::RayResultCallback& resultCallback)
+       :m_rayFromWorld(rayFromWorld),
+       m_rayToWorld(rayToWorld),
+       m_world(world),
+       m_resultCallback(resultCallback)
+       {
+               m_rayFromTrans.setIdentity();
+               m_rayFromTrans.setOrigin(m_rayFromWorld);
+               m_rayToTrans.setIdentity();
+               m_rayToTrans.setOrigin(m_rayToWorld);
+
+               btVector3 rayDir = (rayToWorld-rayFromWorld);
+
+               rayDir.normalize ();
+               ///what about division by zero? --> just set rayDirection[i] to 
INF/1e30
+               m_rayDirectionInverse[0] = rayDir[0] == btScalar(0.0) ? 
btScalar(1e30) : btScalar(1.0) / rayDir[0];
+               m_rayDirectionInverse[1] = rayDir[1] == btScalar(0.0) ? 
btScalar(1e30) : btScalar(1.0) / rayDir[1];
+               m_rayDirectionInverse[2] = rayDir[2] == btScalar(0.0) ? 
btScalar(1e30) : btScalar(1.0) / rayDir[2];
+               m_signs[0] = m_rayDirectionInverse[0] < 0.0;
+               m_signs[1] = m_rayDirectionInverse[1] < 0.0;
+               m_signs[2] = m_rayDirectionInverse[2] < 0.0;
+
+               m_lambda_max = rayDir.dot(m_rayToWorld-m_rayFromWorld);
+
+       }
+
+       
+
+       virtual bool    process(const btBroadphaseProxy* proxy)
+       {
+               ///terminate further ray tests, once the closestHitFraction 
reached zero
+               if (m_resultCallback.m_closestHitFraction == btScalar(0.f))
+                       return false;
+
+               btCollisionObject*      collisionObject = 
(btCollisionObject*)proxy->m_clientObject;
+
+               //only perform raycast if filterMask matches
+               
if(m_resultCallback.needsCollision(collisionObject->getBroadphaseHandle())) 
+               {
+                       //RigidcollisionObject* collisionObject = 
ctrl->GetRigidcollisionObject();
+                       //btVector3 
collisionObjectAabbMin,collisionObjectAabbMax;
+#if 0
+#ifdef RECALCULATE_AABB
+                       btVector3 collisionObjectAabbMin,collisionObjectAabbMax;
+                       
collisionObject->getCollisionShape()->getAabb(collisionObject->getWorldTransform(),collisionObjectAabbMin,collisionObjectAabbMax);
+#else
+                       
//getBroadphase()->getAabb(collisionObject->getBroadphaseHandle(),collisionObjectAabbMin,collisionObjectAabbMax);
+                       const btVector3& collisionObjectAabbMin = 
collisionObject->getBroadphaseHandle()->m_aabbMin;
+                       const btVector3& collisionObjectAabbMax = 
collisionObject->getBroadphaseHandle()->m_aabbMax;
+#endif
+#endif
+                       //btScalar hitLambda = 
m_resultCallback.m_closestHitFraction;
+                       //culling already done by broadphase
+                       //if 
(btRayAabb(m_rayFromWorld,m_rayToWorld,collisionObjectAabbMin,collisionObjectAabbMax,hitLambda,m_hitNormal))
+                       {
+                               
m_world->rayTestSingle(m_rayFromTrans,m_rayToTrans,
+                                       collisionObject,
+                                               
collisionObject->getCollisionShape(),
+                                               
collisionObject->getWorldTransform(),
+                                               m_resultCallback);
+                       }
+               }
+               return true;
+       }
+};
+
+void   btSoftRigidDynamicsWorld::rayTest(const btVector3& rayFromWorld, const 
btVector3& rayToWorld, RayResultCallback& resultCallback) const
+{
+       BT_PROFILE("rayTest");
+       /// use the broadphase to accelerate the search for objects, based on 
their aabb
+       /// and for each object with ray-aabb overlap, perform an exact ray test
+       btSoftSingleRayCallback 
rayCB(rayFromWorld,rayToWorld,this,resultCallback);
+
+#ifndef USE_BRUTEFORCE_RAYBROADPHASE
+       m_broadphasePairCache->rayTest(rayFromWorld,rayToWorld,rayCB);
+#else
+       for (int i=0;i<this->getNumCollisionObjects();i++)
+       {
+               rayCB.process(m_collisionObjects[i]->getBroadphaseHandle());
+       }       
+#endif //USE_BRUTEFORCE_RAYBROADPHASE
+
+}
+
+
+void   btSoftRigidDynamicsWorld::rayTestSingle(const btTransform& 
rayFromTrans,const btTransform& rayToTrans,
+                                         btCollisionObject* collisionObject,
+                                         const btCollisionShape* 
collisionShape,
+                                         const btTransform& 
colObjWorldTransform,
+                                         RayResultCallback& resultCallback)
+{
+       if (collisionShape->isSoftBody()) {
+               btSoftBody* softBody = btSoftBody::upcast(collisionObject);
+               if (softBody) {
+                       btSoftBody::sRayCast softResult;
+                       if (softBody->rayTest(rayFromTrans.getOrigin(), 
rayToTrans.getOrigin(), softResult)) 
+                       {
+                               if (softResult.fraction<= 
resultCallback.m_closestHitFraction) 
+                               {
+                                       btCollisionWorld::LocalShapeInfo 
shapeInfo;
+                                       shapeInfo.m_shapePart = 0;
+                                       shapeInfo.m_triangleIndex = 
softResult.index;
+                                       // get the normal
+                                       btVector3 normal = 
softBody->m_faces[softResult.index].m_normal;
+                                       btVector3 rayDir = 
rayToTrans.getOrigin() - rayFromTrans.getOrigin();
+                                       if (normal.dot(rayDir) > 0) {
+                                               // normal must always point 
toward origin of the ray
+                                               normal = -normal;
+                                       }
+                                       btCollisionWorld::LocalRayResult 
rayResult
+                                               (collisionObject,
+                                               &shapeInfo,
+                                               normal,
+                                               softResult.fraction);
+                                       bool    normalInWorldSpace = true;
+                                       
resultCallback.addSingleResult(rayResult,normalInWorldSpace);
+                               }
+                       }
+               }
+       } 
+       else {
+               
btCollisionWorld::rayTestSingle(rayFromTrans,rayToTrans,collisionObject,collisionShape,colObjWorldTransform,resultCallback);
+       }
+}

Modified: 
branches/nurbs25/extern/bullet2/src/BulletSoftBody/btSoftRigidDynamicsWorld.h
===================================================================
--- 
branches/nurbs25/extern/bullet2/src/BulletSoftBody/btSoftRigidDynamicsWorld.h   
    2010-01-21 19:43:27 UTC (rev 26169)
+++ 
branches/nurbs25/extern/bullet2/src/BulletSoftBody/btSoftRigidDynamicsWorld.h   
    2010-01-21 20:45:45 UTC (rev 26170)
@@ -77,6 +77,17 @@
                return m_softBodies;
        }
 
+       virtual void rayTest(const btVector3& rayFromWorld, const btVector3& 
rayToWorld, RayResultCallback& resultCallback) const; 
+
+       /// rayTestSingle performs a raycast call and calls the resultCallback. 
It is used internally by rayTest.
+       /// In a future implementation, we consider moving the ray test as a 
virtual method in btCollisionShape.
+       /// This allows more customization.

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to