<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body bgcolor="#ffffff" text="#000000">
Hi,<br>
<br>
You're probably all busy at the Virtual Worlds conference :-) <br>
I left a couple of comments in the obscure talk page of the XML
Serialization, I bet no one saw that; so I'm repeating the most
important one here:<br>
<ul>
  <li> Sub-classing SceneObjectGroup:
  </li>
</ul>
<p>I'm working on simulations that involve subclassing
SceneObjectGroup. The current serialization implementation doesn't work
for them, because it always instantiates objects of type
SceneObjectGroup. We should account for the sub-type of the object in
the XML, and instantiate the right sub-type. Includes having to
override the xml-related methods of SceneObject, so make those virtual.<br>
</p>
<p>-----<br>
</p>
<p>My recent experience with writing subclasses of SOG (and IClientAPI,
but that's another topic) opened my mind to the fantastic architecture
that you guys have put in place here. I suspect that not many people
realize the power of this architecture yet. <br>
</p>
<p>So, this other thought popped in my mind: why not implement scripted
objects as instances of sub-classes of SOG, and bypass script
interpreters and their use of reflection altogether? Something like
this: whenever you attach scripts to an object, the OS runtime would
generate (assemble, really) CIL bytecodes representing a subclass of
SOG implementing those scripts. An instance of that class would then
replace the original object, preserving all the important properties
and IDs. Rez would be nothing but new-ing those subclasses.<br>
That way there would be only one uniform representation of active scene
objects, independent of whether they were written directly in modules
or written by scripting them inworld, and it would use this great API
that you have put in place. I bet it would make a lot things a lot
faster.</p>
<p>I know it's not as easy as I make it sound, and there are many
tricky details, but... is there any fundamental obstacle to this?<br>
</p>
Diva / Crista<br>
<br>
</body>
</html>