- update OsgGraph for sky

git-svn-id: https://svn.code.sf.net/p/speed-dreams/code/trunk@6722 30fe4595-0a0c-4342-8851-515496e4dcbd

Former-commit-id: fe9e47b2314a4c52083f5c66657b894c8fcafe74
Former-commit-id: bb7ba355829a6eb23bc6625859d90f8216650e08
This commit is contained in:
torcs-ng 2019-08-24 09:43:06 +00:00
parent 22f91e9216
commit 2b7215d917
5 changed files with 18 additions and 17 deletions

View file

@ -227,7 +227,7 @@ int refresh(tSituation *s)
double Y = eye[1];
double Z = eye[2];
scenery->reposition(X, Y, Z );
render->UpdateSky(s->currentTime, s->accelTime);
render->UpdateSky(s->currentTime, s->accelTime, X, Y);
screens->update(s, &frameInfo);
//refresh the hud

View file

@ -343,7 +343,7 @@ void SDRender::Init(tTrack *track)
double r_WrldX = scenery->getWorldX();
double r_WrldY = scenery->getWorldY();
//double r_WrldZ = SDScenery::getWorldZ();
osg::Vec3 viewPos(r_WrldX / 2, r_WrldY/ 2, 0.0 );
osg::Vec3d viewPos(r_WrldX / 2, r_WrldY/ 2, 0.0 );
weather();
thesky->set_visibility( SDVisibility ); // Visibility in meters
@ -730,7 +730,7 @@ void SDRender::UpdateFogColor(double angle)
sd_gamma_correct_rgb( BaseFogColor._v );
}
void SDRender::UpdateSky(double currentTime, double accelTime)
void SDRender::UpdateSky(double currentTime, double accelTime, double X, double Y)
{
// Detect first call (in order to initialize "last times").
static bool bInitialized = false;
@ -779,7 +779,8 @@ void SDRender::UpdateSky(double currentTime, double accelTime)
double r_WrldX = scenery->getWorldX();
double r_WrldY = scenery->getWorldY();
osg::Vec3 viewPos(r_WrldX / 2, r_WrldY/ 2, 0.0 );
//osg::Vec3 viewPos(r_WrldX / 2, r_WrldY/ 2, 0.0 );
osg::Vec3d viewPos(X, Y, 0.0 );
thesky->reposition(viewPos, 0, currentTime - lastTimeHighSpeed);
// Now, we are done for high speed objects.

View file

@ -107,7 +107,7 @@ public:
void UpdateLight(void);
void addCars(osg::Node* cars);
void UpdateFogColor(double angle);
void UpdateSky(double currentTime, double accelTime);
void UpdateSky(double currentTime, double accelTime, double X, double Y);
void ShadowedScene(void);
void weather(void);

View file

@ -165,7 +165,7 @@ bool SDSky::repaint( osg::Vec3f& sky_color, osg::Vec3f& fog_color, osg::Vec3f& c
return true;
}
bool SDSky::reposition( osg::Vec3 &view_pos, double spin, /*double gst,*/
bool SDSky::reposition( osg::Vec3d &view_pos, double spin, /*double gst,*/
double dt )
{
double angle;

View file

@ -123,7 +123,7 @@ public:
double moon_angle, int nplanets, osg::Vec3d *planet_data,
int nstars, osg::Vec3d *star_data);
bool reposition(osg::Vec3 &view_pos, double spin, /*double gst,*/ double dt);
bool reposition(osg::Vec3d &view_pos, double spin, /*double gst,*/ double dt);
void modify_vis( float alt, float time_factor );