thug/Code/Gfx/NGPS/p_NxScene.h

60 lines
1.8 KiB
C
Raw Normal View History

2016-02-13 21:39:12 +00:00
///////////////////////////////////////////////////////////////////////////////
// p_NxScene.h
#ifndef __GFX_P_NX_SCENE_H__
#define __GFX_P_NX_SCENE_H__
#include "Gfx/nxscene.h"
namespace NxPs2
{
class CGeomNode;
}
namespace Nx
{
/////////////////////////////////////////////////////////////////////////////////////
// Private classes
//
// Here's a machine specific implementation of the CScene
class CPs2Scene : public CScene
{
public:
CPs2Scene();
virtual ~CPs2Scene();
NxPs2::CGeomNode * GetEngineScene() const;
void SetEngineScene(NxPs2::CGeomNode *p_scene);
NxPs2::CGeomNode * GetEngineAddScene() const;
void SetEngineAddScene(NxPs2::CGeomNode *p_scene);
NxPs2::CGeomNode * GetEngineCloneScene() const;
void SetEngineCloneScene(NxPs2::CGeomNode *p_scene);
private:
virtual void plat_post_load();
virtual void plat_post_add();
virtual bool plat_load_textures(const char *p_name); // load textures
virtual bool plat_load_collision(const char *p_name); // load collision data
virtual bool plat_add_collision(const char *p_name); // add collision data
virtual bool plat_unload_add_scene(); // unloads previous add scene
virtual CSector * plat_create_sector(); // empty sector
virtual void plat_set_majority_color(Image::RGBA rgba); // set the most common sector color
virtual Image::RGBA plat_get_majority_color() const; // get the most common sector color
void create_sectors(NxPs2::CGeomNode *p_node);
void add_sectors(NxPs2::CGeomNode *p_node);
void delete_sectors(NxPs2::CGeomNode *p_node);
NxPs2::CGeomNode * mp_plat_scene; // Platform-dependent data
NxPs2::CGeomNode * mp_plat_clone_scene;
NxPs2::CGeomNode * mp_plat_add_scene;
};
} // Namespace Nx
#endif