00001
00002
00003
00004
00005 #pragma once
00006 #ifndef __C_NUSOFTWARE_INTRO_SCENE_NODE_H__
00007 #define __C_NUSOFTWARE_INTRO_SCENE_NODE_H__
00008
00009 #include "NUS.hpp"
00010 #include "Irrlicht/irrlicht.h"
00011
00012 using namespace nge::core;
00013 using namespace irr;
00014 using namespace irr::core;
00015 using namespace irr::gui;
00016 using namespace irr::io;
00017 using namespace irr::scene;
00018 using namespace irr::video;
00019
00020 namespace nge
00021 {
00022 namespace game
00023 {
00024
00025 class NUSoftwareIntroSceneNode : public IMeshSceneNode
00026 {
00027 public:
00028 NUSoftwareIntroSceneNode(IGUIEnvironment* guiEnv, ISceneNode* parent, ISceneManager* smgr,
00029 s32 id = -1,
00030 vector3df pos = vector3df(0.f,0.f,0.f),
00031 vector3df rot = vector3df(-90.f,0.f,0.f),
00032 vector3df scale = vector3df(15.f,15.f,15.f));
00033
00035 virtual ~NUSoftwareIntroSceneNode() {}
00036
00037 ISceneManager* getSceneManager();
00038
00039 virtual void setMesh(IMesh* mesh);
00040
00041 virtual IMesh* getMesh(void);
00042
00043 virtual void setReadOnlyMaterials(bool readonly);
00044
00045 virtual bool isReadOnlyMaterials() const;
00046
00047 virtual void OnRegisterSceneNode();
00048
00049 virtual void render();
00050
00051 virtual const aabbox3d<f32>& getBoundingBox() const;
00052
00053 virtual void setMaterialFlag(video::E_MATERIAL_FLAG flag, bool newvalue);
00054
00055 private:
00056 IGUIEnvironment* m_pGUIEnv;
00057 IMeshSceneNode* m_pSceneNode;
00058 };
00059
00060 }
00061 }
00062
00063 #endif // __C_NUSOFTWARE_INTRO_SCENE_NODE_H__