改为有vertex input的测试

This commit is contained in:
HuYingzhuo 2019-04-20 17:18:02 +08:00
parent 13dfb99af9
commit e9408e9b24
2 changed files with 43 additions and 43 deletions

View File

@ -81,7 +81,7 @@ PipelineCreater::PipelineCreater(Device *dev)
rasterizer.rasterizerDiscardEnable = VK_FALSE; rasterizer.rasterizerDiscardEnable = VK_FALSE;
rasterizer.polygonMode = VK_POLYGON_MODE_FILL; rasterizer.polygonMode = VK_POLYGON_MODE_FILL;
rasterizer.cullMode = VK_CULL_MODE_FRONT_AND_BACK; rasterizer.cullMode = VK_CULL_MODE_FRONT_AND_BACK;
rasterizer.frontFace = VK_FRONT_FACE_CLOCKWISE; rasterizer.frontFace = VK_FRONT_FACE_COUNTER_CLOCKWISE;
rasterizer.depthBiasEnable = VK_FALSE; rasterizer.depthBiasEnable = VK_FALSE;
rasterizer.depthBiasConstantFactor = 0; rasterizer.depthBiasConstantFactor = 0;
rasterizer.depthBiasClamp = 0; rasterizer.depthBiasClamp = 0;

View File

@ -70,43 +70,43 @@ vulkan::Shader *LoadShader(VkDevice device)
return(nullptr); return(nullptr);
} }
//constexpr float vertex_data[]={0.0f,0.5f, -0.5f,-0.5f, 0.5f,-0.5f }; constexpr float vertex_data[]={0.0f,0.5f, -0.5f,-0.5f, 0.5f,-0.5f };
//constexpr float color_data[]={1,0,0, 0,1,0, 0,0,1 }; constexpr float color_data[]={1,0,0, 0,1,0, 0,0,1 };
//
//vulkan::VertexBuffer *vertex_buffer=nullptr; vulkan::VertexBuffer *vertex_buffer=nullptr;
//vulkan::VertexBuffer *color_buffer=nullptr; vulkan::VertexBuffer *color_buffer=nullptr;
//
//vulkan::VertexInput *CreateVertexBuffer(vulkan::Device *dev) vulkan::VertexInput *CreateVertexBuffer(vulkan::Device *dev)
//{ {
// vertex_buffer=dev->CreateVBO(FMT_RG32F,6*sizeof(float)); vertex_buffer=dev->CreateVBO(FMT_RG32F,6*sizeof(float));
// color_buffer=dev->CreateVBO(FMT_RGB32F,9*sizeof(float)); color_buffer=dev->CreateVBO(FMT_RGB32F,9*sizeof(float));
//
// { {
// float *p=(float *)vertex_buffer->Map(); float *p=(float *)vertex_buffer->Map();
//
// memcpy(p,vertex_data,6*sizeof(float)); memcpy(p,vertex_data,6*sizeof(float));
//
// vertex_buffer->Unmap(); vertex_buffer->Unmap();
// } }
//
// { {
// float *p=(float *)color_buffer->Map(); float *p=(float *)color_buffer->Map();
//
// memcpy(p,color_data,9*sizeof(float)); memcpy(p,color_data,9*sizeof(float));
//
// color_buffer->Unmap(); color_buffer->Unmap();
// } }
//
// vulkan::VertexInput *vi=new vulkan::VertexInput(); vulkan::VertexInput *vi=new vulkan::VertexInput();
//
// constexpr uint32_t position_shader_location=0; //对应shader中的layout(locaiton=0暂时这样写 constexpr uint32_t position_shader_location=0; //对应shader中的layout(locaiton=0暂时这样写
// constexpr uint32_t color_shader_location=1; constexpr uint32_t color_shader_location=1;
//
// vi->Add(position_shader_location, vertex_buffer); vi->Add(position_shader_location, vertex_buffer);
// vi->Add(color_shader_location, color_buffer); vi->Add(color_shader_location, color_buffer);
//
// return vi; return vi;
//} }
void wait_seconds(int seconds) { void wait_seconds(int seconds) {
#ifdef WIN32 #ifdef WIN32
@ -170,8 +170,8 @@ int main(int,char **)
return -3; return -3;
vulkan::Semaphore *sem=device->CreateSem(); vulkan::Semaphore *sem=device->CreateSem();
// vulkan::VertexInput *vi=CreateVertexBuffer(device); vulkan::VertexInput *vi=CreateVertexBuffer(device);
vulkan::PipelineCreater pc(device); vulkan::PipelineCreater pc(device);
vulkan::RenderPass *rp=device->CreateRenderPass(); vulkan::RenderPass *rp=device->CreateRenderPass();
@ -181,7 +181,7 @@ int main(int,char **)
vulkan::PipelineLayout *pl=CreatePipelineLayout(device->GetDevice(),dsl); vulkan::PipelineLayout *pl=CreatePipelineLayout(device->GetDevice(),dsl);
pc.Set(shader); pc.Set(shader);
//pc.Set(vi); pc.Set(vi);
pc.Set(PRIM_TRIANGLES); pc.Set(PRIM_TRIANGLES);
pc.Set(*pl); pc.Set(*pl);
pc.Set(*rp); pc.Set(*rp);
@ -202,7 +202,7 @@ int main(int,char **)
cmd_buf->Begin(rp,fb[0]); cmd_buf->Begin(rp,fb[0]);
cmd_buf->Bind(pipeline); cmd_buf->Bind(pipeline);
cmd_buf->Bind(pl); cmd_buf->Bind(pl);
// cmd_buf->Bind(vi); cmd_buf->Bind(vi);
cmd_buf->Draw(3); cmd_buf->Draw(3);
cmd_buf->End(); cmd_buf->End();
@ -224,7 +224,7 @@ int main(int,char **)
delete sem; delete sem;
delete rp; delete rp;
// delete vi; delete vi;
// delete ubo; // delete ubo;
delete shader; delete shader;