What Needs to be Done

What Needs to be Done

Ken Webb, 1999

These are some of the things that I think should be done.

  1. Produce 3D visualization of additional sample models.
  2. Use Connexis rather than ELS to connect RRT Client to Java applet.
  3. Produce a multi-user version of the RRT Client, so that multiple applications can simultaneously observe an RRT model through a socket connection.
  4. Design/define and prototype a full multi-user distributed architecture so that multiple software developers or others can simultaneously interact with the same executing model and with each other. This would be based on the many VRML and other VRML/3D chat systems available on the internet.
  5. Define a shared memory API, that could be used as part of any RRT model. For WinNT, define and implement a DLL and COM interface to this.
  6. Define and implement a general purpose memory allocator for shared memory, to support dynamic incarnation and destruction of capsules and attributes. In my present prototype I'm allocating just enough space for the current number of capsules and attributes; any new capsules will just write over the wrong part of memory.
  7. Investigate use of shared memory on Unix and Linux.
  8. Produce a tool that can locate selected or all attributes in a RRT model into shared memory so that they can be observed.
  9. Prototype the conversion of RRT behavioral messaging into the VRML behavioral approach that uses routes between nodes with actions implemented in Javascript or Java. In many ways, VRML resembles a RRT model. For learning purposes, it might be possible to convert any RRT model into an equivalent VRML model that new software developers could play with to help them learn the architecture of the system.
  10. Investigate the use of RRT as a generator of VRML and other 3D worlds.
  11. Experiment with the use of visualization through 3D sound in VRML.
  12. Experiment with the use of movie texture files in VRML.
  13. Use Level of Detail (LOD) in VRML.
  14. RRT model clients should be able to create a hierarchy of VRML scene graph files, instead of one big file.
  15. Be able to automatically produce a screen saver VRML version of any RRT model or capsule.
  16. In a VRML world, be able to click on an object and bring up the corresponding Web Publisher output from the RRT model. This should be pretty easy to do because the VRML world and Java applet knows the capsule class name of each VRML object.
  17. Work on the idea that an RRT capsule and message passing model may just be a run-time generator for an executable that mostly users pointers and function calls. This is how the cell model works.
  18. Investigate cyclic use cases. In the cell model there really aren't any use cases, because everything uses everything else.
  19. Provide RRT built-in support for a large number of periodic actions. This would be able to replace the AOS in the cell model.
  20. Allow Java applets to access the shared memory through a Java Native Interface (JNI) to C/C++ routines (possibly DLL/COM). This is a problem because of Java security, but it is possible to do. This would be much faster than the ELS socket connection.
  21. Produce non-web Java applications. These have no security issue accessing MMF through JNI. Could use this to produce graphs using existing freeware graphing tools. Possibly use Java3D this way.
  22. Work on use of PNG and other texture files to represent capsule attributes and state, and how these change in real time. Prototype real-time generation of PNG or gif files for Game of Life visualization, which is a non-VRML application of this.
  23. Convert my test-bed models (Cell Model) to RRT 6.1.
  24. Enhance Reflector and MMF/data view to deal with plug-in capsules, for example with blood plasma circulating in the circulatory system.
  25. Lots more