--- a/rust/lib-hedgewars-engine/src/render/gear.rs Thu Nov 12 00:24:58 2020 +0300
+++ b/rust/lib-hedgewars-engine/src/render/gear.rs Thu Nov 12 23:42:53 2020 +0300
@@ -1,7 +1,7 @@
use crate::render::{
atlas::{AtlasCollection, SpriteIndex, SpriteLocation},
camera::Camera,
- gl::Texture2D,
+ gl::{Texture2D, TextureDataType, TextureFilter, TextureFormat, TextureInternalFormat},
};
use integral_geometry::{Rect, Size};
@@ -18,7 +18,7 @@
};
#[derive(PartialEq, Debug, Clone, Copy)]
-enum SpriteId {
+pub enum SpriteId {
Mine = 0,
Grenade,
@@ -54,7 +54,11 @@
pub fn new() -> Self {
let mut atlas = AtlasCollection::new(ATLAS_SIZE);
- let texture = Texture2D::new(ATLAS_SIZE, gl::RGBA8, gl::LINEAR);
+ let texture = Texture2D::new(
+ ATLAS_SIZE,
+ TextureInternalFormat::Rgba8,
+ TextureFilter::Linear,
+ );
let mut allocation = Box::new([(0, Rect::at_origin(Size::EMPTY)); MAX_SPRITES]);
@@ -73,9 +77,9 @@
texture.update(
rect,
mapgen::theme::slice_u32_to_u8_mut(&mut pixels[..]),
- 0,
- gl::RGBA,
- gl::UNSIGNED_BYTE,
+ None,
+ TextureFormat::Rgba,
+ TextureDataType::UnsignedByte,
);
allocation[*sprite as usize] = (texture_index, rect);