Skip to content

Releases: Nazariglez/notan

v0.8.0

28 Nov 19:28
ad7f263
Compare
Choose a tag to compare
  • Updated notan_egui to the latest version of egui 0.19. #154
  • Added mipmapping support with TextureBuilder::generate_mipmaps. #155
  • Added WindowBackend::position and WindowBackend::set_position. #156
  • Fix lint warning notan_main macro. #160
  • Added methods .fill_color and stroke_color for the Draw2d shapes to allow to stroke and fill with the same builder. #175
  • Added method Draw::star(spikes, outser_radius, inner_radius) to draw stars. #175
  • Added method Draw::polygon(sides, radius) to draw regular polygons. #175
  • Added shaderc feature to compile shaders using shaderc instead of glsl_to_spirv. #165
  • Fix RenderTexture orientation when drawing using the Draw2d API. #179
  • Added IndexBufferBuilder::with_data_u16 to create index buffers using u16 slices. #168
  • Added Text::last_bounds to get the bounding box of the latest text drawn. #172
  • Added Text::bounds to get the bounding box of all the text elements combined. #172
  • Added Draw::last_text_bounds to get the bounding box of the latest text drawn using the Draw2d API. #172
  • New examples text_bounds.rs and draw_text_bounds.rs to show how to measure the text size with real use cases. #172
  • Added a CI action to check if the code meets a minimal quality conditions. #162 #174
  • Added WindowBackend::set_mouse_passthrough to change the passthrough condition at runtime. #173
  • Fix custom pipelines for the Draw2d APIs. They were working only for images, now they work all (shapes, patterns, etc..) #176
  • Added example draw_shapes_shader.rs to show how to set a custom pipeline drawing shapes. #176
  • Renamed draw_shader.rs to draw_image_shader.rs
  • Added Graphics::stats() -> GpuStats to get more info about what the GPU did the last frame.
  • Added new texture formats. TextureFormat::R16Uint, R32Uint, R32Float. #178
  • New example renderer_texture_r32.rs to show how to use new texture types.
  • The method Renderer::bind_texture will set the slot automatically to the next one if using in a row.
  • Replaced copypasta dependency by arboard and moved clipboard features to app level. #170
  • Added clipboard support for web browsers using wasm. #170
  • Added .flip_x and .flip_y to Image, Animation and Pattern object from the Draw2d API. #179
  • Changed Draw::set_blend_mode needs an Option<BlendMode> now, and passing None the blending mode can be canceled. #185
  • Added Draw::set_alpha_mode and DrawBuilder::alpha_mode to set the blend mode for the alpha composition. #185

Thank you so much for all the hard work!

Contributors

v0.7.1

08 Oct 14:40
0dd6636
Compare
Choose a tag to compare
  • Added support for clipboard events using egui behind the feature clipboard. #143
  • Exposed GlowBackend::add_inner_texture to allow more flexibility extending the backend. #144
  • Example input_keyboard uses not delta time. #146
  • Added WindowConfig::mouse_passtrhough to allow mouse events to pass through the window. #147
  • Fix a minor bug in the egui plugin recognizing the CMD key on osx.

Thank you so much for all the contributions!

Contributors

v0.7.0

29 Sep 11:46
f86b2cc
Compare
Choose a tag to compare
  • Updated and upgraded all dependencies #131
  • Fix audio bug that starts a sound with maximum volume and then fade. #131
  • Added WindowConfig::always_on_top and WindowBackend::set_always_on_top/is_always_on_top to force the window to the foreground. Has no effect on the web. #132
  • Added notan_random and feature random to allow users to disable the default random features and use their own. #133
  • In EguiPlugin, handle CMD key on web. #136
  • Fix, inverted the direction of the horizontal mouse wheel on web. #139
  • Added TextureBuilder::from_source(raw) to create textures that are backend dependant. #138
  • Added TextureUpdater::with_source(raw) to update textures that are backend dependant. #138
  • Added support to load and update web_sys::HtmlImageElement using the default backend. #138

Thanks everybody for the help, support, and contributions!

Contributors

v0.6.0

27 Aug 15:18
Compare
Choose a tag to compare
  • Fix the syntax in some example's shader.
  • Glam type can be used as uniforms directly
  • Add #[uniform] macro to layout the data as std140
  • On MacOS, disabled the high dpi resolution by default.
  • On Web, disabled the high dpi resolution by default.
  • Added WindowConfig::high_dpi to enable high resolution on MacOS and Web.
  • Added Draw::screen_to_world_position and Draw::world_to_screen_position to convert coordinates.
  • Added DrawBuilder::screen_to_local_position and DrawBuilder::local_to_screen_position to convert coordinates.
  • Fix 15 Puzzle game bug.
  • Change WindowConfig to take values instead of set the !default value.
  • Fix wasm32 warnings due a leaked reference.
  • Add WindoConfig::canvas_id to use or create a custom canvas.
  • Remove the deprecated notan::math::DEG_TO_RAD and notan::math::RAD_TO_DEG.
  • Fix using lazy_mode an empty buffer after the first swap buffers.
  • Add draw_projection.rs example.
  • Add extra feature and notan_extra crate to add utils/struct that doesn't fit in other crates.
  • Add extra::FpsLimit to limit the maximum framerate and save CPU cycles putting it to sleep.
  • Removed app::FpsPlugin in favour of extra::FpsLimit.

New Contributors

v0.5.1

04 Jul 22:22
Compare
Choose a tag to compare
  • Fixed window shader compilation.
  • Egui will call RequestRedraw when there is some animation, no need to call it manually anymore.

v0.5.0

26 Jun 22:00
Compare
Choose a tag to compare
  • Removed chrono due to a security issue (#102)
  • Fixed viewport issues where the Y axis was inverted and wasn't using DPI to calculate min positon (#103)
  • Fixed EGUI 0.18.1. Paint callback feature (#103) https://nazariglez.github.io/notan-web/examples/egui_paint.html
  • Added Window::set_capture_cursor and Window::capture_cursor to confine the cursor into the window's app (#104)
  • Added app.mouse.wheel_delta to read the delta without checking the event loop (#104)
  • Added texture_to_file feature to save textures as png files. Use Texture::to_file(gfx, path) and RenderTexture::to_file(gfx, path) (#107)
  • Window can be hidden or displayer now setting the visibility on WindowConfig and Window::set_visible (#108)
  • Fixed wasm32 mouse drag event (it had a conflict with pointerevents)
  • Inlined docs for re-exported crates
  • Added debug checks for some OpenGL actions to avoid panics without info for bad API use.
  • Added example for texture_to_file: https://nazariglez.github.io/notan-web/examples/texture_to_file.html

v0.4.2

15 Jun 23:00
Compare
Choose a tag to compare
  • VAOs doesn't keep older attribute pointers anymore after a new VAO is bind
  • Textures can use Wrap modes now with TextureBuilder .with_wrap(x, y) // s,t
  • Increased textures slots per shader from 8 to 16
  • Deprecated math::DEG_TO_RAD and math::RAD_TO_DEG (rust provides .to_radians() and .to_degrees())
  • Textures need to be declared on the pipeline with the location ID .with_texture_location(0, "uniform_id")
  • Added 15puzzle example https://nazariglez.github.io/notan-web/examples/game_15_puzzle.html

v0.4.1

04 Jun 14:14
Compare
Choose a tag to compare
  • Added transparent and decorations windows options
  • Removed winit (glutin already used it) #97
  • Fix rotation issues with draw text #98

v0.4.0

15 May 19:27
Compare
Choose a tag to compare
  • Added touch support
  • Audio API requires an initial volume when the sound is created
  • Updated EGUI to 0.18.1
  • Fix runtime error using Wayland and Mesa
  • Dependencies updated to the latest version
  • Created a new crate notan_input to keep organized all the user's input code

v0.3.0

29 Apr 11:03
Compare
Choose a tag to compare
  • Updated dependencies
  • Added mouse and keyboard types to the prelude
  • Audio Support using Oddio