View previous topic :: View next topic |
Author |
Message |
zzzzrrr
Joined: 17 Feb 2007 Posts: 139 Location: Washington, DC
|
Posted: Sat May 10, 2008 10:54 pm Post subject: Fixed |
|
|
h3r3tic wrote: | Hmm... unfortunately not, they fall thru the floor sometimes, when tilted, like I posted further with the initial rotation "cheat" |
The stability bug has been fixed; the demos should run rock solid. I was having a collision detection issue, but it should be resolved now. Both the trunk and Blaze1.0 branch are fixed.
Keep in mind that vertices should be defined clockwise (CW).
I appreciate the feedback and quality control! Please keep me updated with any new demos you create. I like the XF GUI; it looks great! Do you plan on eventually hosting at Dsource? What are the project goals?
Regards,
Mason |
|
Back to top |
|
|
h3r3tic
Joined: 30 Mar 2004 Posts: 261 Location: Torun, Poland
|
Posted: Sun May 11, 2008 11:25 am Post subject: Re: Fixed |
|
|
zzzzrrr wrote: | The stability bug has been fixed; the demos should run rock solid. I was having a collision detection issue, but it should be resolved now. Both the trunk and Blaze1.0 branch are fixed. |
Thanks! The Hybrid-based proggie works fine too
Quote: | Keep in mind that vertices should be defined clockwise (CW). |
Aye. The issue with polygons 'rolling' through the scene was due to them having global coordinates during creation, instead of making the vertex positions relative to poly centers and moving the RigidBody instead.
Quote: | I appreciate the feedback and quality control! Please keep me updated with any new demos you create. |
Sure thing. I'm intending to use Blaze in a simple top-down networked shmup in order to create and test a new incarnation of a networking lib that will be used in Deadlock.
Quote: | I like the XF GUI; it looks great! Do you plan on eventually hosting at Dsource? What are the project goals? |
Not sure about dsource. Our hg repos are just fine and using them gives us some more control, though the nicely configured Trac environment at dsource is a huge temptation. We'll see
As for the aims of the GUI lib, I've described them here: http://h3.team0xf.com/proj/hybrid/wiki/Main/HomePage
Greetins!
Tom |
|
Back to top |
|
|
Ralith
Joined: 05 Nov 2007 Posts: 8
|
Posted: Sun May 11, 2008 8:43 pm Post subject: |
|
|
Actually, we've encountered another collision detection issue-- polygons (in this case, squares) seem not to collide with circles unless they're also touching another non-circle, allowing them to fall through eachother as if the other weren't there until the square hits the ground.
Edit: Also, space.removeRigidBodies appears to have no effect on its argument :/
Edit2: On an unrelated note, would it be possible to get support for an infinite ground plane? |
|
Back to top |
|
|
zzzzrrr
Joined: 17 Feb 2007 Posts: 139 Location: Washington, DC
|
Posted: Sun May 11, 2008 9:17 pm Post subject: |
|
|
Ralith wrote: | polygons (in this case, squares) seem not to collide with circles |
Should be fixed now. Let me know if it behaves properly.
Ralith wrote: |
Edit: Also, space.removeRigidBodies appears to have no effect on its argument :/ |
I'll have to take a look tomorrow. Note that Blaze never underwent a proper beta test, so there are still probably a number of kinks that need to be ironed out. The included demos are the extent of testing.
Ralith wrote: |
Edit2: On an unrelated note, would it be possible to get support for an infinite ground plane? |
I've never considered it. To make an "infinite" plane why not simply extend your object beyond the range of the game world? Have you tired creating a ground plane using a segment rather than a polygon? |
|
Back to top |
|
|
h3r3tic
Joined: 30 Mar 2004 Posts: 261 Location: Torun, Poland
|
Posted: Mon May 12, 2008 6:07 am Post subject: |
|
|
zzzzrrr wrote: | Ralith wrote: | polygons (in this case, squares) seem not to collide with circles |
Should be fixed now. Let me know if it behaves properly. |
Works for me! Thanks
Quote: | Ralith wrote: | Edit: Also, space.removeRigidBodies appears to have no effect on its argument :/ |
I'll have to take a look tomorrow. Note that Blaze never underwent a proper beta test, so there are still probably a number of kinks that need to be ironed out. The included demos are the extent of testing. |
Don't worry, Ralith is just being emo Your support has been great so far.
Quote: | Ralith wrote: | Edit2: On an unrelated note, would it be possible to get support for an infinite ground plane? |
I've never considered it. To make an "infinite" plane why not simply extend your object beyond the range of the game world? Have you tired creating a ground plane using a segment rather than a polygon? |
Hmm, I guess an infinite ground plane defined by a point and a normal (or the standard plane equation) might yield less floating point instability than other methods...
Anyway, I have tried a Segment - works fine as long as its thickness is very low (zero worked fine). Otherwise objects get stuck in it or bounce around. |
|
Back to top |
|
|
Ralith
Joined: 05 Nov 2007 Posts: 8
|
Posted: Mon May 12, 2008 11:19 am Post subject: |
|
|
h3r3tic wrote: | Don't worry, Ralith is just being emo Your support has been great so far. |
It's true; I really appreciate your help, and especially the short response time. Blaze has been great to work with and I look forward to helping you further polish and extend it.
zzzzrrr wrote: | I've never considered it. To make an "infinite" plane why not simply extend your object beyond the range of the game world? Have you tired creating a ground plane using a segment rather than a polygon? |
The polygon works fine now, and I'm sure a segment works fine, but I imagine an infinite ground plane would be much cheaper to simulate (you know that *ALL* points beyond it are invalid locations), and I see no reason to place arbitrary limits on the size of the game world; this program's supposed to be a sandbox, after all, and who am I to tell the user not to create a full scale 2D model of the new york skyline? As h3r3tic says, it wouldn't be terribly hard to describe, and it should only take a few lines to determine whether any given point is behind it; I'm not sure what else is involved in performing the necessary calculations, but it'd probably be worthwhile to explore. How many side-view 2D games have you seen that don't use a ground plane which could be replaced with this?
On (another) unrelated note, the [url="http://dsource.org/projects/blaze"]homepage[/url] states that joints are supported, but I haven't noticed them in the docs or code. Where can I find these? Or is there simply infrastructure in place that allows easy creation of custom joints?
Also: How would you recommend allowing the user to rigidly drag a RigidBody around (i.e. position remains constant relative to mouse)? Simply overriding the position vector has predictably undesirable results.
Edit: Feature request: Something like RigidBody.addTorque |
|
Back to top |
|
|
zzzzrrr
Joined: 17 Feb 2007 Posts: 139 Location: Washington, DC
|
Posted: Mon May 12, 2008 7:31 pm Post subject: |
|
|
Ralith wrote: | I look forward to helping you further polish and extend it. |
No problem, I appreciate the help and happy to see someone taking an interest in the library.
Ralith wrote: |
I'm not sure what else is involved in performing the necessary calculations, but it'd probably be worthwhile to explore. |
I'll take a look at adding an infinite groud plane soon; I should have some free time after Friday. If you by chance come up with a solution in the meantime I would be happy to add it to the trunk.
Ralith wrote: |
On (another) unrelated note, the [url="http://dsource.org/projects/blaze"]homepage[/url] states that joints are supported, but I haven't noticed them in the docs or code. Where can I find these? Or is there simply infrastructure in place that allows easy creation of custom joints? |
Take a look at the BuggyJoint demo. Every joint in the library is featured.
There are currently 4 kinds of joints:
* Pin Joints connect two rigid bodies with a solid pin or rod. It keeps the anchor points at a set distance from one another.
* Slide Joints are like pin joints, but have a minimum and maximum distance. A chain could be modeled using this joint. It keeps the anchor points from getting to far apart, but will allow them to get closer together.
* Pivot Joints simply allow two objects to pivot about a single point.
* Groove Joints attach a point on one body to a groove on the other. Think of it as a sliding pivot joint.
Considering Blaze is almost a straight port of Chipmunk, you can take a look at the Chipmunk documentation to get a better idea of how they work. The Chipmunk demos and tutorials should also be applicable.
Ralith wrote: |
Also: How would you recommend allowing the user to rigidly drag a RigidBody around (i.e. position remains constant relative to mouse)? Simply overriding the position vector has predictably undesirable results. |
Try applying a force to the rigidBody with the applyForces function.
-Mason |
|
Back to top |
|
|
zzzzrrr
Joined: 17 Feb 2007 Posts: 139 Location: Washington, DC
|
Posted: Tue May 13, 2008 3:12 pm Post subject: Mouse Action |
|
|
Ralith wrote: | Also: How would you recommend allowing the user to rigidly drag a RigidBody around (i.e. position remains constant relative to mouse)? Simply overriding the position vector has predictably undesirable results. |
Ok, you can now drag objects around with the mouse. The trunk has been updated, and you download the updated demo here:
http://svn.dsource.org/projects/blaze/downloads/Blaze-Demos.zip
I've implemented dragging with springs, but I'm sure there are various other creative way you can go about it. Eventually I could like to create a built in "mouse joint."
Cheers,
Mason |
|
Back to top |
|
|
Ralith
Joined: 05 Nov 2007 Posts: 8
|
Posted: Tue May 13, 2008 8:50 pm Post subject: |
|
|
zzzzrrr wrote: | Ok, you can now drag objects around with the mouse. The trunk has been updated, and you download the updated demo here:
http://svn.dsource.org/projects/blaze/downloads/Blaze-Demos.zip
I've implemented dragging with springs, but I'm sure there are various other creative way you can go about it. Eventually I could like to create a built in "mouse joint." |
Nice! I've ported that over to my code, and it works great, although it's a
leeeetle bit sluggish.
zzzzrrr wrote: | I'll take a look at adding an infinite groud plane soon; I should have some free time after Friday. If you by chance come up with a solution in the meantime I would be happy to add it to the trunk. |
I'll take a look, if I have time to. I can't imagine it'd be too hard.
zzzzrrr wrote: | Take a look at the BuggyJoint demo. Every joint in the library is featured. |
Whoops, should have remembered that. Thanks.
The demo this thread was originally asking for help with is coming along very nicely lately, and blaze is doing a great job driving it all. Thanks for the help!
Also, would it be possible to get Space.getShapeAtPoint to work with segments and/or world static geometry? (I'm not sure which one of these it's failing on, since I only use either of them together; I've tried setting r to a large value and that doesn't help. On an unrelated note, large segment radiuses tend to result in strange behavior for things colliding with said segment) |
|
Back to top |
|
|
zzzzrrr
Joined: 17 Feb 2007 Posts: 139 Location: Washington, DC
|
Posted: Wed May 14, 2008 8:34 am Post subject: |
|
|
Ralith wrote: | Nice! I've ported that over to my code, and it works great, although it's a leeeetle bit sluggish. |
The mouse control is a first stab, so I'm sure there are improvements that can be made. I would recommend experimenting to see what works best for your particular application.
You mentioned creating a sandbox... can you let me take a peek? I very much like your GUI and would consider replacing my demos with your application.
Ralith wrote: |
The demo this thread was originally asking for help with is coming along very nicely lately, and blaze is doing a great job driving it all. Thanks for the help! |
No problem, I appreciate the support. Please create a new forum tread if you have other comments, questions, or suggestions.
Also, if you find a bug or detect that something isn't working properly, please create a ticket. It's easier for me to manage, and I can close them out as they are completed. This would also be good way to track feature requests. |
|
Back to top |
|
|
clayasaurus
Joined: 21 May 2004 Posts: 857
|
Posted: Tue May 20, 2008 7:11 am Post subject: |
|
|
Ralith, you've probably done this but I'm just checking, make sure you aren't calling the limitFPS(FRAMERATE); function in your main loop, or increase the framerate, if you think it is too sluggish. |
|
Back to top |
|
|
h3r3tic
Joined: 30 Mar 2004 Posts: 261 Location: Torun, Poland
|
Posted: Tue May 20, 2008 7:19 am Post subject: |
|
|
Heh, what limitFPS? 'fizziks' is currently using the timing system from Deadlock, thus it frees the rendering frame-rate and has independent constant time updates for physics - AFAIK. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|