Minor changes to binary formats for consistency.
Documented the binary scene format.
This commit is contained in:
parent
04716f5115
commit
526f35bf16
@ -190,13 +190,13 @@ private:
|
||||
//! Frame update timer
|
||||
Timer mFrameTimer;
|
||||
//! Minimum frames per second
|
||||
int mMinFps;
|
||||
unsigned mMinFps;
|
||||
//! Maximum frames per second
|
||||
int mMaxFps;
|
||||
unsigned mMaxFps;
|
||||
//! Maximum frames per second when the application is inactive
|
||||
int mMaxInactiveFps;
|
||||
unsigned mMaxInactiveFps;
|
||||
//! Debug draw mode
|
||||
int mDebugDrawMode;
|
||||
unsigned mDebugDrawMode;
|
||||
//! Flush GPU flag
|
||||
bool mFlushGPU;
|
||||
//! Initialized flag
|
||||
|
@ -106,8 +106,8 @@ void PhysicsWorld::save(Serializer& dest)
|
||||
{
|
||||
writeExtensionType(dest);
|
||||
dest.writeVector3(getGravity());
|
||||
dest.writeInt(getFps());
|
||||
dest.writeInt(getMaxContacts());
|
||||
dest.writeUInt(getFps());
|
||||
dest.writeUInt(getMaxContacts());
|
||||
dest.writeFloat(getBounceThreshold());
|
||||
dest.writeFloat(getLinearRestThreshold());
|
||||
dest.writeFloat(getLinearDampingThreshold());
|
||||
@ -127,8 +127,8 @@ void PhysicsWorld::load(Deserializer& source)
|
||||
{
|
||||
checkExtensionType(source);
|
||||
setGravity(source.readVector3());
|
||||
setFps(source.readInt());
|
||||
setMaxContacts(source.readInt());
|
||||
setFps(source.readUInt());
|
||||
setMaxContacts(source.readUInt());
|
||||
setBounceThreshold(source.readFloat());
|
||||
setLinearRestThreshold(source.readFloat());
|
||||
float threshold = source.readFloat();
|
||||
|
@ -172,7 +172,7 @@ private:
|
||||
//! ODE contact joint group ID
|
||||
dJointGroupID mContactJoints;
|
||||
//! Simulation steps per second
|
||||
int mFps;
|
||||
unsigned mFps;
|
||||
//! Maximum contacts per collision
|
||||
unsigned mMaxContacts;
|
||||
//! Collision bounce velocity threshold
|
||||
|
@ -71,7 +71,7 @@ void Animation::load(Deserializer& source, ResourceCache* cache)
|
||||
AnimationTrack& newTrack = mTracks[i];
|
||||
newTrack.mName = source.readString();
|
||||
newTrack.mNameHash = StringHash(newTrack.mName);
|
||||
newTrack.mChannelMask = source.readUInt();
|
||||
newTrack.mChannelMask = source.readUByte();
|
||||
|
||||
unsigned keyFrames = source.readUInt();
|
||||
newTrack.mKeyFrames.resize(keyFrames);
|
||||
|
@ -56,7 +56,7 @@ struct AnimationTrack
|
||||
//! Bone name hash
|
||||
StringHash mNameHash;
|
||||
//! Bitmask of included data (position, rotation, scale)
|
||||
unsigned mChannelMask;
|
||||
unsigned char mChannelMask;
|
||||
//! Keyframes
|
||||
std::vector<AnimationKeyFrame> mKeyFrames;
|
||||
};
|
||||
|
@ -121,7 +121,7 @@ private:
|
||||
//! Bind inverse matrix
|
||||
Matrix4x3 mBindInverseTransform;
|
||||
//! Supported collision types
|
||||
unsigned mCollisionMask;
|
||||
unsigned char mCollisionMask;
|
||||
//! Radius
|
||||
float mRadius;
|
||||
//! Bounding box
|
||||
|
@ -323,14 +323,14 @@ void Octree::save(Serializer& dest)
|
||||
{
|
||||
writeExtensionType(dest);
|
||||
dest.writeBoundingBox(mWorldBoundingBox);
|
||||
dest.writeVLE(mNumLevels);
|
||||
dest.writeUInt(mNumLevels);
|
||||
}
|
||||
|
||||
void Octree::load(Deserializer& source)
|
||||
{
|
||||
checkExtensionType(source);
|
||||
BoundingBox box = source.readBoundingBox();
|
||||
unsigned numLevels = source.readVLE();
|
||||
unsigned numLevels = source.readUInt();
|
||||
resize(box, numLevels);
|
||||
}
|
||||
|
||||
|
@ -63,7 +63,7 @@ void Skeleton::load(Deserializer& source)
|
||||
newBone->reset();
|
||||
|
||||
// Read bone collision data
|
||||
unsigned collisionMask = source.readUInt();
|
||||
unsigned char collisionMask = source.readUByte();
|
||||
if (collisionMask & BONECOLLISION_SPHERE)
|
||||
newBone->setRadius(source.readFloat());
|
||||
if (collisionMask & BONECOLLISION_BOX)
|
||||
|
@ -127,7 +127,7 @@ void Scene::save(Serializer& dest, bool throwOnError)
|
||||
saveProperties(dest);
|
||||
|
||||
// Write entities
|
||||
dest.writeVLE(mEntities.size());
|
||||
dest.writeUInt(mEntities.size());
|
||||
for (std::map<EntityID, SharedPtr<Entity> >::iterator i = mEntities.begin(); i != mEntities.end(); ++i)
|
||||
{
|
||||
// Create a separate serialization buffer for the entity, in case something fails
|
||||
@ -165,7 +165,7 @@ void Scene::load(Deserializer& source, bool throwOnError)
|
||||
loadProperties(source);
|
||||
|
||||
// Read entities
|
||||
unsigned numEntities = source.readVLE();
|
||||
unsigned numEntities = source.readUInt();
|
||||
for (unsigned i = 0; i < numEntities; ++i)
|
||||
loadEntity(source, throwOnError);
|
||||
|
||||
@ -422,7 +422,7 @@ void Scene::loadAsync(File* file)
|
||||
loadProperties(*file);
|
||||
|
||||
// Begin async loading
|
||||
mAsyncTotalEntities = file->readVLE();
|
||||
mAsyncTotalEntities = file->readUInt();
|
||||
mAsyncLoadedEntities = 0;
|
||||
mAsyncFile = file;
|
||||
mAsyncLoading = true;
|
||||
|
@ -903,16 +903,12 @@ void writeOutput(const std::string& outputFileName, bool exportAnimations, bool
|
||||
// Vertexbuffers
|
||||
dest.writeUInt(vertexBuffers.size());
|
||||
for (unsigned i = 0; i < vertexBuffers.size(); ++i)
|
||||
{
|
||||
vertexBuffers[i].writeData(dest);
|
||||
}
|
||||
|
||||
// Indexbuffers
|
||||
dest.writeUInt(indexBuffers.size());
|
||||
for (unsigned i = 0; i < indexBuffers.size(); ++i)
|
||||
{
|
||||
indexBuffers[i].writeData(dest);
|
||||
}
|
||||
|
||||
// Subgeometries
|
||||
dest.writeUInt(subGeometries.size());
|
||||
@ -939,9 +935,7 @@ void writeOutput(const std::string& outputFileName, bool exportAnimations, bool
|
||||
// Morphs
|
||||
dest.writeUInt(morphs.size());
|
||||
for (unsigned i = 0; i < morphs.size(); ++i)
|
||||
{
|
||||
morphs[i].writeData(dest);
|
||||
}
|
||||
|
||||
// Skeleton
|
||||
dest.writeUInt(bones.size());
|
||||
@ -952,7 +946,7 @@ void writeOutput(const std::string& outputFileName, bool exportAnimations, bool
|
||||
dest.writeVector3(bones[i].mBindPosition);
|
||||
dest.writeQuaternion(bones[i].mBindRotation);
|
||||
dest.writeVector3(bones[i].mBindScale);
|
||||
dest.writeUInt(bones[i].mCollisionMask);
|
||||
dest.writeUByte(bones[i].mCollisionMask);
|
||||
if (bones[i].mCollisionMask & 1)
|
||||
dest.writeFloat(bones[i].mRadius);
|
||||
if (bones[i].mCollisionMask & 2)
|
||||
@ -1059,7 +1053,7 @@ void writeOutput(const std::string& outputFileName, bool exportAnimations, bool
|
||||
{
|
||||
AnimationTrack& track = newAnimation.mTracks[i];
|
||||
dest.writeString(track.mName);
|
||||
dest.writeUInt(track.mChannelMask);
|
||||
dest.writeUByte(track.mChannelMask);
|
||||
dest.writeUInt(track.mKeyFrames.size());
|
||||
for (unsigned j = 0; j < track.mKeyFrames.size(); ++j)
|
||||
{
|
||||
|
@ -49,7 +49,7 @@ struct ModelBone
|
||||
Vector3 mDerivedScale;
|
||||
Matrix4x3 mWorldTransform;
|
||||
Matrix4x3 mInverseWorldTransform;
|
||||
unsigned mCollisionMask;
|
||||
unsigned char mCollisionMask;
|
||||
float mRadius;
|
||||
BoundingBox mBoundingBox;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user