2 #ifndef __FG_RENDERER_HXX
3 #define __FG_RENDERER_HXX 1
5 #include <simgear/screen/extensions.hxx>
6 #include <simgear/scene/sky/sky.hxx>
8 #define FG_ENABLE_MULTIPASS_CLOUDS 1
13 extern glPointParameterfProc glPointParameterfPtr;
14 extern glPointParameterfvProc glPointParameterfvPtr;
15 extern bool glPointParameterIsSupported;
16 extern bool glPointSpriteIsSupported;
29 static void resize(int width, int height );
31 // calling update( refresh_camera_settings = false ) will not
32 // touch window or camera settings. This is useful for the tiled
33 // renderer which needs to set the view frustum itself.
34 static void update( bool refresh_camera_settings );
35 inline static void update() { update( true ); }
38 /** FlightGear code should use this routine to set the FOV rather
39 * than calling the ssg routine directly
41 static void setFOV( float w, float h );
44 /** FlightGear code should use this routine to set the Near/Far
45 * clip planes rather than calling the ssg routine directly
47 static void setNearFar( float n, float f );
49 /** Get the pick start point and direction in global coordinates.
50 * The inputs are expected to be the x and y coordinates of the
51 * screen point relative to the window.
53 static bool getPickInfo( SGVec3d& p, SGVec3d& d, unsigned x, unsigned y );