Unreal .3d model viewer/converter
(c) Yrex 2016

Things which you should remember while using this software:
- This program uses standard 3D coordinates, where Y axis is vertical. UV values start from left bottom corner and increase up right. When reading .3d files, vertex order is inverted. This way it works well in OpenGL and 3D software (OBJ files).
- In Poly Edit window, changes are not applied instantly, instead you must press Apply button.
- I don't know what is the standard way to store texture numbers and polygon effects in OBJ files. This program will store them in polygon group names in such way:
  Group name starts with: G_
  Then combination of these elements separated with "_" is used:
  
  Tex# - specifies texture slot number (0-255)
  Color# - specifies PolyColor (whatever this means) (0-255)
  
  Only one of these can be used:
  TwoSided
  Translucent
  Masked
  Modulated
  
  These can be used simultanously:
  Weapon
  FullBright
  NoCurvy
  Enviro
  NoSmooth

Known bugs:
- Sometimes when moving camera mouse does not wrap around.
- When "Select polys by clicking" is on, and you click just to move camera, the poly will be selected anyway.
- EnviroMap/Masked/NoCurvy effects are not displayed.

Limitations of .3d files:
- All vertices must be in range -128..+128 (I recommend leaving some margin)
- The horizontal axes will be rounded to 0.125 (256/2048)
- The vertical axis will be rounded to 0.25 (256/1024)
- UV coords are stored as bytes, so they must be in range 0..1 and will be rounded to 1/255
- Max polygon count is 65536
- Max vertex count is 16384
- Max frame count is 65536
- Max texture count is 256