Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/branches/levelloader/src/world_entities/skysphere.h @ 3536

Last change on this file since 3536 was 3499, checked in by chris, 20 years ago

orxonox/branches/levelloader: merged updated trunk structure into levelloader branch

File size: 1.1 KB
Line 
1/*!
2    \file skysphere.h
3    \brief Definition of the Skysphere, that handles the Display of an atmosphere of orxonox.
4
5    A SkySphere is always centered at the current working Camera, and will only obey the cameras
6    movment but not its rotation.
7
8    \todo self-rotation
9    \todo handle reference to parent-object
10*/
11
12#ifndef _SKYSPHERE_H
13#define _SKYSPHERE_H
14
15/* INCLUDES */
16#include "p_node.h"
17
18/* FORWARD DEFINITION */
19class Material;
20class Vector;
21
22//! A Class to handle a SkySphere
23class Skysphere : public PNode
24{
25
26 public:
27  Skysphere();
28  Skysphere(char* fileName);
29  ~Skysphere();
30
31  void setRadius(float radius);
32  void setTexture(char* fileName);
33
34  void updatePosition(Vector sphereCenter);
35  void draw();
36
37 private: 
38  GLUquadricObj *sphereObj; //!< A Placeholder for the SkySphere.
39  Material *skyMaterial;    //!< A Material for the SkySphere.
40  Vector sphereCenter;      //!< Center of the SkySphere.
41  float sphereRadius;       //!< Radius of the SkySphere. This should match the frustum maximum range.
42
43
44  void initialize(char* fileName); 
45};
46
47#endif  /* _SKYSPHERE_H */
48
49
50
Note: See TracBrowser for help on using the repository browser.