Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!seismo!rutgers!labrea!aurora!ames!lll-tis!ptsfa!well!adh
From: adh@well.UUCP (Allen D. Hastings)
Newsgroups: comp.sys.amiga
Subject: Re: VideoScape 3D Review (Sort Of)
Message-ID: <3640@well.UUCP>
Date: Mon, 27-Jul-87 20:18:49 EDT
Article-I.D.: well.3640
Posted: Mon Jul 27 20:18:49 1987
Date-Received: Wed, 29-Jul-87 02:49:55 EDT
References: <3613@well.UUCP>
Reply-To: adh@well.UUCP (Allen D. Hastings)
Distribution: world
Organization: Whole Earth 'Lectronic Link, Sausalito, CA
Lines: 207



=============================================================================

        First of all I'd like to say how glad I am that VideoScape 3D is
finally in stores (after 19 months of hard work) and is being received
enthusiastically by the Amiga owners that I've spoken with, and by local
dealers who tell me that sales are brisk.  Even though it has only been
out a few days, I know several people who have already created new 3D
objects and animations, including several demos to be shown at SIGGRAPH
(I had figured it would take most people about a week to get up to speed).

        The purpose of this posting is mainly to respond to recent
messages about VideoScape by Leo Schwab and Carlos Smith.  I agree with
the main point of Leo's messages, which (I think) is that to get the most
out of the program requires investing a lot of time.  There is definitely
a learning curve to climb, and setting up the data files for a complex
scene does take some work.  The program is not for casual users, and
hopefully potentially buyers will read the note on the package:

        'VideoScape 3D is a sophisticated script-file-based animation
tool designed for producing special video effects.  It is intended for
the professional or advanced video hobbyist.'

        On the plus side, early buyers have told me that they like the
manual and that it allows even those who haven't encountered 3D geometry
before to climb that learning curve fairly painlessly (a careful reading
of the manual is a must).  I have been pleasantly surprised by how quickly
beginners have caught on to the basic concepts.  Several advanced users
have also complimented me on the program, and some are creating sequences
for fall network TV shows with VideoScape, which should give the Amiga some
good (and much-needed) publicity.

        I will try now try to respond some of Leo's other observations:

>        Point:  When you load an object file into the 3D program for
>previewing, it hangs around only long enough for you to preview it ONCE.

        This is something I will definitely change in any future versions,
since it seems to annoy some people (including myself sometimes).  There is,
however, a reason why the program works this way.  Generating an animation
is highly destructive to the variables used, so to be able to immediately
return to the beginning of a scene would require keeping copies of the data
structures lying around, which would reduce the amount of memory available
for object storage.  One of the goals was minimizing memory usage so that
512K Amiga owners could get the most out of the program (this also explains
why IFF backgrounds are reloaded).  Future versions won't be so stingy
about using memory and will solve these problems.  For the present, I
recommend placing large objects and IFF backgrounds in the RAM disk.

>        Onward.  The camera motion control is not general enough.  You are
>allowed to position the camera at any point in space.  However, you *must*
>supply camera direction as direction angles (heading, pitch, bank).  You
>cannot tell the camera to 'look at this coordinate.'  This could be a major

        It is not difficult to keep the camera aimed at a particular point
(there are many examples of this in the 'Infinite Loop' video).  The
tutorial in the manual provides another example, showing how to pan the
camera to follow a spaceship that flies by.  Since camera files are ASCII
text, it wouldn't be hard to write a short utility to calculate direction
angles for you based on 'from' and 'to' coordinates.  I'll probably make a
PD program to do just that.  Also, I've heard rumors of interactive scene
editors under development that would allow one to do this graphically.

>        Color restriction is restricted to 11 (count 'em) colors.  They are:
>Black, Dark Blue, Dark Red, Dark Green, Brown, Grey, Light Blue, Light
>Green, Light Red, Yellow, White (you IBM people should recognize these
>colors).  There are also 'glossy' versions of these colors.  If you're

        These are actually ranges of colors that can be assigned to
polygons, and shouldn't be confused with the actual colors in the screen's
color table.  The program picks the actual shades during rendering, based
on each polygon's shading model and it's orientation with respect to the
light source and the camera.  Thanks to dithering, there are actually
56 shades available in 352x220 and 352x440 resolutions and 26 shades in
704x220 and 704x440 modes.  Just look at the ANIM file demos to see how
colorful VideoScape scenes can be.  HAM mode with 3DG2 files will be the
ultimate solution.

>        The object generating tools are, while helpful, not ideal for
>generating more complex objects.  For example, the intersection of two

        I agree (especially about Designer 3D, which I never use).  I
prefer the complete flexibility of the graph paper method described in
the tutorial.  The Mayan Pyramid on the Objects disk, for example, was
drawn and entered in about an hour.  I also use EGG and OCT a lot.  I
believe that Designer 3D was included because full-blown object editors
for VideoScape are still under development.  I have recently played with
a prototype editor and it's really neat, allowing you to zoom, pan,
resize the three views, etc. (my little CLI utilities will become
obsolete).  I also like Leo's suggestion about making a translator
program for VideoScape and Sculpt-3D objects.

        Expect to see lots of new premade VideoScape objects and fonts
soon, both in the public domain and as 'art disks' from various companies.
Also, there are lots of existing 3D object databases out there for more
expensive systems, and it wouldn't be hard to translate them (I have
already downloaded a complex object from a Macintosh 3D program, for
example).  This should further alleviate object description difficulties.

>        Limitations of the animation system appear to be hard-coded.  The
>limits are as follows:
>
>        o 30,000 points, 30,000 polygons, 30,000 surface polygons.
>        o 1000 of each of the above for a 512K system.
>        o Up to 200 verticies per polygon (larger polygons can be simulated
>          by attaching two co-planar polygons).
>        o Up to 25 objects in one scene, with motion description for each
>          (note that 'objects' can be multiple polyhedra on-screen; but
>          they are a single object to the program, and are moved as such).
>        o Up to 25 key frames per scene (24 tweens).
>        o Up to 30,000 frames per scene.
>
>        (Didn't this guy ever hear of linked lists?)

        Having graduated with Honors in Computer Science from UC, I
have heard a lot about about linked lists.  In fact, a form a linked list
is used to store polygon information (so as not to waste memory).  In
some other places linked lists were replaced with arrays which resulted
in a significant speed improvements.  To be fair, I think the limits are
pretty high for a micro-based package (it's hard to imagine 30,000 frames
in a single scene), and if they aren't high enough for a particular scene,
there are many ways of working around them.  None of the scenes in the
'Infinite Loop' video use more than 10% of the object data capacity.
Other 3D programs have limits, too:  Forms in Flight, which requires a
megabyte to run, has a default limit of 600 points, and Sculpt-3D limits
polygons to three vertices instead of 200 (I am not trying to knock these
programs at all).

>        Incidentally, the ShowAnim player doesn't appear to have any
>graceful way of exiting it; you seem to have to reboot (ack!).

        The main tool for displaying ANIM files is the PlayANIM program
included with VideoScape, which also you to play an animation any number
of times, tinker with frame timing, etc.  The reason that ShowANIM is also
included is because it is freely distributable and doesn't require any
prompts.  Other messages on the net indicate that an 'exitable' ShowANIM
is now being distributed.

        Carlos Smith posted a message recently describing his experience
with VideoScape 3D at a dealer.  Apparently, the program would crash with
the simplest operations on the single machine that he tried it on.  Leo
replied:

>        Based on your description, I would say that the hardware was flakey.
>I've had minimal crashes with both systems I've used it on (A1000's with
>2Meg ASDG racks (stop snickering, Perry :-) )).

        After trying many variations on the sequence of actions Carlos
describes, I have been unable to cause a single crash.  I have to agree with
Leo that there is something strange about that particular machine or disk.
I spent a lot of time fortifying the program against attacking Gurus, and
any bugs reported by the beta testers were ruthlessly hunted down and
squashed.  All the reports I've heard state that the program works fine
with multitasking, extra memory, hard disks, and the new models (500 and
2000).  I have tested all these things myself (except for the 2000 - Aegis
tried that), and there have been several beta testers working with the
program since March.  If anyone does find a repeatable bug, mail me an
exact sequence I can follow to reproduce it and I'll fix it.

>        OCT has also seen a lot of use from me.  Something you should watch
>out for:  If you apply a rotation to an object, all rotations seem to happen
>'at once', not in a sequence.  That is, if you ask for both heading and

        The sequence of rotations is spelled out in the manual:  rotation
about the Z axis (bank) is applied first, then rotation about the X axis
(pitch), and finally rotation about the Y axis (heading).  This is the
most logical order when dealing with vehicles (imagine an airplane flying
along the Z axis).

>        You *NEED* two megs.  At least.  The way I've been working, I 'run'
>VideoScape, and load EGG and OCT when I need them.  I run out of Perry's
>Sooper Dooper VD0:, and keep progressive object files in it, updating to
>floppy when they're done.  VS3D works nicely out of VD0:.  I also keep my C

        This is probably the best way to use VideoScape.  However, two
megs is not really necessary (I only have one myself, allowing about 5000
points and polygons to be loaded), and both the space battle film 'Verx'
and the original 'Infinite Loop' were generated on a 512K Amiga.  I
suspect that Leo must be making some pretty humongous objects (I can't wait
to see what he creates).  More memory definitely helps, especially for
making ANIM files.

>        In summary, VideoScape does provide useful tools for the creation
>and recording of 3D animation sequences.  However, be prepared to put in a
>*lot* of work to get up to speed on the system, and even more work into

        As I said before, it can be time-consuming, but for me, seeing
the Red Baron flying again or walking around an imaginary house makes it
all worthwhile (and I've had fun showing my films to amazed Amiga owners
and even-more-amazed Mac and ST owners).  If you are really serious about
making 'Infinite Loop' style animations, then I'm sure you can create
great new films with VideoScape 3D (I hope that didn't sound too corny -
I'm trying to be serious here).  As a 3D graphics junkie, I'm looking
forward to seeing some really impressive stuff done with VideoScape.

>Leo L. Schwab -- The Guy in The Cape    ihnp4!ptsfa -\
> \_ -_   Bike shrunk by popular demand,       dual ---> !{well,unicom}!ewhac
>O----  But it's still the only way to fly.  hplabs / (pronounced 'AE-wack')
>'Work FOR?  I don't work FOR anybody!  I'm just having fun.'  -- The Doctor

                                        - Allen Hastings

=============================================================================


w