KarmaEngine
Game Engine for practical learning and research purposes
Loading...
Searching...
No Matches
VulkanTexture.h
Go to the documentation of this file.
1
10#pragma once
11
13#include "VulkanBuffer.h"
14
15namespace Karma
16{
27 class VulkanTexture : public Texture
28 {
29 public:
36
46
65 void CreateTextureImage(VulkanImageBuffer* vImageBuffer);
66
73
82
94 void GenerateVulkanTexture(VulkanImageBuffer* vImageBuffer);
95
96 // Getters
97 VkImageView GetImageView() const { return m_TextureImageView; }
98 VkSampler GetImageSampler() const { return m_TextureSampler; }
99
100 private:
101 // Vulkan context relevant stuff
102 VkDevice m_Device;
103 VkPhysicalDevice m_PhysicalDevice;
104
105 // Texture relevant stuff
106 VkImage m_TextureImage;
107
108 VkDeviceMemory m_TextureImageMemory;
109 VkImageView m_TextureImageView;
110 VkSampler m_TextureSampler;
111 };
112}
This file contains the SkeletalMesh class.
This file contains VulkanVertex/Index/ImageBuffer classes.
Texture()
A constructor.
Definition Texture.cpp:8
Vulkan specific implemetation of ImageBuffer class.
Definition VulkanBuffer.h:388
VulkanTexture()
A constructor.
Definition VulkanTexture.cpp:6
void CreateTextureImage(VulkanImageBuffer *vImageBuffer)
Creates Vulkan image for the texture and allocates device memory appropriately.
Definition VulkanTexture.cpp:27
void GenerateVulkanTexture(VulkanImageBuffer *vImageBuffer)
Generates the Vulkan texture by creating the image, image view, and sampler.
Definition VulkanTexture.cpp:20
void CreateTextureImageView()
Creates the image view for the texture.
Definition VulkanTexture.cpp:64
void CreateTextureSampler()
Creates the texture sampler.
Definition VulkanTexture.cpp:82
~VulkanTexture()
A destructor.
Definition VulkanTexture.cpp:12