See what's going on with flipcode!




 


Submitted by , posted on 14 November 2001



Image Description, by


This image show some of the elemts of the thesis work me and my friend have been working on the last few months. The upper image is a screenshot of the Steering Creator. The lower left image shows the Regensburg-Applet, the lower right the A* pathfinding test applet.

The Steering Creator is a Java based editor to create and test scenes built on the works of Craig Reynolds. It allows to load, save and create user defined scenarios. XML is used for the file format an also for describing the objects available in the Steering Creator. There are four basic elements to a scene:
  • Vehicles
  • Obstacles
  • Minds
  • Behaviors
  • The vehicles are represented by the small triangles. Obstacles can consist of any non convex polygon, predefined is a rectangle and a circle. The Mind of a vehicle implements the action selection for the vehicle. It is responsible for choosing how much force each of the assigned behaviors can add to the resulting steering force. We only implemented influence based blending and prioritized selection as minds. In a game you would normally use some more advanced ways of choosing which force to consider. The final element of the scene are the behaviors. Each mind can have any number of behaviors assigned to it. We implemented nearly all of the behaviors described in Reynolds work, so there is a lot to try out here.

    We are using XML for storing the scene desriptions. XML is also used for describing the elements available in the Steering Creator. New elements can be added by simply describing them in the objects.xml file and adding a line of code in the factory. This makes the whole editor pretty easy to extend. You can also add your own custom attributes to any element of the scene at runtime.

    The Regensburg Applet is a demonstration of the path following behavior in connjunction with a simple pathfinding algorithm. By clicking on any street on the map, a path is created from the current position to the destination. The behavior simply steers the vehicle along this path. Since the non blocked nodes are all placed on the streets, it looks like the vehicles is following the layout of the map.

    The Algorithm Test Applet is one of those traditional A* testbeds.

    All applets and the Steering Creator can be found at http://www.SteeringBehaviors.de . The source code for the whole project is also available for download.

    The applets are unfortunately a bit huge (nearly 1 mb), since they use Xerces for XML parsing and object creation.



    [prev]
    Image of the Day Gallery
    www.flipcode.com

    [next]


     


    Copyright 1999-2008 (C) FLIPCODE.COM and/or the original content author(s). All rights reserved.
    Please read our Terms, Conditions, and Privacy information.