Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!seismo!ut-sally!husc6!think!ames!ptsfa!well!ewhac
From: ewhac@well.UUCP (Leo 'Bols Ewhac' Schwab)
Newsgroups: comp.sys.amiga
Subject: VideoScape 3D Review (Sort Of)
Message-ID: <3613@well.UUCP>
Date: Fri, 24-Jul-87 04:09:38 EDT
Article-I.D.: well.3613
Posted: Fri Jul 24 04:09:38 1987
Date-Received: Sat, 25-Jul-87 13:53:33 EDT
Reply-To: ewhac@well.UUCP (Leo 'Bols Ewhac' Schwab)
Distribution: world
Organization: Admiral Poindexter: Inter-Office Communications Expert.
Lines: 168

[ Line eater food, hell!  I just like writing these things. ]

	I've had a chance to play with VideoScape 3D today.  I've read the
manual, and looked at all the programs and data files and examples.  I think
I'm at the point now where I can form an opinion of the product.

	Yuckiepoo.  Yuck, yucko, ptui!  EEeeeuuaaahh!

	"Well, maybe not that bad, but Lord, it wasn't good."
		-- P. Opus

	The product just screams "Hackerware" wherever you look.  I get the
impression that Allen Hastings set the program up the way *he* liked it, but
failed to make a lot of the "default" operations settable by the user.  As a
result, a lot of the things that may come natural to Allen are desperately
aggrevating to (for the purposes of this discussion) me.

	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.
Once you exit the viewing mode, the object is flushed out of memory, and you
have to load it again.  This could probably be especially irritating if you
have a very large object you're trying to manipulate.  Say it takes 30 seconds
or so for the object to load, you preview it, think to yourself, "Gee, what
would that look like with a green sky instead of a blue one?"  Exit viewing
mode... FLUSHEROONY!  Load object again (waitwaitwait...), set new sky
color, and view again.  Gaakk.

	Just for the hell of it, I created a sphere with 75 latitudes and
150 longitudes.  It took about three minutes to create and save to RAM:
disk.  It took another two minutes or so to load into the animator, and
another two minutes to calculate and display it.  I moved the camera, waited
another minute or two, and saw the new drawing.  You can easily see how
irritating it would be to have the object flushed everytime you wanted to
try something different with it.

	I mean, it wouldn't be so bad if it held on to at least *some* of
the settings (like lighting direction, horizon, etc.).  But it flushes
EVERYTHING to default settings the instant you leave viewing mode, and there
is no way to get it to *not* flush the object.  This is the most irritating
behavior of the product.

	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
problem if you're trying to program camera motions around a stationary
object, and want that object in the center of the screen at all times.
Calculating direction angles from a "lookfrom" and "lookat" point is
relatively trivial (If I can figure it out, it's trivial :-) ).

	By the way, the corrdinate system is left-handed.  Positive X axis
to the right of the screen, positive Y axis straight up, positive Z axis
points into screen.  Those familiar with 3D graphics will see how this
simplifies object projection.

	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
wondering why color selection was restricted, I offer the following
quote from the manual:

	"The program's standard palette is not user-adjustable because of
the complex shading the program performs, but it is general enough to be
used for a wide variety of colorful foreground and background paintings.  In
fact, the palatte's choice of hue, saturation, and value are the result of a
carefully scientific selection to ensure the most realistic representation
of three-dimensionally lighted objects."

	I'm not gonna touch that one.

	The object generating tools are, while helpful, not ideal for
generating more complex objects.  For example, the intersection of two
cylinders must be done by hand.  Granted, these are the functions of a
full-blast CAD package.  However, there should have at least been a
provision in the 3D object editor to load VideoScape object files.

	For those of you who saw the program "ROT" on one of the Fish Disks,
it is duplicated for VideoScape.  Apparently, the only modification is that
ROT can now output VideoScape 3D object files (there are probably more, but
I haven't gone to the effort of discovering them).  It cannot read VS3D
files, which is, in my estimation, a major drawback.  At least with ROT
you'd have half a chance at pulling points around to get them the way you
wanted if the object creator programs couldn't do it for you.

	Okay, the object creator programs.  There is EGG and OCT.  EGG is
the multi-purpose object creation program.  EGG can generate:  boxes,
ellipsoids (spheres, squashed or otherwise), cones, cylinders, surfaces of
revolution, random points on a sphere (for star patterns), tiled flat
surface, rectangular fractal patch, and a ring of distant mountains.  The
user interface is keyboard only.  For example, for a surface of revolution,
you specify number of rings, points per ring, whether you want interior
polygons or not, surface colors (pick two), and finally the Y-coordinates
and radius of each ring.

	OCT is used to join several seperate objects into a single object
file.  For example, you might attach four trapezoids to the outside of a
cylinder (generated by EGG), and cap it with a cone.  Instant rocket.  Or
you might take one or two "rocks" you've defined, and place them in various
positions and orientations in space.  Instant asteroid field.  OCT also
allows some primitive object manipulation to be performed on an object
before it is written out to the destination file.  You can scale, rotate,
and translate on all three axes to get an object where you want it.

	To its credit, all object files are ASCII text files, which can be
edited with any text editor.  The manual fully describes how these files are
defined, and how to create your own.  The camera and object motion
definition files are also ASCII text.  I suspect that you will need to
hand-tool all but the very simplest of animations.

	Example:  Object files are a list of coordinates, followed by a
connectivity list i.e. which points connect to what to form the individual
polygons.  You must enter the point sequence in clockwise order (so the
program will know which way the polygon faces).  You can specify degenerate
polygons (lines and points).  You can also specify surface details for any
polygon (paint splotches, instrumentation, etc.).  Each polygon and surface
patch may assume any of the 11 colors.

	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?)

	The package is distributed with three disks and a 128-page manual
(with index).  The boot disk contains the 3D animator, ROT (called Designer
3D), EGG, OCT, a helpfile for Designer 3D, and various empty drawers.  The
Objects disk contains numerous object motion, camera motion, and object
definition files.  Inspection of these is very helpful if you wish to create
your own objects from scratch, or optimize the ones put out by EGG.  The IFF
disk contains a few IFF backgrounds and foregrounds, and two ANIM files; one
of a triplane flying around the VideoScape title screen, another of the
Boing Ball bouncing off a moving series of VideoScape logos (Flying Logos!
AAGGHHH!!).

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

	The manual seems to be reasonably complete, and gives a decent
introduction to 3D graphics.  However, keep in mind that I'm quite familiar
with 3D graphics, and can visualize an object in a 3D coordinate system.
Hence, I'm biased.  Someone else might be hopelessly confused by the manual
(but I don't think so).

	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
creating a computer graphic video.  I think it could end up being more work
than you bargained for.  Also be prepared to bump into the program's
limitations.  I can think of two scenes that would overwhelm the current
implementation right off the bat.

	Looking forward to VideoScape 1.1.....

_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
Leo L. Schwab -- The Guy in The Cape	ihnp4!ptsfa -\
 \_ -_	 Bike shrunk by popular demand,	      dual ---> !{well,unicom}!ewhac
O----^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