1 // Copyright (C) 2002-2012 Nikolaus Gebhardt
\r
2 // This file is part of the "Irrlicht Engine".
\r
3 // For conditions of distribution and use, see copyright notice in irrlicht.h
\r
4 // Code for this scene node has been contributed by Anders la Cour-Harbo (alc)
\r
6 #ifndef __C_SKY_DOME_SCENE_NODE_H_INCLUDED__
\r
7 #define __C_SKY_DOME_SCENE_NODE_H_INCLUDED__
\r
9 #include "ISceneNode.h"
\r
10 #include "SMeshBuffer.h"
\r
17 class CSkyDomeSceneNode : public ISceneNode
\r
20 CSkyDomeSceneNode(video::ITexture* texture, u32 horiRes, u32 vertRes,
\r
21 f32 texturePercentage, f32 spherePercentage, f32 radius,
\r
22 ISceneNode* parent, ISceneManager* smgr, s32 id);
\r
23 virtual ~CSkyDomeSceneNode();
\r
24 virtual void OnRegisterSceneNode() _IRR_OVERRIDE_;
\r
25 virtual void render() _IRR_OVERRIDE_;
\r
26 virtual const core::aabbox3d<f32>& getBoundingBox() const _IRR_OVERRIDE_;
\r
27 virtual video::SMaterial& getMaterial(u32 i) _IRR_OVERRIDE_;
\r
28 virtual u32 getMaterialCount() const _IRR_OVERRIDE_;
\r
29 virtual ESCENE_NODE_TYPE getType() const _IRR_OVERRIDE_ { return ESNT_SKY_DOME; }
\r
31 virtual void serializeAttributes(io::IAttributes* out, io::SAttributeReadWriteOptions* options) const _IRR_OVERRIDE_;
\r
32 virtual void deserializeAttributes(io::IAttributes* in, io::SAttributeReadWriteOptions* options) _IRR_OVERRIDE_;
\r
33 virtual ISceneNode* clone(ISceneNode* newParent=0, ISceneManager* newManager=0) _IRR_OVERRIDE_;
\r
37 void generateMesh();
\r
39 SMeshBuffer* Buffer;
\r
41 u32 HorizontalResolution, VerticalResolution;
\r
42 f32 TexturePercentage, SpherePercentage, Radius;
\r