| Re: Nape updates [message #1987 is a reply to message #1975] |
Fri, 17 February 2012 09:23   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r2
Fix a (tiny in size) big bug with kinematics sleeping with non-zero velocity causing them not collide with things.
I created nape!
|
|
|
| Re: Nape updates [message #2008 is a reply to message #1987] |
Mon, 20 February 2012 04:16   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r3
Fix a.. well I guess bug in Body::copy() in that angular velocities, and also kinematic/surface velocities were not copied over as well.
Also an internal change which should see a 5mb memory usage decrease in all cases where a Space is used, and a further 5mb memory usage decrease whenever that Space happens to use the default DYNAMIC_AABB_TREE broadphase type. In testing with the pyramid stress test, fps has not been affected by these changes.
Also a new demo DynamicDestruction
[Updated on: Mon, 20 February 2012 04:16] I created nape!
|
|
|
| Re: Nape updates [message #2070 is a reply to message #2008] |
Thu, 23 February 2012 17:49   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r4
Added missing property castCompound, and missing method isCompound to Interactor.
I created nape!
|
|
|
| Re: Nape updates [message #2082 is a reply to message #2070] |
Fri, 24 February 2012 21:51   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r5
Fixed a 'crazy' memory bug, which in for example the stress pyramid demo would cause +1mb/s increases in memory usage (eventually reclaimed by GC, but still crazy considering nape at this point is not allocating any memory at all)
The cause of the bug, was a hack I was using to get around an old haxe bug to do with Math.POSITIVE_INFINITY not mapping correctly when nape was compiled to a .swc and I got aruond it use the rather hacky: cast(untyped __global__["Number"].POSITIVE_INFINITY, Float) which works perfectly fine and should be mapped by haxe at compile time into the same thing as Number.POSITIVE_INFINITY would be in as3... and yet for some reason was causing the CRAZY memory usage when being accesses thousands of times per frame.
Anyways, the haxe bug it seems has been resolved since so i could go back to native infinity, and all is well now with stress pyramid demo showing a very flat memory usage graph.
I created nape!
|
|
|
|
|
| Re: Nape updates [message #2117 is a reply to message #2104] |
Tue, 28 February 2012 20:41   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
8.2
Monotone, Convex (and also Triangular) decompositions re-introduced into nape, no more ties to CGAL and their GPL licensing. phew.
Also fixed a minor bug with Body::graphic with respect to assigning non flash displayobjects, and to do with graphicUpdate being in general, called twice per-step rather than once.
Also fixed a minor bug in GeomPoly::clear.
Also all demoes using the convex decompositions are back online again and functioning.
I created nape!
|
|
|
| Re: Nape updates [message #2138 is a reply to message #2117] |
Thu, 01 March 2012 02:07   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r2
Should see another 10mb (roughly) memory decrease at runtime now, and also removed a non-critical assertion from the innards of the Dynamic AABB broadphase which won't really effect people except for using the assert builds, or having slightly less computation when it does occur in the debug/release builds (which to this point would have ignored the assertion and carried on doing nothing but duplicate work in this instance).
I created nape!
|
|
|
| Re: Nape updates [message #2144 is a reply to message #2138] |
Thu, 01 March 2012 04:00   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r3
Fixed a bug in the triangulation (and therefore convex) decomposition routines that replaced the CGAL ones.
I created nape!
|
|
|
|
| Re: Nape updates [message #2168 is a reply to message #2167] |
Sat, 03 March 2012 12:15   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
lol. Actually just realised in optimising I messed up the contact physics a little bit, ignore last revision 8D
I created nape!
|
|
|
|
| Re: Nape updates [message #2178 is a reply to message #2169] |
Sun, 04 March 2012 18:25   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r6
Nothing for non-haxe users here. Renaming of an internal property which caused failure to compile to C++ from haxe.
I created nape!
|
|
|
| Re: Nape updates [message #2263 is a reply to message #2178] |
Sat, 10 March 2012 20:31   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r8
A couple critical bugs fixed to do with the dyn-aabb tree broadphase.
For haxe: seperated the forgotten ConstraintList/ConstraintIterator classes to keep imports fully consistent (checked properly this time).
I created nape!
|
|
|
|
| Re: Nape updates [message #2325 is a reply to message #2301] |
Wed, 21 March 2012 11:04   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r2
Not bothered with a haxelib release as haxe users have no changes.
For AS3 iOS users, i've included a workaround for adobe's iOS bug which seems to be working in testing; please test as well and check if it's working now.
For the curious the workaround consists of:
static var log:Bool; //<---
static function theeffectedfunction(..) {
...
log = ret; //<---
return ret;
}
hahahahahaha.
I created nape!
|
|
|
|
| Re: Nape updates [message #2501 is a reply to message #2381] |
Mon, 02 April 2012 17:01   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r3
Small bug fix regarding use of callbacks causing memory increase through creation of Function objects (Caused by using a lambda in a function which was no longer marked inline; and as such was not itself inlined creating a true closure at runtime)
I created nape!
|
|
|
|
| Re: Nape updates [message #2598 is a reply to message #2519] |
Sun, 15 April 2012 21:37   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r5
Fixed bug in PreCallback with int1/int2 not being correctly ordered and listener property not being set on object.
Hopefully an issue with FlashDevelop autocompletion issues is resolved also in haxe.
I created nape!
|
|
|
|
| Re: Nape updates [message #2619 is a reply to message #2608] |
Tue, 17 April 2012 19:51   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r7
Bad Memory Usage bug fixed in Body::crushFactor
I created nape!
|
|
|
| Re: Nape updates [message #2712 is a reply to message #2619] |
Tue, 24 April 2012 20:54   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r8
Consider this a rare update during my exam period ;p
Polygon::localCOM is now mutable, and added Space::interactionType : Shape->Shape->InteractionType to determine what interaction type would be computed between the two given shapes (check doc for full description). Docs also updated w.r.t methods like shapesInBody on Space to clarify the purely geometric use of the input Shape/Body in the functions.
I created nape!
|
|
|
| Re: Nape updates [message #2719 is a reply to message #2712] |
Wed, 25 April 2012 11:10   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
replacement r8
replaced current r8 version with tiiiiny fix for UserConstraint's in debug-builds with spurious error regarding Vec3 immutability.
I created nape!
|
|
|
|
Re: Nape updates [message #3070 is a reply to message #670] |
Sat, 09 June 2012 22:48   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
Milestone 10.1
!!! BREAKING CHANGES !!!
Milestone 10.1 introduces big changes to the callback system, massively increasing it's expressiveness and modularity.
Note that these changes break backwards compatibility with Milestone 9.1
API documentation and Overview doc file have been updated, as well as demos and for PhysicsEditor users, I've passed updated plugins to the author so I would expect them to be available shortly.
I have tested these new extensions a lot, but it is possible there may still be some issues that I have not found so 'please' test and post a message on the forum if you find something that you think may be a bug!
-------------
Quick overview of changes made:
Instead of having a single CbType on an object, there is now a list of CbTypes on objects; think of this as being akin to implementing multiple interfaces in AS3/Haxe.
Instead of a listener taking a CbType (or for interactions; pairs of CbTypes) listeners will now take what is called an OptionType which represents two lists of CbTypes - an includes list, and an excludes list - such that a given object's cbTypes list will match against the option if it shares an element with the includes list, but does not share an element with the excludes list.
Additionally the restriction that in any given instance there must be only one choice of listener has been removed, and an additional property added to listeners as an integer precedence value (default to 0) which induces an ordering when there are multiple valid listeners.
Additionally all objects now receive a default CbType in their cbTypes list. For Body's this is CbType.ANY_BODY, similarly for Shape,Compound,Constraint. In this way, we can take a listener to act on 'any' Body, by having CbType.ANY_BODY in the includes list of the OptionType. We can also have a listener act on 'any' Body 'except for' a given type of Body by decorating those special bodies with another CbType, and including that CbType in the excludes list of the OptionType.
Listener constructors take a dynamic value, which is either a CbType, list of CbType's or an OptionType so that these two examples could be done like:
new BodyListener(CbEvent.SLEEP, CbType.ANY_BODY, ...);
new BodyListener(CbEvent.SLEEP, CbType.ANY_BODY.except(otherCbTypes), ...);
Check API docs for more information regarding OptionType and new methods on CbType's.
I created nape!
|
|
|
| Re: Nape updates [message #3134 is a reply to message #3070] |
Sun, 17 June 2012 17:35   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r2
Minor non-critical bug fixed (only manifestde itself in an assertion on assert builds, with silent, non-optimal (but coherent) behavour in debug/release) To do with removing objects making use of callbacks when listeners exist between pairs of equal callback sets.
Fixed a more major bug which has actually existed for a long time, and would previously have resulted in some silent (but coherent) errors, and with new callback system manifested in critical errors. To do with waking a sleeping object outside of space.step() (aka, changing position, velocity etc) when such an action would cause an end to an interaction which previously would have gone uncaught.
[Updated on: Sun, 17 June 2012 17:36] I created nape!
|
|
|
|
|
|
| Re: Nape updates [message #3261 is a reply to message #3219] |
Sat, 14 July 2012 16:34   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r6
Bug fix in triangular and convex decomposition routines.
Effected the (breaking) change for userData.
For those that did not read the proposal userData has been changed from a field of type Dynamic (* in AS3) that you can assign any value to, into a lazily constructed object of type Dynamic<Dynamic> (Also * in AS3), which you cannot assign to directly, but instead create a named field of meaning that as long as you use unique names, you essentially have infinite userData fields now.
// before
obj.userData = x;
trace(obj.userData);
// now
obj.userData.x = x;
trace(obj.userData.x);
obj.userData = x; //ERROR
As a general update on development; I'm spending time at present on a private branch moving all of nape documentation into inline documentation in the code so that Haxe users will when finished immediately get code hints with documentation in IDE's. I will also be changing the online documentation to a form generated via the inline code docs and will be looking into how best to compile asdoc .xml's that can be embedded in the AS3 .swcs so that AS3 users can also benefit from this change.
I apologise for the number of breaking changes (however little) that have occured recently! Whilst adding these inline code docs I have found some more places where i will be breaking compatability in future (only name changes so far so that camelCase is used consistently instead of a mix of camelCase and camel_case)
I created nape!
|
|
|
|
| Re: Nape updates [message #3356 is a reply to message #3263] |
Sat, 28 July 2012 20:38   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r7... again (For some reason it overwrote the previous r7.. not sure why but nevermind)
# Some minor bug fixes.
(SweepAndPrune broadphase + empty space queries)
(Internal minor fixes)
# Work-around for adobe-iOS exporter bugs affecting ongoing callbacks (thanks dmeville)
# Optimisation for BitmapDebug:
If you are using BitmapDebug 'as well as' another library that makes use of Alchemy memory, then you should now call BitmapDebug::prepare() before performing sets of actions that use the bitmap debug object in anyway to switch the alchemy context to the bitmap debug object. (Before every operation switched the context, but seems flash has no short-cut for checking that the context you switch to is not already the current context and was using some crazy cpu from profiler).
# Simple internal optimisation for the additional logic that sits beside colisino detectino phase.
# Fix bug in GeomPoly::cut()
# Fix bug in removing all vertices from a Polygon, and in accessing the vertices of a polygon in a particular manner when
there are collinear vertices (which are removed automatically).
[Updated on: Sat, 28 July 2012 20:39] I created nape!
|
|
|
| Re: Nape updates [message #3361 is a reply to message #3356] |
Sun, 29 July 2012 13:27   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
Last update presently broken! Tracking it as fast as I can.
[Updated on: Sun, 29 July 2012 14:59] I created nape!
|
|
|
| Re: Nape updates [message #3362 is a reply to message #3361] |
Sun, 29 July 2012 15:15   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r8
Fix bug introduced in sleeping a few commits earlier.
Fix problems associated with haxe v3 changes which caused previous update to be broken for AS3 users.
I created nape!
|
|
|
| Re: Nape updates [message #3404 is a reply to message #3362] |
Thu, 02 August 2012 23:56   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r9
Fixed memory leak due to CbTypes incorrectly tracking inactive objects.
Fixed error in clearing dynamic aabb tree broadphase via space.clear();
Fixed bug with interactors not being correctly ordered in all cases for interaction/pre listeners.
Updated version of Haxe on server, hopefully everything will still be fine, works fine locally at least.
I created nape!
|
|
|
| Re: Nape updates [message #3534 is a reply to message #3404] |
Sat, 01 September 2012 09:38   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r10
Fix bug with adding a Polygon to a Body, polygon world-data not being invalidated by addition. (Manifests when adding a Polygon to a new Body that has already been part of a Body that was sleeping/static)
I created nape!
|
|
|
| Re: Nape updates [message #3602 is a reply to message #3534] |
Sat, 08 September 2012 21:39   |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r12 (ignore r11 please hah, not sure what happened there)
Fix bug in callback system when shapes/bodies are removed from simulation and are taking part in > 1 on going callback situation. (... yeh)
[Updated on: Sat, 08 September 2012 21:43] I created nape!
|
|
|
| Re: Nape updates [message #3818 is a reply to message #3602] |
Thu, 11 October 2012 20:36  |
dELtaluca Messages: 2225 Registered: July 2010 Location: Malden Rushett, Surrey |
Senior Member Administrator |
|
|
r13.
'very' minor update to the present version to solve an AS3 issue with nape-hacks being broken for most recent versions.
No change has occured for haxe users and no haxelib release was made.
[Updated on: Thu, 11 October 2012 20:37] I created nape!
|
|
|