#include <BinarySceneSaver.h>
Public Member Functions | |
| BinarySceneSaver () | |
| コンストラクタ | |
| virtual | ~BinarySceneSaver () |
| デストラクタ | |
| virtual void | save (const String &filePath, Scene *scene) |
| セーブ | |
| virtual void | save (BinaryWriter *binaryWriter, Scene *scene, const String &basePath="") |
| セーブ | |
Protected Member Functions | |
| virtual void | writeHeader () |
| ヘッダの書き出し | |
| virtual int | writeObjectList () |
| オブジェクトリストの書き出し | |
| virtual void | writeLink (int linkCount) |
| リンクの書き出し | |
| 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 (CharacterModel *model, 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 | writeString (const String &string) |
| 文字列の書き出し | |
| virtual void | writeVector3 (const Vector3 &vector) |
| 三次元ベクトルの書き出し | |
| virtual void | writeMatrix34 (const Matrix34 &matrix) |
| 3×4行列の書き出し | |
| virtual void | writeColor4c (const Color4c &color) |
| 四要素整数カラー値の書き出し | |
| virtual void | writeColor3f (const Color3f &color) |
| 三要素実数カラー値の書き出し | |
| virtual void | writeColor4f (const Color4f &color) |
| 四要素実数カラー値の書き出し | |
| virtual void | writeTexCoord2 (const TexCoord2 &uv) |
| 二次元テクスチャ座標値の書き出し | |
| virtual void | writeAxisAlignedBox (const AxisAlignedBox &box) |
| 軸沿いボックスの書き出し | |
| virtual void | writeSphere (const Sphere &sphere) |
| 球の書き出し | |
| virtual void | align () |
| アライメントを取る | |
| virtual void | writeID (const String &id) |
| IDの書き出し. | |
| virtual int | startBlock (const String &blockName) |
| ブロックの開始 | |
| virtual void | endBlock (int blockStartAddress) |
| ブロックの終了 | |
Protected Attributes | |
| BinaryWriter * | writer_ |
| ライタ | |
| String | basePath_ |
| ベースパス | |
| Scene * | scene_ |
| シーン | |
| SceneNodeManager * | sceneNodeManager_ |
| シーンノードマネージャ | |
| LightManager * | lightManager_ |
| ライトマネージャ | |
| ModelManager * | modelManager_ |
| モデルマネージャ | |
| MeshManager * | meshManager_ |
| メッシュマネージャ | |
| MeshDataManager * | meshDataManager_ |
| メッシュデータマネージャ | |
| MaterialManager * | materialManager_ |
| マテリアルマネージャ | |
| TextureManager * | textureManager_ |
| テクスチャマネージャ | |
| PictureManager * | pictureManager_ |
| ピクチャマネージャ | |
Definition at line 66 of file BinarySceneSaver.h.
|
|
ブロックの終了
Definition at line 901 of file BinarySceneSaver.cpp. References align(), Lamp::Writer::getPosition(), Lamp::Writer::setPosition(), Lamp::BinaryWriter::writeInt(), and writer_. Referenced by writeAmbientLight(), writeBasicMaterial(), writeBasicMaterialLink(), writeCharacterMesh(), writeCharacterModel(), writeDirectionalLight(), writeFog(), writeLightList(), writeLink(), writeLODSceneNode(), writeMaterialLinkList(), writeMaterialList(), writeMeshDataList(), writeMeshList(), writeModelList(), writeObjectList(), writePointLight(), writeRigidMesh(), writeSceneNode(), writeSceneNodeList(), writeStandardModel(), writeSurfaceTexture(), and writeTextureList(). |
|
||||||||||||||||
|
セーブ
Definition at line 62 of file BinarySceneSaver.cpp. References basePath_, lightManager_, materialManager_, meshDataManager_, meshManager_, modelManager_, pictureManager_, scene_, sceneNodeManager_, textureManager_, writeHeader(), writeLink(), writeObjectList(), and writer_. |
|
||||||||||||
|
セーブ
Definition at line 54 of file BinarySceneSaver.cpp. References Lamp::FilePath::getFolderPath(). |
|
|
ブロックの開始
Definition at line 891 of file BinarySceneSaver.cpp. References align(), Lamp::Writer::getPosition(), u_int, writeID(), Lamp::BinaryWriter::writeInt(), and writer_. Referenced by writeAmbientLight(), writeBasicMaterial(), writeBasicMaterialLink(), writeCharacterMesh(), writeCharacterModel(), writeDirectionalLight(), writeFog(), writeLightList(), writeLink(), writeLODSceneNode(), writeMaterialLinkList(), writeMaterialList(), writeMeshDataList(), writeMeshList(), writeModelList(), writeObjectList(), writePointLight(), writeRigidMesh(), writeSceneNode(), writeSceneNodeList(), writeStandardModel(), writeSurfaceTexture(), and writeTextureList(). |
|
|
アンビエントライトの書き出し
Definition at line 310 of file BinarySceneSaver.cpp. References endBlock(), Lamp::AmbientLight::getColor(), Lamp::SceneObject::getName(), startBlock(), writeColor3f(), writeLight(), and writeString(). Referenced by writeLightList(). |
|
|
軸沿いボックスの書き出し
Definition at line 864 of file BinarySceneSaver.cpp. References Lamp::Writer::writeBytes(), and writer_. Referenced by writeMeshData(). |
|
|
基本マテリアルの書き出し
Definition at line 602 of file BinarySceneSaver.cpp. References align(), endBlock(), Lamp::BasicMaterial::getAmbientColor(), Lamp::BasicMaterial::getBaseUVIndex(), Lamp::BasicMaterial::getDiffuseColor(), Lamp::BasicMaterial::getEmissiveColor(), Lamp::BasicMaterial::getGlossUVIndex(), Lamp::BasicMaterial::getLightUVIndex(), Lamp::BasicMaterial::getSpecularColor(), Lamp::BasicMaterial::getSpecularPower(), Lamp::BasicMaterial::getStainUVIndex(), startBlock(), writeColor3f(), Lamp::BinaryWriter::writeFloat(), Lamp::BinaryWriter::writeInt(), writeMaterial(), and writer_. Referenced by writeMaterialList(). |
|
|
基本マテリアルリンクの書き出し
Definition at line 779 of file BinarySceneSaver.cpp. References align(), endBlock(), Lamp::BasicMaterial::getBaseTexture(), Lamp::BasicMaterial::getGlossTexture(), Lamp::BasicMaterial::getLightTexture(), Lamp::SceneObject::getName(), Lamp::BasicMaterial::getStainTexture(), NULL, startBlock(), Lamp::BinaryWriter::writeBool(), writer_, and writeString(). Referenced by writeMaterialLinkList(). |
|
|
ボーンの書き出し
Definition at line 410 of file BinarySceneSaver.cpp. References Lamp::Bone::getInversePoseMatrix(), Lamp::Bone::getName(), Lamp::Bone::getRotationXYZ(), Lamp::Bone::getScale(), Lamp::Bone::getTranslation(), writeMatrix34(), writeString(), and writeVector3(). Referenced by writeCharacterModel(). |
|
||||||||||||
|
ボーンリンクの書き出し
Definition at line 424 of file BinarySceneSaver.cpp. References Lamp::Bone::getBone(), Lamp::Bone::getBoneCount(), Lamp::CharacterModel::getBoneIndex(), Lamp::BinaryWriter::writeInt(), and writer_. Referenced by writeCharacterModel(). |
|
|
キャラクタメッシュの書き出し
Definition at line 463 of file BinarySceneSaver.cpp. References endBlock(), Lamp::SceneObject::getName(), Lamp::Mesh::isEnabled(), startBlock(), Lamp::BinaryWriter::writeBool(), writer_, and writeString(). Referenced by writeMeshList(). |
|
|
キャラクタモデルの書き出し
Definition at line 390 of file BinarySceneSaver.cpp. References align(), endBlock(), Lamp::CharacterModel::getBone(), Lamp::CharacterModel::getBoneCount(), Lamp::SceneObject::getName(), Lamp::SceneLeaf::isEnabled(), startBlock(), writeBone(), writeBoneLink(), Lamp::BinaryWriter::writeBool(), Lamp::BinaryWriter::writeInt(), writer_, and writeString(). Referenced by writeModelList(). |
|
|
三要素実数カラー値の書き出し
Definition at line 849 of file BinarySceneSaver.cpp. References Lamp::Color3f::array, Lamp::Writer::writeBytes(), and writer_. Referenced by writeAmbientLight(), writeBasicMaterial(), writeDirectionalLight(), and writePointLight(). |
|
|
四要素整数カラー値の書き出し
Definition at line 844 of file BinarySceneSaver.cpp. References Lamp::Color4c::array, Lamp::Writer::writeBytes(), and writer_. Referenced by writeFog(). |
|
|
四要素実数カラー値の書き出し
Definition at line 854 of file BinarySceneSaver.cpp. References Lamp::Color4f::array, Lamp::Writer::writeBytes(), and writer_. |
|
|
ディレクショナルライトの書き出し
Definition at line 322 of file BinarySceneSaver.cpp. References endBlock(), Lamp::DirectionalLight::getDiffuseColor(), Lamp::DirectionalLight::getDirection(), Lamp::SceneObject::getName(), Lamp::DirectionalLight::getSpecularColor(), startBlock(), writeColor3f(), writeLight(), writeString(), and writeVector3(). Referenced by writeLightList(). |
|
|
フォグの書き出し
Definition at line 206 of file BinarySceneSaver.cpp. References endBlock(), Lamp::Fog::getColor(), Lamp::Fog::getDensity(), Lamp::Fog::getFar(), Lamp::Fog::getMode(), Lamp::Fog::getNear(), Lamp::Fog::isEnabled(), startBlock(), Lamp::BinaryWriter::writeBool(), writeColor4c(), Lamp::BinaryWriter::writeFloat(), Lamp::BinaryWriter::writeInt(), and writer_. Referenced by writeObjectList(). |
|
|
IDの書き出し.
Definition at line 881 of file BinarySceneSaver.cpp. References Assert, Lamp::String::charAt(), Lamp::String::getSize(), u_char, Lamp::Writer::writeBytes(), and writer_. Referenced by startBlock(), and writeHeader(). |
|
|
ライトの書き出し
Definition at line 302 of file BinarySceneSaver.cpp. References Lamp::Light::getLightMask(), Lamp::SceneLeaf::isEnabled(), Lamp::BinaryWriter::writeBool(), writer_, and Lamp::BinaryWriter::writeUInt(). Referenced by writeAmbientLight(), writeDirectionalLight(), and writePointLight(). |
|
|
|
レベルオブディティールシーンノードの書き出し
Definition at line 258 of file BinarySceneSaver.cpp. References endBlock(), Lamp::LODSceneNode::getLODThreshold(), Lamp::LODSceneNode::getLODThresholdCount(), Lamp::SceneObject::getName(), Lamp::SceneNode::getRotationXYZ(), Lamp::SceneNode::getScale(), Lamp::SceneNode::getTranslation(), Lamp::SceneNode::isEnabled(), startBlock(), Lamp::BinaryWriter::writeBool(), Lamp::BinaryWriter::writeFloat(), Lamp::BinaryWriter::writeInt(), writer_, writeString(), and writeVector3(). Referenced by writeSceneNodeList(). |
|
|
マテリアルの書き出し
Definition at line 576 of file BinarySceneSaver.cpp. References align(), Lamp::Material::getAlpha(), Lamp::Material::getBlendDestination(), Lamp::Material::getBlendMode(), Lamp::Material::getBlendSource(), Lamp::Material::getFogOption(), Lamp::Material::getLightMask(), Lamp::SceneObject::getName(), Lamp::Material::getPriority(), Lamp::Material::useZTest(), Lamp::Material::useZWrite(), Lamp::BinaryWriter::writeBool(), Lamp::BinaryWriter::writeFloat(), Lamp::BinaryWriter::writeInt(), writer_, writeString(), and Lamp::BinaryWriter::writeUInt(). Referenced by writeBasicMaterial(). |
|
|
3×4行列の書き出し
Definition at line 839 of file BinarySceneSaver.cpp. References Lamp::Matrix34::array, Lamp::Writer::writeBytes(), and writer_. Referenced by writeBone(). |
|
|
メッシュデータの書き出し
Definition at line 485 of file BinarySceneSaver.cpp. References align(), Lamp::MeshData::getBoneIndexArray(), Lamp::MeshData::getBonesPerVertex(), Lamp::MeshData::getBoundingBox(), Lamp::MeshData::getBoundingSphere(), Lamp::MeshData::getColorArray(), Lamp::SceneObject::getName(), Lamp::MeshData::getNormalArray(), Lamp::MeshData::getPositionArray(), Lamp::MeshData::getPrimitiveType(), Lamp::MeshData::getTexCoordArray(), Lamp::MeshData::getTexCoordArraySize(), Lamp::MeshData::getTexCoordSetCount(), Lamp::MeshData::getTexCoordType(), Lamp::MeshData::getVertexCount(), Lamp::MeshData::getVertexIndexArray(), Lamp::MeshData::getVertexIndexCount(), Lamp::MeshData::getWeightArray(), Lamp::MeshData::getWeightsPerVertex(), Lamp::MeshData::hasColor(), Lamp::MeshData::hasNormal(), u_char, u_short, writeAxisAlignedBox(), Lamp::BinaryWriter::writeBool(), Lamp::Writer::writeBytes(), Lamp::BinaryWriter::writeInt(), writer_, writeSphere(), and writeString(). Referenced by writeMeshDataList(). |
|
|
メッシュリンクの書き出し
Definition at line 744 of file BinarySceneSaver.cpp. References align(), Lamp::Mesh::getMaterial(), Lamp::Mesh::getMeshData(), Lamp::SceneObject::getName(), NULL, Lamp::BinaryWriter::writeBool(), writer_, and writeString(). Referenced by writeLink(). |
|
|
モデルリンクの書き出し
Definition at line 730 of file BinarySceneSaver.cpp. References Lamp::Model::getMesh(), Lamp::Model::getMeshCount(), Lamp::SceneObject::getName(), Lamp::BinaryWriter::writeInt(), writer_, and writeString(). Referenced by writeLink(). |
|
|
オブジェクトリストの書き出し
Definition at line 98 of file BinarySceneSaver.cpp. References endBlock(), 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_, startBlock(), textureManager_, writeFog(), writeLightList(), writeMaterialList(), writeMeshDataList(), writeMeshList(), writeModelList(), writePicture(), writeSceneNodeList(), and writeTextureList(). Referenced by save(). |
|
|
ピクチャの書き出し
Definition at line 666 of file BinarySceneSaver.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(), and writeString(). Referenced by writeObjectList(). |
|
|
ポイントライトの書き出し
Definition at line 338 of file BinarySceneSaver.cpp. References endBlock(), Lamp::PointLight::getAttenuation0(), Lamp::PointLight::getAttenuation1(), Lamp::PointLight::getAttenuation2(), Lamp::PointLight::getDiffuseColor(), Lamp::SceneObject::getName(), Lamp::PointLight::getPosition(), Lamp::PointLight::getRange(), Lamp::PointLight::getSpecularColor(), startBlock(), writeColor3f(), Lamp::BinaryWriter::writeFloat(), writeLight(), writer_, writeString(), and writeVector3(). Referenced by writeLightList(). |
|
|
剛体メッシュの書き出し
Definition at line 453 of file BinarySceneSaver.cpp. References endBlock(), Lamp::SceneObject::getName(), Lamp::Mesh::isEnabled(), startBlock(), Lamp::BinaryWriter::writeBool(), writer_, and writeString(). Referenced by writeMeshList(). |
|
|
シーンノードの書き出し
Definition at line 242 of file BinarySceneSaver.cpp. References endBlock(), Lamp::SceneObject::getName(), Lamp::SceneNode::getRotationXYZ(), Lamp::SceneNode::getScale(), Lamp::SceneNode::getTranslation(), Lamp::SceneNode::isEnabled(), startBlock(), Lamp::BinaryWriter::writeBool(), writer_, writeString(), and writeVector3(). Referenced by writeSceneNodeList(). |
|
|
シーンノードリンクの書き出し
Definition at line 700 of file BinarySceneSaver.cpp. References Assert, Lamp::SceneObject::getName(), Lamp::SceneNode::getSceneLeaf(), Lamp::SceneNode::getSceneLeafCount(), Lamp::SceneNode::getSceneNode(), Lamp::SceneNode::getSceneNodeCount(), Lamp::SceneObject::isLight(), Lamp::SceneObject::isModel(), Lamp::BinaryWriter::writeInt(), writer_, and writeString(). Referenced by writeLink(). |
|
|
球の書き出し
Definition at line 869 of file BinarySceneSaver.cpp. References Lamp::Writer::writeBytes(), and writer_. Referenced by writeMeshData(). |
|
|
標準モデルの書き出し
Definition at line 380 of file BinarySceneSaver.cpp. References endBlock(), Lamp::SceneObject::getName(), Lamp::SceneLeaf::isEnabled(), startBlock(), Lamp::BinaryWriter::writeBool(), writer_, and writeString(). Referenced by writeModelList(). |
|
|
文字列の書き出し
Definition at line 826 of file BinarySceneSaver.cpp. References align(), Lamp::String::getBytes(), Lamp::String::getSize(), Lamp::Writer::writeBytes(), Lamp::BinaryWriter::writeInt(), and writer_. Referenced by writeAmbientLight(), writeBasicMaterialLink(), writeBone(), writeCharacterMesh(), writeCharacterModel(), writeDirectionalLight(), writeLODSceneNode(), writeMaterial(), writeMeshData(), writeMeshLink(), writeModelLink(), writePicture(), writePointLight(), writeRigidMesh(), writeSceneNode(), writeSceneNodeLink(), writeStandardModel(), writeSurfaceTexture(), and writeTextureLink(). |
|
|
サーフェーステクスチャの書き出し
Definition at line 648 of file BinarySceneSaver.cpp. References endBlock(), Lamp::SurfaceTexture::getAddressModeU(), Lamp::SurfaceTexture::getAddressModeV(), Lamp::SceneObject::getName(), Lamp::SurfaceTexture::getOffsetUV(), Lamp::SurfaceTexture::getRepeatUV(), startBlock(), Lamp::BinaryWriter::writeInt(), writer_, writeString(), and writeTexCoord2(). Referenced by writeTextureList(). |
|
|
二次元テクスチャ座標値の書き出し
Definition at line 859 of file BinarySceneSaver.cpp. References Lamp::TexCoord2::array, Lamp::Writer::writeBytes(), and writer_. Referenced by writeSurfaceTexture(). |
|
|
テクスチャリンクの書き出し
Definition at line 810 of file BinarySceneSaver.cpp. References Lamp::SceneObject::getName(), Lamp::Texture::getPicture(), Lamp::Texture::getPictureCount(), Lamp::BinaryWriter::writeInt(), writer_, and writeString(). Referenced by writeLink(). |
|
|
三次元ベクトルの書き出し
Definition at line 834 of file BinarySceneSaver.cpp. References Lamp::Vector3::array, Lamp::Writer::writeBytes(), and writer_. Referenced by writeBone(), writeDirectionalLight(), writeLODSceneNode(), writePointLight(), and writeSceneNode(). |
1.3.2