
                                ANISPRITE 1.1
                                *************

AniSprite is an advanced sprite library vor Microsoft Windows programs. It
has all the standard features that one expects in a sprite library,
such as flicker free/multi-layer animations. In addition, AniSprite supports:

o  Alpha blending between sprites and the background image, which
   enables anti-aliased edges, translucent sprites and sprite fading
o  Shadows and flare effects
o  Multiple animation areas
o  256 colour pictures, any palette
o  Unlimited number of sprites
o  High performance
o  16-bit (Windows 3.1x and later) and 32-bit implementation (Windows 95 and
   Windows NT)
o  Full source is available
o  Windows DLL interface, libraries/definition files for C/C++
o  Integrates with EGI (frame animation engine)

See ANISPRI.DOC for the documentation.

This is an evaluation version. The evaluation version may be distributed in
its entirity. Commercial information is at the bottom of this file.

    ITB CompuPhase
    Brinklaan 74-b
    1404 GL  Bussum
    The Netherlands (Pays Bas)

    Fax:        +31 35 693 9293
    Compuserve: 100115,2074
    e-mail:     CompuPhase@compuserve.com
    WWW:        http://ourworld.compuserve.com/homepages/CompuPhase


New in version 1.1
------------------
The biggest update is in the programming examples, not in the library. See
the next section for the in the examples.

o  as_Move is renamed to as_SetPos(), there is a new function as_Move()
   that moves a sprite relative from its current position.

o  You may want to use the new function as_SetTimer() in place of the standard
   Windows function SetTimer(). There are two problems with the Windows
   SetTimer() function:
   1.  its resolution of 55 ms is too coarse for fluent animation
   2.  it is a low priotity message, meaning that the timer message is
       postponed (or even skipped) if there are other messages in the queue.
   The new function as_SetTimer() fixes both of these limitations:
   o  the timer resolution is 1 millisecond
   o  the message AS_TIMER has the same priority as any other message.

o  For reasons of efficiency, most AniSprite functions do not test the
   validity of the sprite and board handles that you pass to the AniSprite
   functions. When you do not trust handles to sprites or boards, you can
   test them with the new functions as_IsValid() and as_IsValidBoard().

o  Two new event callbacks are available:
   1. The periodic AS_EVENT_TIMER event allows for a "sprite oriented"
      programming approach: instead of having one monolithic function that
      moves every sprite at a timer tick, each sprite can now determine its
      action (move, change shape, disappear, ...) by itself.
   2. The AS_EVENT_COLLIDE event fires when two sprites touch each other and
      both are in the same layer.


Programming examples
--------------------
Since the initial release of AniSprite, a number of inconviences were found
in the examples. These have been fixed:
o  The .LIB file for Microsoft Visual C/C++ 4.0 and above was corrupt in the
   initial evaluation version. The current version comes with updated .LIB
   files.
o  The instructions for compiling with Borland 5.0, 32-bit were incorrect:
   they referred to the "bcc" compiler, which should have been "bcc32".
o  Although the examples were intentionally lacking most error checking (in
   order to keep the examples as short and as simple as possible), I overdid
   this "simplification". The examples now check at least whether the sprite
   images can be read from disk.
o  The compiling instructions for today's most popular compiler, Microsoft
   Visual C/C++ 4.0 or above, were missing. These are now included.
o  The current set also includes pre-compiled .EXE files, for those that wish
   to test the sprite library without going through the trouble of compiling
   the examples first.
o  The animation in the examples was not as fluent as they can be, and that
   was because of the simple timing circuitry in Microsoft Windows. Version
   1.1 of AnisSprite provides the as_SetTimer() and as_ReleaseTimer() functions
   that provide more accurate timers.


COMMERCIAL INFORMATION
----------------------

AniSprite version 1.1 is available as of April 1998. To order AniSprite
version 1.1, use the order form (file ORDER.FRM in the archive) in the
evaluation version, or ask us to send or fax you an order form.


1. Contents of the product

AniSprite version 1.1 consists of:

  AS16.DLL, the 16-bit sprite animation library (DLL)
  AS32.DLL, the 32-bit sprite animation library (DLL)
  library files and include files for current 16-bit and 32-bit C/C++ compilers
  programming examples
  printed manual


2. Price information

All prices are in Dutch Guilders (NLG). Approximate prices in Dollars
are given between parentheses, based on an exchange rate of 1.90 Dutch
Guilder for every Dollar.

Several license are available. The costs for shipping and handling
is NLG 45,00.


AniSprite standard license                        NLG 320,00
                                                  ($ 170.=)
   Includes:
        run time DLLs (16-bit and 32-bit)
        library files and include files
        programming examples, including source
        printed manual

   The AniSprite run time DLLs may be distributed (without royalties) in
   combination with an application or development tool that uses the AniSprite
   DLLs. The AniSprite manual, examples or development files may not be
   distributed (and only be duplicated for backup purposes).


AniSprite source code license                     NLG 750,00
                                                  ($ 395.=)
   Includes:
   Includes:
        run time DLLs (16-bit and 32-bit), including source
        library files and include files
        programming examples, including source
        printed manual

   Libraries and source code that are licensed from other parties are
   not included (this includes the run-time library of the C compiler).

   Modified, or unmodified, versions of the AniSprite run time DLLs may be
   distributed only in executable form and only in combination with an
   application that uses the AniSprite DLLs. The manual or other development
   files may not be resold or distributed.

