home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / sci / virtual / 2597 < prev    next >
Encoding:
Internet Message Format  |  1992-07-28  |  4.1 KB

  1. Path: sparky!uunet!zephyr.ens.tek.com!uw-beaver!news.u.washington.edu!milton.u.washington.edu!hlab
  2. From: keithley@apple.com (Craig Keithley)
  3. Newsgroups: sci.virtual-worlds
  4. Subject: Re: TECH: world description
  5. Message-ID: <1992Jul29.073343.28356@u.washington.edu>
  6. Date: 28 Jul 92 19:34:08 GMT
  7. References: <1992Jul16.001255.10153@u.washington.edu> <1992Jul17.185842.
  8. Sender: news@u.washington.edu (USENET News System)
  9. Organization: Apple Computer, Inc.
  10. Lines: 79
  11. Approved: cyberoid@milton.u.washington.edu
  12. Originator: hlab@milton.u.washington.edu
  13.  
  14.  
  15.  
  16. In article <1992Jul17.185842.2330@u.washington.edu>, lonachon@anu.edu.au
  17. (andrew longhorn ) wrote:
  18.  
  19. > There would probably be a few levels of control procedures, maybe
  20. > gravity and solidity reactions can be overridden also.
  21. >  ...
  22. > But you think this is
  23. > silly and link your controls (output of the spirit) to the inherited
  24. > rotation, movement controls of the subtrees of the table (i.e. the
  25. > legs), then stand up and walk (or fly) off somewhere, to the amazement
  26. > of onlookers.
  27.  
  28. This highlights the question of "What defines the laws of your local
  29. _reality_?"  In the _reality_ I define (on my VR server?), I may wish
  30. to prohibit the overriding of the laws of physics.  This would
  31. disallow the use of "Magic", for example, preventing someone from
  32. making a table walk or fly.
  33.  
  34. So how do we define the "rule systems" of each locality?  Such "rules"
  35. could encompass things such as time constants, gravity, friction, etc.
  36. I've not fully worked out how rules are defined, but as for handling
  37. rules, I do have a few thoughts.  I think that:
  38.   
  39.   No limit to the number of rules.
  40.  
  41.   Rules might be overriden individually or en masse.
  42.  
  43.   Ability to reject a request to override a rule.
  44.   (and so forth...)
  45.  
  46. Unfortunately this opens up much more difficult issues.  Because it
  47. may be simpler to model objects on a behavioural level rather than on
  48. the physical level.  If modeled on the behavioural level, then the
  49. object's 'behaviour' might be defined rather simply.  Using the table
  50. as an example, the object's extremities might not have any "controls"
  51. (subroutines) that allow movement of the legs.  Making the table walk
  52. would require control extensions to the object.  Work arounds would
  53. need to be used to handle object destruction (or damage). Modeling at
  54. the physical level would require a greater simulation of object
  55. components (ie: Legs, table top, etc.).  If you want a general
  56. solution to the requirement of prohibiting the overriding of rules,
  57. then you probably need to simulate the interaction between components
  58. in the object.  For example, without overriding the 'no magic'
  59. rule(s), the attempt to move a leg would result in a broken table leg
  60. (caused by trying to move a joint that's solidly glued in place).  If
  61. you could override rules, then the table leg could flex and the table
  62. would walk.  This is an example, so please don't thrash on the
  63. specifics of how a table leg could move by dissolving the glue, adding
  64. a hinge, changing the table's substance, changing the table's design,
  65. etc.  Assume that the object's construction is immutable.
  66.  
  67. So I'm still wrestling with the issue/choice of defining object
  68. behaviour by scripting or by a complex rule system + object component
  69. interaction.  I can best explain the quandry by asking: Would you
  70. rather define a clock by writing a 'behaviour' script that describes
  71. the motion of the hands of the clock, or by defining the
  72. innards/components of the clock.  Writing a script may require
  73. foreknowledge of all the possible rule changes (time constants,
  74. friction, gravity).  Having complete foreknowledge might be
  75. impossible.  On the other hand, using a rule system & object component
  76. interaction may make objects difficult to 'design' and the simulation
  77. crawl (imagine a clock store!).
  78.  
  79. I suppose the best solution might be to allow for both methods of
  80. defining objects and their behaviours.  Or even a combination of the
  81. two methods.  I further suppose I'd just prohibit the overriding of an
  82. object's behaviour scripts.  Well, maybe sometimes.  Always?  Hmmm...
  83. Wish that table would stop flying about...
  84.  
  85. Thoughts anyone?
  86.  
  87.  
  88. Craig Keithley
  89. Apple Computer, Inc.
  90. keithley@apple.com
  91. Anything not forbidden is mandatory.
  92.