- User Since
- Mar 16 2012, 12:05 AM (309 w, 2 d)
Apr 14 2016
I think this is a symptom of the lack of event handling at user level in the BGE. That is probably a better objective
Apr 8 2016
In your test file (Win10 x64, Blender 2.77a) the animation plays, if not slightly jerkily.
Apr 3 2016
We need to be sure that after exiting the game, the original sys.modules entries are returned (your patch would leave the python modules dictionary in the same state as a clean blender instance (not preserving running addons etc)
Jan 6 2016
Looks good to me. Sorry for late reply.
Dec 12 2015
NOTE, this only applies to the embedded player
Oct 29 2015
I suspect this is because the positions set in Python are those before the motion actuators update the position that is rendered in red.
Shouldn't the above comment be removed now?
Oct 26 2015
Oct 19 2015
Sep 13 2015
Jul 31 2015
Might want to check the conversion stage - BGE internal and external players have different code paths both running the engine and initialising it.
Jul 10 2015
Unbreak now is for pre-release show-stoppers.
Jul 8 2015
Jul 3 2015
Jun 19 2015
Jun 18 2015
I've said this on IRC, but I'm not a fan of adding more attributes to bge.logic, and I'm not sure that we need this. It is already trivial to support this with Python, and either way one must use a Python controller, so it's not a convenience change.
Nice work, looks good to me.
Provided it solves the test case, and all pending comments are addressed, I'm happy with this revision.
I hope that I didn't miss a commit in this area, but one of the things we needed to patch for HIVE nodes was support for PyAPI styling of node connections and sockets. There seems already limited support here, but I would hope that any changes in this area aren't just limited to the C API, but rather allow for re-use (if the application requires it) in other nodetrees.
May 26 2015
Commits can be browsed by cloning the git repository and browsing the commit logs, or here https://www.miikahweb.com/en/blender/git-logs/
May 25 2015
No, I think that would be unhealthy ;)
There is already some discussion in addition this code to the logic bricks. However, I personally noticed that the information available isn't intuitive. Bullet creates contact points for intersections, and determines their impulse based on a number of factors, which doesn't seem to agree with substeps. Essentially it doesn't seem easy to determine the hit force, or impulse over a collision so that we can compare collision strength - Its not reliable. Furthermore, we only return one contact point at the moment, when in reality there are 2n points (one for each body).
Of of these things stand in the way of getting this done, however we currently have rather larger issues to deal with (just see panzergame's commits on materials).
May 24 2015
I'm not sure if we should support feature request without any reference or acknowledgement of the code base for fear of simply overloading ourselves with everyone's personal requests. Any ideas?
This isn't really a "bug", rather just a byproduct of the fact that the name is not unique for instances. For this reason, you must access your added objects from the addObject function, or the objectsLastCreated with the addObject actuator.
The data will be cleared if the addon is enabled at a later point by the user. I can optionally clear all data pre-save operations.
There is no way to detect updates to Game settings, as they do not trigger updates to the depsgraph. Any other suggestions?
May 17 2015
I've read through the code, and It's too hard to follow and quickly find a solution.
However, it seems pretty clear that this is simply a threading issue, which is probably due to a lock somewhere being held (or another thread taking all the processing). It's hard to discern from this file, but I've happily used threads in my own projects with no issue (TCP).
May 15 2015
This has been noticed before, we should look at this at some point (i.e, not low)
Can this be closed?
Without a test file, we cannot easily reproduce the issue. Furthermore, this is now an older version of Blender, so we cannot guarantee the bug. Please confirm the bug and upload a test file, or we will close this report (in about a week)
May 13 2015
May 8 2015
Besides grammar, looks good to me. However, this does require very careful testing, so I'd like to hear some reports of tests with LibLoad and duplis, or a windows build I can test on, if that's not possible (my build env is currently non functional).
May 6 2015
May 5 2015
This is a nearly direct copy of the message sensor. However, it might be best to support a python proxy for messages and also expose that to the PyAPI, but it adds weight to the class. Ill take a look later.
May 3 2015
We get into a heap of trouble (excuse the pun) because of persistent Python interpreter state, not only for internal objects, but also imported modules (any modules with mutable state that were imported before the engine was run will not be cleared after exit). This can be worked around, but it's a reflection of the issues observed.
Apr 28 2015
In the interests of partial recovery of corrupted files, is it possible to abort loading of corrupted data blocks, such that only unmodified assets are loaded?
Apr 23 2015
Provided no edge-cases have been discovered, I'm happy with this for now :)
Apr 18 2015
Looks good. Unfortunate that we cannot use cleanProxyFromPairs, but it doesn't seem to have the intended effect here.
Apr 17 2015
Might also want to make some note somewhere about the modified endObject behaviour,
Apr 16 2015
Fix for some mistakes in the previous version
Apr 15 2015
A few points.
Apr 7 2015
The patch seems good from my end, and HG1, can this be comitted?
If the other argument can be omitted, I'd rather see it as an optional argument.
Mar 31 2015
Sorry, in the middle of a crunch period I forgot to reply. It's working for our test machine, thanks Benoit!
Mar 5 2015
Mar 3 2015
py_repr doesn't need to be virtual - this is not going to be inherited from.
whitespace fixes for KX_Scene
Feb 28 2015
Thanks Brita - I thought it better practice to separate that behaviour from the implementation, but perhaps it's not an issue.
Made requested changes, included license block.
Feb 27 2015
Feb 26 2015
After reviewing my patch, I have made some changes to improve code quality.
namely, simplifying iterators, removing essentially a duplicate operator (single semantic difference) and attempting to use a more conventional operator name. As I am not at home, I am currently unable to produce a patch for this, but I can attach the reviewed file.
Feb 23 2015
For these particular attributes, I'd be inclined to add an error message if the object does not have a controller using PyErr_SetString(PyExc_RuntimeError, "This object has no physics controller") as we do for the collision margin and apply impulse. This should probably be added to existing attributes elsewhere, but at least we can be consistent from this point onwards.
Feb 11 2015
There's a typo in the ctime definition comment - "/* evlauaiton time */" should read "/* evaluation time */"!
I think that having so many syllables in a name (and of such length) is not the best direction.
isSuspended seems inline with the actuators currently exposed for this feature.
Feb 6 2015
Unfortunately in blender player, it is using the active camera, not the mirror plane camera added at runtime. Only fails with quad buffer on a machine which supports it afaict
Feb 2 2015
I also expect that quadbuffer will fall back to no-stereo in the case that no quadbuffer capable card is present, which is why I do not see this on my machine.
Jan 29 2015
On a slightly related note, would someone mind checking whether my suspicions of a bug are correct? I am concerned that sensor objects register with collision sensors when they have collision callbacks.
Personally speaking, I think we should break the existing API given that I suspect its usage is quite rare, and those who do will be aware of the necessary changes.
Jan 15 2015
Initial glance looks good to me. Having tested this, do you find the reported point is sensible? I've written a patch for providing contact data, but I noticed that unusual values were sometimes reported, most specifically the collision impulse.
Sep 19 2014
Jul 30 2014
Originally, the commit by Campbell appeared to break things. Since then the issue has disappeared, so I think this can be closed!
Jul 28 2014
Jul 4 2014
It is part of recast and detour, and required in order for the player to be avoided by pathfinding obstacles. I don't see why it shouldn't be supported without looking at the code first.
Jul 2 2014
To fix, duplicate the registration code from the get method into the set method.
I suggested just that above, it is a bug, and hopefully fixed soon
The callback is designed to register for collisions if the value is read. (obj.collisionCallbacks.append first reads the value then writes). Directly setting circumvents the registration call.
Jun 5 2014
Tested in build bot, problem no longer exists.
Jun 4 2014
When included in a test build, it did cause a crash. I'm not sure if this was the fault of the patch, however
Jun 1 2014
I feel that whilst this is a valid argument, there are already enough inconsistencies in the engine timing design as it is, and we should address them asap.
May 25 2014
By an unfortunate coincidence there Is a book with the same name as a BGE of spin (Gamekit). Here we talk about the book I believe
May 24 2014
I find that when the plane covers the spheres, and the lamps are placed above it, the occluder is far slower than the no-collision setting. This doesn't seem to be the case when deleting the sun lamp
The door is detecting collisions with the floor. This is a bug in the file, seemingly. The floor should not have the Actor flag enabled, or alternatively, the player should have a property which is filtered by the door, or use collision groups
May 22 2014
I cannot reproduce this, although my steps are not clear. Closed for now.
May 18 2014
We should really not be using strings in the engine in this manner, in the same way that we should not be looking up data by name (TODO for any developers)
Apr 30 2014
I don't think that this is a "bug", more of a result of how the slow parenting code is implemented - parent relations in the Blender editor which have a time offset value are assigned slow parent relationships, which are handled differently to other parent relations, and we don't offer the ability to create a slow parent relation in the BGE at runtime. Possible solutions:
That's because (IIRC) of how the BGE finishes with the Python environment when the internal player exits. It shouldn't exist in the external player (I don't think)
This isn't a bug. It's a design of the system - logic brick sensors are only triggered once per update. If you want to handle multiple collisions, iterate over the hitObjects or read the number of messages in the subjects attribute of the sensor.
This isn't a bug, and hence not the place to post this. If you post on BA, someone will respond :)
Apr 28 2014
This is caused (I believe) by the main thread exiting before the other threads close, so all references become None.
I have the same *issue* in my multi-player system which spawns threads.
New file fixes ugly code from before (we can just make use of blenderobject->body_type), and ensures all objects (not just physics objects) are considered.
Also includes isActor and isGhost.
Renames record_animation to recordAnimation to keep style conventions.
Apr 27 2014
The objects share materials, and textures, hence any replacement texture would (I believe) be shared among them. You could try using LibNew to create a new mesh, and see what happens then