Hi !
Featured games (91)
games approved by the League of Dukes
Games in Showcase (757)
Games in Android Showcase (229)
games submitted by our members
Games in WIP (844)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  LibGDX - Box2D - Body interaction  (Read 3092 times)
0 Members and 1 Guest are viewing this topic.
Offline maritnradev

Junior Newbie

« Posted 2013-09-24 20:17:43 »

I am working on a simple space shooter where I (the player) control a ship and shoot at other ships (the enemy).
I have decided to use Box2D just in case if I decide to add more features to the game.
However, I am a little confused how to do the interactions.
All of the objects in the world are bodies (obviously), even the lasers/bullets.
However, when two bodies collide, one of the bodies gives it's momentum to the other body. How can I stop that and at the same item to use a ContactListener?
I am using DynamicBodies to be sure that I can use the ContactListener.

In fact, what is the best way to make that kind of interaction - between a bullet and a body.
Offline namrog84

JGO Ninja

Medals: 46
Projects: 4

Keep programming!

« Reply #1 - Posted 2013-09-25 23:02:36 »

You likely want to use 'sensors'
just search for box2d sensors

You can declare a body to be a sensor,  and thus it doesn't 'collide' with things,  but can still maintain everything else you want

Also, alternatively, you could have a 'filter' so that certain things don't collide with certain other things as well. which can be useful in some circumstances.

"Experience is what you get when you did not get what you wanted"
Offline StumpyStrust
« Reply #2 - Posted 2013-09-26 07:38:23 »

I am not a pro by any means with box2D but one thing you should definitely do is create a class that implements the Box2DUserData. This can be set on each body and can have what ever info you want. Inside you contact listener you can filter out certain objects by group or ID or w/e and set values in your User data to indicate collisions or forces of collisions. I think the filter and sensor may be better if you do not want the bullets to apply some force to the bodies.

It took me a bit to sift through the poo tutorials on the internet to figure much out.

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline maritnradev

Junior Newbie

« Reply #3 - Posted 2013-09-26 14:29:42 »

Thank you for your comments. I found that there is a ContactFilter which solved my problem Smiley
Pages: [1]
  ignore  |  Print  

EgonOlsen (79 views)
2018-06-10 19:43:48

EgonOlsen (59 views)
2018-06-10 19:43:44

EgonOlsen (78 views)
2018-06-10 19:43:20

DesertCoockie (261 views)
2018-05-13 18:23:11

nelsongames (160 views)
2018-04-24 18:15:36

nelsongames (158 views)
2018-04-24 18:14:32

ivj94 (901 views)
2018-03-24 14:47:39

ivj94 (162 views)
2018-03-24 14:46:31

ivj94 (813 views)
2018-03-24 14:43:53

Solater (177 views)
2018-03-17 05:04:08
Java Gaming Resources
by philfrei
2017-12-05 19:38:37

Java Gaming Resources
by philfrei
2017-12-05 19:37:39

Java Gaming Resources
by philfrei
2017-12-05 19:36:10

Java Gaming Resources
by philfrei
2017-12-05 19:33:10

List of Learning Resources
by elect
2017-03-13 14:05:44

List of Learning Resources
by elect
2017-03-13 14:04:45

SF/X Libraries
by philfrei
2017-03-02 08:45:19

SF/X Libraries
by philfrei
2017-03-02 08:44:05 is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!