Piping just the vertex glyph representation first to test the stencil buffer
This commit is contained in:
@@ -12,14 +12,6 @@ The Canvas needs to package certain buffers along with their metadata. These tak
|
||||
All buffers will have a coupled handle type stored in [[/src/canvas/managed/handles.rs|handles.rs]] and a reference to that handle
|
||||
|
||||
|
||||
===== CanvasImage =====
|
||||
|
||||
|
||||
===== CanvasTexture =====
|
||||
|
||||
|
||||
===== CanvasFont =====
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -25,6 +25,26 @@ Creation-Date: 2020-02-03T23:30:41-08:00
|
||||
An object which accumulate frame draws. The State will then parse this list of calls and display them on the screen
|
||||
|
||||
|
||||
--------------------
|
||||
|
||||
=== canvas ===
|
||||
I made a maybe(?) good change to the heirarchy of the canvas. Hiding the construction of handles from anything outside.
|
||||
|
||||
Currently, canvas is separated out to
|
||||
* A state container: CanvasState
|
||||
* An Interface class CanvasFrame
|
||||
* `Managed` objects. Aka, everything that CanvasState holds
|
||||
|
||||
CanvasText is just laying around until I use it...
|
||||
Shader pipeline objects exists in one level of managed
|
||||
Handle and Buffer objects exists in the base managed level
|
||||
|
||||
== Do I commit to the all handles in handles.rs? ==
|
||||
|
||||
FYI The shader API is actually pretty badass
|
||||
|
||||
load_shader::<GenericShader, ColorVertex2D>("shadername", a, b);
|
||||
|
||||
--------------------
|
||||
|
||||
===== Data =====
|
||||
@@ -38,7 +58,7 @@ Creation-Date: 2020-02-03T23:30:41-08:00
|
||||
[[CanvasImage]]
|
||||
[[VKProcessor:CanvasTexture|CanvasTexture]]
|
||||
[[CanvasFont]]
|
||||
[[CompiledGraphicsPipeline]]
|
||||
[[CompiledShader]]
|
||||
|
||||
--------------------
|
||||
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
Content-Type: text/x-zim-wiki
|
||||
Wiki-Format: zim 0.4
|
||||
Creation-Date: 2020-02-12T23:22:51-08:00
|
||||
|
||||
====== CompiledGraphicsPipeline ======
|
||||
|
||||
|
||||
|
||||
|
||||
Unfortunately we have to explicitly provide the type to the graphics pipeline if we don't want to fall out into the
|
||||
|
||||
44
notes/VKProcessor/CompiledShader.txt
Normal file
44
notes/VKProcessor/CompiledShader.txt
Normal file
@@ -0,0 +1,44 @@
|
||||
Content-Type: text/x-zim-wiki
|
||||
Wiki-Format: zim 0.4
|
||||
Creation-Date: 2020-02-12T23:22:51-08:00
|
||||
|
||||
====== CompiledShader ======
|
||||
|
||||
[[/doc/sfml_rust/canvas/managed/shader/shader_common/trait.CompiledShader.html|Documentation]]
|
||||
|
||||
==== Details ====
|
||||
|
||||
This trait returns:
|
||||
* It's pipeline
|
||||
* It's own assigned handle
|
||||
* The renderpass it copied from the constructor
|
||||
|
||||
==== Implementors ====
|
||||
|
||||
**GenericShader**
|
||||
For basic 2D drawing we just these shaders
|
||||
* Vertex
|
||||
* Fragment
|
||||
We also use a **SingleBufferDefinition**
|
||||
For vertices, we use a **Triangle List**
|
||||
We also use the **generic** depth stencil
|
||||
|
||||
**TextShader**
|
||||
|
||||
Very similar to the GenericShader, but specialized with the depth stencil to draw text.
|
||||
Still using the shaders :
|
||||
* Vertex
|
||||
* Fragment
|
||||
**SingleBufferDefinition**
|
||||
**TriangleList**
|
||||
**DepthStencil** with our own specialized depth stencil values
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ Creation-Date: 2020-02-04T23:22:14-08:00
|
||||
|
||||
===== Details =====
|
||||
|
||||
So, the **pipeline** we create over in the **shader** needs to know about the vertex data it will be using. This lines up pretty well because the Shader is precisely the mechanism which would know about this data.
|
||||
So, the **pipeline** we create over in the **shader** needs to know about the vertex data it will be using.
|
||||
|
||||
|
||||
--------------------
|
||||
|
||||
Reference in New Issue
Block a user