=====================
File: Amachi.zip
Author: Alain Gautherot <gauthero@club-internet.fr>
Release: 0.4
Compatibility: >= R3
Location: contrib/graphics/viewers
Description: an add-ons based 3d objects viewer using OpenGL
=====================


Ouatitiz?
*************************************************************

Amachi, now in release 0.4, is an add-ons-based 3d objects
viewer using OpenGL.


What's new:
*************************************************************

new features:
-------------
The expected improvement (hierarchical objects) hasn't been included,
because it appeared it was not necessary as far as rendering is concerned
(this is used by editors, rather than by renderers).
However, the Pierrot and LAP libraries have been updated.

first x86 release: Youhou!!!
------------------
The current package includes the x86 release of Amachi. I eventually
managed to cross-compile it with the help of the generic makefile
provided by Be. However, I had to play with it quite a long time to get
my libraries compiled because of symbol export problems.
It seems the compiler is kind of "dur d'oreille" (deaf), It took me days
to realize I had to include a compiling directive like
-DBUILD_THIS_FREAKING_LIBRARY=1

Although compiled, Amachi-x86 hasn't been tested, givne that I have no
PC supporting the BeOS. So just let me know if you run into troubles.
If the application launches correctly, you shall try 3 different file formats,
namely:
a little endian binary format, ex: 3DS
a big endian binary format, ex: 3D2, IOB, LWOB, ...
an ASCII-based format, ex: AOFF, DXF, OBJ, ...

format support:
---------------
The following add-ons are now supplied:
3D2: CAD 3d2
3DS: 3d studio
OBJ: wavefront
DXF: AutoCAD
NFF (*): Neutral File Format
NFF-WTK (*): NFF World ToolKit
AOFF (*): Object File Format (DEC)
COB (*): Caligari TrueSpace
IOB (*): Imagine
LWOB (*): Lightwave
PLY (*): PoLYgonal data (from a 3D scanner, files are so huge!!!)

(*) new in Amachi-0.4

You can download the equivalent packages
Amachi-3d2.zip
Amachi-3ds.zip
Amachi-Obj.zip
Amachi-Dxf.zip
...
to have sample files, but if you're interested only in the
add-ons, then just download Amachi.zip

A few other add-ons will be released when they are ready.


improvements:
-------------
The rendering have been slightly improved: some objects might
have been rendered too dark, or too light (white). This has
been fixed.
Thanks to Peder Blekken, author of VRMLview, for his helpful
tips and information.

never-ending updates:
---------------------
Just like with Amachi-0.3, compatibility is broken, which means that if you
have any of the previous releases, you can dump them along with the
add-ons (well, everything but the sample files actually)


Installation:
*************************************************************

To install, just double-click the "Amachi.zip" archive and "Expand" it.
You can move the Amachi folder wherever you like, the most obvious
location being in /boot/apps or in /boot/apps/Alain Gautherot.


A few words:
*************************************************************

This application uses 2 libraries:
- libLAP: which has been released late last year, but which has been
modified since
- libPierrot: which is used for 3d data handling

Both libraries are kept in the "Amachi/lib" directory
Add-ons are stored in "Amachi/add-ons" directory

The Pierrot library could have been statically linked to the add-ons, but
the add-ons would have been too big. Moreover, it wouldn't make it easy
to handle the modifications in the library.
Anyway, this is the reason why backward compatibility is not ensured.


Use:
*************************************************************

drag and drop 3d files files in the window.
Use the numeric pad to move the object:
4 & 6: left/right
2 & 8: up/down
1 & 3: tilt left/right
7 & 9: zoom in/out
ESCAPE: reset view


Tracing the parse:
*************************************************************

If a file stops loading right in the middle of the operation, an error was
encountered. To figure out what happened, and subsequently, if a bug
report is to be submitted, use the "test_add-on" program:

test_add-on [-s] <add-on> <files>

the -s option activates the screen output. If not supplied, a file output
will be generated under the name <input_file>.trace

add-on is the path (relative or absolute) to the add-on you want to test

files is... a list of file inputs.

ex:

/boot/home/projects/Amachi> test_add-on add-ons/a3d2 afile.3d2


You can also use this command as follows:

/boot/home/projects/Amachi> test_add-on add-ons/a3d2 *.3d2 | grep __

A sample output is:

__ processing /boot/home/Objects3d/3d2/atakship.3d2
  __ done
__ processing /boot/home/Objects3d/3d2/t_i_e.3d2
  __ done
__ processing /boot/home/Objects3d/3d2/x_wing.3d2
  __ done
__ processing /boot/home/Objects3d/3d2/zylonjag.3d2
  __ done
__ 4 entries parsed, 0 errors


Thus you can test a whole bunch of files -almost- in a snap


Known bugs:
*************************************************************

- when the list of the objects becomes empty, the OpenGL view should
turn all black. This doesn't always happen, I don't know why

- pausing a loading thread may cause the application to freeze.
I have no clue what's going on, but all the threads seem to be
stuck on the "malloc_I_dont_know_what" system semaphore.

- the GUI really lacks responsiveness.

- OpenGL is so slooooooooooow on my dual 66...


Known as non-bugs:
*************************************************************

- some inputs may have been generated by user-written programs,
that is not by genuine applications. Hence, some information might be
missing during parsing of the file.

- some files may not contain any 3d data at all (or no supported 3d data).

- some files may define black only materials. The background of the
OpenGL view being black, nothing will be drawn... well, nothing one can
see. This can happen for texture-mapped objects


What's next:
*************************************************************

The application (GUI and other various pieces of code) will
be totally rewritten to fix the lack of responsiveness problem,
and to make it more user-friendly.
Support for texture-mapping is also on schedule.
The thing is that I started working since 


History:
*************************************************************

- September 27th 1998, v0.4: third release
*Joailleu ZaaaaaaaNiiiiiiiiiVerrrrrrrSaiiiiiiiiiiiiiiiiiR!
	I'm officially older today.
* minor bug fixes
* new add-ons for AOFF, NFF, NFFWTK, IOB, LWOB, & COB

- August 10th 1998, v0.3: second release
added transparency support

- July 27th 1998, v0.2: first release

___________________________________________________

If you have any comments, suggestions, or bug report, please email me.