*****************************************************************************
*                                                                           *
*                       BodyWarp - BETA v0.3  README.txt                    *
*                                                                           *
*****************************************************************************
*                                                                           *
*                      A Product of Spanki's Skin Shack                     *
*                                                                           *
*                       Copyright (c) 2000 Keith Young                      *
*                                                                           *
*                       web: http://www.cfw.com/~cyclone                    *
*                    e-mail: cyclone@cfw.com                                *
*                                                                           *
*****************************************************************************

       *** BodyWarp v0.3 is BETA SOFTWARE - USE AT YOUR OWN RISK!! ***
                        (see Disclaimer section below)


Revision History
=================

v0.3
-----------------------------
- Toes and Arms 'fixed'. The arms now point straight Out instead of Up.  This
  was a pain to get working... I may shoot for Down next, but that will be even
  harder, using the method I am currently (which is not correct, but it serves
  the purpose).  The Toes no longer curl down (yay!).

- When I fixed/changed the above, it really started bugging me that I had all
  normals rotated around the wrong way (normals are what determines the way
  light and shadows work on a mesh)... so I fixed that too, finally.  It's now
  MUCH easier to get lights working correctly, with fewer of them.

- Just after posting the previous version (v0.2), I took some time to actually
  'use' the tool for a while (been stuck programming it and updating docs and
  web pages, etc).
  
  Anyway, I realized that the method I was using for scaling - which was a
  hold-over from the previous version - was not right. With the new version,
  it's a lot more WYSIWYG relative to what you see in SimShow or the game. This
  should cut down on the number of revisions needed to get what you want (to
  the extent that you 'can' get what you want with simple scaling of parts).
  
  BodyWarp's display of a [scaled] mesh is still not 100% acurate, due to the
  method I currently use to position the body parts.  I know how/why it's not
  correct, I just hadn't come up with the right math to fix it yet :)
  
  (technically, I'm doing [not so] simple compound translations and reflections
  and I need to be doing compound translations coupled with quaternion
  rotations)

- Added hot-keys for the following:
    'Q' - Lock X Scale toggle
    'W' - Lock Y Scale toggle
    'E' - Lock Z Scale toggle
    'S' - Scale Up
    'D' - Scale Down
    
  ...this can free up the mouse (once you get used to it) for doing mesh
  rotating and body-part selection.

- Added the missing tool-tip strings for the Scale Lock buttons, and various
  other little house-keeping changes.

- I've added the data I need to support scaling child meshes, but I hadn't
  implemented an interface for that yet, so that will have to wait for another
  revision.

- Other stuff I've forgotten.

- Again, no major bugs were found or fixed (the items listed above are all
  simple 'display anomolies' <g>).


v0.2
-----------------------------

- Name changed from working title of SkinView to [hopefully permanent title of]
  'BodyWarp'

- You can now scale each axis (X/Y/Z) independently. See BodyWarp_Manual.txt
  for details.

- In addition to scaling an entire body, you can now select body parts to scale
  individually.

- The 'Scale X Y Z:' readout at the bottom is per body part (a scale value for
  each part is tracked separately)

- Selected parts are now vertex color-coded, making it easy to see which
  vertices belong to which body parts (works great in wireframe mode). See
  BodyWarp_Manual.txt for details.

- You can now load a new texture for the selected mesh.

- You can Hide the texture (toggle it on/off).. this is useful for seeing the
  vertex coloring when scaling.

- '.skn' is now appended to meshes saved out if you didn't already enter that
  as part of the filename (details, details...).

- Of course these changes only really make sense if YOU CAN NOW SAVE BODY
  MESHES (and yes, you can). See BodyWarp_Manual.txt for details.

- .CMX files are now created along with the .SKN files.. there is an option to
  disable this.  ** IMPORTANT!! read BodyWarp_Manual.txt for information about
  .CMX file creation. **

- various code clean-up (no major bugs were found or fixed).

- ** in case I hadn't mentioned it yet, please read BodyWarp_Manual.txt for
  [sometimes important] details of these changes.  I will not take
  responsibility for damaged or lost files. **
  
  (You can search for 'v0.2' to find the relevent sections.)


v0.1  - Initial BETA Release
-----------------------------
There is not much information in this section at this time.  I will use this
file to point out changes between revisions as they are released (assuming any
revisions are ever released).


Description
============

BodyWarp was designed as a viewer for 'Skins' used in Maxis' Game - "The SIMs".


Disclaimer
============
As it says at the top, THIS IS BETA SOFTWARE - USE AT YOUR OWN RISK.  While I
have made all efforts to ensure that the program behaves - on MY system - and
has no obvious or serious bugs, this is no (and I make no) guarantee that it
will work without problems on YOUR system.  It is being provided as-is, with
no warranties or guarantees whatsoever, caveat emptor, etc.

Also note that this program is being developed on my own time and I am
distributing it free of charge... I make no promises to ever release another
version (although I 'plan' to).  Take that into consideration when you send me
your wish-list.. you get what you pay for :).


Distribution/License
=====================

BodyWarp is being distributed as 'Freeware'.  This does NOT mean that it is in
the public domain.  BodyWarp is Copyright 2000 - Keith Young - All Rights
Reserved.

It may be freely distributed provided all files of the original archive remain
intact and un-altered and no charge is required or accepted for it's
distribution.  You have the right to use this program for personal, home use
(noncommercial).  yada, yada, yada... (if you have any questions about usage or
distribution, please contact Keith Young at: cyclone@cfw.com).  Better yet,
offer me a job :) (serious offers will be seriously considered).


System Requirements
====================

* DirectX v5.0 or later
* 3D Accelerated Video Card
* 800x600 resolution
* PII 266 or better [currently only tested on a PIII 500]

BodyWarp is written using Direct3D and expects that you have version 5.0 or
later in order to run the program.  I assume that it might work (dog-slow) on
a machine with no 3D Accelerated video card, but it has not been tested in
that configuration.


Installation
=============

Create a directory and put the contents of the archive in that directory.
BodyWarp currently does not use any external DLLs or .ini files, but it does
expect 3 data files to be in the same directory...

sphere2.x       - Direct3D mesh file (used to depict light sources)
camera.x        -    ""                            ""
skinview.bmp    - Default Backdrop Bitmap [see FAQ section below].

I've also included a sample head mesh and texture(s) in the archive, so you'll
have something to play around with.


Operating Instructions
=======================

..are found in the manual :).

You will find fairly complete documentation in the BodyWarp_Manual.txt file
(along with a tutorial). I spent hours writing that file, so do me a favor and
before you send me an e-mail asking how to do something, please look there first.
Thanks.

I'll try to get a FAQ or other support material on the web site as I have the
time to work on that but for now, I'll list a few keyboard short-cuts here
because I know that some folks like to just wing it :).


Interface/Keyboard
==================

There are several hot-keys defined that may or may not be listed in the menus,
but perform the same functions as defined above [in the manual, that is]. Here
is a list...

    '<Del>'     - deletes the current object, light source or mesh
    'T'         - Zoom view In
    'R'         - Zoom view Out
    '<Up>'      - Move view Up
    '<Down>'    - Move view Down
    '<Left>'    - Move View uhm.. Left.
    '<Right>'   - Hmmm...
    'X'         - Move selected object Away from the camera (into screen), 
    'Z'         - Move selected object Towards the camera (out of screen).
    '<KeyPad->' - Scale selected mesh down. (see below)
    '<KeyPad+>' - Scale selected mesh up (see below)


Interface/Mouse
===============

Actually manipulating a mesh with the mouse is an acquired art form.  Dragging
an object around is pretty straight forward, but rotating it takes some
practice and getting used to.  I'm not crazy about this method of rotating,
but it's all I've got for now...

'Left Click on object'              - Select an object.
'Right Click on object'             - Also selects object.
'Left Click and drag on object'     - Rotates the object.
'Right Click and drag on object'    - Drags the object.

[see: BodyWarp_Manual.txt for more detailed information]

-=== END OF FILE ===-

