Short:    3D graphics shared library V13.01(beta)
Author:   p.biancalani@mbox.match.it
Uploader: p.biancalani@mbox.match.it
Type:     util/libs

Version	    13.01

--- English ----
First sorry for my bad English but I don't know it very well.
This is a simple but complete graphic 3D library that use for visualization
only the system library .
Main feature include :

   - Visualization of object in systems windows with single buffering.
   - Support of polygons with one, two, tree and four vertex.
   - Use of only fix point value than the math coprocessor is not
     necessary, and is relatively fast on machines us A1200 base too.
   - Implementation of visualization in Wire Frame ,Solid shading and
     Flat shading all simultaneous too and with light source freely 
     placeable .

Is tested on (for now): 
   A4000/40 with S.O. 3.0

In this version I rewrite totaly the rendering function of library and
I remove the use of blitter and shadow RastPort. 
Now I use to render the scene a chunky buffer and I draw on it only 
with CPU than I use the graphics.library function WritePixelArray8() 
to transfer this on the visualization window.
With this metod I have a big accelleration , on my machines (4000/40
25MHz 16Mbytes and a PicassoIV SO 3.0) on AGA screen is 2 time faster
and on a Picasso screen almost 3 time.
I thinks that with faster CPU and faster memory this speed up can be
better test it and say to me.

But I have leave a version with the old metod of rendering for machines
with 68000 or best but without fast memory (with only chip the new metod 
is slower).
I future it can be possible that I remove this old version than you are
encourage to use the new one.
 
THIS LIBRARY IS A COPYRIGHT OF THE AUTHOR PATRIZIO BIANCALANI AND IS A 
FREEWARE SOFTWARE THAN FREELY USABLE AND DISTRIBUITE BUT WITH ALL FILE OF 
ORIGINAL ARCHIVE AND NOT FOR RESALE OR IT CAN'T BE SOLD, THAN I PROVIDE 
ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
IF YOU WANT MODIFY THE ORIGINAL SOURCES TELL ME THIS THAN ,IF IT IS OK, 
I CAN UPDATE ALL ORIGINAL ARCHIVE.
It is very pleasant if you send me an e-mail if you use it.

I have included an example write in E (and full commented) and all the source
in C of this library .The executable is 3dlib and it must be in the same
directory of #?.plg files. 

The file graphics3d_000_CPU.library is the library for CPU from 68000 with new metod of rendering.
The file graphics3d_000_BLT.library is the library for CPU from 68000 with old metod of rendering.
The file graphics3d_020_CPU.library is the library for CPU from 68020 with new metod of rendering.
The file graphics3d_020_BLT.library is the library for CPU from 68020 with old metod of rendering.
You must rename the correct library to graphics3d.library before use it.

Thanks to:
   Maciej R.Gorny for the original routin of engine 3D.
   Alessandro Franchi for beta testing on A1200.
   VolKer Barthelmann author of VBCC the C compiler used by me to write the
   library.
   Andreas Kleinert author of the optimal startupcode for write shared
   library. 
   The authors of Tornado3D for the suggetions to implemented the single
   buffering in a window. 
   All ones that have write an e-mail to me.

I'am Patrizio Biancalani from Prato (Italy) and the my E-Mail for
suggestions and signaling is :p.biancalani@mbox.match.it

Support site :www.amigaworld.com/support/graphics3dlib/welcome.html

--- Italiano ---

Questa e' una semplice ma completa libreria grafica 3D che si appoggia
interamente sulle librerie di sistema per la visualizzazione.
Le caratteristiche principali sono:
   
   - Visualizzazione oggetti nelle finestre con single buffering.
   - Supporto di poligoni a uno, due, tre e quattro vertici. 
   - Usa valori solo in fix point quindi il coprocessore non serve
     ed e' relativamente veloce anche su macchine come il A1200 base.
   - Implementa la visualizzazione in Wire Frame ,Solid shading e
     Flat shading anche tutti contemporaneamente e con la fonte di 
     luce posizionabile a piacere.

E' stata testata su(per ora):
   A4000/40 con S.O. 3.0

In questa versione ho riscritto interamente le funzioni di visualizzazione
e ho rimosso completamente l'uso del blitter e della RastPort nascosta.
Ora uso un chunky buffer per visualizzare e vi disegno solo con la CPU
poi uso la funzione WritePixelArray8() per trasferire il tutto sulla
finestra di visualizzazione.
Con quel sistema si ottiene una grande accellerazione, sulla mia macchina
(4000/40 25MHz 16Mbytes e una PicassoIV) su uno schermo AGA e' 2 volte
piu' veloce e su uno schermo Picasso quasi 3 volte.
Penso che su macchine con CPU e memoria Fast piu' veloce quelle prestazioni
possano ulteriormente migliorare, provate e ditemelo.

Ma ho lasciato anche una versione col vecchio metodo di visualizzazione
per macchine con 68000 o migliori ma senza memoria fast (con solo la 
chip la nuova e' piu' lenta).
In futuro e' possibile che elimini questa vecchia versione quindi siete
incoraggiati ad usare solo il nuovo metodo. 
 
QUESTA LIBRERIA E' UN COPYRIGHT DELL'AUTORE PATRIZIO BIANCALANI ED E' UN
FREEWARE SOFTWARE QUINDI LIBERAMENTE DISTRIBUIBILE MA CON TUTTI I FILE
DELL'ARCHIVIO ORIGINALE E NON PER FINI DI LUCRO, IO NON FORNISCO 
ASSOLUTAMENTE ALCUNA GARANZIA SU QUESTO SOFTWARE.
SE VOLETE MODIFICARE I SORGENTI ORIGINALI COMUNICATEMELO, SE E' ACCETTABILE
IO AGGIORNERO' L'ARCHIVIO ORIGINALE.
E' molto gradita la ricezione di un e-mail in caso di uso della libreria. 

Ho incluso anche un esempio di uso scritto in E e i sorgenti in C della
libreria.L'eseguibile si chiama 3dlib e deve essere nella stessa directory
dei file #?.plg .

Il file graphics3d_000_CPU.library e' per le CPU dal 68000 con nuovo metodo di visualizzazione.
Il file graphics3d_000_BLT.library e' per le CPU dal 68000 con vecchio metodo di visualizzazione.
Il file graphics3d_020_CPU.library e' per le CPU dal 68020 con nuovo metodo di visualizzazione.
Il file graphics3d_020_BLT.library e' per le CPU dal 68020 con vecchio metodo di visualizzazione.
Occorre rinominare la corretta libreria in graphics3d.library prima di
usarla.

Si ringrazia :
   Maciej R.Gorny per le routin del motore 3D.
   Alessandro Franchi per il parziale beta testing su A1200.
   VolKer Barthelmann autore del compilatore C VBCC da me usato per
   la stesura della libreria.
   Andreas Kleinert autore dell'ottimo startupcode per le shared
   library. 
   Gli autori di Tornado3D per il suggerimento su come implementare 
   il single buffering in una finestra.
   Tutti quelli che mi hanno scritto.

Io sono Patrizio Biancalani residente a Prato Italy e il mio E-Mail per
suggerimenti e segnalazioni e': p.biancalani@mbox.match.it

Sito di supporto :www.amigaworld.com/support/graphics3dlib/welcome.html


============================= Archive contents =============================

Original  Packed Ratio    Date     Time    Name
-------- ------- ----- --------- --------  -------------
   12656    5599 55.7% 17-Oct-98 15:42:58  3dlib
     351     181 48.4% 04-Nov-97 01:17:34  barrier.plg
     590     235 60.1% 04-Nov-97 01:17:34  cube.plg
    1552     597 61.5% 17-Oct-98 12:03:44 +graphics3D.fd
    1883     951 49.4% 17-Oct-98 12:03:42 +graphics3D.i
    1552     597 61.5% 17-Oct-98 12:03:44 +graphics3D.fd
    2074     949 54.2% 17-Oct-98 12:25:16 +graphics3D_pubblic.h
    2124     815 61.6% 17-Oct-98 12:14:52 +graphics3D_stub.lib
     834     379 54.5% 17-Oct-98 12:03:44 +graphics3Dbase.h
     631     305 51.6% 17-Oct-98 12:14:52 +graphics3D.m
     452     253 44.0% 17-Oct-98 12:14:54 +graphics3D_lib.m
   14558    4118 71.7% 17-Oct-98 15:31:10 +graphics3D.h
    9556    3136 67.1% 13-Apr-98 12:09:46 +graphics3D.h.doc
    1863     922 50.5% 22-Oct-98 22:53:10 +graphics3d.history
    1394    1083 22.3% 26-Feb-98 23:35:00 +graphics3d.history.info
    4459    1780 60.0% 19-Apr-98 19:36:54 +graphics3d.notes
    1394    1084 22.2% 27-Feb-98 23:39:42 +graphics3d.notes.info
   41708    9780 76.5% 17-Oct-98 14:51:20 +graphics3d_E.doc
    1154     757 34.4% 27-Feb-98 23:35:52 +graphics3d_E.doc.info
   55567   10674 80.7% 17-Oct-98 15:33:26 +graphics3D_E.guide
    1611     755 53.1% 26-Feb-98 23:31:42 +graphics3d_E.guide.info
   43591   10116 76.7% 17-Oct-98 14:48:48 +graphics3d_I.doc
    1154     757 34.4% 27-Feb-98 23:35:44 +graphics3d_I.doc.info
   57447   11097 80.6% 17-Oct-98 15:38:44 +graphics3d_I.guide
    1611     755 53.1% 26-Feb-98 23:31:42 +graphics3d_I.guide.info
    6759    2957 56.2% 23-Oct-98 23:56:06  graphics3d.readme
   35672   15416 56.7% 16-Oct-98 20:01:42  graphics3d_000_BLT.library
   36008   15804 56.1% 16-Oct-98 20:21:00  graphics3d_000_CPU.library
   26316   13675 48.0% 15-Oct-98 19:28:46  graphics3d_020_BLT.library
   26496   13962 47.3% 15-Oct-98 19:51:14  graphics3d_020_CPU.library
     130      71 45.3% 04-Nov-97 01:17:34  ground.plg
     186     101 45.6% 04-Nov-97 01:17:34  lettera.plg
     773     402 47.9% 04-Nov-97 01:17:34  letterT.plg
     140      93 33.5% 04-Nov-97 01:17:34  missile.plg
     146     106 27.3% 04-Nov-97 01:17:34  plane.plg
     365     175 52.0% 04-Nov-97 01:17:34  pylons.plg
     944     418 55.7% 04-Nov-97 01:17:36  pyramid.plg
     525     165 68.5% 28-Mar-98 12:27:50  rad.plg
     267     155 41.9% 04-Nov-97 01:17:34  rock.plg
    1146     394 65.6% 04-Nov-97 01:17:36  sfer.plg
   30984    8128 73.7% 07-Dec-97 11:40:02  sfera.plg
   30984    8132 73.7% 04-Nov-97 01:17:36  sfera1.plg
   30984    8132 73.7% 04-Nov-97 01:17:34  sfera2.plg
    9891    2576 73.9% 04-Nov-97 01:17:36  sfera_old.plg
     481     221 54.0% 04-Nov-97 01:17:34  slider.plg
   12035    4045 66.3% 17-Oct-98 12:42:18 +3dlib.h
    8100    3038 62.4% 17-Oct-98 14:33:20 +3dlibdemo.e
      16      16  0.0% 17-Oct-98 12:40:50 +3dlibh.h
     129     102 20.9% 17-Oct-98 12:41:12 +compila
   16336    4355 73.3% 28-Jan-98 21:27:22 +gad.h
    2389     863 63.8% 13-Apr-97 09:58:52 +gen.h
     631     305 51.6% 17-Oct-98 13:45:02 +graphics3D.m
     452     253 44.0% 17-Oct-98 13:45:04 +graphics3D_lib.m
     593     317 46.5% 17-Oct-98 12:03:54 +debuglib.c
     269     152 43.4% 17-Oct-98 12:03:54 +debuglib.h
    1552     597 61.5% 17-Oct-98 12:03:44 +graphics3D.fd
   10155    3313 67.3% 17-Oct-98 12:03:42 +graphics3D.h
    1883     951 49.4% 17-Oct-98 12:03:42 +graphics3D.i
    5317    1566 70.5% 17-Oct-98 12:32:02 +graphics3D.make
   15188    4318 71.5% 17-Oct-98 12:03:44 +graphics3D2d.c
    1027     355 65.4% 17-Oct-98 12:03:44 +graphics3D2d.h
   16227    4623 71.5% 20-Oct-98 00:02:18 +graphics3d2d_o.c
     990     361 63.5% 17-Oct-98 12:03:44 +graphics3D2d_proto.h
     834     379 54.5% 17-Oct-98 12:03:44 +graphics3Dbase.h
     791     367 53.6% 17-Oct-98 12:03:44 +graphics3Dc.h
   43923   10920 75.1% 17-Oct-98 12:03:42 +graphics3Df.c
    4168     862 79.3% 17-Oct-98 12:03:42 +graphics3Df.h
   30834    8451 72.5% 17-Oct-98 12:03:44 +graphics3Df_i.c
    9130    2224 75.6% 17-Oct-98 12:03:44 +graphics3Df_i2.c
    3840     849 77.8% 17-Oct-98 12:03:44 +graphics3Df_proto.h
   11378    2533 77.7% 17-Oct-98 12:03:44 +graphics3Df_t.c
    6637    2111 68.1% 20-Oct-98 00:13:30 +graphics3Dli.c
     926     326 64.7% 17-Oct-98 12:03:46 +graphics3dm.c
    2601     594 77.1% 17-Oct-98 12:03:46 +graphics3dm.s
     607     352 42.0% 17-Oct-98 12:03:46 +graphics3Dm68k.c
    8386    2175 74.0% 17-Oct-98 12:03:42 +graphics3Dsu.c
     431     187 56.6% 04-Nov-97 01:17:34  station.plg
    9891    2576 73.9% 04-Nov-97 01:17:36  tall_piramyd.plg
     375     151 59.7% 04-Nov-97 01:17:36  tall_pyramid.plg
     538     233 56.6% 04-Nov-97 01:17:34  tallon.plg
     508     249 50.9% 04-Nov-97 01:17:34  tele.plg
   13003    3401 73.8% 21-Feb-98 13:17:24  test.plg
   21907    6195 71.7% 22-Oct-98 00:38:38  test1.plg
     324     140 56.7% 04-Nov-97 01:17:34  tower.plg
-------- ------- ----- --------- --------
  765284  233563 69.4% 28-Oct-98 05:12:44   84 files
