| Posable models | The models can be built around a linked skeleton. |
| UV-mapping | You can create uv-mapped meshes. |
| POV-Ray Export | The models can be exported to an include file readable by the Persistence of Vision Ray Tracer. The files are designed to work with my Catmull-Clark Surface Subdivision Suite to produce smooth, organic shapes. |
| OBJ file import and export | You can import and export Alias/Wavefront OBJ files. |
| OpenGL for rendering. | I would have used DirectX, but Microsoft made DirectX more difficult to program than was necessary. |
Contains:
Contains:
If you've been using LionSnake for a while, and feel you have reason to be proud of what you've accomplished, send me a link to a render and I'll try and see if I can whip up a gallery here. For now, here's a view of the sample model that now comes with the download:

.obj import is now available from the File menu.subdata.h, obvec.h, subdata.cpp, and obvec.cpp, which handle this now.
.obj file, the edges were not immediately built. This caused a crash if subdivision preview was turned on in this state. Fixed.
.inc files exported to POV-Ray invoked a macro from the previous version of the subdivision surface macros. Fixed.
appdata.h and appdata.cpp, which declare and implement a class consisting of static variables to hold the data that applies to the entire application..lsm file in the command line, a blank Model project will be created, just like version 1.6.x and earlier.
O(n^2) performance problem for large meshes caused the Face creation function to return NULL results to the extrusion function. The extrusion function didn't check the pointer before accessing its referent object, so there was a crash. Fixed..obj import feature was ignoring the .mtl file specified in the .obj file. Fixed.
.obj import feature was treating blank lines as the end of .obj and .mtl files. Fixed.
.obj export feature was not properly writing the filepath for .mtl files in the mtllib statement when the filepath for the .obj file contained more than one period in it. Fixed..obj and .mtl files. Presently edge sharpness is not saved in the files, but the face grouping assignment is. I was considering making this the primary file format, but it does not support all of the features that I wanted, so I stayed with my own format with the .lsm extension.
<255,255,255>), instead of the medium-light gray (<160,160,160>) used before. This was done because the default color for Alias/Wavefront objects is white.
c2s3 instead of the former nsss) so that using the new macro suite won't overwrite older work.
malloc(), calloc(), and free() calls have been replaced with C++ equivalent (new and delete) statements.
Model class are now in files named model_*.cpp, where the * stands for the first letter of the function name. There are now more source files, but they are now mostly smaller, and it's easier to find a function in the source files.
strcmp() doesn't check for NULL input. Fixed.#defines causing compile-time errors when reading the standard headers. Fixed. I had originally "fixed" this by editing the standard header (wincon.h), but then I realized that I shouldn't expect other people trying to compile this to edit their standard headers, so I rearranged the order of the header files so that standard headers are included prior to my own rather haphazardly organized headers. I tried replacing the offending #defines with const variables, but for some strange reason this made the executable larger..cpp extension instead of .c on the source files. I'm using the Dev C++ compiler again; the "bloat" that I reported earlier was probably debugger info, and not bloat. The size of the executable only went up by 10%. LionSnake remains "the modeler on a floppy," for those of you who still use floppies, or even have a floppy drive...
#local statements which declared the independent vertices. Fixed.
sample.inc was from an old version of the modeler, instead of being a recent sample export. Fixed.nsss.inc was missing from the archive. Fixed.SSS_BuildFlatMesh() had a parse-killing bug in it. Fixed.| More editing features | Simple things, like splitting a face by drawing a line across it, and, where two edges meet at a vertex, to merge those edges. |
| Improve the subdivision preview | The current preview isn't terribly useful, I know... |
| Gadgets that scale and rotate selected portions of the mesh | Could be useful for some users |
| Improve the rotation and scaling gadgets for Bones | Yeah, they're lame now. |
| Support more texture file types | Right now only .bmp files are supported, and I know that I should definitely support .jpg and .png. |
| A customizable UI | Allow different color schemes, different hot keys, and so on. |
| Scripting capability | Allows users to extend the features |
| Scene building, posing, and animation | Will be part of version 2.0 |
| Morphs | Helpful for animations |