//---------------------------------------------------------------------------- void Object::Save(OutStream& target) const { PX2_BEGIN_DEBUG_STREAM_SAVE(target); // 写入Rtti 名称 target.WriteString(GetRttiType().GetName()); // 写入Rtti version target.Write(TYPE.GetVersion()); // 写入ID target.WriteUniqueID(this); //是否有效 target.WriteBool(mIsEnable); // 资源路径 target.WriteString(mResourcePath); // 写入对象名称 target.WriteString(mName); target.Write(mID); PX2_END_DEBUG_STREAM_SAVE(Object, target); }
//---------------------------------------------------------------------------- void RawTerrainPage::Save (OutStream& target) const { PX2_BEGIN_DEBUG_STREAM_SAVE(target); TerrainPage::Save(target); PX2_VERSION_SAVE(target); target.WritePointer(mMtlInst); target.WriteString(mTextureDefaultFilename); target.WriteString(mTexture0Filename); target.WritePointer(mTextureAlpha); target.WriteString(mTexture1Filename); target.WriteString(mTexture2Filename); target.WriteString(mTexture3Filename); target.WriteString(mTexture4Filename); target.WriteAggregate(mUV01); target.WriteAggregate(mUV23); target.WriteAggregate(mUV4); target.WritePointer(mUV01Float); target.WritePointer(mUV23Float); target.WritePointer(mUV4Float); PX2_END_DEBUG_STREAM_SAVE(RawTerrainPage, target); }
//---------------------------------------------------------------------------- void EffectBuf::Save (OutStream& target) const { PX2_BEGIN_DEBUG_STREAM_SAVE(target); Buf::Save(target); PX2_VERSION_SAVE(target); target.WriteString(mEffectFilename); target.WriteString(mAnchor); target.WritePointer(mEffect); PX2_END_DEBUG_STREAM_SAVE(EffectBuf, target); }
//---------------------------------------------------------------------------- void ScriptController::Save(OutStream& target) const { PX2_BEGIN_DEBUG_STREAM_SAVE(target); Controller::Save(target); PX2_VERSION_SAVE(target); target.Write(mNumFixUpdatePerSeconds); target.WriteString(mFilename); target.WriteString(mClassName); PX2_END_DEBUG_STREAM_SAVE(ScriptController, target); }
//---------------------------------------------------------------------------- void UIFrame::Save (OutStream& target) const { PX2_BEGIN_DEBUG_STREAM_SAVE(target); Node::Save(target); target.WriteString(mScriptHandler); PX2_END_DEBUG_STREAM_SAVE(UIFrame, target); }
//---------------------------------------------------------------------------- void Object::Save (OutStream& target) const { PX2_BEGIN_DEBUG_STREAM_SAVE(target); // 写入RTTI名称 target.WriteString(GetRttiType().GetName()); // 写入ID target.WriteUniqueID(this); // 资源路径 target.WriteString(mResourcePath); // 写入对象名称 target.WriteString(mName); PX2_END_DEBUG_STREAM_SAVE(Object, target); }
//---------------------------------------------------------------------------- void UIInputText::Save(OutStream& target) const { PX2_BEGIN_DEBUG_STREAM_SAVE(target); UIText::Save(target); PX2_VERSION_SAVE(target); target.WriteBool(mIsPassword); target.WriteString(mRealText); target.Write(mFixedWidth); PX2_END_DEBUG_STREAM_SAVE(UIInputText, target); }
//---------------------------------------------------------------------------- void MaterialInstance::Save (OutStream& target) const { PX2_BEGIN_DEBUG_STREAM_SAVE(target); Object::Save(target); PX2_VERSION_SAVE(target); target.WriteBool(mIsShareMtl); target.WriteString(mMaterialFilename); target.WriteString(mInstanceTechName); target.WritePointer(mMaterial); target.Write(mTechniqueIndex); target.WritePointerW(mNumPasses, mVertexParameters); target.WritePointerN(mNumPasses, mPixelParameters); PX2_END_DEBUG_STREAM_SAVE(MaterialInstance, target); }
//---------------------------------------------------------------------------- void Shader::Save (OutStream& target) const { WM5_BEGIN_DEBUG_STREAM_SAVE(target); Object::Save(target); target.WriteStringW(mNumInputs, mInputName); target.WriteEnumN(mNumInputs, mInputType); target.WriteEnumN(mNumInputs, mInputSemantic); target.WriteStringW(mNumOutputs, mOutputName); target.WriteEnumN(mNumOutputs, mOutputType); target.WriteEnumN(mNumOutputs, mOutputSemantic); target.WriteStringW(mNumConstants, mConstantName); target.WriteN(mNumConstants, mNumRegistersUsed); target.WriteStringW(mNumSamplers, mSamplerName); target.WriteEnumN(mNumSamplers, mSamplerType); target.WriteEnumN(mNumSamplers, mFilter); target.WriteEnumN(mNumSamplers, mCoordinate[0]); target.WriteEnumN(mNumSamplers, mCoordinate[1]); target.WriteEnumN(mNumSamplers, mCoordinate[2]); target.WriteN(mNumSamplers, mLodBias); target.WriteN(mNumSamplers, mAnisotropy); target.WriteAggregateN(mNumSamplers, mBorderColor); // On load, test this against MAX_PROFILES just in case a user increases // MAX_PROFILES and tries to load old data sets. target.Write((int)MAX_PROFILES); target.WriteBool(mProfileOwner); if (mProfileOwner) { for (int i = 0; i < MAX_PROFILES; ++i) { target.WriteN(mNumConstants, mBaseRegister[i]); target.WriteN(mNumSamplers, mTextureUnit[i]); target.WriteString(*mProgram[i]); } } WM5_END_DEBUG_STREAM_SAVE(Shader, target); }
//---------------------------------------------------------------------------- void UIAnimPicBox::Save (OutStream& target) const { PX2_BEGIN_DEBUG_STREAM_SAVE(target); UIPicBox::Save(target); target.WritePointer(mAPBCtrl); target.WriteString(mFrameTexPack); target.Write(mIntervalTime); int numAnim = (int)mElements.size(); target.Write(numAnim); for (int i=0; i<numAnim; i++) { target.Write(mElements[i].Index); target.WriteAggregate(mElements[i].UV0); target.WriteAggregate(mElements[i].UV1); target.WriteAggregate(mElements[i].UV2); target.WriteAggregate(mElements[i].UV3); target.WritePointer(mElements[i].Tex); } PX2_END_DEBUG_STREAM_SAVE(UIAnimPicBox, target); }