Fixed lint issues & cleaned up some documentation.
This commit is contained in:
parent
1eb8d972ba
commit
cb7c467654
24 changed files with 33 additions and 40 deletions
|
|
@ -1,6 +1,6 @@
|
||||||
use iced::executor;
|
use iced::executor;
|
||||||
use iced::widget::canvas::{
|
use iced::widget::canvas::{
|
||||||
Cache, Cursor, Geometry, LineCap, Path, Stroke, Style,
|
Cache, Cursor, Geometry, LineCap, Path, Stroke, stroke,
|
||||||
};
|
};
|
||||||
use iced::widget::{canvas, container};
|
use iced::widget::{canvas, container};
|
||||||
use iced::{
|
use iced::{
|
||||||
|
|
@ -111,7 +111,7 @@ impl<Message> canvas::Program<Message> for Clock {
|
||||||
let thin_stroke = || -> Stroke {
|
let thin_stroke = || -> Stroke {
|
||||||
Stroke {
|
Stroke {
|
||||||
width,
|
width,
|
||||||
style: Style::Solid(Color::WHITE),
|
style: stroke::Style::Solid(Color::WHITE),
|
||||||
line_cap: LineCap::Round,
|
line_cap: LineCap::Round,
|
||||||
..Stroke::default()
|
..Stroke::default()
|
||||||
}
|
}
|
||||||
|
|
@ -120,7 +120,7 @@ impl<Message> canvas::Program<Message> for Clock {
|
||||||
let wide_stroke = || -> Stroke {
|
let wide_stroke = || -> Stroke {
|
||||||
Stroke {
|
Stroke {
|
||||||
width: width * 3.0,
|
width: width * 3.0,
|
||||||
style: Style::Solid(Color::WHITE),
|
style: stroke::Style::Solid(Color::WHITE),
|
||||||
line_cap: LineCap::Round,
|
line_cap: LineCap::Round,
|
||||||
..Stroke::default()
|
..Stroke::default()
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,5 +7,4 @@ publish = false
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
iced = { path = "../..", features = ["canvas", "tokio", "debug"] }
|
iced = { path = "../..", features = ["canvas", "tokio", "debug"] }
|
||||||
iced_graphics = { path = "../../graphics" }
|
|
||||||
rand = "0.8.5"
|
rand = "0.8.5"
|
||||||
|
|
@ -1,13 +1,12 @@
|
||||||
use rand::{Rng, thread_rng};
|
use rand::{Rng, thread_rng};
|
||||||
use crate::canvas::{Cursor, Geometry};
|
use crate::canvas::{Cursor, Geometry};
|
||||||
use iced::widget::canvas::{Cache, Fill, Frame, Gradient};
|
use iced::widget::canvas::{Cache, Fill, Frame, Gradient, fill};
|
||||||
use iced::widget::{canvas, Canvas};
|
use iced::widget::{canvas, Canvas};
|
||||||
use iced::Settings;
|
use iced::Settings;
|
||||||
use iced::{
|
use iced::{
|
||||||
executor, Application, Color, Command, Element, Length, Point, Rectangle,
|
executor, Application, Color, Command, Element, Length, Point, Rectangle,
|
||||||
Renderer, Size, Theme,
|
Renderer, Size, Theme,
|
||||||
};
|
};
|
||||||
use iced_graphics::widget::canvas::fill;
|
|
||||||
|
|
||||||
fn main() -> iced::Result {
|
fn main() -> iced::Result {
|
||||||
ModernArt::run(Settings {
|
ModernArt::run(Settings {
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ use iced::executor;
|
||||||
use iced::theme::{self, Theme};
|
use iced::theme::{self, Theme};
|
||||||
use iced::time;
|
use iced::time;
|
||||||
use iced::widget::canvas;
|
use iced::widget::canvas;
|
||||||
use iced::widget::canvas::{Cursor, Path, Stroke};
|
use iced::widget::canvas::{Cursor, Path, Stroke, stroke};
|
||||||
use iced::window;
|
use iced::window;
|
||||||
use iced::{
|
use iced::{
|
||||||
Application, Color, Command, Element, Length, Point, Rectangle, Settings,
|
Application, Color, Command, Element, Length, Point, Rectangle, Settings,
|
||||||
|
|
@ -19,7 +19,6 @@ use iced::{
|
||||||
};
|
};
|
||||||
|
|
||||||
use std::time::Instant;
|
use std::time::Instant;
|
||||||
use crate::canvas::Style;
|
|
||||||
|
|
||||||
pub fn main() -> iced::Result {
|
pub fn main() -> iced::Result {
|
||||||
SolarSystem::run(Settings {
|
SolarSystem::run(Settings {
|
||||||
|
|
@ -85,7 +84,7 @@ impl Application for SolarSystem {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn subscription(&self) -> Subscription<Message> {
|
fn subscription(&self) -> Subscription<Message> {
|
||||||
time::every(std::time::Duration::from_millis(10)).map(Message::Tick)
|
time::every(time::Duration::from_millis(10)).map(Message::Tick)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -179,7 +178,7 @@ impl<Message> canvas::Program<Message> for State {
|
||||||
frame.stroke(
|
frame.stroke(
|
||||||
&orbit,
|
&orbit,
|
||||||
Stroke {
|
Stroke {
|
||||||
style: Style::Solid(Color::from_rgba8(0, 153, 255, 0.1)),
|
style: stroke::Style::Solid(Color::from_rgba8(0, 153, 255, 0.1)),
|
||||||
width: 1.0,
|
width: 1.0,
|
||||||
line_dash: canvas::LineDash {
|
line_dash: canvas::LineDash {
|
||||||
offset: 0,
|
offset: 0,
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
//! Draw meshes of triangle.
|
//! Draw meshes of triangles.
|
||||||
mod gradient;
|
mod gradient;
|
||||||
mod solid;
|
mod solid;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ pub struct SolidProgram {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub(crate) struct SolidUniformData {
|
struct SolidUniformData {
|
||||||
pub color: Color,
|
pub color: Color,
|
||||||
pub color_location: <Context as HasContext>::UniformLocation,
|
pub color_location: <Context as HasContext>::UniformLocation,
|
||||||
pub transform: Transformation,
|
pub transform: Transformation,
|
||||||
|
|
@ -74,7 +74,7 @@ impl SolidProgram {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn use_program(&mut self, gl: &glow::Context, color: &Color, transform: &Transformation) {
|
pub fn use_program(&mut self, gl: &Context, color: &Color, transform: &Transformation) {
|
||||||
unsafe {
|
unsafe {
|
||||||
gl.use_program(Some(self.program))
|
gl.use_program(Some(self.program))
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -29,4 +29,3 @@ impl Gradient {
|
||||||
linear::Builder::new(start, end)
|
linear::Builder::new(start, end)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ use std::mem;
|
||||||
const DEFAULT_STATIC_BUFFER_COUNT: wgpu::BufferAddress = 128;
|
const DEFAULT_STATIC_BUFFER_COUNT: wgpu::BufferAddress = 128;
|
||||||
|
|
||||||
/// A generic buffer struct useful for items which have no alignment requirements
|
/// A generic buffer struct useful for items which have no alignment requirements
|
||||||
/// (e.g. Vertex, Index buffers) and are set once and never changed until destroyed.
|
/// (e.g. Vertex, Index buffers) & no dynamic offsets.
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub(crate) struct StaticBuffer<T> {
|
pub(crate) struct StaticBuffer<T> {
|
||||||
//stored sequentially per mesh iteration; refers to the offset index in the GPU buffer
|
//stored sequentially per mesh iteration; refers to the offset index in the GPU buffer
|
||||||
|
|
@ -17,7 +17,6 @@ pub(crate) struct StaticBuffer<T> {
|
||||||
label: &'static str,
|
label: &'static str,
|
||||||
usages: wgpu::BufferUsages,
|
usages: wgpu::BufferUsages,
|
||||||
gpu: wgpu::Buffer,
|
gpu: wgpu::Buffer,
|
||||||
//the static size of the buffer
|
|
||||||
size: wgpu::BufferAddress,
|
size: wgpu::BufferAddress,
|
||||||
_data: PhantomData<T>,
|
_data: PhantomData<T>,
|
||||||
}
|
}
|
||||||
|
|
@ -75,11 +74,9 @@ impl<T: Pod + Zeroable> StaticBuffer<T> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Writes the current vertex data to the gpu buffer if it is currently writable with a memcpy &
|
/// Writes the current vertex data to the gpu buffer with a memcpy & stores its offset.
|
||||||
/// stores its offset.
|
|
||||||
///
|
///
|
||||||
/// This will return either the offset of the written bytes, or `None` if the GPU buffer is not
|
/// Returns the size of the written bytes.
|
||||||
/// currently writable.
|
|
||||||
pub fn write(
|
pub fn write(
|
||||||
&mut self,
|
&mut self,
|
||||||
device: &wgpu::Device,
|
device: &wgpu::Device,
|
||||||
|
|
|
||||||
|
|
@ -41,8 +41,8 @@
|
||||||
pub mod settings;
|
pub mod settings;
|
||||||
pub mod triangle;
|
pub mod triangle;
|
||||||
pub mod window;
|
pub mod window;
|
||||||
pub mod buffers;
|
|
||||||
|
|
||||||
|
mod buffers;
|
||||||
mod backend;
|
mod backend;
|
||||||
mod quad;
|
mod quad;
|
||||||
mod text;
|
mod text;
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ pub(crate) struct Pipeline {
|
||||||
pipelines: TrianglePipelines,
|
pipelines: TrianglePipelines,
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Supported triangle pipelines for different fills. Both use the same vertex shader.
|
/// Supported triangle pipelines for different fills.
|
||||||
pub(crate) struct TrianglePipelines {
|
pub(crate) struct TrianglePipelines {
|
||||||
solid: SolidPipeline,
|
solid: SolidPipeline,
|
||||||
gradient: GradientPipeline,
|
gradient: GradientPipeline,
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ use glam::{IVec4, Vec4};
|
||||||
use iced_graphics::gradient::Gradient;
|
use iced_graphics::gradient::Gradient;
|
||||||
use iced_graphics::Transformation;
|
use iced_graphics::Transformation;
|
||||||
|
|
||||||
pub(super) struct GradientPipeline {
|
pub struct GradientPipeline {
|
||||||
pipeline: wgpu::RenderPipeline,
|
pipeline: wgpu::RenderPipeline,
|
||||||
pub(super) uniform_buffer: DynamicBuffer<GradientUniforms>,
|
pub(super) uniform_buffer: DynamicBuffer<GradientUniforms>,
|
||||||
pub(super) storage_buffer: DynamicBuffer<GradientStorage>,
|
pub(super) storage_buffer: DynamicBuffer<GradientStorage>,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue