Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (754)
Games in Android Showcase (229)
games submitted by our members
Games in WIP (842)
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  
  Joode universal joint  (Read 1492 times)
0 Members and 1 Guest are viewing this topic.
Offline jlev

Junior Newbie

« Posted 2007-07-24 21:45:19 »

Is there an implemenation of the universal joint type in joode? I've tried do it with a JointConfigurable, but that results in explosions. Here's the code I'm using, where the coordinate system is that imposed by Xith (x viewer right, y local gravity up, z out of screen).

    JointConfigurable hip = new JointConfigurable(getWorld());
    hip.attach(torsoBody, thighBody);
    hip.setAnchor1(new Vector3(sign * TORSO_RADIUS, TORSO_LENGTH/2, 0)); //relative to torso center
    hip.setAnchor2(new Vector3(sign * THIGH_WIDTH, -THIGH_WIDTH/2, THIGH_LENGTH/2)); //relative to thigh center
    hip.angularConstraints[0] = JointConfigurable.MOTOR_CONSTRAINT; //X, Pitch has motor
    hip.angularConstraints[1] = JointConfigurable.UNBOUNDED_CONSTRAINT; //Y, Yaw is unbounded
    hip.angularConstraints[2] = JointConfigurable.MOTOR_CONSTRAINT; //Z, Roll has motor

If anyone has just a simple universal joint class, or advice on how to implement it with JointConfigurable, I'd be very appreciative. Thanks,
- Josh

Offline t_larkworthy

Senior Devvie

Medals: 1
Projects: 1

Google App Engine Rocks!

« Reply #1 - Posted 2007-07-25 18:41:40 »

Oh sorry. JointConfigurable is not working correctly yet. Angular constraints are playing up.
A universal joint has all 3 linear DOFs constrained, plus one constrained angular DOF. Two angular DOFs are unconstrained. From your code I think you want the two unconstrained angular DOFs motored. Hmmm, which means you want some kind of constraint on all three angular DOFs. JointConfigurable can't handle this, I can't work out the proper math yet, angles are funny :/
I think the much easier way for your system until this is fixed, is to use hinge joints with dummy bodies inbetween.

PS I think the initial cause fo your explosions is probably that your anchors are not actually where your bodies are relative to one another. There are a couple of methods called something like getAnchor1InGlobalFrame. This should be equal to   getAnchor2InGlobalFrame before you start steppiong the world. You could probably fix that, but you will still run into problems.


Runesketch: an Online CCG built on Google App Engine where players draw their cards and trade. Fight, draw or trade yourself to success.
Pages: [1]
  ignore  |  Print  

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

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

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

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

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

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

Solater (98 views)
2018-03-17 05:04:08

nelsongames (179 views)
2018-03-05 17:56:34

Gornova (405 views)
2018-03-02 22:15:33

buddyBro (1065 views)
2018-02-28 16:59:18
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!