[This is preliminary documentation and is subject to change.]

AW.Core is a wrapper around the Active Worlds SDK (C SDK) for the .NET Framework. It can be used by any programming language capable of using .NET components. The wrapper exposes all functionality available in the C SDK, but in a manner more fitting to .NET languages. Management of bots is managed by instantiating one or more instances of the [AW.Instance] class.

The wrapper provides a multitude of enhancements over the C SDK, including easier management of Version 4 Objects by bots and easier management of multiple bot instances by a single application. These topics are covered in the Concepts section of this documentation.

The wrapper also uses the Event/Delegate model of handling events and callbacks triggered by the C SDK. All events are thus implemented as mullti-cast delegates and can have multiple subscribers listening to the events. For example this means that an application could implement an individual event handler for each instance and then one universal handler shared among all instances for debugging and logging purposes. Using this model, the wrapper sets the events and callbacks for each instance internally using the aw_instance_callback_set and aw_instance_event_set of the C SDK. This means that only instances that need to be listening for specific events and callbacks will be listening for them, instead of all instances doing so. This makes it much easier to handle events and callbacks and saves on bandwidth usage by the C SDK. For these reasons, the global event and callback handlers are not available.

Namespaces

NamespaceDescription
AW
The AW namespace contains all the classes, structures, and enumerations needed to create an Active Worlds SDK application. Each component contained within this namespace are fully documented within this section. The [AW.Instance] class will be of most interest to developers who are just beginning to use the .NET wrapper.