GPUDeviceAttribute更名为VkDevAttr

This commit is contained in:
2025-05-17 20:13:23 +08:00
parent 2dd60fee7f
commit 29aa76a917
35 changed files with 70 additions and 72 deletions

View File

@@ -53,7 +53,7 @@ public:
GPUDevice * GetDevice ()const{return device;}
VkDevice GetVkDevice ()const{return device->GetDevice();}
const GPUPhysicalDevice * GetPhysicalDevice ()const{return device->GetPhysicalDevice();}
GPUDeviceAttribute * GetDeviceAttribute ()const{return device->GetDeviceAttribute();}
VkDevAttr * GetDeviceAttribute ()const{return device->GetDeviceAttribute();}
RenderResource * GetRenderResource ()const{return render_resource;}

View File

@@ -43,7 +43,7 @@ class RenderFramework;
class VulkanInstance;
class GPUPhysicalDevice;
class GPUDevice;
struct GPUDeviceAttribute;
struct VkDevAttr;
class DeviceQueue;
class ImageView;
class Framebuffer;

View File

@@ -12,7 +12,7 @@ class GPUCmdBuffer
{
protected:
const GPUDeviceAttribute *dev_attr;
const VkDevAttr *dev_attr;
VkCommandBuffer cmd_buf;
@@ -20,7 +20,7 @@ protected:
public:
GPUCmdBuffer(const GPUDeviceAttribute *attr,VkCommandBuffer cb);
GPUCmdBuffer(const VkDevAttr *attr,VkCommandBuffer cb);
virtual ~GPUCmdBuffer();
operator VkCommandBuffer(){return cmd_buf;}
@@ -70,7 +70,7 @@ private:
public:
RenderCmdBuffer(const GPUDeviceAttribute *attr,VkCommandBuffer cb);
RenderCmdBuffer(const VkDevAttr *attr,VkCommandBuffer cb);
~RenderCmdBuffer();
void SetDescriptorBinding(DescriptorBinding *db) { desc_binding=db; }
@@ -264,7 +264,7 @@ class TextureCmdBuffer:public GPUCmdBuffer
public:
TextureCmdBuffer(const GPUDeviceAttribute *attr,VkCommandBuffer cb):GPUCmdBuffer(attr,cb)
TextureCmdBuffer(const VkDevAttr *attr,VkCommandBuffer cb):GPUCmdBuffer(attr,cb)
{
imageMemoryBarrier.sType=VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER;
imageMemoryBarrier.pNext=nullptr;

View File

@@ -1,5 +1,4 @@
#ifndef HGL_GRAPH_VULKAN_DEVICE_INCLUDE
#define HGL_GRAPH_VULKAN_DEVICE_INCLUDE
#pragma once
#include<hgl/type/ArrayList.h>
#include<hgl/type/String.h>
@@ -30,7 +29,7 @@ struct CopyBufferToImageInfo;
class GPUDevice
{
GPUDeviceAttribute *attr;
VkDevAttr *attr;
private:
@@ -40,14 +39,14 @@ private:
friend class VulkanDeviceCreater;
GPUDevice(GPUDeviceAttribute *da);
GPUDevice(VkDevAttr *da);
public:
virtual ~GPUDevice();
operator VkDevice () {return attr->device;}
GPUDeviceAttribute *GetDeviceAttribute () {return attr;}
VkDevAttr *GetDeviceAttribute () {return attr;}
VkSurfaceKHR GetSurface () {return attr->surface;}
VkDevice GetDevice ()const {return attr->device;}
@@ -175,4 +174,3 @@ public:
TileFont *CreateTileFont(FontSource *fs,int limit_count=-1); ///<创建一个Tile字体
};//class GPUDevice
VK_NAMESPACE_END
#endif//HGL_GRAPH_VULKAN_DEVICE_INCLUDE

View File

@@ -11,7 +11,7 @@ VK_NAMESPACE_BEGIN
constexpr uint32_t ERROR_FAMILY_INDEX=UINT32_MAX;
struct GPUDeviceAttribute
struct VkDevAttr
{
VulkanInstance * instance =nullptr;
const GPUPhysicalDevice * physical_device =nullptr;
@@ -34,7 +34,7 @@ struct GPUDeviceAttribute
VkQueue present_queue =VK_NULL_HANDLE;
VkSurfaceFormatKHR surface_format;
ArrayList<VkPresentModeKHR> present_modes;
ArrayList<VkPresentModeKHR> present_modes;
VkSurfaceTransformFlagBitsKHR preTransform;
VkCompositeAlphaFlagBitsKHR compositeAlpha =VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR;
@@ -55,8 +55,8 @@ struct GPUDeviceAttribute
public:
GPUDeviceAttribute(VulkanInstance *inst,const GPUPhysicalDevice *pd,VkSurfaceKHR s);
~GPUDeviceAttribute();
VkDevAttr(VulkanInstance *inst,const GPUPhysicalDevice *pd,VkSurfaceKHR s);
~VkDevAttr();
int GetMemoryType(uint32_t typeBits,VkMemoryPropertyFlags properties) const;
@@ -75,5 +75,5 @@ public:
{
return instance->GetDeviceProc<T>(device,name);
}
};//class GPUDeviceAttribute
};//class VkDevAttr
VK_NAMESPACE_END

View File

@@ -19,7 +19,7 @@ public:
GPUDevice * GetDevice (); ///<取得GPU设备
VkDevice GetVkDevice ()const; ///<取得VkDevice
const GPUPhysicalDevice * GetPhysicalDevice ()const; ///<取得物理设备
GPUDeviceAttribute *GetDeviceAttribute ()const; ///<取得设备属性
VkDevAttr *GetDeviceAttribute ()const; ///<取得设备属性
VkPipelineCache GetPipelineCache ()const; ///<取得PipelineCache
public:

View File

@@ -52,13 +52,13 @@ public:
DEFINE_MATERIAL_FACTORY_CLASS(VertexColor2D,CreateVertexColor2D,const Material2DCreateConfig)
MaterialCreateInfo *CreatePureColor2D(const GPUDeviceAttribute *dev_attr,const Material2DCreateConfig *);
MaterialCreateInfo *CreatePureColor2D(const VkDevAttr *dev_attr,const Material2DCreateConfig *);
MaterialCreateInfo *CreateLerpLine2D(const GPUDeviceAttribute *dev_attr,const Material2DCreateConfig *);
MaterialCreateInfo *CreateLerpLine2D(const VkDevAttr *dev_attr,const Material2DCreateConfig *);
MaterialCreateInfo *CreatePureTexture2D(const GPUDeviceAttribute *dev_attr,const Material2DCreateConfig *);
MaterialCreateInfo *CreateRectTexture2D(const GPUDeviceAttribute *dev_attr,Material2DCreateConfig *);
MaterialCreateInfo *CreateRectTexture2DArray(const GPUDeviceAttribute *dev_attr,Material2DCreateConfig *);
MaterialCreateInfo *CreatePureTexture2D(const VkDevAttr *dev_attr,const Material2DCreateConfig *);
MaterialCreateInfo *CreateRectTexture2D(const VkDevAttr *dev_attr,Material2DCreateConfig *);
MaterialCreateInfo *CreateRectTexture2DArray(const VkDevAttr *dev_attr,Material2DCreateConfig *);
// 为什么有了LoadMaterialFromFile还需要保留以上Create系列函数
@@ -72,6 +72,6 @@ MaterialCreateInfo *CreateRectTexture2DArray(const GPUDeviceAttribute *dev_attr,
* @param cfg 材质创建参数
* @return 材质创建信息
*/
MaterialCreateInfo *LoadMaterialFromFile(const GPUDeviceAttribute *dev_attr,const AnsiString &mtl_name,Material2DCreateConfig *cfg); ///<从文件加载材质
MaterialCreateInfo *LoadMaterialFromFile(const VkDevAttr *dev_attr,const AnsiString &mtl_name,Material2DCreateConfig *cfg); ///<从文件加载材质
STD_MTL_NAMESPACE_END

View File

@@ -50,10 +50,10 @@ public:
}
};//struct Material3DCreateConfig:public MaterialCreateConfig
MaterialCreateInfo *CreateVertexColor3D(const GPUDeviceAttribute *dev_attr,const Material3DCreateConfig *);
MaterialCreateInfo *CreateVertexLuminance3D(const GPUDeviceAttribute *dev_attr,const Material3DCreateConfig *);
MaterialCreateInfo *CreateVertexColor3D(const VkDevAttr *dev_attr,const Material3DCreateConfig *);
MaterialCreateInfo *CreateVertexLuminance3D(const VkDevAttr *dev_attr,const Material3DCreateConfig *);
MaterialCreateInfo *CreateMaterialGizmo3D(const GPUDeviceAttribute *dev_attr,const Material3DCreateConfig *cfg);
MaterialCreateInfo *CreateMaterialGizmo3D(const VkDevAttr *dev_attr,const Material3DCreateConfig *cfg);
struct BillboardMaterialCreateConfig:public Material3DCreateConfig
{
@@ -66,7 +66,7 @@ public:
using Material3DCreateConfig::Material3DCreateConfig;
};
MaterialCreateInfo *CreateBillboard2D(const GPUDeviceAttribute *dev_attr,mtl::BillboardMaterialCreateConfig *);
MaterialCreateInfo *CreateBillboard2D(const VkDevAttr *dev_attr,mtl::BillboardMaterialCreateConfig *);
/**
* 从文件加载材质
@@ -74,5 +74,5 @@ MaterialCreateInfo *CreateBillboard2D(const GPUDeviceAttribute *dev_attr,mtl::Bi
* @param cfg 材质创建参数
* @return 材质创建信息
*/
MaterialCreateInfo *LoadMaterialFromFile(const GPUDeviceAttribute *dev_attr,const AnsiString &name,Material3DCreateConfig *cfg);
MaterialCreateInfo *LoadMaterialFromFile(const VkDevAttr *dev_attr,const AnsiString &name,Material3DCreateConfig *cfg);
STD_MTL_NAMESPACE_END

View File

@@ -27,7 +27,7 @@ public:
//virtual const CoordinateSystem2D get2DCoordinateSystem()const=0;
virtual MaterialCreateInfo *Create(const GPUDeviceAttribute *dev_attr,MaterialCreateConfig *)=0;
virtual MaterialCreateInfo *Create(const VkDevAttr *dev_attr,MaterialCreateConfig *)=0;
};//class MaterialFactory
@@ -45,7 +45,7 @@ public:
};//class RegistryMaterialFactoryClass
#define DEFINE_MATERIAL_FACTORY_CLASS(name,create_func,cfg_type) \
MaterialCreateInfo *Create##name(const GPUDeviceAttribute *dev_attr,cfg_type *); \
MaterialCreateInfo *Create##name(const VkDevAttr *dev_attr,cfg_type *); \
\
namespace \
{ \
@@ -59,7 +59,7 @@ namespace \
return mtl_name; \
} \
\
MaterialCreateInfo *Create(const GPUDeviceAttribute *dev_attr,MaterialCreateConfig *cfg) override \
MaterialCreateInfo *Create(const VkDevAttr *dev_attr,MaterialCreateConfig *cfg) override \
{ \
return create_func(dev_attr,(cfg_type *)cfg); \
} \
@@ -68,16 +68,16 @@ namespace \
static RegistryMaterialFactoryClass<MaterialFactory##name> MaterialFactoryInstance_##name; \
}
MaterialCreateInfo *CreateMaterialCreateInfo(const GPUDeviceAttribute *dev_attr,const MaterialName &,MaterialCreateConfig *cfg);
MaterialCreateInfo *CreateMaterialCreateInfo(const VkDevAttr *dev_attr,const MaterialName &,MaterialCreateConfig *cfg);
inline MaterialCreateInfo *CreateMaterialCreateInfo(const GPUDeviceAttribute *dev_attr,const char *mtl_name,MaterialCreateConfig *cfg)
inline MaterialCreateInfo *CreateMaterialCreateInfo(const VkDevAttr *dev_attr,const char *mtl_name,MaterialCreateConfig *cfg)
{
MaterialName mtl_id_name(mtl_name);
return CreateMaterialCreateInfo(dev_attr,mtl_id_name,cfg);
}
inline MaterialCreateInfo *CreateMaterialCreateInfo(const GPUDeviceAttribute *dev_attr,const AnsiString &mtl_name,MaterialCreateConfig *cfg)
inline MaterialCreateInfo *CreateMaterialCreateInfo(const VkDevAttr *dev_attr,const AnsiString &mtl_name,MaterialCreateConfig *cfg)
{
MaterialName mtl_id_name(mtl_name);

View File

@@ -19,7 +19,7 @@ namespace hgl::graph
class ShaderCreateInfoVertex;
class ShaderCreateInfoGeometry;
class ShaderCreateInfoFragment;
struct GPUDeviceAttribute;
struct VkDevAttr;
namespace mtl
{
@@ -51,7 +51,7 @@ namespace hgl::graph
StdMaterial(const MaterialCreateConfig *);
virtual ~StdMaterial()=default;
virtual MaterialCreateInfo *Create(const GPUDeviceAttribute *dev_attr);
virtual MaterialCreateInfo *Create(const VkDevAttr *dev_attr);
};//class StdMaterial
}//namespace mtl
}//namespace hgl::graph