Aeon Engine
c550894
AeonGames Open Source Game Engine
Loading...
Searching...
No Matches
VulkanTexture.hpp
1
/*
2
Copyright (C) 2017-2021,2025,2026 Rodrigo Jose Hernandez Cordoba
3
4
Licensed under the Apache License, Version 2.0 (the "License");
5
you may not use this file except in compliance with the License.
6
You may obtain a copy of the License at
7
8
http://www.apache.org/licenses/LICENSE-2.0
9
10
Unless required by applicable law or agreed to in writing, software
11
distributed under the License is distributed on an "AS IS" BASIS,
12
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
See the License for the specific language governing permissions and
14
limitations under the License.
15
*/
16
#ifndef AEONGAMES_VULKANTEXTURE_HPP
17
#define AEONGAMES_VULKANTEXTURE_HPP
18
#include <cstdint>
19
#include <string>
20
#include <vector>
21
#include <vulkan/vulkan.h>
22
#include <memory>
23
#include "aeongames/Texture.hpp"
24
25
namespace
AeonGames
26
{
27
class
Texture
;
28
class
VulkanRenderer
;
30
class
VulkanTexture
31
{
32
public
:
33
VulkanTexture
(
const
VulkanRenderer
& aVulkanRenderer,
const
Texture
& aTexture );
34
~VulkanTexture
();
36
VulkanTexture
(
VulkanTexture
&& aVulkanTexture );
37
VulkanTexture
(
const
VulkanTexture
& ) =
delete
;
38
VulkanTexture
& operator= (
const
VulkanTexture
& ) =
delete
;
39
VulkanTexture
& operator= (
VulkanTexture
&& ) =
delete
;
41
const
VkDescriptorImageInfo&
GetDescriptorImageInfo
()
const
;
42
private
:
43
const
VulkanRenderer
& mVulkanRenderer;
44
const
Texture
* mTexture{
nullptr
};
45
VkImage mVkImage{VK_NULL_HANDLE};
46
VkDeviceMemory mVkDeviceMemory{VK_NULL_HANDLE};
47
VkDescriptorImageInfo mVkDescriptorImageInfo{};
48
};
49
}
50
#endif
AeonGames::Texture
Represents a 2D texture image resource.
Definition
Texture.hpp:33
AeonGames::VulkanRenderer
Vulkan rendering backend implementing the Renderer interface.
Definition
VulkanRenderer.hpp:42
AeonGames::VulkanTexture::VulkanTexture
VulkanTexture(const VulkanRenderer &aVulkanRenderer, const Texture &aTexture)
Definition
VulkanTexture.cpp:32
AeonGames::VulkanTexture::GetDescriptorImageInfo
const VkDescriptorImageInfo & GetDescriptorImageInfo() const
Get the Vulkan descriptor image info for binding.
Definition
VulkanTexture.cpp:334
AeonGames
<- This is here just for the literals
Definition
AABB.hpp:31
engine
renderers
vulkan
VulkanTexture.hpp
Generated by
1.16.1