mirror of
https://github.com/overte-org/overte.git
synced 2025-04-21 18:44:00 +02:00
straightens data pipeline and several bugs after exhaustive testing
This commit is contained in:
parent
0b183cf7a0
commit
df7f3942e1
3 changed files with 636 additions and 399 deletions
File diff suppressed because it is too large
Load diff
|
@ -43,14 +43,14 @@ class Stars
|
|||
* The parameter determines the number of tiles in azimuthal
|
||||
* and altitudinal directions.
|
||||
*
|
||||
* GPU resources are updated upon change.
|
||||
* GPU resources are updated upon change in which case 'true'
|
||||
* is returned.
|
||||
*/
|
||||
void setResolution(unsigned k);
|
||||
bool setResolution(unsigned k);
|
||||
|
||||
/**
|
||||
* Allows to reduce the number of stars to be rendered given a
|
||||
* fractional LOD value. The least brightest ones are omitted
|
||||
* first.
|
||||
* Allows to alter the number of stars to be rendered given a
|
||||
* factor. The least brightest ones are omitted first.
|
||||
*
|
||||
* The further parameters determine when GPU resources should
|
||||
* be reallocated. Its value is fractional in respect to the
|
||||
|
@ -61,8 +61,10 @@ class Stars
|
|||
* are updated. Note that all parameters must be fractions,
|
||||
* that is within the range [0;1] and that 'overalloc' must be
|
||||
* greater than or equal to 'realloc'.
|
||||
*
|
||||
* The current level of detail is returned as a float in [0;1].
|
||||
*/
|
||||
void setLOD(float fraction,
|
||||
float changeLOD(float factor,
|
||||
float overalloc = 0.25, float realloc = 0.15);
|
||||
|
||||
private:
|
||||
|
|
|
@ -102,6 +102,8 @@ Head myHead; // The rendered head of oneself
|
|||
FieldOfView fov;
|
||||
|
||||
Stars stars;
|
||||
int stars_tiles = 20;
|
||||
double stars_lod = 1.0;
|
||||
|
||||
glm::vec3 box(WORLD_SIZE,WORLD_SIZE,WORLD_SIZE);
|
||||
ParticleSystem balls(0,
|
||||
|
@ -768,8 +770,15 @@ void key(unsigned char k, int x, int y)
|
|||
if (k == ' ') reset_sensors();
|
||||
if (k == 'a') render_yaw_rate -= KEYBOARD_YAW_RATE;
|
||||
if (k == 'd') render_yaw_rate += KEYBOARD_YAW_RATE;
|
||||
// >> tosh (for testing starfield)
|
||||
if (k == 't') render_pitch_rate += KEYBOARD_PITCH_RATE;
|
||||
if (k == 'g') render_pitch_rate -= KEYBOARD_PITCH_RATE;
|
||||
if (k == 'u') stars.setResolution(stars_tiles += 1);
|
||||
if (k == 'j') stars.setResolution(stars_tiles = max(stars_tiles-1,1));
|
||||
if (k == 'i') if (stars_lod < 1.0) stars_lod = stars.changeLOD(1.01);
|
||||
if (k == 'k') if (stars_lod > 0.01) stars_lod = stars.changeLOD(0.99);
|
||||
if (k == 'r') stars.readInput("file://stars.txt", 0);
|
||||
// << tosh
|
||||
if (k == 'o') simulate_on = !simulate_on;
|
||||
if (k == 'p')
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue