diff options
Diffstat (limited to 'indra/newview/llfloatermodelpreview.h')
-rw-r--r-- | indra/newview/llfloatermodelpreview.h | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/indra/newview/llfloatermodelpreview.h b/indra/newview/llfloatermodelpreview.h index 910a45f9fe..dc6a33d0ab 100644 --- a/indra/newview/llfloatermodelpreview.h +++ b/indra/newview/llfloatermodelpreview.h @@ -66,7 +66,7 @@ public: GENERATING_VERTEX_BUFFERS, GENERATING_LOD, DONE, - ERROR_PARSING, //basically loading failed + ERROR_PARSING //basically loading failed } eLoadState; U32 mState; @@ -76,6 +76,7 @@ public: LLMatrix4 mTransform; BOOL mFirstTransform; LLVector3 mExtents[2]; + bool mTrySLM; std::map<daeElement*, LLPointer<LLModel> > mModel; @@ -97,6 +98,7 @@ public: virtual void run(); bool doLoadModel(); + bool loadFromSLM(const std::string& filename); void loadModelCallback(); void loadTextures() ; //called in the main thread. @@ -124,7 +126,6 @@ public: //map of avatar joints as named in COLLADA assets to internal joint names std::map<std::string, std::string> mJointMap; std::deque<std::string> mMasterJointList; - bool mResetJoints; }; class LLFloaterModelPreview : public LLFloater @@ -161,6 +162,8 @@ public: static void onBrowseLOD(void* data); + static void onReset(void* data); + static void onUpload(void* data); static void onClearMaterials(void* data); @@ -288,6 +291,8 @@ public: void clearMaterials(); U32 calcResourceCost(); void rebuildUploadData(); + void saveUploadData(bool save_skinweights, bool save_joint_poisitions); + void saveUploadData(const std::string& filename, bool save_skinweights, bool save_joint_poisitions); void clearIncompatible(S32 lod); void updateStatusMessages(); void clearGLODGroup(); @@ -306,6 +311,9 @@ public: void setLoadState( U32 state ) { mLoadState = state; } U32 getLoadState() { return mLoadState; } + void setResetJointFlag( bool state ) { mResetJoints = state; } + bool getResetJointFlag( void ) { return mResetJoints; } + protected: friend class LLModelLoader; friend class LLFloaterModelPreview; @@ -332,7 +340,7 @@ public: std::string mLODFile[LLModel::NUM_LODS]; bool mLoading; U32 mLoadState; - + bool mResetJoints; std::map<std::string, bool> mViewOption; //GLOD object parameters (must rebuild object if these change) @@ -354,8 +362,7 @@ public: U32 mGroup; std::map<LLPointer<LLModel>, U32> mObject; U32 mMaxTriangleLimit; - std::map<LLPointer<LLModel>, std::vector<LLPointer<LLVertexBuffer> > > mPhysicsMesh; - + LLMeshUploadThread::instance_list mUploadData; std::set<LLViewerFetchedTexture* > mTextureSet; |