Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Techniques

Surina Skallagrimson
Queen of Amazon Nations
Join date: 19 Jun 2003
Posts: 941
06-10-2005 02:14
I've been asked lots of questions about how I get the fish to perform certain actions... specificly the shoaling.

This thread is intended for discussion of such topics. Please feel free to ask questions about my fish, I may be asking questions on your work as well...

To start off, here is the research I found that explains how my fish move and shoal..

Steering behaviours for Autonomous Characters by Craig Reynolds.

Craig has done lots of work in the AI field and it is all well documented on his (and other) web sites.



edit to add: Some of the things Craig discribes are not possible with the current implementation of LSL because of a lack of Sensor data, eg. Object collision avoidance relies on the moving character knowing the size of the obstacle in order to avoid it. The best you could do in this case would be to make sure any obstacles you place are a known size to your creature, but this would only work for your own objects.
_____________________
--------------------------------------------------------
Surina Skallagrimson
Queen of Amazon Nation
Rizal Sports Mentor

--------------------------------------------------------
Philip Linden: "we are not in the game business."
Adam Savage: "I reject your reality and substitue my own."
Trep Cosmo
Registered User
Join date: 3 Mar 2005
Posts: 101
06-10-2005 12:39
From: someone
edit to add: Some of the things Craig discribes are not possible with the current implementation of LSL because of a lack of Sensor data, eg. Object collision avoidance relies on the moving character knowing the size of the obstacle in order to avoid it. The best you could do in this case would be to make sure any obstacles you place are a known size to your creature, but this would only work for your own objects.


Isn't there a LSL function to grab the bounding box off the object? Or does this not work with sensor data? I don't have the wiki open right now or I'd look.

I don't think I have any major questions that haven't already been answered...Oh! But could you maybe post lots more links to your research materials?
Moopf Murray
Moopfmerising
Join date: 7 Jan 2004
Posts: 2,448
06-10-2005 13:49
From: Trep Cosmo
Oh! But could you maybe post lots more links to your research materials?


If we can get some links together I'll put a sticky at the top of the forum for easy viewing, so links to research work etc. on the net will be easy to get at.
_____________________
Surina Skallagrimson
Queen of Amazon Nations
Join date: 19 Jun 2003
Posts: 941
06-10-2005 15:03
I believe the bounding box function only works for the prim/object that contains the script. llSensor returns things like position, name, rotation, velocity, but size info is sadly lacking. Or have I missed something?

If you know a way of remotely getting bounding box info it would be a big help.
_____________________
--------------------------------------------------------
Surina Skallagrimson
Queen of Amazon Nation
Rizal Sports Mentor

--------------------------------------------------------
Philip Linden: "we are not in the game business."
Adam Savage: "I reject your reality and substitue my own."
Laukosargas Svarog
Angel ?
Join date: 18 Aug 2004
Posts: 1,304
06-10-2005 16:01
From: someone
...Oh! But could you maybe post lots more links to your research materials?



ALife has a fairly long history now, any web search will bring up 100s of articles.

[edit]
It's been a while since I updated my ALife bookmarks whatever happened to http://www.alife.org/ ??
Laukosargas Svarog
Angel ?
Join date: 18 Aug 2004
Posts: 1,304
06-10-2005 16:09
Also a little known but FANTASTIC resource for technical documentation is CiteSeer

try this

CiteSeer search for ALife
Trep Cosmo
Registered User
Join date: 3 Mar 2005
Posts: 101
06-10-2005 16:50
From: someone
I believe the bounding box function only works for the prim/object that contains the script. llSensor returns things like position, name, rotation, velocity, but size info is sadly lacking. Or have I missed something?


llGetBoundingBox()

According to the wiki llGetBoundingBox() takes a key and returns the box in a list of vectors.
Surina Skallagrimson
Queen of Amazon Nations
Join date: 19 Jun 2003
Posts: 941
06-11-2005 03:43
Excelant Trep, Thanks. That will be a huge help.
_____________________
--------------------------------------------------------
Surina Skallagrimson
Queen of Amazon Nation
Rizal Sports Mentor

--------------------------------------------------------
Philip Linden: "we are not in the game business."
Adam Savage: "I reject your reality and substitue my own."
Surina Skallagrimson
Queen of Amazon Nations
Join date: 19 Jun 2003
Posts: 941
06-13-2005 02:30
Last week I sent an email to Craig Reynolds, the guy who's work I used for research for my fish. He's currently working on AI systems for Sony.

This is what he wrote:-

"
Thanks for contacting me, I'm happy you were able to build upon my work to create this cool project. I especially like your use of a genetic algorithm to tune your parameters. My boids page has fallen into disrepair so I don't know when I will get around to adding a link to the NWN posting. Maybe sooner I can cite it from my page
(http://www.red3d.com/cwr/papers/1993/sab92.html) about an early unsuccessful attempt to evolve a whole flocking controller (not just the
parameters) using Genetic Programming.

Have you seen the work of Xiaoyuan Tu
(http://www.dgp.toronto.edu/people/tu/) on artificial fish? By coincidence I will be having lunch with her next week. I'll pass along the URL about your fish.

Please keep me posted on developments with your autonomous fish and if anything else is published on the web about it.

My current project is a high performance "crowd system" for the PlayStation3. So far my flock demo runs 2200 boids at 60 frames per second. I'm still trying to crank that number up.

Cheers,
Craig

"
_____________________
--------------------------------------------------------
Surina Skallagrimson
Queen of Amazon Nation
Rizal Sports Mentor

--------------------------------------------------------
Philip Linden: "we are not in the game business."
Adam Savage: "I reject your reality and substitue my own."