Commit c683ce0
Changed files (3)
libgogvk/gog_pipeline.h
@@ -0,0 +1,57 @@
+#include <vulkan/vulkan_core.h>
+#include "gogerr.h"
+
+
+
+typedef enum{
+ GOG_GRAPHICS_PIPELINE,
+ GOG_COMPUTE_PIPELINE
+} gog_pipeline_type;
+
+
+typedef struct{
+
+ gog_pipeline_type type;
+ VkPipelineBindPoint vk_bind_point;
+ VkPipeline vk_pipeline;
+ VkPipelineLayout vk_pipeline_layout;
+
+} gog_pipeline_core;
+
+
+typedef struct
+{
+ gog_pipeline_type type;
+
+ uint32_t de_set_c;
+ VkDescriptorSet * vk_de_set;
+
+ union
+ {
+ struct {
+ VkBuffer vertex_buffer;
+ VkBuffer index_buffer;
+ uint32_t index_c;
+ uint32_t instance_c;
+ } draw;
+
+ struct {
+ struct
+ {
+ uint32_t x,y,z;
+ } group_c;
+ } dispatch;
+ };
+
+
+} gog_pipeline_io;
+
+
+typedef struct
+{
+ gog_pipeline_core * core;
+ gog_pipeline_io * io;
+
+} gog_pipeline;
+
+
libgogvk.a
Binary file
README.md
@@ -1,1 +1,4 @@
-# mă-ta țîgani
+## VK-GOG-LIB
+ #helper lib to build custom vk engines
+ #the asbstraction is built around the pipeline
+ #pipelines are dynamic