mirror of
https://github.com/luanti-org/luanti.git
synced 2025-06-27 16:36:03 +00:00
Sky: support GLES2
IrrLicht built-in shader is broken, have to write my own
This commit is contained in:
parent
be59668f47
commit
cdcf7dca7c
5 changed files with 31 additions and 10 deletions
|
@ -424,6 +424,7 @@ class GameGlobalShaderConstantSetter : public IShaderConstantSetter
|
|||
CachedVertexShaderSetting<float> m_animation_timer_vertex;
|
||||
CachedPixelShaderSetting<float> m_animation_timer_pixel;
|
||||
CachedPixelShaderSetting<float, 3> m_day_light;
|
||||
CachedPixelShaderSetting<float, 4> m_star_color;
|
||||
CachedPixelShaderSetting<float, 3> m_eye_position_pixel;
|
||||
CachedVertexShaderSetting<float, 3> m_eye_position_vertex;
|
||||
CachedPixelShaderSetting<float, 3> m_minimap_yaw;
|
||||
|
@ -456,6 +457,7 @@ public:
|
|||
m_animation_timer_vertex("animationTimer"),
|
||||
m_animation_timer_pixel("animationTimer"),
|
||||
m_day_light("dayLight"),
|
||||
m_star_color("starColor"),
|
||||
m_eye_position_pixel("eyePosition"),
|
||||
m_eye_position_vertex("eyePosition"),
|
||||
m_minimap_yaw("yawVec"),
|
||||
|
@ -507,6 +509,10 @@ public:
|
|||
sunlight.b };
|
||||
m_day_light.set(dnc, services);
|
||||
|
||||
video::SColorf star_color = m_sky->getCurrentStarColor();
|
||||
float clr[4] = {star_color.r, star_color.g, star_color.b, star_color.a};
|
||||
m_star_color.set(clr, services);
|
||||
|
||||
u32 animation_timer = porting::getTimeMs() % 1000000;
|
||||
float animation_timer_f = (float)animation_timer / 100000.f;
|
||||
m_animation_timer_vertex.set(&animation_timer_f, services);
|
||||
|
@ -1363,7 +1369,7 @@ bool Game::createClient(const GameStartData &start_data)
|
|||
|
||||
/* Skybox
|
||||
*/
|
||||
sky = new Sky(-1, texture_src);
|
||||
sky = new Sky(-1, texture_src, shader_src);
|
||||
scsf->setSky(sky);
|
||||
skybox = NULL; // This is used/set later on in the main run loop
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue