Daniel Genrich [Sun, 17 Aug 2008 16:36:37 +0000 (16:36 +0000)]
Win64 commit: first little commit to test how it compiles on other plattforms - I'll then commit the other changes if all is fine :)
Benoit Bolsee [Sat, 16 Aug 2008 20:45:37 +0000 (20:45 +0000)]
BGE patch: New Delay sensor (derived from patch #17472)
Introduction of a new Delay sensor that can be used to
generate positive and negative triggers at precise time,
expressed in number of frames.
The delay parameter defines the length of the initial
OFF period. A positive trigger is generated at the end
of this period. The duration parameter defines the
length of the ON period following the OFF period.
A negative trigger is generated at the end of the ON period.
If duration is 0, the sensor stays ON and there is no
negative trigger.
The sensor runs the OFF-ON cycle once unless the repeat
option is set: the OFF-ON cycle repeats indefinately
(or the OFF cycle if duration is 0).
The new generic SCA_ISensor::reset() Python function
can be used at any time to restart the sensor: the
current cycle is interrupted and no trigger is generated.
Janne Karhu [Sat, 16 Aug 2008 16:29:12 +0000 (16:29 +0000)]
Boids didn't get correct fall-off from wind effector.
Boids now react to vortex field also.
Janne Karhu [Sat, 16 Aug 2008 16:21:01 +0000 (16:21 +0000)]
Animateable (ipos) power and fall-off for particle effectors.
Campbell Barton [Sat, 16 Aug 2008 12:42:34 +0000 (12:42 +0000)]
warning message for when sensors loose their controllers, has been a problem recently with linking in groups that contain game logic.
- also useful for testing bug [#17485] Sensors lost when loading objects from a group (apricot showstopper)
Campbell Barton [Sat, 16 Aug 2008 00:06:51 +0000 (00:06 +0000)]
SCA_PythonController.cpp - Made errors in python print the controller name, useful when blender crashes on printing the python error which happens frequently.
buttons_logic.c - NULL checks for game logic buttons, linking in groups with some logic links to objects outsude the group could crash blender. There are NULL checks for this case elsewhere so I assume it should be supported.
CMakeLists.txt - remove YESIAMSTUPID option, is not used anymore.
Benoit Bolsee [Fri, 15 Aug 2008 22:17:50 +0000 (22:17 +0000)]
BGE bug fix: the fix in revision 16022 for bug #17450 was wrong: the formula used to extract scaling and rotation was giving incorrect results for some type of rotation, leading to wrong position and orientation for parented objects with no scale applied. The new formula follows Blender's internal math.
Martin Poirier [Thu, 14 Aug 2008 19:16:55 +0000 (19:16 +0000)]
Fixing button placement typo reported by Carsten on mailing list
Campbell Barton [Thu, 14 Aug 2008 08:58:25 +0000 (08:58 +0000)]
Python API get/setObject update for Actuators. (SetParent, AddObject, Camera and TrackTo)
* bugfix for BGE python api - SetParent actuator getObject would segfault if the object was not set.
* Added utility function ConvertPythonToGameObject() that can take a GameObject, string or None and set the game object from this since it was being done in a number of places.
* allow setObject(None), since no object is valid for actuators, Python should be able to set this.
* added optional argument for getObject() so it returns the KX_GameObject rather then its name, would prefer this be default but it could break existing games.
Diego Borghetti [Thu, 14 Aug 2008 06:42:52 +0000 (06:42 +0000)]
Last part of the svn release commit.
No need freeze, in a sec I merge both revision into
the 2.47 branch and tag it.
Diego Borghetti [Thu, 14 Aug 2008 06:33:19 +0000 (06:33 +0000)]
Part one of the 2.47 release commit
Campbell Barton [Thu, 14 Aug 2008 05:06:59 +0000 (05:06 +0000)]
bugfix (good for 2.47) - 2 cases of returning Py_None without increfing it. this can crash blender.
Campbell Barton [Thu, 14 Aug 2008 03:23:36 +0000 (03:23 +0000)]
game engine python api
* removed macros that were not used much, some misleading.
* removed error string setting calls that overwrote the error set by PyArg_ParseTuple with a less useful one.
* use python macros Py_RETURN_NONE, Py_RETURN_TRUE, Py_RETURN_FALSE
Martin Poirier [Wed, 13 Aug 2008 17:38:38 +0000 (17:38 +0000)]
Snap menu header rewording, to make documentation clearer (there was "mode" and "snap mode").
This can and should be merged for 2.47, as the docs will use those wordings.
Brecht Van Lommel [Wed, 13 Aug 2008 10:19:47 +0000 (10:19 +0000)]
Bugfix: in the game engine, errors in a particular python script caused
somewhat random crashes, which I think was caused by the error print
using python objects that were freed too soon. Now it frees the dictionary
after the print.
Andre Susano Pinto [Tue, 12 Aug 2008 13:30:17 +0000 (13:30 +0000)]
New nearest_point_in_tri_surface function.. 50% faster
Results were verified against the old function
Non 2.47 fix
Campbell Barton [Tue, 12 Aug 2008 12:32:54 +0000 (12:32 +0000)]
raise an error when assigning properties to a game object that cant be converted. also use python apis functions for converting floats and int types (faster then PyArg_Parse)
Jens Ole Wund [Mon, 11 Aug 2008 20:40:29 +0000 (20:40 +0000)]
bdiego no 2.47 option for now
make soft bodies spawn threads on a mid level
use G.rt == 16 to switch to 'old style'
i am going to remove that G.rt switch if everyone is fine /* i do not intend to keep 2 versions of code up because of "BAD STYLE" */
so .. give feed back ..
Ken Hughes [Mon, 11 Aug 2008 19:06:30 +0000 (19:06 +0000)]
Python API
----------
Added texture.offset and textute.gain attributes, to access parameters for Musgrove textures.
Matt Ebb [Mon, 11 Aug 2008 05:23:36 +0000 (05:23 +0000)]
* Fix for a bug zanqdo reported in IRC - transparent shadows were not
getting correct alpha when cast through node materials - in fact the
node tree wasn't being shaded at all.
Campbell Barton [Mon, 11 Aug 2008 03:52:21 +0000 (03:52 +0000)]
fix for [#17365] PLY export script writes comment in invalid way
this is good for 2.47
Joshua Leung [Sun, 10 Aug 2008 03:39:09 +0000 (03:39 +0000)]
Changed a few places where visibility for EditMode bones is tested, so that they now use a macro I introduced in the previous commit.
Joshua Leung [Sun, 10 Aug 2008 03:10:07 +0000 (03:10 +0000)]
== Armature Editing Tweaks ==
* New Tool: Switch Direction
This tool switches the direction of selected bones in EditMode, and can be found under the Specials Menu (WKey). It also adjusts the parenting, so that continuous chains can still be linked.
* Bone Locking:
Removed Lock/Unlock functions from Specials menu, and moved this functionality under the Toggle/Set/Clear Bone Settings tools (Shift/Ctrl-Shift/Alt W respectively)
Campbell Barton [Sun, 10 Aug 2008 01:38:02 +0000 (01:38 +0000)]
* Script to convert BDF pixel fonts into C++ files blender can read. - Amiga bitmap font example download.blender.org/ftp/incoming/bitmap.png
* BF_CONFIG was missing from SCons help menu.
Ken Hughes [Sat, 9 Aug 2008 22:24:12 +0000 (22:24 +0000)]
Python API
----------
Remove documentation for Render.EnableEdgeShift and Render.EnableEdgeAll methods, which are no longer in the API.
Joshua Leung [Sat, 9 Aug 2008 10:50:59 +0000 (10:50 +0000)]
Bugfix #17465: "Pose Edit Not Possible" message activated on 3D navigation
When navigating the 3d-view with a bone (or bones) selected, 'Rest Pose' enabled for the armature, and 'Orbit Around Selection' turned on, a "Pose Edit Not Possible" warning would pop up every time the view was manipulated.
Was caused by a missing check for the 'TFM_DUMMY' transform mode used when calculating center to use (based on active item)
Janne Karhu [Fri, 8 Aug 2008 16:40:41 +0000 (16:40 +0000)]
Fix for [#13697] Reactor particles with children doesn't render
-Particles were being recalculated a bit too aggressively. Normal particles didn't care, but since reactor particles have dynamic birth times they lost crucial information in the recalculation.
Janne Karhu [Fri, 8 Aug 2008 15:38:14 +0000 (15:38 +0000)]
Fix for [#16671] Moving a metaball that a particle system uses as a object (for visualization) also moves the particles
-The particle dupliobjects were using the objects trackflag in combination with it's rotation causing strange behavior. Now the trackflag is ignored and only the rotation of the object being duplicated is taken into account.
Daniel Genrich [Fri, 8 Aug 2008 14:24:47 +0000 (14:24 +0000)]
Fixing point-face distance to support degenerated tris/quads with area<FLT_EPSILON
Remigiusz Fiedler [Fri, 8 Aug 2008 11:40:51 +0000 (11:40 +0000)]
forgot update ver.number in last commit
Joshua Leung [Fri, 8 Aug 2008 10:15:08 +0000 (10:15 +0000)]
== PoseLib: Add New (on Current Frame) ==
When adding poses to a PoseLib, it is now possible to make them be added on the current frame. It is still recommended to use the default method (plain Add New), as it is prevents poses stored in the PoseLib from being overwritten accidentally.
Benoit Bolsee [Fri, 8 Aug 2008 09:57:17 +0000 (09:57 +0000)]
BGE bug #17450 fixed: When we have parented objects with no scale-applyed objects the ray hit system doesn't work properly. Fix by separating rotation and scaling in the parent inverse node to keep scaling correct down to the leaf objects. Only isotropric scaling should be used, as always with the BGE.
Benoit Bolsee [Fri, 8 Aug 2008 09:52:32 +0000 (09:52 +0000)]
Update MSVC project to include bvhutils.c
Geoffrey Bantle [Thu, 7 Aug 2008 22:31:35 +0000 (22:31 +0000)]
-> Fix for warnings in FLT exporter and Palette Manager
Removed buffer overflow masking warnings from the
FLT exporter and Palette Manager.
Daniel Genrich [Thu, 7 Aug 2008 22:05:45 +0000 (22:05 +0000)]
Fixing compile error with msvc (introducing max tree to 32)
Andre Susano Pinto [Thu, 7 Aug 2008 20:12:56 +0000 (20:12 +0000)]
Fixed compiling warnings of bvhutils.c
Commited the right version of BLI_kdopbvh.c
Ken Hughes [Thu, 7 Aug 2008 18:01:39 +0000 (18:01 +0000)]
Disable redcode (the file format of RED one, R3D) by default.
Benoit Bolsee [Thu, 7 Aug 2008 17:29:06 +0000 (17:29 +0000)]
BGE bug #17408 fixed: Radar sensor is oriented the wrong way when the set along negative axis. Improve reliability of Radar detection by clearing the manifold cache instead of updating it.
Daniel Genrich [Thu, 7 Aug 2008 17:27:29 +0000 (17:27 +0000)]
BVH-KDOP update (merge from shrinkwrap branch): supports raytracing, nearest neighbour, non-recursive now, faster than kdtree.c implementation normaly, divided into 2 sources: generla structure in blenlib, mesh/derivedmesh depending interface stuff in blenkernel
Benoit Bolsee [Thu, 7 Aug 2008 11:31:24 +0000 (11:31 +0000)]
BGE bug #17409 fixed: BGE Near Sensor Incorrect once inside the radius. The bug is located in Bullet: the manifold contact points for non-response objects (sensor, ghost) are not refreshed and stay in the cash as long as the objects overlap in the broad phase. Instead of fixing Bullet, I put a work around in the BGE. This may need review when a new Bullet library is integrated
Benoit Bolsee [Thu, 7 Aug 2008 11:25:45 +0000 (11:25 +0000)]
BGE fix: alignToVect() fac parameter clamping should obviously be done the other way round
Campbell Barton [Thu, 7 Aug 2008 09:56:31 +0000 (09:56 +0000)]
fix for [#17448] Duplicating textures with IPOs doesn't increment IPO user count
Geoffrey Bantle [Thu, 7 Aug 2008 04:38:35 +0000 (04:38 +0000)]
-> Slight tweak to FLT exporter
FLT files written by the FLT exporter would
reference external files (other FLT files,
texture maps, ect) with standard backslash
seperators on win32. However, many tools
that deal with FLT files expect directory
seperators to always be forward slashes
regardless of platform.
Campbell Barton [Thu, 7 Aug 2008 01:02:06 +0000 (01:02 +0000)]
added back copy buttons to "Texture Face" panel.
Chris Want [Wed, 6 Aug 2008 20:37:15 +0000 (20:37 +0000)]
Getting the blenderplayer to compile/link with CMake.
Note: yuck, this is a horrible way to do it -- python devs should
think about splitting the python stuff into separate libs if they
only want to partially include it in the game engine.
Ken Hughes [Wed, 6 Aug 2008 20:05:08 +0000 (20:05 +0000)]
Python API
----------
Fix typo in documentation for render.startFrame() and render.endFrame(). Arguments are valid in the range 1 to MAXFRAME.
Chris Want [Wed, 6 Aug 2008 19:47:52 +0000 (19:47 +0000)]
Fixed a warning due to a change in policy between cmake 2.4 and
cmake 2.6. (Other warnings still exist, but are harder to fix.)
Benoit Bolsee [Wed, 6 Aug 2008 10:23:47 +0000 (10:23 +0000)]
BGE fix: confirm fix for segmentation fault by Diego and remove warning in calling ConvertMaterial Ipos.
Campbell Barton [Wed, 6 Aug 2008 04:09:10 +0000 (04:09 +0000)]
* blenderplayer wasnt useing the scenes frame rate.
* GBE Python API's alignToVect wasnt clamping the align ammount from 0.0-1.0
* Generated images arnt animated - use for a test to see if the textures animated.
Campbell Barton [Tue, 5 Aug 2008 22:26:00 +0000 (22:26 +0000)]
Made Mathutils its own module rather then GanmeLogic.Mathutils
Benoit Bolsee [Tue, 5 Aug 2008 22:23:38 +0000 (22:23 +0000)]
Update MSVC project files for Mathutils support in the blenderplayer
Ken Hughes [Tue, 5 Aug 2008 22:13:13 +0000 (22:13 +0000)]
Fix compiler warnings from earlier commit.
Diego Borghetti [Tue, 5 Aug 2008 21:20:14 +0000 (21:20 +0000)]
Fix segmentation faul in GE.
We assign the material name before check the pointer.
Please Benoit check this and also I have a compiler warning
about the second argument in the previous call of
ConvertMaterialIpos, the argument is NULL but the function
need a dword.
Benoit Bolsee [Tue, 5 Aug 2008 16:23:33 +0000 (16:23 +0000)]
BGE fix bug #17430: BGE Collide/Touch Sensor interfearing with other unrelated sensor states. The bug was introduced in the recent logic optimization patch. It only affects collision and touch sensors. The bug is fixed by keeping track of registration count.
Ben Batt [Tue, 5 Aug 2008 14:42:04 +0000 (14:42 +0000)]
Fix for [#17421] Issue with Displace modifier not updating with
animated textures
I have added a dependsOnTime function for the Displace modifier which checks
if the displacement texture has IPOs, is a plugin, or uses an animated image.
Campbell Barton [Tue, 5 Aug 2008 09:35:46 +0000 (09:35 +0000)]
Added GameLogic.Mathutils so Mathutils and its types can be accessed from blenderplayer.
also changed importText so it dosnt do a malloc
Joshua Leung [Tue, 5 Aug 2008 03:29:46 +0000 (03:29 +0000)]
Bugfix #16673: Segfault when using Bake Constraints Script
There were several buggy things here (in order of significance):
1) PyAPI method didn't check to make sure that there was an active posechannel when deleting posechannel constraints. This was required by constraint_active_func() to be able to update the 'active' flags for the constraints in that stack
2) PyAPI method removed the links to the constraint data from the constraints list, even though that wasn't necessary, and may have caused memory leaks.
3) constraint_active_func() had no error checking for no constraints-stack being found
Campbell Barton [Mon, 4 Aug 2008 23:20:12 +0000 (23:20 +0000)]
own bug in weightpaint cleaning, wasnt removing as many groups from verts as it should be.
Daniel Genrich [Mon, 4 Aug 2008 17:24:11 +0000 (17:24 +0000)]
Fix for better icc + openmp support using scons
Ben Batt [Mon, 4 Aug 2008 16:44:13 +0000 (16:44 +0000)]
Fix for [#17291] Array modifier merge caps leaves a whole
This code was missing a test_index_face call after merging, so it was making
quads with v4 == 0.
Ben Batt [Mon, 4 Aug 2008 14:49:55 +0000 (14:49 +0000)]
Fix for [#17376] Applying mirror modifier does not respect UV pinning.
The custom data system wasn't swapping pinning or selection flags for MTFace
data when face vertices were reordered.
Janne Karhu [Mon, 4 Aug 2008 14:17:11 +0000 (14:17 +0000)]
Fix for [#17414] Particles doesn't obey to lattice once children are added
-Lattice calculations were left out for children by accident
Janne Karhu [Mon, 4 Aug 2008 13:57:04 +0000 (13:57 +0000)]
Fix for [#17366] Particle children from particles only take colour from UV-Maps
-Some old code in particle rendering hadn't been updated properly.
Matt Ebb [Mon, 4 Aug 2008 11:47:17 +0000 (11:47 +0000)]
* Armature hierarchy selection tools
These are for use in pose mode or armature edit mode, to let you quickly traverse up and down a chain of bones.
It's quite useful for bones that are in hard-to-click places.
The tools are:
*Select parent/child ( [ and ] )
selects the parent or child of the active bone, deselecting the original active bone
* Extend select parent/child (shift [ and shift ] )
selects the parent or child of the active bone, adding to the selection
Thanks to Joshua for reviewing this so promptly!
PS. I'd like to use these [ and ] keys more widely in blender as consistent 'select next / previous' tools. I can imagine it being very useful for a lot of things like keyframes, nodes, mesh edges, etc.
Campbell Barton [Mon, 4 Aug 2008 01:57:22 +0000 (01:57 +0000)]
* KX_GameObject.cpp - error with getMesh(), was returning None rather then an error with invalid args. also memory leak with getVectTo() if invalid args were given.
* Material.c - functions for get/setRayTransGlossSamples were not being used.
* BPY_interface.c - removed function GetName(), since everything else just uses id->name+2.
* header_info.c - added ifdef win32 around copy_game_dll since its not needed for other os's yet
Benoit Bolsee [Sun, 3 Aug 2008 21:59:36 +0000 (21:59 +0000)]
BGE patch #17398 approved: implementation of BGE method getVectTo().
Benoit Bolsee [Sun, 3 Aug 2008 21:57:52 +0000 (21:57 +0000)]
Update MSVC project files for new Boolean Operation file (BOP_Merge2.cpp)
Peter Schlaile [Sun, 3 Aug 2008 16:11:57 +0000 (16:11 +0000)]
== FFMPEG ==
This fixes:
[#16655] Blender crashes when Fraps videos are added to the sequencer
(sorry, color conversion is not supported by swscaler for some reason,
so currently, only the crash is fixed)
Remigiusz Fiedler [Sun, 3 Aug 2008 15:57:09 +0000 (15:57 +0000)]
DXF-importer script. Works well with 2.46winXP
Please commit to 2.47 branch
patch history:
v1.12 - 2008.08.03
c2 warningfix: relocating of globals: layersmap, oblist
c2 modif UI: buttons newScene+targetLayer moved to start panel
v1.12 - 2008.07.04
c1 added control Curve's OrderU parameter
c1 modif UI: preset buttons X-2D-3D moved to start panel
b6 added handling exception of not registered LAYERs (Hammer-HL-editor DXF output)
b5 rebuild UI: global preset 2D for Curve-Import
b5 added UI-options: PL-MESH N+N plmesh_flip and normals_out
b5 added support for SPLINEs, added control OrderU parameter
b5 rewrote draw module for NURBS_curve and Bezier_curve
v1.12 - 2008.06.22
b4 change versioning system 1.0.12 -> 1.12
b4 print at start version-info to console
b3 bugfix: ob.name conflict with existing meshes (different ob.name/mesh.name)
Peter Schlaile [Sun, 3 Aug 2008 15:56:35 +0000 (15:56 +0000)]
== Sequencer ==
Fixes:
[#15082] Sequencer: for image strips, the Input file field disappears if the cursor is out of the selected strip
also it wasn't really a bug, since the file name of image input strips
_has_ to depend on CFRA.
Well, we choose the next possible image strip, which is most likely the thing,
most people expected...
Peter Schlaile [Sun, 3 Aug 2008 15:45:53 +0000 (15:45 +0000)]
== Sequencer ==
This fixes:
[#17405] Sequencer: unselected black strips are unreadable
using
[#17418] Fix for bug #17405: unselected black seq strips text unreadable
Thanks to Roelf De Kock for providing the patch and
mindrones for the bug report :)
Peter Schlaile [Sun, 3 Aug 2008 15:35:56 +0000 (15:35 +0000)]
== Sequencer ==
This fixes:
[#17413] Sequencer: Blender crashes pressing R on a color strip
Joshua Leung [Sun, 3 Aug 2008 11:55:45 +0000 (11:55 +0000)]
Grease Pencil Drawing:
Some WIP code for 'nicer' drawing of thick 2d-strokes that will hopefully result in smoother lines, particularly with abrupt direction changes. Currently the code is hidden behind the rt button (for rt != 0), as in some cases, it still looks rather bad.
Daniel Genrich [Sun, 3 Aug 2008 11:40:09 +0000 (11:40 +0000)]
Little speedup for kdop-bvh
Daniel Genrich [Sun, 3 Aug 2008 01:41:57 +0000 (01:41 +0000)]
Bugfix for non working selfcollisions [no 2.47 bugfix]
Daniel Genrich [Sun, 3 Aug 2008 01:00:51 +0000 (01:00 +0000)]
Bugfix for weird + in the code, no idea why it compiled (yet some selfcollision bug to fix) [no 2.47 fix]
Benoit Bolsee [Sat, 2 Aug 2008 22:11:22 +0000 (22:11 +0000)]
Small update to get the BlenderPlayer compiling (also needed for 2.47)
Campbell Barton [Sat, 2 Aug 2008 21:39:01 +0000 (21:39 +0000)]
BKE_global.h include path wasnt correct. made boxpack2d.c a bit more
readable. no functionality changes.
Mal Duffin [Sat, 2 Aug 2008 17:08:16 +0000 (17:08 +0000)]
Copies all required DLLS for Save Game as Runtime.
Under Windows, all DLLs are copied to the same folder as the runtime .EXE, so that the process becomes a single click and deploy solution.
Linux doesn't require this ( thx for info centralnoise ) and will update to work on OS/X after I do a bit of research on .a and .so files ( thx for info kaito ).
Andrea Weikert [Sat, 2 Aug 2008 09:44:01 +0000 (09:44 +0000)]
== imagebrowser ==
- HKEY now toggles hide/show dotfiles
Matt Ebb [Sat, 2 Aug 2008 06:31:56 +0000 (06:31 +0000)]
* patch #17394 by Vilem Novak - add menu item for 'Make Proxy Object'. Thanks!
Matt Ebb [Sat, 2 Aug 2008 06:29:15 +0000 (06:29 +0000)]
* (slightly modified) old patch #7471 from Davide Vercelli - menu items for Show All Layers/Show Previous layers in the 3D View. Sorry this took so long!
Matt Ebb [Sat, 2 Aug 2008 06:11:35 +0000 (06:11 +0000)]
* Minor tweaks to file menu item naming
Joshua Leung [Sat, 2 Aug 2008 00:25:50 +0000 (00:25 +0000)]
Scons - Mingw Compiling Fix:
When using BF_SPLIT_SRCS as a hack to get some of the larger libs compiled, there were some problems linking Blender related to some boolean calls. This commit tweaks the priorities for the boolean libs for the 'intern' group so that they get linked before the src libs are.
Mal Duffin [Fri, 1 Aug 2008 21:17:54 +0000 (21:17 +0000)]
Fix for GE Make Runtime menu option
Doh - I forgot to add a comment to the previous commit.
This adds a file exists check for Make Dynamic Runtime for the GE. It also removes this menu option for now, as the required file ( blenderdynplayer.exe ) hasn't been included with the Blender app for quite a few releases ( therefore the feature has been broken ).
I also renamed the option, to make it a bit more understandable. This might even be better moved to the Game menu, but I didn't want to do that ( yet :) )
Mal Duffin [Fri, 1 Aug 2008 21:12:47 +0000 (21:12 +0000)]
Roland Hess [Fri, 1 Aug 2008 12:56:29 +0000 (12:56 +0000)]
Ipo Editor would not allow access to either World or Lamp texture Ipos. Now it does. Fixes bug #17379.
Ken Hughes [Thu, 31 Jul 2008 18:37:03 +0000 (18:37 +0000)]
Tools
-----
New boolean merge algorithm. The current code often does a poor job of merging tris and quads after the operation, resulting in many unnecessary faces. This commit add a new algorithm which takes advantage of topology information saved in the interal BOP structures.
The file intern/boolop/intern/BOP_Misc.h has two #defines which control which algorithm(s) are compiled. They are set now to compile both, with the new algorithm as the default. The original algorithm can be enabled by setting the "rt" debugging button on the Scene panel (F10) to 100.
One note: the current boolean code still occasionally creates a non-manifold mesh from an operation on two manifold meshes. The original merge algorithm would sometimes "close" these meshes and sometimes not. The new algorithms behaves the same way, but sometimes closes a mesh the original would not and sometimes leaves open a mesh the original would close. My fairly extensive tests did not indicate any significant difference in the percentage of final non-manifold meshes.
Joshua Leung [Thu, 31 Jul 2008 12:23:29 +0000 (12:23 +0000)]
== Grease Pencil Eraser - Tweaks ==
Improved accuracy of the eraser a bit. Now it does a boundbox test first before trying to erase strokes, which means that other (rather unrelated) strokes are less likely to be affected as well.
Ton Roosendaal [Thu, 31 Jul 2008 12:23:09 +0000 (12:23 +0000)]
Korean translation, provided by J.H. Jeong (yongdori)
(Bugreport 17415)
Ken Hughes [Wed, 30 Jul 2008 21:52:02 +0000 (21:52 +0000)]
Tools
-----
Minor changes to boolean code; add an new include file to gather various
#defines global to the boolean system. Currently, this just allows control
of whether some debugging code is compiled or not.
This is a precursor commit for some other boolean optimizations/cleanups.
But in case that commit is later reverted, this code should still remain.
Nathan Letwory [Wed, 30 Jul 2008 20:45:04 +0000 (20:45 +0000)]
* another commit adding std:: to the sort call (older msvc [<9] choked?)
Benoit Bolsee [Wed, 30 Jul 2008 17:41:47 +0000 (17:41 +0000)]
BGE patch: logic optimization part 2: remove inactive sensors from logic manager.
With this patch, only sensors that are connected to
active states are actually registered in the logic
manager. Inactive sensors won't take any CPU,
especially the Radar and Near sensors that use a
physical object for the detection: these objects
are removed from the physics engine.
To take advantage of this optimization patch, you
need to define very light idle state when the
objects are inactive: make them transparent, suspend
the physics, keep few sensors active (e,g a message
sensor to wake up), etc.
Benoit Bolsee [Wed, 30 Jul 2008 17:22:57 +0000 (17:22 +0000)]
Update MSVC project since recent commit
Brecht Van Lommel [Wed, 30 Jul 2008 16:15:15 +0000 (16:15 +0000)]
Bugfixes: fix for two memory leaks related to dupligroups,
and a missing reference count in the trackto actuator. This
showed up as leaked pose data, but actually the whole object
was not being freed.
Daniel Genrich [Wed, 30 Jul 2008 11:21:10 +0000 (11:21 +0000)]
Bugfix for mesh deformer under windows --> uninitialized variable was used in meshdeform_inside_cage()
Joshua Leung [Wed, 30 Jul 2008 09:20:05 +0000 (09:20 +0000)]
Grease Pencil Bugfixes:
* Segfaults with eraser should now be fixed
* Attempted fixed for sequencer redraw problems with buttons
Joshua Leung [Wed, 30 Jul 2008 09:07:56 +0000 (09:07 +0000)]
== Grease Pencil - Eraser (First Draft) ==
This commit introduces the ability to erase strokes. Admittedly, the code for this is not totally stable yet, and doesn't always produce optimum results. I'm committing now for backup purposes.
It currently uses the lasso code to check whether segments of the strokes (a segment occurs between two recorded points) occur inside a region defined by the 'eraser' stroke, or any intersections it makes with the 'eraser' stroke.
There are multiple ways to erase strokes:
* With 'Draw Mode' on, use RMB-drag to erase
* With a tablet, use the 'eraser' end of the stylus
* Hold the Alt Key, and use the 'selection' mouse-button (i.e. LMB if mouse-button swapping is on, RMB otherwise) to erase. For this one, this is necessary to avoid overriding the view-rotation hotkey combo for 2-button mice!
Todo:
* 3d-strokes are not correctly mapped back to screen-space for sampling yet
* Drawing of eraser strokes is still not distinctive enough
* After running a few times, may cause stack corruption/segfaults, so be careful!
== Bugfixes ==
* Grease-Pencil Onion-Skinning works again. Onionskining was being supplied the wrong frames, and the alpha factor was still the old one used for 0-255 ranged colour values
Mal Duffin [Tue, 29 Jul 2008 22:44:43 +0000 (22:44 +0000)]
Simple changes to Motion Actuator UI.
This includes...
- Renaming dLoc and dRot as Loc and Rot ( as well as changing the tooltip to location and rotation ). dLoc and dRot are programming terms, not user terms.
- Placing Loc and Rot as the two initial shown values, so that the physical ones are all shown together.
I also changed it so that only Loc and Rot are shown in the UI, unless the object is Dynamic ( as the other values only make sense if it is dynamic ).
These are just a few simple changes, that should make a lot of difference to users when learning how to use the GE.
--------------------------------------
Things I'd *really* like to do to this, when I get a chance to code Blender again ( hopefully in a few days time, after I have finished teaching on the GE course )...
Color / Colour tint the X,Y and Z entry boxes as slightly red, green and blue, to reflect the colour of the axis / transform gizmo
...or...
Just show X,Y and Z labels above all of the values.
Getting to grips with the whole XYZ thing is very confusing for users, esp when they are presented with 6 x 3 entry boxes.
Nathan Letwory [Tue, 29 Jul 2008 21:56:50 +0000 (21:56 +0000)]
* making sure BGE compiles after brecht's big commit (r15867). Needed <algorithm> to compile with msvc.