New Here: Wondering if anyone can answer a few Q's

Hi all,

I am a researcher in Natural Computations (Specifically Alife and Nature Inspired Design / Optimisation) in the UK.  I wish to start developing flocking behaviours in underwater vehicles using only sensory information for guidance, as opposed to the traditional sense (for example Reynolds boids) where the agents get neighbourhood information unrealistically.  The vehicles will be controlled by a neurocontroller which will take in sensory information (modeled sonar) and output the inputs for the vehicles actuators.

The vehicles will be modeled using a 2 thruster design (fixed non rotational) with some sort of pitch control (maybe a hydrofoil etc).

I have never used any sort of 3d 'game' package in my work (i usually create bespoke simulations from scratch) so have a few questions which i was hoping someone would be kind enough to answer for me.

  • Can i model the 2 thruster design using a single object (block whatever)  and calculate the new position simply or will i need to have two blocks (one for each thruster) and fix them either side of a main block?
  • Will i need to use jme-Physics???  I only need to be able to measure a collision as a true or false (for the evolution of good behaviour), apart from that i am only simulating the movement of multiple vehicles through a 3d space.
  • I have downloaded the source from the cvs (with all the tutorials in) i was wondering if anyone new of any other tutorial deposits (maybe on the web)

    I haven't actually worked out how to model the behvaiour of the vehicle based on the two thrusters yet (although i have a deep knowledge of a lot of things - this kind of thing is something i don't know much about!) so any help would be great.

    thanks a lot,


Sorry i think i should clarify on the movement of the vehicles.

They will move on the x and y plane using two thrusters (fixed on either side) each thruster will be able to independantly adjust the amount of thrust it produces, so in that sense the vehicles will move a bit like tanks.  The position on the z plane will be controlled by some sort of pitch control which will then obviously mean that the thrust from the thrusters is sending the vehicle in a direction up or down etc.


Welcome to jME Community :slight_smile:

  • Using one block (or mesh or whatever) should be fine

  • As you will most probably have quite a lot of vehicles (more than 1000, I assume) jME Physics (2) most likely won't scale (ODE, that is; no PhysX binding yet). Additionally I think it is not necessary to use full-fledged physics here.

  • no further tutorials known to me, but have a look into the wiki as there's the doc for the jME tutorials from cvs plus other info; have a look into the interactive tests, too (e.g. TestSwarm ;))

Hey, thanks for the reply.  I am glad that i wont need to bind on a physics engine (so jme can detect collisions without one?)

I am thinking about how i might calculate the velocity of the vehicle using this thruster ides??

Obviously, the two thrusters always have the same direction as each other, only their magnitudes can differ.  I am not quite sure how i am going to work out the new direction of the resultant velocity,  will i need to use moments?  I take it this will all be possible with a single block object??



I implemented a basic flocking system in our particle engine.  You might enjoy having a look at that, although it's a little specific (codewise) to particles.  :)  See com.jmex.effects.particles.SwarmInfluence and com.jmex.effects.particles.WanderInfluence

cool, will have a look at it.  I have moved my movement question over to the physics forum.  I am stuck on it actually… :S

Some of the code in might also be useful for flocking, I've started implementing some steering behaviours for terrain avoidance, intercept courses, collision avoidance etc. There's not too much there but I will add more fairly soon when I get some more AI (mission) scripting type stuff worked out. It would be great to get stuff as sophisticated as neural control in a general for that could be used for different things :slight_smile: (My motivation is less academic - I want good AI opponents to fly planes in my game :slight_smile:

Just a question… why didn't you set a link to the air carrier homepage in the text of the aircarrier screenshots

in the "screenshots" section here on the jmonkeyengine page?

I've been amazed by the screenshots, but were never able to find the page of the project…  :slight_smile:

oliver1974 said:

Just a question.. why didn't you set a link to the air carrier homepage in the text of the aircarrier screenshots
in the "screenshots" section here on the jmonkeyengine page?