Subject: REVIEW: Essence Volumes I and II
From: [email-masked] (Steve Koren)
Date: 6 Oct 1993 16:04:18 GMT
Newsgroups: comp.sys.amiga.reviews

PRODUCT NAME

	Essence Volumes I and II

BRIEF DESCRIPTION

	Essence is an algorithmic texture package for (at this time) Imagine
on the Commodore Amiga.  The June 1993 newsletter from Apex (the creators of
Essence) hints at the possibility of Essence for Lightwave and Read3D, and
perhaps others.  It also has mentioned Essence for the PC version of
Imagine.  This review was written based on the Amiga Imagine version.
"Essence" with no volume number is used in this review to mean both Volumes
I and II.

	This review assumes some knowledge of 3D rendering.

AUTHOR/COMPANY INFORMATION

	Name:		Apex Software Publishing
	Address:	405 El Camino Real Suite 121
			Menlo Park, CA 94025
			USA

	Telephone:	(415) 322-7532

	E-mail:		[email-masked]

LIST PRICE

	Essence I:  $48 (US) (prices from Apex newsletter)
	Essence II: $74 (US)

SPECIAL HARDWARE AND SOFTWARE REQUIREMENTS

	HARDWARE

		Essence requires an Amiga with a floating point coprocessor.
		Some of the textures are complex enough that a 68040 is
		quite desirable, although not strictly necessary.  Essence
		does not explicitly require a hard disk, although I strongly
		recommend one for doing 3D rendering.

	SOFTWARE

		Essence requires the floating point version of Imagine.  It
		also claims to support Turbo Silver, although I haven't
		tried that.  It supports AmigaDOS 1.3, 2.04, and 3.0, and
		might also support 1.2.  Since older versions of Imagine can
		be had very cheaply, this is a good way to start in 3D
		graphics without a huge initial cost.

COPY PROTECTION

	None.

MACHINE USED FOR TESTING

	Amiga 4000/040
	2 Mb chip RAM, 16 Mb fast RAM
	Workbench 3.0

	Imagine 2.0, FP (floating point) version.

INSTALLATION

	Installation is trivial for both Volume I and II.  The supplied
install script copies Essence to a location you specify.  The Commodore
Installer is used.

OVERVIEW

	Essence I and II are packages of algorithmic textures.  An
algorithmic texture is a method for the 3D software to decide the attributes
of a particular object as a function of the coordinates on that object and
the coordinates of the texture itself.  The texture can vary the color,
reflectivity, or transparency of an object in interesting ways across that
object's surface (or inside that object's volume if this is supported by the
software).  Texture can also simulate altitude effects.  Some textures are
more or less hardcoded for a specific surface type (such as a sphere or flat
plane), while others are usable for any surface.

	While it is possible to achieve some of these effects with bitmap
color or altitude maps, using textures has many advantages:

    - Textures use far less RAM than bitmaps.

    - Textures have almost infinite detail, while zooming in on a bitmap
      might either require a very large (and thus RAM consuming) bitmap,
      or might produce "jaggies" and pixel artifacts.

    - Many features of textures can be morphed over time to produce
      stunning animated effects not practical with bitmaps.

    - Creating some of these effects with bitmaps would be quite
      difficult.

Textures also have some disadvantages.  Chiefly:

    - They can be much slower than bitmaps.

	Essence I and especially II contain some very powerful algorithmic
textures.  There are textures in Volume II which are difficult to achieve
using any other rendering engine, Amiga or otherwise.

ESSENCE VOLUME I

	Essence textures are divided into two volumes.  The first volume
contains textures which are more basic building blocks.  Low level fractal
noise textures are common in Volume I, along with various useful transitions
and patterns.  The fractal noise textures are very powerful and are useful
to model countless real world objects.  Fractal noise can be used, for
example, to create weathered patterns on buildings, dirt on windows, marble
objects, or anything else with non-regular patterns.  It is also useful to
make rendered objects less "perfect" or "sterile" by adding a slight amount
of random discoloration to an object.  This can dramatically improve the
quality of the image by eliminating the sterile feel of a perfect object.
Fractal noise can also be used in altitude textures to create bumps on an
object.

	In addition, Essence I has many useful transition textures.  Some of
these also employ fractal patterns; for example, you might make a blast wave
from an explosion radiate outward from the impact point, but the wavefront
itself would not be "smooth".  Transition textures come in linear,
spherical, and cylindrical forms, with smooth or fractal edges.  The
transition width and the sharpness can be controlled.  These transition
textures are unexpectedly useful once you have grown accustomed to them.  A
common use is to "shape" objects by using a transparency transition
texture.  I recently created a picture with flames shaped by this technique;
it would have been much harder to accomplish this by creating an actual
object outline shaped like a flame, and it would have lacked the same amount
of detail.

	Almost all textures supporting fractal noise have parameters that
let you control various aspects of the noise, such as the scale of the
noise, the detail level (the more detail, the more time it takes to render,
but the nicer it looks), random seed values, the "time scale" (which
controls how the fractal noise is formed) and some other values.  In many
cases, different patterns can be combined to form new effects.	 Textures
can be made to cooperate (for example, coloring only the highest parts of a
surface with a fractal altitude map applied), or not.  Many textures can set
either the color, reflectance, or transparency of a surface.  Some are
limited to only one or two of those due to Imagine's limited number of
texture parameters.  In these cases, a utility texture is provided to
translate any of the 3 to any other.  Also, multiple versions of the texture
are sometimes provided, one to control color, one for reflectance, etc.

	Almost all the textures have a "fade" value which can be useful
to smoothly introduce or remove the texture in an animation.  Almost all
also support some sort of "time" parameter which can be used to change
the texture in an animation.  A recent newsletter from Apex had an
example of a stunning animated fire effect using three Essence I
textures which were morphed into a new object with different parameters.
The time parameter might be used to create clouds which change shape as
they move across the sky, or a fungus which grows on an object over
time.

	With only a very few exceptions, I have found the textures in
Volume I to be very high quality.  The only texture which I was never
able to get much satisfaction with is the "tree bark" texture, but this
might be just a problem with my use of it.  All the other textures I
have used from Essence I have produced marvelous effects.  In all cases,
the textures come with default values which look "good" for most
normal-sized objects.  You can then adjust individual values to obtain
the best effect for your needs.	 Most parameters can be morphed over
time, and these are indicated with a special mark in the documentation.
Several of the Essence I textures are similar to textures provided with
Imagine, but provide much more control.  In a few cases I have wished
for some of the Essence II features in the Essence I textures (such as a
new cylinder brick texture); but for the most part, Essence I textures
can do what I want.

ESSENCE VOLUME II

	After owning Volume I for quite a few months, it provided so
much that I was at first skeptical that Volume II could give me anything
else I would need.  Luckily, I was wrong.

	Instead of lower level building blocks, Volume II textures tend to be
dedicated to a specific purpose, such as making a flagstone wall or walkway,
or a wood surface, or various sorts of tiles or shingles or scales.  There
is a "hurricane" texture which, in addition to producing nice animated
storms, can be used to make other spiral objects such as galaxies, or
perhaps water going down a drain.  There are several water textures,
including standing waves, "caustics" (the patterns you see on the bottom of
a swimming pool), and several water drop and rain textures.  There is a
stunning "sea waves" texture which produces very nice oceans, and especially
nice reflections from the rippled water.

	Some of the Volume II textures are almost biological in nature,
producing the effect of "veins" on the surface of an object, or a sort
of crusty fungus appearance.  I haven't yet found a use for most of
these textures, but the effects they produce are quite nice.  There are
also some Volume II textures which are similar (but not identical) to
effects that you can get by combining 3 or more Volume I textures.  Some
of the "flake" textures can produce nice rock walls which previously
required 3 Essence I textures.  This is an advantage because it takes
much less time to produce a nice effect (you don't have to experiment
nearly as much), and you also get more control over the final surface.
For example, the texture which lets you add random raised "flakes" to an
object, lets you control the color of the applied flakes, the shape of
the protrusion, random discoloration, and several other things.	 Most of
the textures provide very detailed control, and most have some altitude
effect which cooperates with the applied texture color.

	Volume II includes on-disk images which show small pictures of the
various textures.  I have found that these pictures (probably due to disk
size constraints) are of too low resolution to be of much real use.
However, the Imagine objects used to produce them are included, so you can
render high resolution versions yourself.  Volume II also includes some
sample attribute files using the supplied textures.

	Some of the Volume II textures are ideally suited for high
resolution displays because of the amount of detail they add.  Using
them on a plain ECS display is possible, but it is easily possible to
"overdrive" the resolution of the display unless you make the feature
size large.  Others, however, work fine in low resolutions.

DOCUMENTATION

	The Essence documentation for both I and II comes in a spiral bound
5 1/2" X 8 1/2" document, which is nice because it is easy to open flat to a
particular page.  The text is both good and bad.  It succeeds in conveying
almost everything you need to know about using the textures, assuming that
you understand enough about Imagine to be able to understand and use
external textures in the first place.  The documentation is certainly in a
class far above the documentation for Imagine 2.0 itself.  It includes
pictures of most of the texture "families", along with a textual description
of the texture, and a description of each of the parameters to the texture.
The introduction also has some information that applies to all of the
textures, such as general information on fractal noise.

	I do, however, have a few complains about the manuals.  First, the
style in which they are written tends to become overly "cute" or "chatty."
I can handle a fair amount of this in informal communication, but it manages
to become annoying when used to document what is otherwise a very
professional piece of software.  To some extent this is a matter of
preference, but at the very least I think that it hurts the professional
image that the software deserves.

       My initial copy of the Volume II documentation was missing certain
pages and has duplicates of others, so there are a few textures about which
I lacked either documentation or hardcopy sample pictures or both.  (For
example, my pages proceeded thus: 28, 31, 32, 31, 32, 33, ...).  Thankfully
this was an anomaly and the manual was replaced at no cost by Apex within a
week of my mentioning it.  The new manual has all the pages it should.

	Lastly, even though the documentation is adequate, there are some
texture parameters which I wish were explained in a bit more detail.  For
example, the cyclone texture accepts an "Arm Scale" parameter, which is
explained as:  "A hurricane has a definite scale to its arms.  Are there
many thin arms, or maybe just a couple of fat ones?"  However, this
explanation leaves me with questions about just how this parameter relates
to the number of arms (if at all), and at what point the arm scale is
measured and in what direction, etc.  There are other similar cases.  More
precise explanations could only help.  There are also cases where there are
several parameters which have a similar enough description that the
difference between them is not clear.

	Although it would probably take a large amount of documentation
space, I would like to have seen perhaps 4 to 8 different pictures in the
manual for each texture, with each picture made by varying one of the
primary texture attributes.  That would immediately make it clear what the
effect of changing a given attribute would be.  In many cases these effects
are obvious, but in others, they are not.

	The documentation is, however, adequate for the intermediate user
familiar with Imagine textures, and is far above the quality of the Imagine
documentation from Impulse.

LIKES AND DISLIKES

	Overall, there is little to find fault with about Essence.  Other
than relatively minor documentation complains, the product has been able to
do almost everything I have asked of it.  It lets me build a huge variety of
surfaces that would not otherwise be possible.  Occasionally, the textures
overload parameters in a somewhat non-intuitive manner (such as using the
fractional part of a number for a different purpose than the integer part),
but this is usually required by the limited number of texture parameters
that Imagine provides.

	I'd like to see a separate Apex product containing simply objects
which use the Essence textures.  For example, the "fire" object in their
recent newsletter uses 3 layered textures and would not be easy for a novice
user to produce without a lot of experimentation, especially as the effect is
animated.  I have some objects which use up to 7 Essence textures at once.
If Apex released a disk containing simple plain objects such as the fire
example, it could save a lot of time.  Other potential things would be a
"waterfall" effect, various other types and styles of fire, perhaps a "mold
growing over object" effect, etc.  Tweaking the parameters to get a high
quality animated effect can take a lot of time, especially when you have
many layered textures.  A disk full of these high quality effects would be a
significant value.

COMPARISON TO OTHER SIMILAR PRODUCTS

	I am not familiar with any other algorithmic texture packages for
Imagine.  Right now, I believe this product has no competition.

	Compared to the Impulse-supplied textures, Essence is a far more
capable product.  Comparing Essence to the Impulse textures is roughly akin
to comparing a Corvette to a Yugo; both are transportation, but the Corvette
has much more power under the hood.

	The difference between Essence and textures supplied with other
Amiga 3D systems is not as great, but is still significant.  Some other
Amiga rendering systems provide perhaps a dozen or two various sorts of
textures.  Essence provides hundreds, and provides useful effects that are
simply not present elsewhere.  I have recently been looking at the
possibility of moving from Imagine to another rendering system, but so far
have held back mostly because this would mean giving up the familiar Essence
textures for a more incomplete set.

BUGS

	I have not found any bugs in the software.  One was apparently found
by Apex, and a workaround for it was documented in one of their newsletters.

VENDOR SUPPORT

	My only experience with Apex support was my original defective
manual, which was replaced by Apex immediately.	 Apex also seems to be
committed to listening to its customers, unlike Impulse itself which seems
uninterested in, and at times almost hostile to, user feedback.  Essence
Volume II was apparently created almost entirely from user requests.  A
recent Apex newsletter has also mentioned a new version of the existing
textures which are significantly faster, and provide new abilities such as
using one texture as an alpha channel to control application of another.

WARRANTY

	I cannot find any warranty information in the manual.  It might have
been on the registration cards I sent in, but they are gone now.

CONCLUSIONS

	Both Volume I and II are indispensable for anyone who is even
moderately serious about 3D rendering.  I am interested in 3D rendering only
as a hobby, not a profession; but thankfully, both Essence volumes are priced
to be affordable on a hobbyist's budget.  I'd go so far as to say that if you
use Imagine, Essence is a "must-have" addition and makes the program far
more powerful than it is otherwise.  I like it enough that even though I
have some complains about Imagine & Impulse (the company that produces
Imagine), I will not consider moving to another 3D program if it does not
have Essence available.

	On a scale of 1 to 10 with 10 being best, I rate Essence as 9.5.
The only thing keeping it from a "10" is my few complains about the
manual.	 There are very few software products which have impressed me
enough that I'd buy anything else put out by the company sight unseen,
but Essence has managed to be one of these.

DISCLAIMER

	I have no relationship to Apex other than as a (satisfied)
customer.  I also do not have any professional use for 3D rendering tools;
it is a hobby only.

---

   Daniel Barrett, Moderator, comp.sys.amiga.reviews
   Send reviews to:	[email-masked]
   Request information:	[email-masked]
   Moderator mail:	[email-masked]
   Anonymous ftp site:  math.uh.edu, in /pub/Amiga/comp.sys.amiga.reviews