|
|
|
Content-Type: text/x-zim-wiki
|
|
|
|
Wiki-Format: zim 0.4
|
|
|
|
Creation-Date: 2020-02-03T22:11:42-08:00
|
|
|
|
|
|
|
|
|
|
|
|
--------------------
|
|
|
|
|
|
|
|
=== Trac3r : A program to convert images to 2D toolpaths ===
|
|
|
|
|
|
|
|
TODO:
|
|
|
|
[ ] Text rendering is half implemented.
|
|
|
|
[ ] Currently using local copies of a few libraries:
|
|
|
|
shade_runner
|
|
|
|
vulkano/vulkano-win
|
|
|
|
vulkano/vulkano-shaders
|
|
|
|
vulkano/vulkano
|
|
|
|
[*] Get a new GPU
|
|
|
|
[*] Figure out how to make this POS stable (semi stable)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
--------------------
|
|
|
|
|
|
|
|
[[~/source/Trac3r-rust/doc/sfml_rust/index.html|Documentation Root]]
|
|
|
|
Docs
|
|
|
|
[[VkProcessor]] [[~/source/Trac3r-rust/doc/sfml_rust/vkprocessor/struct.VkProcessor.html|===========]]
|
|
|
|
[[VKProcessor:CanvasState|CanvasState]] [[~/source/Trac3r-rust/doc/sfml_rust/canvas/canvas_state/index.html|===========]]
|
|
|
|
[[VKProcessor::CanvasFrame|CanvasFrame]] ===========
|
|
|
|
[[VKProcessor:CompiledShader|CompiledShader]] ===========
|
|
|
|
[[VKProcessor:CompuState|CompuState]] [[~/source/Trac3r-rust/doc/sfml_rust/compute/compu_state/struct.CompuState.html|===========]]
|
|
|
|
|
|
|
|
[[VKProcessor:DynamicVertex|DynamicVertex]] (dead) ===========
|
|
|
|
|
|
|
|
[[Drawables]] ===========
|
|
|
|
|
|
|
|
|
|
|
|
--------------------
|
|
|
|
|
|
|
|
==== Context switching ====
|
|
|
|
|
|
|
|
So lets finish this text rendering!
|
|
|
|
|
|
|
|
I remember using a triangle fan to render the fonts using the stencil buffer swapping
|
|
|
|
|
|
|
|
|
|
|
|
--------------------
|
|
|
|
|
|
|
|
|
|
|
|
===== Links =====
|
|
|
|
|
|
|
|
Dynamic Keys in HashMap
|
|
|
|
https://play.rust-lang.org/?version=nightly&mode=debug&edition=2018&gist=b4630cf98afa88fc0fbffdb0112af1c1
|
|
|
|
|
|
|
|
VertexDefinition
|
|
|
|
https://github.com/tomaka/vulkano-examples/blob/81f5a4eb3c5f3fcc6a194d3c41e53b2bc66f7add/gltf/gltf_system.rs#L687-L795
|
|
|
|
|
|
|
|
|
|
|
|
pub enum Content {
|
|
|
|
Text(String),
|
|
|
|
Number(u32),
|
|
|
|
}
|
|
|
|
|
|
|
|
impl From for String {
|
|
|
|
fn wrap(self) {
|
|
|
|
Content::Text(self)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
impl From for u32 {
|
|
|
|
fn wrap(self) {
|
|
|
|
Content::Number(self)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
fn any_content<T>(value : T) where T : IntoContent {
|
|
|
|
let content : Content = value.wrap();
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
├── canvas
|
|
|
|
│ ├── canvas_frame.rs
|
|
|
|
│ ├── canvas_state.rs
|
|
|
|
│ ├── managed
|
|
|
|
│ │ ├── canvas_text.rs
|
|
|
|
│ │ ├── gpu_buffers.rs
|
|
|
|
│ │ ├── handles.rs
|
|
|
|
│ │ ├── mod.rs
|
|
|
|
│ │ └── shader
|
|
|
|
│ │ ├── dynamic_vertex.rs
|
|
|
|
│ │ ├── generic_shader.rs
|
|
|
|
│ │ ├── mod.rs
|
|
|
|
│ │ ├── shader_common.rs
|
|
|
|
│ │ └── text_shader.rs
|
|
|
|
│ └── mod.rs
|
|
|
|
├── compute
|
|
|
|
│ ├── compu_frame.rs
|
|
|
|
│ ├── compu_state.rs
|
|
|
|
│ ├── managed
|
|
|
|
│ │ ├── compu_buffer.rs
|
|
|
|
│ │ ├── compu_kernel.rs
|
|
|
|
│ │ ├── compu_sprite.rs
|
|
|
|
│ │ ├── handles.rs
|
|
|
|
│ │ └── mod.rs
|
|
|
|
│ └── mod.rs
|
|
|
|
├── main.rs
|
|
|
|
├── sprite.rs
|
|
|
|
├── util
|
|
|
|
│ ├── mod.rs
|
|
|
|
│ ├── timer.rs
|
|
|
|
│ ├── vertex_2d.rs
|
|
|
|
│ └── vertex_3d.rs
|
|
|
|
└── vkprocessor.rs
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
null)
|