Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

Lamp::TextSceneSaver Class Reference

テキストシーンセーバ More...

#include <TextSceneSaver.h>

List of all members.

Public Member Functions

 TextSceneSaver ()
 コンストラクタ

virtual ~TextSceneSaver ()
 デストラクタ

virtual void save (const String &filePath, Scene *scene)
 セーブ

virtual void save (TextWriter *textWriter, Scene *scene, const String &basePath="")
 セーブ


Protected Member Functions

virtual void writeHeader ()
 ヘッダの書き出し

virtual int writeObjectList ()
 オブジェクトリストの書き出し

virtual void writeLink (int objectCount)
 リンクの書き出し

virtual void writeFog (Fog *fog)
 フォグの書き出し

virtual void writeSceneNodeList ()
 シーンノードリストの書き出し

virtual void writeSceneNode (SceneNode *sceneNode)
 シーンノードの書き出し

virtual void writeLODSceneNode (LODSceneNode *sceneNode)
 レベルオブディティールシーンノードの書き出し

virtual void writeLightList ()
 ライトリストの書き出し

virtual void writeLight (Light *light)
 ライトの書き出し

virtual void writeAmbientLight (AmbientLight *light)
 アンビエントライトの書き出し

virtual void writeDirectionalLight (DirectionalLight *light)
 ディレクショナルライトの書き出し

virtual void writePointLight (PointLight *light)
 ポイントライトの書き出し

virtual void writeModelList ()
 モデルリストの書き出し

virtual void writeStandardModel (StandardModel *model)
 標準モデルの書き出し

virtual void writeCharacterModel (CharacterModel *model)
 キャラクタモデルの書き出し

virtual void writeBone (Bone *bone)
 ボーンの書き出し

virtual void writeBoneLink (Bone *bone)
 ボーンリンクの書き出し

virtual void writeMeshList ()
 メッシュリストの書き出し

virtual void writeRigidMesh (RigidMesh *mesh)
 剛体メッシュの書き出し

virtual void writeCharacterMesh (CharacterMesh *mesh)
 キャラクタメッシュの書き出し

virtual void writeMeshDataList ()
 メッシュデータリストの書き出し

virtual void writeMeshData (MeshData *meshData)
 メッシュデータの書き出し

virtual void writeMaterialList ()
 マテリアルリストの書き出し

virtual void writeMaterial (const Material *material)
 マテリアルの書き出し

virtual void writeBasicMaterial (const BasicMaterial *material)
 基本マテリアルの書き出し

virtual void writeTextureList ()
 テクスチャリストの書き出し

virtual void writeSurfaceTexture (const SurfaceTexture *texture)
 サーフェーステクスチャの書き出し

virtual void writePicture (const Picture *picture)
 ピクチャの書き出し

virtual void writeSceneNodeLink (SceneNode *sceneNode)
 シーンノードリンクの書き出し

virtual void writeModelLink (const Model *model)
 モデルリンクの書き出し

virtual void writeMeshLink (const Mesh *mesh)
 メッシュリンクの書き出し

virtual void writeMaterialLinkList ()
 マテリアルリンクリストの書き出し

virtual void writeBasicMaterialLink (const BasicMaterial *material)
 基本マテリアルリンクの書き出し

virtual void writeTextureLink (const Texture *texture)
 テクスチャリンクの書き出し

virtual void writeBool (bool)
 boolの書き出し

virtual void writeLineComment ()
 線コメントの書き出し

virtual void writeBlockComment (const String &blockName)
 ブロックコメントの書き出し


Protected Attributes

TextWriterwriter_
 ライタ

String basePath_
 ベースパス

Scenescene_
 シーン

SceneNodeManagersceneNodeManager_
 シーンノードマネージャ

LightManagerlightManager_
 ライトマネージャ

ModelManagermodelManager_
 モデルマネージャ

MeshManagermeshManager_
 メッシュマネージャ

MeshDataManagermeshDataManager_
 メッシュデータマネージャ

MaterialManagermaterialManager_
 マテリアルマネージャ

TextureManagertextureManager_
 テクスチャマネージャ

PictureManagerpictureManager_
 ピクチャマネージャ


Detailed Description

テキストシーンセーバ

Definition at line 66 of file TextSceneSaver.h.


Member Function Documentation

void Lamp::TextSceneSaver::save TextWriter textWriter,
Scene scene,
const String basePath = ""
[virtual]
 

セーブ

Parameters:
textWriter テキストライタ
scene セーブするシーン
basePath ベースパス

Definition at line 63 of file TextSceneSaver.cpp.

References basePath_, lightManager_, materialManager_, meshDataManager_, meshManager_, modelManager_, pictureManager_, scene_, sceneNodeManager_, textureManager_, writeHeader(), writeLink(), writeObjectList(), and writer_.

void Lamp::TextSceneSaver::save const String filePath,
Scene scene
[virtual]
 

セーブ

Parameters:
filePath ファイルパス
scene セーブするシーン

Definition at line 55 of file TextSceneSaver.cpp.

References Lamp::FilePath::getFolderPath().

void Lamp::TextSceneSaver::writeAmbientLight AmbientLight light  )  [protected, virtual]
 

アンビエントライトの書き出し

Parameters:
light 書き出すライト

Definition at line 375 of file TextSceneSaver.cpp.

References Lamp::Color3f::b, Lamp::Color3f::g, Lamp::AmbientLight::getColor(), Lamp::SceneObject::getName(), Lamp::Color3f::r, Lamp::TextWriter::writeFormat(), writeLight(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeLightList().

void Lamp::TextSceneSaver::writeBasicMaterial const BasicMaterial material  )  [protected, virtual]
 

基本マテリアルの書き出し

Parameters:
material 書き出すマテリアル

Definition at line 745 of file TextSceneSaver.cpp.

References Lamp::Color3f::b, Lamp::Color3f::g, Lamp::BasicMaterial::getAmbientColor(), Lamp::BasicMaterial::getBaseUVIndex(), Lamp::BasicMaterial::getDiffuseColor(), Lamp::BasicMaterial::getEmissiveColor(), Lamp::BasicMaterial::getGlossUVIndex(), Lamp::BasicMaterial::getLightUVIndex(), Lamp::SceneObject::getName(), Lamp::BasicMaterial::getSpecularColor(), Lamp::BasicMaterial::getSpecularPower(), Lamp::BasicMaterial::getStainUVIndex(), Lamp::Color3f::r, Lamp::TextWriter::writeFormat(), writeMaterial(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeMaterialList().

void Lamp::TextSceneSaver::writeBasicMaterialLink const BasicMaterial material  )  [protected, virtual]
 

基本マテリアルリンクの書き出し

Parameters:
material 書き出すマテリアル

Definition at line 941 of file TextSceneSaver.cpp.

References Lamp::BasicMaterial::getBaseTexture(), Lamp::BasicMaterial::getGlossTexture(), Lamp::BasicMaterial::getLightTexture(), Lamp::SceneObject::getName(), Lamp::BasicMaterial::getStainTexture(), NULL, writer_, and Lamp::TextWriter::writeText().

Referenced by writeMaterialLinkList().

void Lamp::TextSceneSaver::writeBlockComment const String blockName  )  [protected, virtual]
 

ブロックコメントの書き出し

Parameters:
blockName ブロック名

Definition at line 1010 of file TextSceneSaver.cpp.

References writeLineComment(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeFog(), writeHeader(), writeLink(), and writeObjectList().

void Lamp::TextSceneSaver::writeBone Bone bone  )  [protected, virtual]
 

ボーンの書き出し

Parameters:
bone 書き出すボーン

Definition at line 497 of file TextSceneSaver.cpp.

References Lamp::Bone::getInversePoseMatrix(), Lamp::Bone::getName(), Lamp::Bone::getRotationXYZ(), Lamp::Bone::getScale(), Lamp::Bone::getTranslation(), Lamp::Matrix34::m00, Lamp::Matrix34::m01, Lamp::Matrix34::m02, Lamp::Matrix34::m03, Lamp::Matrix34::m10, Lamp::Matrix34::m11, Lamp::Matrix34::m12, Lamp::Matrix34::m13, Lamp::Matrix34::m20, Lamp::Matrix34::m21, Lamp::Matrix34::m22, Lamp::Matrix34::m23, Lamp::TextWriter::writeFormat(), writer_, Lamp::TextWriter::writeText(), Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z.

Referenced by writeCharacterModel().

void Lamp::TextSceneSaver::writeBoneLink Bone bone  )  [protected, virtual]
 

ボーンリンクの書き出し

Parameters:
bone 書き出すボーン

Definition at line 526 of file TextSceneSaver.cpp.

References Lamp::Bone::getBone(), Lamp::Bone::getBoneCount(), Lamp::Bone::getName(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeCharacterModel().

void Lamp::TextSceneSaver::writeCharacterMesh CharacterMesh mesh  )  [protected, virtual]
 

キャラクタメッシュの書き出し

Parameters:
mesh 書き出すメッシュ

Definition at line 572 of file TextSceneSaver.cpp.

References Lamp::SceneObject::getName(), Lamp::Mesh::isEnabled(), writeBool(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeMeshList().

void Lamp::TextSceneSaver::writeCharacterModel CharacterModel model  )  [protected, virtual]
 

キャラクタモデルの書き出し

Parameters:
model 書き出すモデル

Definition at line 472 of file TextSceneSaver.cpp.

References Lamp::CharacterModel::getBone(), Lamp::CharacterModel::getBoneCount(), Lamp::SceneObject::getName(), Lamp::SceneLeaf::isEnabled(), writeBone(), writeBoneLink(), writeBool(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeModelList().

void Lamp::TextSceneSaver::writeDirectionalLight DirectionalLight light  )  [protected, virtual]
 

ディレクショナルライトの書き出し

Parameters:
light 書き出すライト

Definition at line 390 of file TextSceneSaver.cpp.

References Lamp::Color3f::b, Lamp::Color3f::g, Lamp::DirectionalLight::getDiffuseColor(), Lamp::DirectionalLight::getDirection(), Lamp::SceneObject::getName(), Lamp::DirectionalLight::getSpecularColor(), Lamp::Color3f::r, Lamp::TextWriter::writeFormat(), writeLight(), writer_, Lamp::TextWriter::writeText(), Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z.

Referenced by writeLightList().

void Lamp::TextSceneSaver::writeFog Fog fog  )  [protected, virtual]
 

フォグの書き出し

Parameters:
fog フォグ

Definition at line 249 of file TextSceneSaver.cpp.

References Lamp::Color4c::a, Lamp::Color4c::b, Lamp::Color4c::g, Lamp::Fog::getColor(), Lamp::Fog::getDensity(), Lamp::Fog::getFar(), Lamp::Fog::getModeString(), Lamp::Fog::getNear(), Lamp::Fog::isEnabled(), Lamp::Color4c::r, writeBlockComment(), writeBool(), Lamp::TextWriter::writeFormat(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeObjectList().

void Lamp::TextSceneSaver::writeLight Light light  )  [protected, virtual]
 

ライトの書き出し

Parameters:
light 書き出すライト

Definition at line 364 of file TextSceneSaver.cpp.

References Lamp::Light::getLightMask(), Lamp::SceneLeaf::isEnabled(), writeBool(), Lamp::TextWriter::writeFormat(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeAmbientLight(), writeDirectionalLight(), and writePointLight().

void Lamp::TextSceneSaver::writeLink int  objectCount  )  [protected, virtual]
 

リンクの書き出し

Parameters:
objectCount オブジェクト数

Definition at line 190 of file TextSceneSaver.cpp.

References Lamp::SceneObjectManagerTemplate< Texture >::get(), Lamp::SceneObjectManagerTemplate< Mesh >::get(), Lamp::SceneObjectManagerTemplate< Model >::get(), Lamp::SceneObjectManagerTemplate< SceneNode >::get(), Lamp::SceneObjectManagerTemplate< Texture >::getCount(), Lamp::SceneObjectManagerTemplate< Mesh >::getCount(), Lamp::SceneObjectManagerTemplate< Model >::getCount(), Lamp::SceneObjectManagerTemplate< SceneNode >::getCount(), meshManager_, modelManager_, sceneNodeManager_, textureManager_, writeBlockComment(), writeLineComment(), writeMaterialLinkList(), writeMeshLink(), writeModelLink(), writer_, writeSceneNodeLink(), Lamp::TextWriter::writeText(), and writeTextureLink().

Referenced by save().

void Lamp::TextSceneSaver::writeLODSceneNode LODSceneNode sceneNode  )  [protected, virtual]
 

レベルオブディティールシーンノードの書き出し

Parameters:
sceneNode 書き出すレベルオブディティールシーンノード

Definition at line 311 of file TextSceneSaver.cpp.

References Lamp::LODSceneNode::getLODThreshold(), Lamp::LODSceneNode::getLODThresholdCount(), Lamp::SceneObject::getName(), Lamp::SceneNode::getRotationXYZ(), Lamp::SceneNode::getScale(), Lamp::SceneNode::getTranslation(), Lamp::SceneNode::isEnabled(), writeBool(), Lamp::TextWriter::writeFormat(), writer_, Lamp::TextWriter::writeText(), Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z.

Referenced by writeSceneNodeList().

void Lamp::TextSceneSaver::writeMaterial const Material material  )  [protected, virtual]
 

マテリアルの書き出し

Parameters:
material 書き出すマテリアル

Definition at line 722 of file TextSceneSaver.cpp.

References Lamp::Material::getAlpha(), Lamp::Material::getBlendDestination(), Lamp::Material::getBlendMode(), Lamp::Material::getBlendSource(), Lamp::Material::getFogOption(), Lamp::Material::getLightMask(), Lamp::Material::getPriority(), Lamp::Material::useZTest(), Lamp::Material::useZWrite(), writeBool(), Lamp::TextWriter::writeFormat(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeBasicMaterial().

void Lamp::TextSceneSaver::writeMeshData MeshData meshData  )  [protected, virtual]
 

メッシュデータの書き出し

Parameters:
meshData 書き出すメッシュデータ

Definition at line 594 of file TextSceneSaver.cpp.

References Lamp::Color4c::a, Lamp::Color4c::b, Lamp::Color4c::g, Lamp::MeshData::getBoneIndex(), Lamp::MeshData::getBonesPerVertex(), Lamp::MeshData::getBoundingBox(), Lamp::MeshData::getBoundingSphere(), Lamp::Sphere::getCenter(), Lamp::MeshData::getColor(), Lamp::AxisAlignedBox::getMaximum(), Lamp::AxisAlignedBox::getMinimum(), Lamp::SceneObject::getName(), Lamp::MeshData::getNormal(), Lamp::MeshData::getPosition(), Lamp::MeshData::getPrimitiveType(), Lamp::Sphere::getRadius(), Lamp::MeshData::getTexCoordArray(), Lamp::MeshData::getTexCoordSetCount(), Lamp::MeshData::getTexCoordType(), Lamp::MeshData::getVertexCount(), Lamp::MeshData::getVertexIndex(), Lamp::MeshData::getVertexIndexCount(), Lamp::MeshData::getWeight(), Lamp::MeshData::getWeightsPerVertex(), Lamp::MeshData::hasColor(), Lamp::MeshData::hasNormal(), Lamp::Color4c::r, writeBool(), Lamp::TextWriter::writeFormat(), writer_, Lamp::TextWriter::writeText(), Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z.

Referenced by writeMeshDataList().

void Lamp::TextSceneSaver::writeMeshLink const Mesh mesh  )  [protected, virtual]
 

メッシュリンクの書き出し

Parameters:
mesh 書き出すメッシュ

Definition at line 903 of file TextSceneSaver.cpp.

References Lamp::Mesh::getMaterial(), Lamp::Mesh::getMeshData(), Lamp::SceneObject::getName(), NULL, writer_, and Lamp::TextWriter::writeText().

Referenced by writeLink().

void Lamp::TextSceneSaver::writeModelLink const Model model  )  [protected, virtual]
 

モデルリンクの書き出し

Parameters:
model 書き出すモデル

Definition at line 887 of file TextSceneSaver.cpp.

References Lamp::Model::getMesh(), Lamp::Model::getMeshCount(), Lamp::SceneObject::getName(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeLink().

int Lamp::TextSceneSaver::writeObjectList  )  [protected, virtual]
 

オブジェクトリストの書き出し

Returns:
オブジェクト数

Definition at line 97 of file TextSceneSaver.cpp.

References Lamp::SceneObjectManagerTemplate< Picture >::get(), Lamp::SceneObjectManagerTemplate< Picture >::getCount(), Lamp::SceneObjectManagerTemplate< Texture >::getCount(), Lamp::SceneObjectManagerTemplate< Material >::getCount(), Lamp::SceneObjectManagerTemplate< MeshData >::getCount(), Lamp::SceneObjectManagerTemplate< Mesh >::getCount(), Lamp::SceneObjectManagerTemplate< Model >::getCount(), Lamp::SceneObjectManagerTemplate< Light >::getCount(), Lamp::SceneObjectManagerTemplate< SceneNode >::getCount(), Lamp::Scene::getFog(), lightManager_, materialManager_, meshDataManager_, meshManager_, modelManager_, pictureManager_, scene_, sceneNodeManager_, textureManager_, writeBlockComment(), writeFog(), writeLightList(), writeMaterialList(), writeMeshDataList(), writeMeshList(), writeModelList(), writePicture(), writer_, writeSceneNodeList(), Lamp::TextWriter::writeText(), and writeTextureList().

Referenced by save().

void Lamp::TextSceneSaver::writePicture const Picture picture  )  [protected, virtual]
 

ピクチャの書き出し

Parameters:
picture 書き出すピクチャ

Definition at line 811 of file TextSceneSaver.cpp.

References basePath_, Lamp::Picture::castPictureRGB8(), Lamp::Picture::castPictureRGBA8(), ErrorOut, Lamp::String::getBytes(), Lamp::FilePath::getFolderPath(), Lamp::PictureRGBA8::getImage(), Lamp::PictureRGB8::getImage(), Lamp::SceneObject::getName(), Lamp::Picture::getPath(), Lamp::Picture::getSize(), Lamp::Picture::isPictureRGB8(), Lamp::Picture::isPictureRGBA8(), Lamp::TargaSaver::save(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeObjectList().

void Lamp::TextSceneSaver::writePointLight PointLight light  )  [protected, virtual]
 

ポイントライトの書き出し

Parameters:
light 書き出すライト

Definition at line 413 of file TextSceneSaver.cpp.

References Lamp::Color3f::b, Lamp::Color3f::g, Lamp::PointLight::getAttenuation0(), Lamp::PointLight::getAttenuation1(), Lamp::PointLight::getAttenuation2(), Lamp::PointLight::getDiffuseColor(), Lamp::SceneObject::getName(), Lamp::PointLight::getPosition(), Lamp::PointLight::getRange(), Lamp::PointLight::getSpecularColor(), Lamp::Color3f::r, Lamp::TextWriter::writeFormat(), writeLight(), writer_, Lamp::TextWriter::writeText(), Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z.

Referenced by writeLightList().

void Lamp::TextSceneSaver::writeRigidMesh RigidMesh mesh  )  [protected, virtual]
 

剛体メッシュの書き出し

Parameters:
mesh 書き出すメッシュ

Definition at line 560 of file TextSceneSaver.cpp.

References Lamp::SceneObject::getName(), Lamp::Mesh::isEnabled(), writeBool(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeMeshList().

void Lamp::TextSceneSaver::writeSceneNode SceneNode sceneNode  )  [protected, virtual]
 

シーンノードの書き出し

Parameters:
sceneNode 書き出すシーンノード

Definition at line 287 of file TextSceneSaver.cpp.

References Lamp::SceneObject::getName(), Lamp::SceneNode::getRotationXYZ(), Lamp::SceneNode::getScale(), Lamp::SceneNode::getTranslation(), Lamp::SceneNode::isEnabled(), writeBool(), Lamp::TextWriter::writeFormat(), writer_, Lamp::TextWriter::writeText(), Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z.

Referenced by writeSceneNodeList().

void Lamp::TextSceneSaver::writeSceneNodeLink SceneNode sceneNode  )  [protected, virtual]
 

シーンノードリンクの書き出し

Parameters:
sceneNode 書き出すシーンノード

Definition at line 847 of file TextSceneSaver.cpp.

References Assert, Lamp::SceneObject::getName(), Lamp::SceneNode::getSceneLeaf(), Lamp::SceneNode::getSceneLeafCount(), Lamp::SceneNode::getSceneNode(), Lamp::SceneNode::getSceneNodeCount(), Lamp::SceneObject::isLight(), Lamp::SceneObject::isModel(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeLink().

void Lamp::TextSceneSaver::writeStandardModel StandardModel model  )  [protected, virtual]
 

標準モデルの書き出し

Parameters:
model 書き出すモデル

Definition at line 460 of file TextSceneSaver.cpp.

References Lamp::SceneObject::getName(), Lamp::SceneLeaf::isEnabled(), writeBool(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeModelList().

void Lamp::TextSceneSaver::writeSurfaceTexture const SurfaceTexture texture  )  [protected, virtual]
 

サーフェーステクスチャの書き出し

Parameters:
texture 書き出すテクスチャ

Definition at line 790 of file TextSceneSaver.cpp.

References Lamp::SurfaceTexture::getAddressModeU(), Lamp::SurfaceTexture::getAddressModeV(), Lamp::SceneObject::getName(), Lamp::SurfaceTexture::getOffsetUV(), Lamp::SurfaceTexture::getRepeatUV(), Lamp::TexCoord2::u, Lamp::TexCoord2::v, Lamp::TextWriter::writeFormat(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeTextureList().

void Lamp::TextSceneSaver::writeTextureLink const Texture texture  )  [protected, virtual]
 

テクスチャリンクの書き出し

Parameters:
texture 書き出すテクスチャ

Definition at line 977 of file TextSceneSaver.cpp.

References Lamp::SceneObject::getName(), Lamp::Texture::getPicture(), Lamp::Texture::getPictureCount(), writer_, and Lamp::TextWriter::writeText().

Referenced by writeLink().


The documentation for this class was generated from the following files:
Generated on Wed Mar 16 10:29:53 2005 for Lamp by doxygen 1.3.2