GPUDeviceAttribute更名为VkDevAttr
This commit is contained in:
@@ -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;}
|
||||
|
||||
|
@@ -43,7 +43,7 @@ class RenderFramework;
|
||||
class VulkanInstance;
|
||||
class GPUPhysicalDevice;
|
||||
class GPUDevice;
|
||||
struct GPUDeviceAttribute;
|
||||
struct VkDevAttr;
|
||||
class DeviceQueue;
|
||||
class ImageView;
|
||||
class Framebuffer;
|
||||
|
@@ -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;
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -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:
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -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);
|
||||
|
||||
|
@@ -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
|
||||
|
Reference in New Issue
Block a user