Notan Versions Save

Cross-platform multimedia layer

v0.12.0

2 months ago

Changelog

  • Updated EGUI to 0.26.
  • Removed egui::plugin::Output.needs_repaint(), now is only used internally and not exposed to users.
  • Exposed notan::draw::DrawBuilder allowing custom builders.
  • Exposed notan::app::AppTimer.
  • Added draw.point allowing to draw points. Check examples/draw_point.rs.
  • Allow to compile the crate without a backend selected.
  • Changed WindowConfig::set_canvas_id to WindowConfig::set_app_id and is not available for wayland too.
  • Fixed app.request_frame() when using lazy lopps on Window OS.

--

Thanks everybody!

Contributors

  • @z33ky
  • @joseluis
  • @RichardMarks

v0.11.0

6 months ago

Changelog

  • Update EGUI to 0.23 #291
  • Fix an error acquiring OpenGL Context #292
  • Update inner dependencies

Breaking

If you're using egui to render notan textures you may want to check the example because the API did change.

--

Thank you so much for the help!

Contributors

  • @apekros
  • @mantasarm

v0.10.0

8 months ago

Changelog

  • Added WindowConfig::set_position to set x/y position before creating the window.
  • Changed Renderer.begin uses Option<ClearOption> instead of Option<&ClearOption>.
  • Changed sizes and positions for Window and Textures from i32 to u32.
  • Added AppTimer::elapsed to return time since init as Duration.
  • Changed AppTimer::time_since_init to AppTimer::elapsed_f32.
  • Changed WindowConfig setter method to use the prefix set_.
  • Removed deprecated Mouse::local_position.
  • Removed deprecated mat3_screen_to_local, mat3_local_to_screen, mat3_local_to_local.
  • Updated dependencies to latest versions.
  • Enabled compilation with --no-default-features excluding shader compilation macros.
  • Deserializing AtlasFrame uses a default pivot if is empty.
  • Added WindowConfig::set_window_icon_data.
  • Added WindowConfig::set_taskbar_icon_data.
  • Added example window_icon_from_raw.rs.
  • Changed glsl_layout dependency for crevice.
  • Updated EGUI to 0.22.
  • Fixed egui panic when custom font are set.
  • Fixed slow scroll speed.
  • Fixed egui needs_repaint not working right in some situations.
  • Fixed the order of the matrix multiplication for Draw methods.
  • Improved error messages when WebGL and WebGL2 contexts cannot be adquired.
  • Fixed Buffer to allow reuse Uniform Buffers between pipelines.
  • Changed some noisy logs from debug to trace.
  • Added Clone to Random.
  • Reset values of Mouse::wheel_delta when the user stops scrolling.
  • Added Mouse::is_scrolling.
  • App's state can use now lifetimes, ie: State<'n>.
  • Added Clone to AssetsList.
  • The image crate on notan_graphics is only used when texture_to_file is enabled.
  • Added WindowBackend::set_cursor_position, Event::MouseMotion and Mouse::is_moving.
  • Added new example window_initial_position.rs.
  • Added mipmap and texture wrapping settings to RenderTextureBuilder.
  • Added new example texture_params.
  • Added new example renderer_stencil.
  • Fixed mouse wheel scroll being ignored when moving the mouse at same time
  • Added alt mouse wheel scrolling code to example
  • Fixed set_multisamples. It is no longer being ignored for winit backend
  • Fixed blurry text on egui when using on desktop
  • Fixed mono channel audio playing in half of time set for the audio length.
  • Added is_focused() for winit backend
  • Added window_focus example

Thanks everybody!

Contributors

  • @Allstreamer
  • @jonatino
  • @devmeat
  • @Satellile
  • @fand

v0.9.5

1 year ago
  • Increased mouse wheel scroll speed on native platforms.
  • Added WindowBackend::set_touch_as_mouse and touch_as_mouse to enable/disable it at runtime.
  • Fix Event::Exit which is triggered now before the app is closed.
  • Add WindowConfig::set_window_icon_data and set_taskbar_icon_data to set them using bytes. Check examples/window_icon_from_raw.rs for more info.
  • Allow to load images without allocation limits, return an error if the image is bigger than the size supported by the GPU.

Thanks everybody!

Contributors

  • @Allstreamer

v0.9.4

1 year ago
  • Added WindowBackend::set_title and WindowBackend::title to change or get the title at any time. #240
  • Improved stencil clearing when setting a mask on the draw api at the end of the pass. #240
  • Fix panic using Draw API to draw text with max_width and size as 0. #240
  • Fix debug_assert in Device::inner_read_pixels. #236
  • Added support for include directives using shaderc. #233
  • Added optional feature serde to serialize/deserialize some core types. #244

Thanks for the contributions!

Contributors

  • @troyc
  • @fand

v0.9.3

1 year ago
  • Added WindowBackend::screen_size to get the screen's resolution size. #229
  • Added WindowBackend::container_size to get the windows container size (screen on native, parent element on web). #229
  • Fix Draw2D masking issue about the stencil clearing. #231
  • New example draw_mask_animated.rs. #231

Just a small release with a few minor fixes, thanks all!

v0.9.2

1 year ago
  • Added Fn keys to egui. #214
  • New example game_tic_tac_toe.rs. #220
  • Fix corners of shapes using the Draw2D API.
  • New example draw_text_max_width.rs.
  • Fix window's transparency issue on x11 linux. #223
  • Fix an issue with some windows (OS) to select the OpenGL context. #223

Thanks!

Contributors

  • @Zyllian

v0.9.1

1 year ago
  • Fix docs compilation #212

v0.9.0

1 year ago
  • Fix alpha blending mode issue with text rendering using the Draw2D API. #188
  • Improve how the alpha blending behaves rendering from and to RenderTexture using Draw2D API. #189
  • Fix Draw structure is clonable again. #190
  • Change SetupHandler and AppBuilder::initialize to FnOnce allowing to embed notan easily.
  • Updated the crate glutin to 0.30.2. #192
  • New example draw_arcs.rs to show how to draw circle sections. #195
  • Added new texture format R8Uint.
  • Draw unsupported chars with a font does not panic anymore. #201
  • Added WindowConfig::window_icon and WindowConfig::taskbar_icon to add icons for windows os. #202
  • Added example egui_custom_font.rs.
  • Fix images loaded from files can set the texture format other rgba. #207
  • Added TextureFormat::Rgba32Float. #207
  • Avoid some allocations when textures are loaded. #207
  • Updated egui to color space. #205

Thank you so much for your contributions, you make this project great!

Contributors

  • @joffreybesos
  • @Zyllian
  • @kianmeng

v0.8.0

1 year ago
  • 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

  • @joffreybesos
  • @jawadsh123
  • @danny-burrows