source: opengl-game/graphics-pipeline_vulkan.hpp@ 771b33a

feature/imgui-sdl points-test
Last change on this file since 771b33a was 771b33a, checked in by Dmitry Portnoy <dmitry.portnoy@…>, 6 years ago

In openglgame, port over some more of the pipeline creation code and the functionality to specify and initialize varying attributes

  • Property mode set to 100644
File size: 801 bytes
RevLine 
[7d2b0b9]1#ifndef _GRAPHICS_PIPELINE_VULKAN_H
2#define _GRAPHICS_PIPELINE_VULKAN_H
3
4#include "graphics-pipeline.hpp"
5
6#include <vector>
7
[771b33a]8#include <vulkan/vulkan.h>
9
[7d2b0b9]10class GraphicsPipeline_Vulkan : public GraphicsPipeline {
11 public:
[771b33a]12 GraphicsPipeline_Vulkan(VkDevice device, Viewport viewport, int vertexSize);
[7d2b0b9]13 ~GraphicsPipeline_Vulkan();
14
[771b33a]15 void addAttribute(VkFormat format, size_t offset);
[7d2b0b9]16 void createPipeline(string vertShaderFile, string fragShaderFile);
17
18 private:
19 VkDevice device;
[771b33a]20 VkVertexInputBindingDescription bindingDescription;
21 vector<VkVertexInputAttributeDescription> attributeDescriptions;
[7d2b0b9]22
23 VkShaderModule createShaderModule(const vector<char>& code);
24 vector<char> readFile(const string& filename);
25};
26
27#endif // _GRAPHICS_PIPELINE_VULKAN_H
Note: See TracBrowser for help on using the repository browser.