remove vulkan namespace
This commit is contained in:
@@ -37,13 +37,13 @@ private:
|
||||
SceneNode render_root;
|
||||
RenderList render_list;
|
||||
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
vulkan::Pipeline * pipeline_solid =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
Pipeline * pipeline_solid =nullptr;
|
||||
|
||||
vulkan::GPUBuffer * ubo_atomsphere =nullptr;
|
||||
AtmosphereData atomsphere_data;
|
||||
GPUBuffer * ubo_atomsphere =nullptr;
|
||||
AtmosphereData atomsphere_data;
|
||||
|
||||
vulkan::Renderable * ro_sphere =nullptr;
|
||||
Renderable * ro_sphere =nullptr;
|
||||
|
||||
private:
|
||||
|
||||
@@ -53,7 +53,7 @@ private:
|
||||
if(!material_instance)return(false);
|
||||
|
||||
// pipeline_solid=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/sky"));
|
||||
pipeline_solid=CreatePipeline(material_instance,vulkan::InlinePipeline::Sky); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||
pipeline_solid=CreatePipeline(material_instance,InlinePipeline::Sky); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||
if(!pipeline_solid)return(false);
|
||||
|
||||
return(true);
|
||||
|
@@ -22,7 +22,7 @@ VK_NAMESPACE_END
|
||||
constexpr uint32_t SCREEN_WIDTH=512;
|
||||
constexpr uint32_t SCREEN_HEIGHT=512;
|
||||
|
||||
using Texture2DPointer=vulkan::Texture2D *;
|
||||
using Texture2DPointer=Texture2D *;
|
||||
|
||||
class TestApp:public CameraAppFramework
|
||||
{
|
||||
@@ -31,20 +31,20 @@ private:
|
||||
SceneNode render_root;
|
||||
RenderList render_list;
|
||||
|
||||
vulkan::RenderTarget *gbuffer_rt;
|
||||
RenderTarget *gbuffer_rt;
|
||||
|
||||
struct SubpassParam
|
||||
{
|
||||
vulkan::Material * material;
|
||||
vulkan::MaterialInstance * material_instance;
|
||||
vulkan::Pipeline * pipeline_fan;
|
||||
vulkan::Pipeline * pipeline_triangles;
|
||||
Material * material;
|
||||
MaterialInstance * material_instance;
|
||||
Pipeline * pipeline_fan;
|
||||
Pipeline * pipeline_triangles;
|
||||
};//
|
||||
|
||||
SubpassParam sp_gbuffer;
|
||||
SubpassParam sp_composition;
|
||||
|
||||
vulkan::Renderable *ro_plane,
|
||||
Renderable *ro_plane,
|
||||
*ro_cube,
|
||||
*ro_sphere,
|
||||
*ro_torus,
|
||||
@@ -53,7 +53,7 @@ private:
|
||||
|
||||
*ro_gbc_plane;
|
||||
|
||||
vulkan::Sampler * sampler=nullptr;
|
||||
Sampler * sampler=nullptr;
|
||||
|
||||
struct
|
||||
{
|
||||
@@ -61,7 +61,7 @@ private:
|
||||
Texture2DPointer normal=nullptr;
|
||||
}texture;
|
||||
|
||||
vulkan::GPUCmdBuffer *gbuffer_cmd=nullptr;
|
||||
GPUCmdBuffer *gbuffer_cmd=nullptr;
|
||||
|
||||
public:
|
||||
|
||||
@@ -101,18 +101,18 @@ private:
|
||||
|
||||
bool InitGBufferPipeline(SubpassParam *sp)
|
||||
{
|
||||
sp->pipeline_triangles =db->CreatePipeline(sp->material,gbuffer_rt,vulkan::InlinePipeline::Solid3D,Prim::Triangles);
|
||||
sp->pipeline_triangles =db->CreatePipeline(sp->material,gbuffer_rt,InlinePipeline::Solid3D,Prim::Triangles);
|
||||
if(!sp->pipeline_triangles)
|
||||
return(false);
|
||||
|
||||
sp->pipeline_fan =db->CreatePipeline(sp->material,gbuffer_rt,vulkan::InlinePipeline::Solid3D,Prim::Fan);
|
||||
sp->pipeline_fan =db->CreatePipeline(sp->material,gbuffer_rt,InlinePipeline::Solid3D,Prim::Fan);
|
||||
|
||||
return sp->pipeline_fan;
|
||||
}
|
||||
|
||||
bool InitCompositionPipeline(SubpassParam *sp)
|
||||
{
|
||||
sp->pipeline_fan=db->CreatePipeline(sp->material,gbuffer_rt,vulkan::InlinePipeline::Solid2D,Prim::Fan);
|
||||
sp->pipeline_fan=db->CreatePipeline(sp->material,gbuffer_rt,InlinePipeline::Solid2D,Prim::Fan);
|
||||
|
||||
return sp->pipeline_fan;
|
||||
}
|
||||
@@ -125,8 +125,8 @@ private:
|
||||
if(!InitGBufferPipeline(&sp_gbuffer))return(false);
|
||||
if(!InitCompositionPipeline(&sp_composition))return(false);
|
||||
|
||||
texture.color =vulkan::CreateTextureFromFile(device,OS_TEXT("res/image/Brickwall/Albedo.Tex2D"));
|
||||
texture.normal =vulkan::CreateTextureFromFile(device,OS_TEXT("res/image/Brickwall/Normal.Tex2D"));
|
||||
texture.color =CreateTextureFromFile(device,OS_TEXT("res/image/Brickwall/Albedo.Tex2D"));
|
||||
texture.normal =CreateTextureFromFile(device,OS_TEXT("res/image/Brickwall/Normal.Tex2D"));
|
||||
|
||||
sampler=device->CreateSampler();
|
||||
|
||||
@@ -144,7 +144,7 @@ private:
|
||||
return(true);
|
||||
}
|
||||
|
||||
void CreateRenderObject(vulkan::Material *mtl)
|
||||
void CreateRenderObject(Material *mtl)
|
||||
{
|
||||
{
|
||||
struct PlaneCreateInfo pci;
|
||||
|
@@ -26,12 +26,12 @@ class TestApp:public VulkanApplicationFramework
|
||||
|
||||
private:
|
||||
|
||||
vulkan::Sampler * sampler =nullptr;
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
vulkan::GPUBuffer * ubo_world_matrix =nullptr;
|
||||
vulkan::GPUBuffer * ubo_color =nullptr;
|
||||
Sampler * sampler =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_color =nullptr;
|
||||
|
||||
vulkan::Pipeline * pipeline =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
private:
|
||||
|
||||
@@ -59,7 +59,7 @@ private:
|
||||
material_instance=db->CreateMaterialInstance(OS_TEXT("res/material/LumTextureRect2D"));
|
||||
if(!material_instance)return(false);
|
||||
|
||||
pipeline=CreatePipeline(material_instance,vulkan::InlinePipeline::Solid2D,Prim::Rectangles);
|
||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,Prim::Rectangles);
|
||||
if(!pipeline)return(false);
|
||||
|
||||
sampler=db->CreateSampler();
|
||||
|
@@ -38,13 +38,13 @@ class TestApp:public VulkanApplicationFramework
|
||||
|
||||
private:
|
||||
|
||||
vulkan::Sampler * sampler =nullptr;
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
vulkan::Renderable * render_obj =nullptr;
|
||||
vulkan::RenderableInstance *render_instance =nullptr;
|
||||
vulkan::GPUBuffer * ubo_world_matrix =nullptr;
|
||||
Sampler * sampler =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
Renderable * render_obj =nullptr;
|
||||
RenderableInstance *render_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
|
||||
vulkan::Pipeline * pipeline =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
public:
|
||||
|
||||
@@ -150,7 +150,7 @@ private:
|
||||
if(!material_instance)
|
||||
return(false);
|
||||
|
||||
pipeline=CreatePipeline(material_instance,vulkan::InlinePipeline::Solid2D,Prim::Rectangles);
|
||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,Prim::Rectangles);
|
||||
|
||||
sampler=db->CreateSampler();
|
||||
|
||||
|
@@ -26,11 +26,11 @@ private:
|
||||
|
||||
Camera cam;
|
||||
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
vulkan::RenderableInstance *renderable_instance =nullptr;
|
||||
vulkan::GPUBuffer * ubo_world_matrix =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
RenderableInstance *renderable_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
|
||||
vulkan::Pipeline * pipeline =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
private:
|
||||
|
||||
@@ -41,7 +41,7 @@ private:
|
||||
if(!material_instance)
|
||||
return(false);
|
||||
|
||||
pipeline=CreatePipeline(material_instance,vulkan::InlinePipeline::Solid2D,Prim::TriangleStrip);
|
||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,Prim::TriangleStrip);
|
||||
|
||||
if(!pipeline)
|
||||
return(false);
|
||||
|
@@ -28,17 +28,17 @@ private:
|
||||
SceneNode render_root;
|
||||
RenderList render_list;
|
||||
|
||||
vulkan::Material * material =nullptr;
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
Material * material =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
|
||||
vulkan::Renderable *ro_rectangle =nullptr,
|
||||
Renderable *ro_rectangle =nullptr,
|
||||
*ro_circle =nullptr,
|
||||
*ro_round_rectangle =nullptr;
|
||||
|
||||
vulkan::GPUBuffer * ubo_world_matrix =nullptr;
|
||||
vulkan::GPUBuffer * ubo_color_material =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_color_material =nullptr;
|
||||
|
||||
vulkan::Pipeline * pipeline =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
private:
|
||||
|
||||
@@ -52,7 +52,7 @@ private:
|
||||
|
||||
if(!material_instance)return(false);
|
||||
|
||||
pipeline=CreatePipeline(material,vulkan::InlinePipeline::Solid2D,Prim::Fan);
|
||||
pipeline=CreatePipeline(material,InlinePipeline::Solid2D,Prim::Fan);
|
||||
|
||||
return pipeline;
|
||||
}
|
||||
@@ -92,9 +92,9 @@ private:
|
||||
}
|
||||
}
|
||||
|
||||
vulkan::GPUBuffer *CreateUBO(const AnsiString &name,const VkDeviceSize size,void *data)
|
||||
GPUBuffer *CreateUBO(const AnsiString &name,const VkDeviceSize size,void *data)
|
||||
{
|
||||
vulkan::GPUBuffer *ubo=db->CreateUBO(size,data);
|
||||
GPUBuffer *ubo=db->CreateUBO(size,data);
|
||||
|
||||
if(!ubo)
|
||||
return(nullptr);
|
||||
|
@@ -16,7 +16,7 @@ class TestApp:public CameraAppFramework
|
||||
{
|
||||
Color4f color;
|
||||
|
||||
vulkan::GPUBuffer *ubo_color=nullptr;
|
||||
GPUBuffer *ubo_color=nullptr;
|
||||
|
||||
private:
|
||||
|
||||
@@ -25,12 +25,12 @@ private:
|
||||
|
||||
struct MDP
|
||||
{
|
||||
vulkan::Material * material =nullptr;
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
vulkan::Pipeline * pipeline =nullptr;
|
||||
Material * material =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
}m3d,m2d;
|
||||
|
||||
vulkan::Renderable *ro_plane_grid[3],
|
||||
Renderable *ro_plane_grid[3],
|
||||
*ro_round_rectangle =nullptr;
|
||||
|
||||
private:
|
||||
@@ -43,7 +43,7 @@ private:
|
||||
mdp->material_instance=db->CreateMaterialInstance(mdp->material);
|
||||
if(!mdp->material_instance)return(false);
|
||||
|
||||
mdp->pipeline=CreatePipeline(mdp->material_instance,vulkan::InlinePipeline::Solid3D,primitive);
|
||||
mdp->pipeline=CreatePipeline(mdp->material_instance,InlinePipeline::Solid3D,primitive);
|
||||
|
||||
if(!mdp->material_instance->BindUBO("world",GetCameraMatrixBuffer()))
|
||||
return(false);
|
||||
@@ -52,14 +52,14 @@ private:
|
||||
return(true);
|
||||
}
|
||||
|
||||
void Add(vulkan::Renderable *r,MDP &mdp)
|
||||
void Add(Renderable *r,MDP &mdp)
|
||||
{
|
||||
auto ri=db->CreateRenderableInstance(r,mdp.material_instance,mdp.pipeline);
|
||||
|
||||
render_root.Add(ri);
|
||||
}
|
||||
|
||||
void Add(vulkan::Renderable *r,MDP &mdp,const Matrix4f &mat)
|
||||
void Add(Renderable *r,MDP &mdp,const Matrix4f &mat)
|
||||
{
|
||||
auto ri=db->CreateRenderableInstance(r,mdp.material_instance,mdp.pipeline);
|
||||
|
||||
|
@@ -45,28 +45,28 @@ class TestApp:public VulkanApplicationFramework
|
||||
{
|
||||
private:
|
||||
|
||||
vulkan::PipelineData * pipeline_data =nullptr;
|
||||
vulkan::Renderable * render_obj =nullptr;
|
||||
vulkan::Sampler * sampler_linear =nullptr;
|
||||
vulkan::Sampler * sampler_nearest =nullptr;
|
||||
PipelineData * pipeline_data =nullptr;
|
||||
Renderable * render_obj =nullptr;
|
||||
Sampler * sampler_linear =nullptr;
|
||||
Sampler * sampler_nearest =nullptr;
|
||||
|
||||
struct MP
|
||||
{
|
||||
vulkan::Material * material =nullptr;
|
||||
vulkan::Pipeline * pipeline =nullptr;
|
||||
Material * material =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
}mp_normal,mp_hq;
|
||||
|
||||
struct MIR
|
||||
{
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
vulkan::RenderableInstance *renderable_instance =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
RenderableInstance *renderable_instance =nullptr;
|
||||
}mir_nearest,mir_linear,mir_nearest_hq,mir_linear_hq;
|
||||
|
||||
vulkan::Texture2D * texture =nullptr;
|
||||
Texture2D * texture =nullptr;
|
||||
|
||||
vulkan::VAB * vertex_buffer =nullptr;
|
||||
vulkan::VAB * tex_coord_buffer =nullptr;
|
||||
vulkan::IndexBuffer * index_buffer =nullptr;
|
||||
VAB * vertex_buffer =nullptr;
|
||||
VAB * tex_coord_buffer =nullptr;
|
||||
IndexBuffer * index_buffer =nullptr;
|
||||
|
||||
SceneNode render_root;
|
||||
RenderList render_list;
|
||||
@@ -110,9 +110,9 @@ private:
|
||||
return(true);
|
||||
}
|
||||
|
||||
vulkan::Sampler *InitSampler(VkFilter filter)
|
||||
Sampler *InitSampler(VkFilter filter)
|
||||
{
|
||||
vulkan::SamplerCreateInfo sampler_create_info;
|
||||
SamplerCreateInfo sampler_create_info;
|
||||
|
||||
sampler_create_info.magFilter = filter;
|
||||
sampler_create_info.minFilter = filter;
|
||||
@@ -135,7 +135,7 @@ private:
|
||||
|
||||
bool InitTexture()
|
||||
{
|
||||
texture=vulkan::CreateTextureFromFile(device,OS_TEXT("res/image/heightmap.Tex2D"));
|
||||
texture=CreateTextureFromFile(device,OS_TEXT("res/image/heightmap.Tex2D"));
|
||||
return texture;
|
||||
}
|
||||
|
||||
@@ -152,7 +152,7 @@ private:
|
||||
|
||||
bool InitMaterial()
|
||||
{
|
||||
pipeline_data=vulkan::GetPipelineData(vulkan::InlinePipeline::Solid2D);
|
||||
pipeline_data=GetPipelineData(InlinePipeline::Solid2D);
|
||||
if(!pipeline_data)return(false);
|
||||
|
||||
if(!InitMaterial(&mp_normal,OS_TEXT("res/material/Texture2DPC")))return(false);
|
||||
@@ -161,7 +161,7 @@ private:
|
||||
return(true);
|
||||
}
|
||||
|
||||
bool InitMIR(struct MIR *mir,vulkan::Sampler *sampler,MP *mp)
|
||||
bool InitMIR(struct MIR *mir,Sampler *sampler,MP *mp)
|
||||
{
|
||||
mir->material_instance=db->CreateMaterialInstance(mp->material);
|
||||
if(!mir->material_instance)return(false);
|
||||
@@ -239,7 +239,7 @@ public:
|
||||
int main(int,char **)
|
||||
{
|
||||
#ifdef _DEBUG
|
||||
if(!vulkan::CheckStrideBytesByFormat())
|
||||
if(!CheckStrideBytesByFormat())
|
||||
return 0xff;
|
||||
#endif//
|
||||
|
||||
|
@@ -23,16 +23,16 @@ private:
|
||||
SceneNode render_root;
|
||||
RenderList render_list;
|
||||
|
||||
vulkan::Material * material =nullptr;
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
Material * material =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
|
||||
vulkan::PipelineData * pipeline_data =nullptr;
|
||||
vulkan::Pipeline * pipeline_line =nullptr;
|
||||
vulkan::Pipeline * pipeline_solid =nullptr;
|
||||
PipelineData * pipeline_data =nullptr;
|
||||
Pipeline * pipeline_line =nullptr;
|
||||
Pipeline * pipeline_solid =nullptr;
|
||||
|
||||
vulkan::GPUBuffer * ubo_color =nullptr;
|
||||
GPUBuffer * ubo_color =nullptr;
|
||||
|
||||
vulkan::Renderable *ro_plane_grid,
|
||||
Renderable *ro_plane_grid,
|
||||
*ro_cube,
|
||||
*ro_sphere,
|
||||
*ro_dome,
|
||||
@@ -50,7 +50,7 @@ private:
|
||||
material_instance=db->CreateMaterialInstance(material);
|
||||
if(!material_instance)return(false);
|
||||
|
||||
pipeline_data=vulkan::GetPipelineData(vulkan::InlinePipeline::Solid3D);
|
||||
pipeline_data=GetPipelineData(InlinePipeline::Solid3D);
|
||||
if(!pipeline_data)return(false);
|
||||
|
||||
pipeline_line=CreatePipeline(material,pipeline_data,Prim::Lines);
|
||||
@@ -155,14 +155,14 @@ private:
|
||||
return(true);
|
||||
}
|
||||
|
||||
void Add(vulkan::Renderable *r,vulkan::Pipeline *pl)
|
||||
void Add(Renderable *r,Pipeline *pl)
|
||||
{
|
||||
auto ri=db->CreateRenderableInstance(r,material_instance,pl);
|
||||
|
||||
render_root.Add(ri);
|
||||
}
|
||||
|
||||
void Add(vulkan::Renderable *r,vulkan::Pipeline *pl,const Matrix4f &mat)
|
||||
void Add(Renderable *r,Pipeline *pl,const Matrix4f &mat)
|
||||
{
|
||||
auto ri=db->CreateRenderableInstance(r,material_instance,pl);
|
||||
|
||||
|
@@ -15,24 +15,24 @@ class TestApp:public CameraAppFramework
|
||||
{
|
||||
Camera cam;
|
||||
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
vulkan::GPUBuffer * ubo_world_matrix =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
};
|
||||
|
||||
struct:public RenderObject
|
||||
{
|
||||
vulkan::RenderTarget * render_taget =nullptr;
|
||||
RenderTarget * render_taget =nullptr;
|
||||
|
||||
vulkan::Pipeline * pipeline =nullptr;
|
||||
vulkan::RenderableInstance *renderable_instance =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
RenderableInstance *renderable_instance =nullptr;
|
||||
}os;
|
||||
|
||||
struct:public RenderObject
|
||||
{
|
||||
vulkan::Sampler * sampler =nullptr;
|
||||
Sampler * sampler =nullptr;
|
||||
|
||||
vulkan::Pipeline * pipeline =nullptr;
|
||||
vulkan::RenderableInstance *renderable_instance =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
RenderableInstance *renderable_instance =nullptr;
|
||||
|
||||
SceneNode scene_root;
|
||||
RenderList render_list;
|
||||
@@ -70,7 +70,7 @@ public:
|
||||
os.material_instance=db->CreateMaterialInstance(OS_TEXT("res/material/VertexColor2D"));
|
||||
if(!os.material_instance)return(false);
|
||||
|
||||
os.pipeline=db->CreatePipeline(os.material_instance,os.render_taget,vulkan::InlinePipeline::Solid2D,Prim::Fan);
|
||||
os.pipeline=db->CreatePipeline(os.material_instance,os.render_taget,InlinePipeline::Solid2D,Prim::Fan);
|
||||
if(!os.pipeline)return(false);
|
||||
|
||||
if(!InitUBO(&os,os.render_taget->GetExtent()))
|
||||
@@ -86,7 +86,7 @@ public:
|
||||
cci.center_color.Set(1,1,1,1);
|
||||
cci.border_color.Set(1,1,1,0);
|
||||
|
||||
vulkan::Renderable *render_obj=CreateRenderableCircle(db,os.material_instance->GetMaterial(),&cci);
|
||||
Renderable *render_obj=CreateRenderableCircle(db,os.material_instance->GetMaterial(),&cci);
|
||||
if(!render_obj)return(false);
|
||||
|
||||
os.renderable_instance=db->CreateRenderableInstance(render_obj,os.material_instance,os.pipeline);
|
||||
@@ -107,7 +107,7 @@ public:
|
||||
cube.material_instance=db->CreateMaterialInstance(OS_TEXT("res/material/TextureMask3D"));
|
||||
if(!cube.material_instance)return(false);
|
||||
|
||||
cube.pipeline=CreatePipeline(cube.material_instance,vulkan::InlinePipeline::Solid3D);
|
||||
cube.pipeline=CreatePipeline(cube.material_instance,InlinePipeline::Solid3D);
|
||||
if(!cube.pipeline)return(false);
|
||||
|
||||
cube.sampler=db->CreateSampler();
|
||||
@@ -120,7 +120,7 @@ public:
|
||||
{
|
||||
CubeCreateInfo cci;
|
||||
|
||||
vulkan::Renderable *render_obj=CreateRenderableCube(db,cube.material_instance->GetMaterial(),&cci);
|
||||
Renderable *render_obj=CreateRenderableCube(db,cube.material_instance->GetMaterial(),&cci);
|
||||
if(!render_obj)return(false);
|
||||
|
||||
cube.renderable_instance=db->CreateRenderableInstance(render_obj,cube.material_instance,cube.pipeline);
|
||||
|
@@ -36,14 +36,14 @@ class TestApp:public VulkanApplicationFramework
|
||||
|
||||
private:
|
||||
|
||||
vulkan::Texture2D * texture =nullptr;
|
||||
vulkan::Sampler * sampler =nullptr;
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
vulkan::Renderable * render_obj =nullptr;
|
||||
vulkan::RenderableInstance *render_instance =nullptr;
|
||||
vulkan::GPUBuffer * ubo_world_matrix =nullptr;
|
||||
Texture2D * texture =nullptr;
|
||||
Sampler * sampler =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
Renderable * render_obj =nullptr;
|
||||
RenderableInstance *render_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
|
||||
vulkan::Pipeline * pipeline =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
private:
|
||||
|
||||
@@ -52,10 +52,10 @@ private:
|
||||
material_instance=db->CreateMaterialInstance(OS_TEXT("res/material/TextureRect2D"));
|
||||
if(!material_instance)return(false);
|
||||
|
||||
pipeline=CreatePipeline(material_instance,vulkan::InlinePipeline::Solid2D,Prim::Rectangles);
|
||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,Prim::Rectangles);
|
||||
if(!pipeline)return(false);
|
||||
|
||||
texture=vulkan::CreateTextureFromFile(device,OS_TEXT("res/image/lena.Tex2D"));
|
||||
texture=CreateTextureFromFile(device,OS_TEXT("res/image/lena.Tex2D"));
|
||||
if(!texture)return(false);
|
||||
|
||||
sampler=db->CreateSampler();
|
||||
|
@@ -35,7 +35,7 @@ constexpr char *data_type_name[]
|
||||
"SRGB"
|
||||
};//
|
||||
|
||||
vulkan::VulkanInstance *InitVulkanInstance()
|
||||
VulkanInstance *InitVulkanInstance()
|
||||
{
|
||||
#ifdef _DEBUG
|
||||
if(!CheckStrideBytesByFormat())
|
||||
@@ -56,15 +56,15 @@ vulkan::VulkanInstance *InitVulkanInstance()
|
||||
cili.lunarg.standard_validation=true;
|
||||
cili.khronos.validation=true;
|
||||
|
||||
return vulkan::CreateInstance("VulkanTest",nullptr,&cili);
|
||||
return CreateInstance("VulkanTest",nullptr,&cili);
|
||||
}
|
||||
|
||||
int main(int,char **)
|
||||
{
|
||||
Window * win =nullptr;
|
||||
vulkan::VulkanInstance * inst =nullptr;
|
||||
vulkan::GPUDevice * device =nullptr;
|
||||
const vulkan::GPUPhysicalDevice *physical_device =nullptr;
|
||||
VulkanInstance * inst =nullptr;
|
||||
GPUDevice * device =nullptr;
|
||||
const GPUPhysicalDevice *physical_device =nullptr;
|
||||
|
||||
inst=InitVulkanInstance();
|
||||
|
||||
|
@@ -32,11 +32,11 @@ private:
|
||||
|
||||
Camera cam;
|
||||
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
vulkan::RenderableInstance *render_instance =nullptr;
|
||||
vulkan::GPUBuffer * ubo_world_matrix =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
RenderableInstance *render_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
|
||||
vulkan::Pipeline * pipeline =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
private:
|
||||
|
||||
@@ -48,7 +48,7 @@ private:
|
||||
return(false);
|
||||
|
||||
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
||||
pipeline=CreatePipeline(material_instance,vulkan::InlinePipeline::Solid2D); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||
|
||||
return pipeline;
|
||||
}
|
||||
@@ -74,7 +74,7 @@ private:
|
||||
|
||||
bool InitVBO()
|
||||
{
|
||||
vulkan::Renderable *render_obj=db->CreateRenderable(VERTEX_COUNT);
|
||||
Renderable *render_obj=db->CreateRenderable(VERTEX_COUNT);
|
||||
if(!render_obj)return(false);
|
||||
|
||||
if(!render_obj->Set(VAN::Position, db->CreateVAB(VAF_VEC2,VERTEX_COUNT,vertex_data)))return(false);
|
||||
|
@@ -36,11 +36,11 @@ private:
|
||||
|
||||
Camera cam;
|
||||
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
vulkan::RenderableInstance *renderable_instance =nullptr;
|
||||
vulkan::GPUBuffer * ubo_world_matrix =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
RenderableInstance *renderable_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
|
||||
vulkan::Pipeline * pipeline =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
private:
|
||||
|
||||
@@ -49,7 +49,7 @@ private:
|
||||
material_instance=db->CreateMaterialInstance(OS_TEXT("res/material/FragColor"));
|
||||
if(!material_instance)return(false);
|
||||
|
||||
pipeline=CreatePipeline(material_instance,vulkan::InlinePipeline::Solid2D);
|
||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D);
|
||||
return(true);
|
||||
}
|
||||
|
||||
@@ -124,7 +124,7 @@ public:
|
||||
int main(int,char **)
|
||||
{
|
||||
#ifdef _DEBUG
|
||||
if(!vulkan::CheckStrideBytesByFormat())
|
||||
if(!CheckStrideBytesByFormat())
|
||||
return 0xff;
|
||||
#endif//
|
||||
|
||||
|
@@ -49,12 +49,12 @@ class TestApp:public VulkanApplicationFramework
|
||||
|
||||
private:
|
||||
|
||||
vulkan::Texture2D * texture =nullptr;
|
||||
vulkan::Sampler * sampler =nullptr;
|
||||
vulkan::MaterialInstance * material_instance =nullptr;
|
||||
vulkan::RenderableInstance *renderable_instance =nullptr;
|
||||
vulkan::GPUBuffer * ubo_world_matrix =nullptr;
|
||||
vulkan::Pipeline * pipeline =nullptr;
|
||||
Texture2D * texture =nullptr;
|
||||
Sampler * sampler =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
RenderableInstance *renderable_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
private:
|
||||
|
||||
@@ -63,10 +63,10 @@ private:
|
||||
material_instance=db->CreateMaterialInstance(OS_TEXT("res/material/Texture2D"));
|
||||
if(!material_instance)return(false);
|
||||
|
||||
pipeline=CreatePipeline(material_instance,vulkan::InlinePipeline::Solid2D);
|
||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D);
|
||||
if(!pipeline)return(false);
|
||||
|
||||
texture=vulkan::CreateTextureFromFile(device,OS_TEXT("res/image/lena.Tex2D"));
|
||||
texture=CreateTextureFromFile(device,OS_TEXT("res/image/lena.Tex2D"));
|
||||
if(!texture)return(false);
|
||||
|
||||
db->Add(texture);
|
||||
@@ -148,7 +148,7 @@ public:
|
||||
int main(int,char **)
|
||||
{
|
||||
#ifdef _DEBUG
|
||||
if(!vulkan::CheckStrideBytesByFormat())
|
||||
if(!CheckStrideBytesByFormat())
|
||||
return 0xff;
|
||||
#endif//
|
||||
|
||||
|
Reference in New Issue
Block a user