17
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-11-04 22:25:45 +01:00

Add sky light, physical atmosphere, auto exposure and bloom to the GL 4.6 renderer

This commit is contained in:
2026-10-15 22:16:41 +02:00
parent ea0dba6dae
commit ce725c3d62
37 changed files with 2342 additions and 32 deletions

View File

@@ -19,6 +19,8 @@ void opengl46_skydome::update() {
gl::shader vert("vbocolor.vert");
gl::shader frag("color.frag");
m_shader.emplace(std::vector<std::reference_wrapper<const gl::shader>>({vert, frag}));
gl::shader atmospherefrag("sky_atmosphere.frag");
m_atmosphereshader.emplace(std::vector<std::reference_wrapper<const gl::shader>>({vert, atmospherefrag}));
}
auto &skydome { simulation::Environment.skydome() };
@@ -55,11 +57,16 @@ void opengl46_skydome::update() {
}
// render skydome to screen
void opengl46_skydome::render() {
void opengl46_skydome::render( bool const Atmosphere ) {
if( ( !m_shader) || ( !m_vao ) ) { return; }
m_shader->bind();
if( Atmosphere && m_atmosphereshader ) {
m_atmosphereshader->bind();
}
else {
m_shader->bind();
}
m_vao->bind();
auto const &skydome { simulation::Environment.skydome() };