General
- Added format auto-detection to most loaders - Simplified BaseImporter::CanRead() with some utility methods - improved fast_atof -> no overruns anymore. Fuck you, irrlicht. - added assimp_cmd tool to allow command line model processing. Mainly adebugging tool for internal purposes, but others might find it useful, too. - vc8/vc9: revision number is now written to DLL version header - mkutil: some batch scripts to simplify tagging & building of release versions - some API cleanup - fixing some doxygen markup (+now explicit use of @file <filename>) - Icon for assimp_view and assimp_cmd 3DS - Normal vectors are not anymore inverted in some cases - Improved pivot handling - Improved handling of x-flipped meshes Collada - fixed a minor bug (visual_scene element) LWS - WIP implementation. No animations yet, some bugs and crashes. - Animation system remains disabled, WIP code - many test files for LWS, but most of them test the anim support, which is, read above, currently disabled. STL - fixing a log warning which appears for every model - added binary&ascii test spider, exported from truespace MD3 - Cleaning up output tags for automatically joined player models. IRR - Fixing coordinate system issues. - Instance handling improved. - Some of the reported crashes not yet fixed. PretransformVertices - Numerous performance improvements. - Added config option to preserve the hierarchy during the step. RemoveRedundantMaterials - Added config option to specify a list of materials which are kept in every case. UNREAL - Added support for the old unreal data format (*.a,*.d,*.uc) - tested only with exports from Milkshape - more Unreal stuff to come soon git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@356 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
This commit is contained in:
@@ -38,10 +38,10 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
----------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
/** @file Defines chunk constants used by the LWO file format
|
||||
/** @file LWOFileData.h
|
||||
* @brief Defines chunk constants used by the LWO file format
|
||||
|
||||
The chunks are taken from the official LightWave SDK headers.
|
||||
Original copyright notice: "Ernie Wright 17 Sep 00"
|
||||
|
||||
*/
|
||||
#ifndef AI_LWO_FILEDATA_INCLUDED
|
||||
@@ -56,6 +56,7 @@ Original copyright notice: "Ernie Wright 17 Sep 00"
|
||||
|
||||
// internal headers
|
||||
#include "IFF.h"
|
||||
#include "LWOAnimation.h"
|
||||
|
||||
namespace Assimp {
|
||||
namespace LWO {
|
||||
@@ -254,29 +255,45 @@ namespace LWO {
|
||||
*/
|
||||
struct Face : public aiFace
|
||||
{
|
||||
//! Default construction
|
||||
Face()
|
||||
: surfaceIndex (0)
|
||||
, smoothGroup (0)
|
||||
, type (AI_LWO_FACE)
|
||||
{}
|
||||
|
||||
Face(const Face& f)
|
||||
{
|
||||
//! Construction from given type
|
||||
Face(uint32_t _type)
|
||||
: surfaceIndex (0)
|
||||
, smoothGroup (0)
|
||||
, type (_type)
|
||||
{}
|
||||
|
||||
//! Copy construction
|
||||
Face(const Face& f) {
|
||||
*this = f;
|
||||
}
|
||||
|
||||
//! Zero-based index into tags chunk
|
||||
unsigned int surfaceIndex;
|
||||
|
||||
//! Smooth group this face is assigned to
|
||||
unsigned int smoothGroup;
|
||||
|
||||
Face& operator=(const LWO::Face& f)
|
||||
{
|
||||
//! Type of face
|
||||
uint32_t type;
|
||||
|
||||
|
||||
//! Assignment operator
|
||||
Face& operator=(const LWO::Face& f) {
|
||||
aiFace::operator =(f);
|
||||
surfaceIndex = f.surfaceIndex;
|
||||
smoothGroup = f.smoothGroup;
|
||||
type = f.type;
|
||||
return *this;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
/** \brief Base structure for all vertex map representations
|
||||
*/
|
||||
@@ -473,8 +490,9 @@ struct Clip
|
||||
} type;
|
||||
|
||||
Clip()
|
||||
: type (UNSUPPORTED)
|
||||
, idx (0)
|
||||
: type (UNSUPPORTED)
|
||||
, idx (0)
|
||||
, negate (false)
|
||||
{}
|
||||
|
||||
//! path to the base texture -
|
||||
@@ -485,6 +503,9 @@ struct Clip
|
||||
|
||||
//! index of the clip
|
||||
unsigned int idx;
|
||||
|
||||
//! Negate the clip?
|
||||
bool negate;
|
||||
};
|
||||
|
||||
|
||||
@@ -529,6 +550,7 @@ struct Surface
|
||||
, mIOR (1.f) // vakuum
|
||||
, mBumpIntensity (1.f)
|
||||
, mWireframe (false)
|
||||
, mAdditiveTransparency (10e10f)
|
||||
{}
|
||||
|
||||
//! Name of the surface
|
||||
@@ -571,6 +593,9 @@ struct Surface
|
||||
|
||||
//! Wireframe flag
|
||||
bool mWireframe;
|
||||
|
||||
//! Intensity of additive blending
|
||||
float mAdditiveTransparency;
|
||||
};
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
@@ -592,7 +617,7 @@ typedef std::vector < WeightChannel > WeightChannelList;
|
||||
typedef std::vector < VColorChannel > VColorChannelList;
|
||||
typedef std::vector < UVChannel > UVChannelList;
|
||||
typedef std::vector < Clip > ClipList;
|
||||
|
||||
typedef std::vector < Envelope > EnvelopeList;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
/** \brief Represents a layer in the file
|
||||
|
||||
Reference in New Issue
Block a user