Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/trunk/src/skysphere.h @ 3454

Last change on this file since 3454 was 3420, checked in by bensch, 20 years ago

orxonox/trunk: skysphere: some new functionality.
now size and texture can be set externaly, but also get a default value:
radius: 200.0
texture: "../data/pictures/sky-replace.jpg"

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 private: 
26  GLUquadricObj *sphereObj; //!< A Placeholder for the SkySphere.
27  Material *skyMaterial;    //!< A Material for the SkySphere.
28  Vector sphereCenter;      //!< Center of the SkySphere.
29  float sphereRadius;       //!< Radius of the SkySphere. This should match the frustum maximum range.
30
31 public:
32  Skysphere();
33  Skysphere(char* fileName);
34  ~Skysphere();
35
36  void setRadius(float radius);
37  void setTexture(char* fileName);
38
39  void updatePosition(Vector sphereCenter);
40  void draw();
41
42 private:
43  void initialize(char* fileName); 
44};
45
46#endif
47
48
Note: See TracBrowser for help on using the repository browser.