Compare commits

..

No commits in common. "3f8056b6ea1e6dd7aa846473c77ee5aa7514a1c0" and "ec592951bcbd8da6f7a59e0ebefdfdea9199a5c3" have entirely different histories.

2 changed files with 22 additions and 21 deletions

View file

@ -6,9 +6,13 @@ use winit::{
window::{WindowBuilder, Fullscreen, Window},
dpi::PhysicalSize
};
use glium::{Display, Surface, Version, Api as GlApiTy};
use glium::{Display, Surface, Version, Api};
use glutin::{
config::{Api, ConfigTemplateBuilder}, context::{ContextAttributesBuilder, GlProfile}, display::GetGlDisplay, prelude::*, surface::{SurfaceAttributesBuilder, WindowSurface}
prelude::*,
context::{ContextAttributesBuilder, GlProfile},
surface::{WindowSurface, SurfaceAttributesBuilder},
display::GetGlDisplay,
config::ConfigTemplateBuilder
};
use glutin_winit::DisplayBuilder;
use glam::{Vec3, UVec2};
@ -92,7 +96,6 @@ impl Renderer {
.with_window_builder(Some(wb));
let config_template_builder = ConfigTemplateBuilder::new()
.with_api(Api::GLES3)
.prefer_hardware_accelerated(Some(true))
.with_depth_size(24)
.with_multisampling(settings.msaa.unwrap_or_default());
@ -153,7 +156,7 @@ impl Renderer {
if display.is_robust() { log::warn!("OpenGL implementation is not robust") }
if display.is_debug() { log::info!("OpenGL context is in debug mode") }
assert!(display.is_glsl_version_supported(&Version(GlApiTy::GlEs, 3, 0)), "GLSL ES 3.0 is not supported");
assert!(display.is_glsl_version_supported(&Version(Api::GlEs, 3, 0)), "GLSL ES 3.0 is not supported");
Self { window, display }
}

View file

@ -74,9 +74,9 @@ pub fn draw_world(
if let Some(key) = chunk.mesh_index {
let mesh = meshes.get(key).expect("Mesh index pointing to nothing");
let world_position = position.as_vec3() * CHUNK_SIZE as f32;
//Skip mesh if its empty
if mesh.index_buffer.len() == 0 && mesh.trans_index_buffer.len() == 0 {
if mesh.index_buffer.len() == 0 {
continue
}
@ -90,21 +90,19 @@ pub fn draw_world(
}
//Draw chunk mesh
if mesh.index_buffer.len() > 0 {
target.0.draw(
&mesh.vertex_buffer,
&mesh.index_buffer,
&program.0,
&uniform! {
position_offset: world_position.to_array(),
view: view,
perspective: perspective,
tex: texture_sampler,
discard_alpha: true,
},
&draw_parameters
).unwrap();
}
target.0.draw(
&mesh.vertex_buffer,
&mesh.index_buffer,
&program.0,
&uniform! {
position_offset: world_position.to_array(),
view: view,
perspective: perspective,
tex: texture_sampler,
discard_alpha: true,
},
&draw_parameters
).unwrap();
if mesh.trans_index_buffer.len() > 0 {
enqueue_trans.push((chunk, mesh));