X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fvk.h;fp=src%2Fvk.h;h=f4187d3203e7dae040a0fe5f6ee6a80a9b25074d;hb=3319bddd8188f6dc7e575169f3a0a53a93b3a8c7;hp=f93634fb3a51a861e9257d3af44181b0869bfc81;hpb=2e799cccf8c1d15e49e8aaab06f9d91e61139d2e;p=vktest3 diff --git a/src/vk.h b/src/vk.h index f93634f..f4187d3 100644 --- a/src/vk.h +++ b/src/vk.h @@ -40,6 +40,7 @@ enum { VKSDR_MAX }; +#define VKSDR_STAGE(x) (1 << (x)) /* primitives */ enum { @@ -79,19 +80,22 @@ VkFramebuffer vk_fb(int fb); int vk_create_pipeln(void); void vk_free_pipeln(int pp); -void vk_viewport(int pp, int x, int y, int width, int height); -void vk_scissor(int pp, int x, int y, int width, int height); +void vk_pipeln_rpass(int pp, VkRenderPass rp); +void vk_pipeln_viewport(int pp, int x, int y, int width, int height); +void vk_pipeln_scissor(int pp, int x, int y, int width, int height); void vk_pipeln_shader(int pp, int type, VkShaderModule sdr); /* TODO: vertex input */ void vk_pipeln_prim(int pp, int prim); void vk_pipeln_polymode(int pp, int mode); void vk_pipeln_cull(int pp, int cull); void vk_pipeln_frontface(int pp, int ff); +void vk_pipeln_linewidth(int pp, int w); void vk_pipeln_multisample(int pp, int nsamples); void vk_pipeln_colormask(int pp, int r, int g, int b, int a); void vk_pipeln_depthmask(int pp, int z); void vk_pipeln_stencilmask(int pp, int s); void vk_pipeln_zbuffer(int pp, int enable); +void vk_pipeln_zbuffer_op(int pp, int op); void vk_pipeln_stencil(int pp, int enable); void vk_pipeln_stencil_op(int pp, int sfail, int zfail, int zpass); void vk_pipeln_stencil_func(int pp, int op, unsigned int ref, unsigned int mask);