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

Lamp::Scene Class Reference

シーン More...

#include <Scene.h>

Inheritance diagram for Lamp::Scene:

Lamp::GraphicsDeviceObjectHolder List of all members.

Public Member Functions

virtual int clear ()
 クリア

virtual void traverse ()
 走査

virtual void getMeshList (ArrayList< Mesh * > *meshList, Camera *camera)
 メッシュリストの取得

virtual void getLocalLightList (Mesh *mesh, DrawRequest *drawRequest)
 ローカルライトリストの取得

virtual const String & getName () const
 名前の取得

virtual SceneNode * getRootNode ()
 ルートノードの取得

virtual void setCurrentCamera (Camera *currentCamera)
 カレントカメラの設定

virtual Camera * getCurrentCamera ()
 カレントカメラの取得

virtual Fog * getFog ()
 フォグの取得

virtual void setTick (int tick)
 チックの設定

virtual int getTick () const
 チックの取得

virtual void setRenamer (Renamer *renamer)
 リネーマの設定

virtual Renamer * getRenamer () const
 リネーマの取得

virtual bool initializeGraphicsDeviceObjects ()
 デバイスオブジェクトの初期化

virtual void deleteGraphicsDeviceObjects ()
 デバイスオブジェクトの削除

virtual bool restoreGraphicsDeviceObjects ()
 デバイスオブジェクトのリストア

virtual void invalidateGraphicsDeviceObjects ()
 デバイスオブジェクトの無効化

virtual CameraManager * getCameraManager ()
 カメラマネージャの取得

virtual SceneNodeManager * getSceneNodeManager ()
 シーンノードマネージャの取得

virtual LightManager * getLightManager ()
 ライトマネージャの取得

virtual ModelManager * getModelManager ()
 モデルマネージャの取得

virtual MeshManager * getMeshManager ()
 メッシュマネージャの取得

virtual MeshDataManager * getMeshDataManager ()
 メッシュデータマネージャの取得

virtual MaterialManager * getMaterialManager ()
 マテリアルマネージャの取得

virtual TextureManager * getTextureManager ()
 テクスチャマネージャの取得

virtual PictureManager * getPictureManager ()
 ピクチャマネージャの取得


Protected Member Functions

 Scene (const String &name)
 コンストラクタ

virtual ~Scene ()
 デストラクタ


Friends

class LampGraphics

Detailed Description

シーン

Definition at line 54 of file Scene.h.


Constructor & Destructor Documentation

Lamp::Scene::Scene (  const String &  name  )  [protected]
 

コンストラクタ

Parameters:
name 名前

Definition at line 44 of file Scene.cpp.

References Lamp::SceneNodeManager::createSceneNode(), and NULL.


Member Function Documentation

int Lamp::Scene::clear (   )  [virtual]
 

クリア

強制的にシーン内の全オブジェクトを破棄します

Returns:
削除したオブジェクト数

Definition at line 85 of file Scene.cpp.

References Lamp::SceneObjectManagerTemplate< Camera >::clear(), Lamp::SceneObjectManagerTemplate< Light >::clear(), Lamp::SceneObjectManagerTemplate< Model >::clear(), Lamp::SceneNodeManager::clear(), Lamp::SceneObjectManagerTemplate< Mesh >::clear(), Lamp::SceneObjectManagerTemplate< MeshData >::clear(), Lamp::SceneObjectManagerTemplate< Material >::clear(), Lamp::SceneObjectManagerTemplate< Texture >::clear(), and Lamp::SceneObjectManagerTemplate< Picture >::clear().

Referenced by Lamp::SceneFramework::clearScene(), and Lamp::SceneFramework::frameworkFinalize().

virtual CameraManager* Lamp::Scene::getCameraManager (   )  [inline, virtual]
 

カメラマネージャの取得

Returns:
カメラマネージャ

Definition at line 178 of file Scene.h.

Referenced by Lamp::CameraAnimation::bind(), Lamp::SceneFramework::clearScene(), Lamp::Camera::copy(), and Lamp::SceneFramework::frameworkInitialize().

virtual Camera* Lamp::Scene::getCurrentCamera (   )  [inline, virtual]
 

カレントカメラの取得

Returns:
カレントカメラ

Definition at line 113 of file Scene.h.

Referenced by Lamp::Renderer::buildMeshList(), Lamp::Renderer::initializeDrawRequest(), Lamp::InformationRenderer::renderingSetup(), and Lamp::SceneNode::traverse().

virtual Fog* Lamp::Scene::getFog (   )  [inline, virtual]
 

フォグの取得

Returns:
フォグ

Definition at line 120 of file Scene.h.

Referenced by Lamp::Renderer::initializeDrawRequest(), Lamp::SceneFramework::loadScene(), Lamp::TextSceneLoader::readFog(), Lamp::BinarySceneLoader::readFog(), Lamp::TextSceneSaver::writeObjectList(), and Lamp::BinarySceneSaver::writeObjectList().

virtual LightManager* Lamp::Scene::getLightManager (   )  [inline, virtual]
 

ライトマネージャの取得

Returns:
ライトマネージャ

Definition at line 192 of file Scene.h.

Referenced by Lamp::AmbientLight::copyAmbientLight(), Lamp::DirectionalLight::copyDirectionalLight(), Lamp::PointLight::copyPointLight(), Lamp::Light::destroy(), and Lamp::Renderer::initializeDrawRequest().

void Lamp::Scene::getLocalLightList (  Mesh *  mesh,
DrawRequest *  drawRequest
)  [virtual]
 

ローカルライトリストの取得

Parameters:
mesh メッシュ
drawRequest 描画リクエスト

Definition at line 132 of file Scene.cpp.

References Lamp::DrawRequest::addLocalLight(), Lamp::Light::castPointLight(), ErrorOut, Lamp::SceneObjectManagerTemplate< Light >::get(), Lamp::Sphere::getCenter(), Lamp::SceneObjectManagerTemplate< Light >::getCount(), Lamp::Light::getLightMask(), Lamp::Material::getLightMask(), Lamp::DrawRequest::getMaterial(), Lamp::Sphere::getRadius(), Lamp::PointLight::getRange(), Lamp::Mesh::getWorldBoundingBox(), Lamp::Mesh::getWorldBoundingSphere(), Lamp::PointLight::getWorldPosition(), Lamp::AxisAlignedBox::intersect(), Lamp::SceneLeaf::isGlobalEnabled(), Lamp::Light::isLocalLight(), Lamp::Light::isPointLight(), and u_int.

Referenced by Lamp::Renderer::rendering().

virtual MaterialManager* Lamp::Scene::getMaterialManager (   )  [inline, virtual]
 

マテリアルマネージャの取得

Returns:
マテリアルマネージャ

Definition at line 216 of file Scene.h.

Referenced by Lamp::BasicMaterial::copyBasicMaterial(), and Lamp::Material::recursiveDestroy().

virtual MeshDataManager* Lamp::Scene::getMeshDataManager (   )  [inline, virtual]
 

メッシュデータマネージャの取得

Returns:
メッシュデータマネージャ

Definition at line 210 of file Scene.h.

Referenced by Lamp::MeshData::copy(), Lamp::MeshData::destroy(), and Lamp::SceneFramework::loadScene().

void Lamp::Scene::getMeshList (  ArrayList< Mesh * > *  meshList,
Camera *  camera
)  [virtual]
 

メッシュリストの取得

Parameters:
meshList メッシュリスト
camera 刈り込むカメラ

Definition at line 108 of file Scene.cpp.

References Lamp::ArrayList< Type >::add(), Assert, Lamp::Camera::clipping(), Lamp::SceneObjectManagerTemplate< Mesh >::get(), Lamp::SceneObjectManagerTemplate< Mesh >::getCount(), Lamp::Mesh::getMaterial(), Lamp::Mesh::getMeshData(), Lamp::Mesh::getWorldBoundingBox(), Lamp::Mesh::getWorldBoundingSphere(), Lamp::Mesh::isGlobalEnabled(), and NULL.

Referenced by Lamp::Renderer::buildMeshList(), and Lamp::InformationRenderer::renderingSetup().

virtual MeshManager* Lamp::Scene::getMeshManager (   )  [inline, virtual]
 

メッシュマネージャの取得

Returns:
メッシュマネージャ

Definition at line 204 of file Scene.h.

Referenced by Lamp::CharacterMesh::copyCharacterMesh(), Lamp::RigidMesh::copyRigidMesh(), and Lamp::Mesh::recursiveDestroy().

virtual ModelManager* Lamp::Scene::getModelManager (   )  [inline, virtual]
 

モデルマネージャの取得

Returns:
モデルマネージャ

Definition at line 198 of file Scene.h.

Referenced by Lamp::CharacterModelAnimation::bind(), Lamp::CharacterModel::copyCharacterModel(), Lamp::StandardModel::copyStandardModel(), and Lamp::Model::recursiveDestroy().

virtual const String& Lamp::Scene::getName (   )  const [inline, virtual]
 

名前の取得

Returns:
名前

Definition at line 91 of file Scene.h.

Referenced by Lamp::LampGraphics::destroyScene().

virtual PictureManager* Lamp::Scene::getPictureManager (   )  [inline, virtual]
 

ピクチャマネージャの取得

Returns:
ピクチャマネージャ

Definition at line 228 of file Scene.h.

Referenced by Lamp::PictureRGB8::copyPictureRGB8(), Lamp::PictureRGBA8::copyPictureRGBA8(), and Lamp::Picture::destroy().

virtual Renamer* Lamp::Scene::getRenamer (   )  const [inline, virtual]
 

リネーマの取得

Returns:
リネーマ

Definition at line 148 of file Scene.h.

Referenced by Lamp::SceneObjectManagerTemplate< Mesh >::rename().

virtual SceneNode* Lamp::Scene::getRootNode (   )  [inline, virtual]
 

ルートノードの取得

Returns:
ルートノード

Definition at line 98 of file Scene.h.

Referenced by Lamp::CollisionConverter::convert(), Lamp::TextSceneLoader::load(), Lamp::BinarySceneLoader::load(), and Lamp::SceneNode::recursiveDestroy().

virtual SceneNodeManager* Lamp::Scene::getSceneNodeManager (   )  [inline, virtual]
 

シーンノードマネージャの取得

Returns:
シーンノードマネージャ

Definition at line 184 of file Scene.h.

Referenced by Lamp::SceneNodeAnimation::bind(), Lamp::SceneNode::copy(), Lamp::LODSceneNode::copyLODSceneNode(), Lamp::SceneNode::recursiveDestroy(), and Lamp::InformationRenderer::setupAxis().

virtual TextureManager* Lamp::Scene::getTextureManager (   )  [inline, virtual]
 

テクスチャマネージャの取得

Returns:
テクスチャマネージャ

Definition at line 222 of file Scene.h.

Referenced by Lamp::SurfaceTexture::copySurfaceTexture(), and Lamp::Texture::recursiveDestroy().

virtual int Lamp::Scene::getTick (   )  const [inline, virtual]
 

チックの取得

Returns:
チック

Definition at line 133 of file Scene.h.

Referenced by Lamp::CharacterModel::buildBoneMatrix(), Lamp::CharacterModel::buildDeformMatrixArray(), Lamp::CharacterModel::CharacterModel(), Lamp::CharacterModel::getNormalDeformMatrixArray(), and Lamp::CharacterModel::getPositionDeformMatrixArray().

bool Lamp::Scene::initializeGraphicsDeviceObjects (   )  [virtual]
 

デバイスオブジェクトの初期化

Returns:
成功したらtrueを返す

Implements Lamp::GraphicsDeviceObjectHolder.

Definition at line 175 of file Scene.cpp.

References Lamp::PictureManager::initializeGraphicsDeviceObjects(), Lamp::MaterialManager::initializeGraphicsDeviceObjects(), Lamp::MeshDataManager::initializeGraphicsDeviceObjects(), and Lamp::MeshManager::initializeGraphicsDeviceObjects().

bool Lamp::Scene::restoreGraphicsDeviceObjects (   )  [virtual]
 

デバイスオブジェクトのリストア

Returns:
成功したらtrueを返す

Implements Lamp::GraphicsDeviceObjectHolder.

Definition at line 192 of file Scene.cpp.

References Lamp::PictureManager::restoreGraphicsDeviceObjects(), Lamp::MaterialManager::restoreGraphicsDeviceObjects(), Lamp::MeshDataManager::restoreGraphicsDeviceObjects(), and Lamp::MeshManager::restoreGraphicsDeviceObjects().

virtual void Lamp::Scene::setCurrentCamera (  Camera *  currentCamera  )  [inline, virtual]
 

カレントカメラの設定

Parameters:
currentCamera カレントカメラ

Definition at line 105 of file Scene.h.

Referenced by Lamp::SceneFramework::clearScene(), and Lamp::SceneFramework::frameworkInitialize().

void Lamp::Scene::setRenamer (  Renamer *  renamer  )  [virtual]
 

リネーマの設定

Parameters:
renamer 設定するリネーマ

Definition at line 168 of file Scene.cpp.

References Assert, NULL, and SafeDelete.

virtual void Lamp::Scene::setTick (  int  tick  )  [inline, virtual]
 

チックの設定

Parameters:
tick チック

Definition at line 127 of file Scene.h.


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