Subject: REVIEW: Forge 1.0
From: [email-masked] (Kelly Petlig)
Date: 18 Jun 1994 21:10:31 GMT
Newsgroups: comp.sys.amiga.reviews

PRODUCT NAME

	Forge 1.0

BRIEF DESCRIPTION

	3D rendering software

AUTHOR/COMPANY INFORMATION

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

	Telephone:	(415) 322-7532

LIST PRICE

	Forge version 1.0:	$60  (US)
	Essence I  version 3.0:	$140 (US)
	Essence II version 3.0:	$140 (US)

SPECIAL HARDWARE AND SOFTWARE REQUIREMENTS

	HARDWARE

		1 MB RAM required.
		Math co-processor or 68040 processor required.

	SOFTWARE

		AmigaDOS 2.04 or higher required.

		You must have Essence version 3.0 or later in order to use
		Forge effectively.  Theoretically you could use Forge with
		older versions of Essence or Imagine's own textures, but
		since they weren't created with Forge in mind, like Essence
		version 3.0 is, they are missing internal information that
		Forge needs to properly load them.  

INSTALLATION

	Installing Forge from a single disk using the Commodore Installer is
painless and quick (it took me a less than a minute).  As an option you can
install the 68040 optimized version, which will take maximum advantage of
the 68040 instruction set.  It is recommended to install it in the same
directory as Imagine, but not required.  This is especially true if you
don't even have Imagine.

REVIEW

	This is a review of version 1.0 of Forge, which I received in the
mail just last week.  This is my overall first impression of Forge and how
it lives up to the press release in the Apex newsletter.  I will assume the
reader has a working knowledge of 3D rendering on the Amiga.  I also won't
attempt to teach the reader how to use Forge or its companion products.

	Apex has added another great 3D rendering product to its fantastic
line of tools, Forge.  It's named Forge, suitable since it's a tool to forge
new textures with Essence.  It is beyond the scope of this article to
reiterate a review for Essence, but I will briefly introduce it to those who
are unfamiliar.

	Essence is a library of algorithmic textures for Imagine, and now
Forge.  Using fractal noise and a bit of magic, Essence comes up with bump
maps and color maps to make realistic looking textures that can be applied
to surfaces in Imagine.  Ranging from crumpled paper to cedar shingles, the
patterns are seemingly random, yet infinitely precise and reproducible.
There are two volumes of Essence as I write this, and who knows how many to
follow.  Before the release of Forge, Imagine was required to tap the
powerful textures of Essence.

	Forge itself is a simple program, as the textures really do all the
work.  Forge opens a 16 color (256 for AGA) high res custom screen at 704 by
441 (using TEXT overscan prefs) and will preview images dithered with twelve
colors (252 colors for AGA) in a window on this screen.  Forge can also
render in full 24 bit at most any resolution, generating IFF, JPEG, TIFF or
PPM files.  Down the right half of the screen are all the variables of a
texture represented with number and slider gadgets.  When moving the slider
gadgets, the preview window in the upper left corner will update
automatically.  Using pull down menus, you can load up to ten textures at a
time.  You can also animate textures by defining two sets of texture
parameters and morphing between them.

	Before Forge, users of rendering packages other than Imagine have
missed out on the power of Essence textures.  Now a Lightwave user can use
Forge to render fantastic textures in full 24 bit and import them as a brush
map.  Forge will also render in 8 bit grey scale to be used as bump maps,
but unfortunately it doesn't render altitudes as brightness levels but just
a grey scale version of the color output.  Rendering Essence bumpmaps to
import to Lightwave is difficult to say the least.  When saving 24 bit
textures for use in 3D programs it is best to stay with color variations and
not height variations.

	You could render 24 bit brushmaps to use in Imagine, but there would
be little point since it is much more efficient to allow Imagine to render
the textures directly.  Forge renders textures about the same as if in
Imagine, which makes sense, since Essence seems to do most of the render
work.  You can save an attribute to be loaded into the Imagine attribute
requestor, and even save a collection of them to be used later.

	Even though Forge is a tool, it's amazing how much entertainment you
can derive from it.  If you're the type to endlessly play with Mandelbrot or
Julia sets, you'll have that and more with Forge.  Essence not only has
Mandelbrot and Julia sets, but also the TreeBark and BBCourt sets.  You can
make the most beautiful or the ugliest textures you've ever seen.  There's
even a "Randomize" pull down menu that will randomly vary all the texture
settings.  Ever wanted a Reptile Skin Workbench backdrop?  Just load the
"Reptile Skin" attribute from Essence and change the view to "Repetition
Map."  Render at almost any size and you will have a brush that can be tiled
for a wild backdrop.  One could make a living selling these things to
Windows users.

	Forge does have limited ARexx support:  about fifteen commands.  In
fact, this is how Forge executes "Randomize" and how it displays to the 24
bit boards it supports.  Forge can launch up to ten ARexx scripts with their
own entries, or you can launch any ARexx script via a file requestor.  ARexx
scripts can be launched not only at program start or shutdown, but also
before or after each sequence or each frame.  With all this, you would think
that ARexx is an important element of Forge; but to be truthful, it could
use a bit more work.  One bug I found was if you launch an ARexx script from
Forge that has an error, it will not give any error code, and it once caused
Forge to crash completely.

	As quoted from the manual: "The AREXX commands themselves will not
be documented in this manual, mostly because it is much easier just to
present demonstration scripts for you to examine."  Just the same, it would
have been nice to include at least a short summary of their functions.
There are at least two commands that aren't in any of the demo scripts that
I found by loading Forge into a word processor.  For the record, here are
all the commands I know of: QUIT, GETNAME, GETMIN, GETMAX, GETVAL, GETSTEPS,
SETVAL, DUMPPREVIEW, SHOWSTATUS, PAUSE, RESTARTPREVIEW, UNPAUSE,
REFRESHSLIDERS, FORGETOFRONT, FORGETOBACK.

	The project menu has a selection labeled Iconize that opens a small
window of not much more than a title bar on the Workbench.  This frees up
valuable Chip memory for serious multitasking.  Clicking on the close gadget
of this window will un-iconize the program and abort any rendering if you
confirm the requestor.  I wish Amiga developers would follow a rule on this
point, as some programs quit, some un-iconify, and this one uniconizes.  If
"WB Render Meter" is turned on from the prefs, it will also open another
small window with frames remaining and a percent finished meter on the
Workbench.

The Prefs requestor is fairly basic but includes things that make your
rendering life easier.  Among the parameters changeable are setting screen
background color and whether or not you want Forge iconified when
rendering.  Also in Prefs there are three different task priorities,
allowing you to change the importance of CPU time for Forge when rendering,
pushed to the back, or front and active (which I think should be in ALL
programs of this nature).  This way, Forge won't be sharing the important
CPU time with your stellar conquest battle simulation program.  I do wish
the prefs requestor had an OK button:  all it has is SAVE and CANCEL.

	Forge has a real time preview window with a maximum size of 237
pixels wide by 249 high.  Real time being defined as constantly updating and
refining even as you change parameters via sliders.  If your processor is
fast enough, it takes only several seconds to see details of your changes.
Soon after a change takes place, the window refreshes with 32 by 32 pixel
blocks, then down to 16 by 16, then down to 8 by 8, etc., until it finally
fills in details pixel by pixel.  Any time during this process you can move
a slider and it will instantly update.  This system works great if you make
a mistake and instantly get the garishly colored checkerboard texture (read
the Essence manual.)  Using the pull down menu you can transfer the preview
window to a 24 bit framebuffer like Firecracker or Opalvision.

	Imagine has the ability to load two objects, or two textures, and
morph between them.  In the case of animating textures with Forge, you would
define two sets of parameters and morph between them.  Good examples of
animation using Essence would be polkadots growing or clouds dissipating and
reforming.  When using 3D programs other than Imagine, you would have to
render a sequence of texture brushes, which most 3D programs accept as
animated brushmaps.  Forge can preview the animation either by storyboard or
actually showing them animate in a postage stamp size window.  The animating
preview is done by copying the storyboard views to the anim preview in
sequence.  You can preview at 30fps and it didn't even seem to slow down the
real time updating on my machine.

CONCLUSIONS

	Overall, I like Forge quite a bit.  Like almost any other program,
the first release can always be a bit more refined.  Forge has a very solid
foundation to start.  I don't know of any program like it on the Amiga, so
it's in a class of its own.  If you already own Essence, either volume, I
highly recommend getting Forge.  It will save much time tweaking those
texture values.  If you're planning on buying Essence soon, Forge is even
more important since it is extremely useful in finding out what Essence can
and can't do.  I commend the Apex team for a job well done.

---

   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