KarmaEngine
Game Engine for practical learning and research purposes
Loading...
Searching...
No Matches
Texture.h
Go to the documentation of this file.
1
10#pragma once
11
12#include "krpch.h"
13
14namespace Karma
15{
21 class VulkanTexture;
22
39
47 {
48 public:
54 Texture();
55
65 Texture(TextureType tType, const char* filename, std::string textureName, std::string textureShaderName);
66
72 ~Texture();
73
74 // Getters
80 const std::string& GetTextureName() const { return m_TName; }
81
87 const std::string& GetTextureShaderName() const { return m_TShaderName; }
88
95 std::shared_ptr<VulkanTexture> GetVulkanTexture() const { return m_VulkanTexture; }
96
97 private:
98 TextureType m_TType;
99 std::string m_TName;
100
101 // Name to be used for identification in the shaders
102 std::string m_TShaderName;
103
104 // For Vulkan specific purposes
105 std::shared_ptr<VulkanTexture> m_VulkanTexture;
106 };
107}
#define KARMA_API
Defining Karma's API macro for storage class information.
Definition Core.h:41
@ None
Events of the unknown category.
Definition Event.h:37
TextureType
An enum for classifying textures supported and used by the Engine.
Definition Texture.h:29
@ DiffusionMap
Definition Texture.h:37
@ Image
Definition Texture.h:33
@ LightMap
Definition Texture.h:35
const std::string & GetTextureShaderName() const
Getter for Texture Shader name.
Definition Texture.h:87
Texture()
A constructor.
Definition Texture.cpp:8
std::shared_ptr< VulkanTexture > GetVulkanTexture() const
Getter for VulkanTexture.
Definition Texture.h:95
const std::string & GetTextureName() const
Getter for texture name.
Definition Texture.h:80
Definition VulkanTexutre.h:9