HatchitGraphics
ht_vktexture.h
1 
15 #pragma once
16 
17 #include <ht_texture.h>
18 #include <ht_texture_base.h>
19 #include <ht_texture_resource.h>
20 #include <ht_vksampler.h>
21 #include <ht_vulkan.h>
22 
23 namespace Hatchit {
24 
25  namespace Graphics {
26 
27  namespace Vulkan {
28 
29  class HT_API VKTexture : public TextureBase
30  {
31  public:
32  VKTexture();
33  virtual ~VKTexture();
34 
35  //Required function for RefCounted classes
36  bool Initialize(Resource::TextureHandle handle, const VkDevice& device);
37 
38  //For building a texture *not* from a file
39  bool Initialize(const VkDevice& device, const BYTE* data, uint32_t width, uint32_t height, uint32_t channelCount, uint32_t mipLevels);
40 
41  VkImageView GetView();
42 
43  private:
44  bool VKBufferImage();
45 
46  VkDevice m_device;
47 
48  VkImageView m_view;
49  VkImage m_image;
50  VkImageLayout m_imageLayout;
51 
52  VkDeviceMemory m_deviceMemory;
53  };
54 
55  }
56  }
57 }
Definition: ht_vktexture.h:29
Hatchit Engine Copyright(c) 2015-2016 Third-Degree.
Definition: ht_color.h:19
Definition: ht_texture_base.h:24