Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!dali.cs.montana.edu!milton!hlab From: esz001@cck.coventry.ac.uk (Will Overington) Newsgroups: sci.virtual-worlds Subject: Teleutopia of Virtual Reality Objects Message-ID: <1991Apr30.003040.27200@milton.u.washington.edu> Date: 29 Apr 91 16:08:09 GMT Sender: hlab@milton.u.washington.edu (Human Int. Technology Lab) Organization: University of Washington Lines: 197 Approved: cyberoid@milton.u.washington.edu 29th April 1991 Will Overington Department of Electrical, Electronic and Systems Engineering, Coventry Polytechnic, Priory Street, Coventry CV1 5FB, England. [Could you please consider this piece for publication in sci.virtual-worlds.] [Perhaps under a new stream heading, namely Teleutopia of Virtual Reality Objects ] In order to have a go at trying to get a teleutopia going, here is a short first try at a specification document for files describing objects. If there is interest I will try to extend it, taking into account any comments that I get. Teleutopia Of Virtual Reality Objects All objects are defined to lie in a three dimensional space which has integer coordinates, each from 0 to 999999999, namely from 0 to (1 less than a billion), in each direction. In order to allow objects to be rotated without going outside this space, please centre designs around (500 million, 500 million, 500 million) or, if objects are standing on a base, around (500 million, 500 million, 0) Along those axes where data is centred around 500 million, please keep within the limits 250 million to 750 million. This should ensure that simple rotation of any point about the centreing point will keep it within the space. Please imagine a simple handler for files of information having the following pascal data items. vvvx,vvvy,vvvz: longint; vvvstack: array[1..3,1..size_of_stack] of longint; vvvstackindex: integer; The basic system uses eight keywords. vvvzero has no parameter and initializes the vvvstackindex to 0. vvvx has one integer parameter and sets vvvx to that value. vvvy has one integer parameter and sets vvvy to that value. vvvz has one integer parameter and sets vvvz to that value. vvvpush has no parameter, increments vvvstackindex by 1 and puts the current values of vvvx, vvvy and vvvz into vvvstack at that location. vvvfill3 has no parameter, draws a 3 sided shape using the top three points on the vvvstack and fills it. The contents of the vvvstack are not affected, nor is vvvstackindex. vvvfill4 has no parameter, draws a 4 sided shape using the top four points on the vvvstack and fills it. These points must all lie in the same plane. The contents of the vvvstack are not affected, nor is vvvstackindex. vvvend has no parameter, ends an object description. For example, vvvzero vvvx 500000000 vvvy 500000000 vvvz 500000000 vvvpush vvvx 600000000 vvvpush vvvx 500000000 vvvy 700000000 vvvpush vvvfill3 vvvend At this early stage I also define vvvcopy with a single integer argument, herein called i, that increments vvvstackindex by 1 and then performs vvvstack[1,vvvstackindex]:=vvvstack[1,i]; vvvstack[2,vvvstackindex]:=vvvstack[2,i]; vvvstack[3,vvvstackindex]:=vvvstack[3,i]; For example, vvvzero vvvx 500000000 vvvy 500000000 vvvz 500000000 vvvpush vvvx 600000000 vvvpush vvvx 500000000 vvvy 700000000 vvvpush vvvfill3 vvvy 500000000 vvvz 550000000 vvvpush vvvfill3 vvvcopy 1 vvvfill3 vvvcopy 2 vvvfill3 vvvend This introduction, which is deliberately intended to be short, is trying to see if there is any interest in forming a collection of virtual reality objects as an informal group activity, with a view to eventually producing a shareware style disc, though also available on archive-servers and this groups's archive. The whole teleutopia concept is also being tried here as a first active experiment. I hope to gain experience of whether teleutopias are a workable concept, as such, and to gain experience of the best way to try to get one going and of what sort of problems arise. So, if anyone is interested to design an object within these rules, and/or suggest extensions, please do! +-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+ Will Overington Department of Electrical, Electronic and Systems Engineering, Coventry Polytechnic, Priory Street, Coventry CV1 5FB, England. +-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+ Putting forward new ideas is like being a quarterback. First of all you will loose a few yards by even starting the play. Then there will be people trying to put you down. Sometimes it's best to hand the football to someone who is better at running, sometimes it's best to forward pass in a controlled, planned way, but at times, the only thing to do is just hurl it up in the air in a long forward pass attempt, and hope that someone out there catches it and RUNS! +-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+-*-+ --