相对完整流程:
Shader* vert_shader = ...;
Shader* frag_shader = ...;
PipelineLayout::Layout layout;
layout << (*vert_shader) << (*frag_shader) << other...;
Pipeline::CreateInfo create_info = {};
create_info << (*vert_shader) << (*frag_shader) << layout << other...;
Pipeline* pipeline = new Pipeline()
按照自动解析推导结果流程:
Shader* vert_shader = ...;
Shader* frag_shader = ...;
PushConstantsOffsets offsets;
offsets.Merge(VERTEX_SHADER, 0);
offsets.Merge(FRAGMENT_SHADER, 16);
Pipeline::CreateInfo create_info = {};
create_info << (*vert_shader) << (*frag_shader) << offsets << other...;
Pipeline* pipeline = new Pipeline()
相对完整流程:
Shader* vert_shader = ...; Shader* frag_shader = ...; PipelineLayout::Layout layout; layout << (*vert_shader) << (*frag_shader) << other...; Pipeline::CreateInfo create_info = {}; create_info << (*vert_shader) << (*frag_shader) << layout << other...; Pipeline* pipeline = new Pipeline()按照自动解析推导结果流程: