The idea is to use the World Wide Web as the knowledge source for the
ocean. The process generating the ocean will build up the ocean with pictures
collected from the World Wide Web. Which image that will be fetched is
controlled by the motions of the avatars making up the two actors. We have
not figured out the exact algorithm but the idea is like this:
there is always a current web site accessed by the process, at start-up
this is set to a default site. Between each image fetch the motions of
the avatars are monitored. The total distance travelled during this time
is divided into two directions, left/right and backwards/forward. The distance
travelled forward/backwards decides which link to follow in the current
web page to get a new page. Say the avatar has travelled 3 meters forward
then follow the third link in the current web page. This new web page will
become the current one. If the avatar has travelled backwards instead the
link is counted from the end of the web page instead of from the beginning.
The distance travelled left or right decides which image to take from current
web page in the same way as the link is decided. If a link generates an
error or there are no images on a page the next link is followed and an
images is fetched from this page. We have to test this algorithm how well
it performs, the goal is that a lot of images will be fetched from the
net and it should only be possible to roughly predict how the process works.
The results of the interaction will not be completely predictable, it will
be a bit like navigating the real sea - you set your direction and the
boat will sway and turn with the waves but the "average" result is a travelling
in the general chosen direction.
When an image is fetched it is put as a texture on an object either a plain square or a curved surface with an arbitrary shape like a triangle, square, hexagon or romb. These objects will make out the surface and the ocean of Solaris. The objects will be placed spherically around a centre point and slowly start to move towards this point, doing so they will also get more and more transparent and finally disappear. But if the same image is fetched again and has not disappeared from the surface, there will not be a new object created instead the object with this image is made opaque and moved to its start position. Then staring again falling into the centre of Solaris.
More ideas to make the planet an exciting object is to make it slowly
swell and shrink periodically as if were breathing.
In the play the actions of the man will trigger actions of the woman
and vice versa. The problem is to have the computer understand the actions
of the man. We will have to come up with some description of his actions,
to parameterize them. The easiest way to do this is by looking for different
events like colliding with something or reaching a certain point and let
them be the parameters. Another solution would be to always monitor the
male avatar and from these data find parameters. In DIVE it is rather simple
to put up a lot of invisible objects which can be used to detect collision
with them. For example if we want to find out if the hands of the avatar
has been lifted above the head we can place an invisible object there and
detect the collision of the hands with this object. Maybe this is not accurate
enough but in such case we have to try the other method where we monitor
all the motions of the avatar and generate parameters from this. For example
by measuring how fast an arm is moving and its position.
What ever method we decides to use, the parameters will be send as
an message to the female avatar who decides how to interpretate this information.
This is where the loose scripting comes in place. A loose script is a non-linear
script consisting of a collection of segments, each segment describing
an event and the preconditions necessary for that event. When the female
avatar receives a message she runs through her loose script and executes
those events which preconditions has been fulfilled. In this way she can
not be stuck in the middle of the script as she might have been if the
script was linear. In a linear script, if a message is not generated as
for seen by us by the process watching the male avatar the female avatar
will keep waiting for this message until she receives it. She will act
as if she were dead or mechanical.
To have a successful implementation of this action engine we must study
the script carefully and together with the producer of the play.