src/2d.c

changeset 270
3031d1bb5957
parent 269
f40054d711b3
equal deleted inserted replaced
269:f40054d711b3 270:3031d1bb5957
45 #define ASC_RECTANGLE_SHADER_FLAG_FILL 1 45 #define ASC_RECTANGLE_SHADER_FLAG_FILL 1
46 #define ASC_RECTANGLE_SHADER_FLAG_ROUND 2 46 #define ASC_RECTANGLE_SHADER_FLAG_ROUND 2
47 #define ASC_RECTANGLE_SHADER_FLAG_BORDER 4 47 #define ASC_RECTANGLE_SHADER_FLAG_BORDER 4
48 48
49 static void asc_rectangle_shader_init(AscShaderProgram *shader, int flags) { 49 static void asc_rectangle_shader_init(AscShaderProgram *shader, int flags) {
50 asc_shader_init_uniform_by_name(shader, AscRectangleShader, size); 50 asc_shader_set_uniform_loc_by_name(shader, AscRectangleShader, size);
51 if (asc_test_flag(flags, ASC_RECTANGLE_SHADER_FLAG_FILL)) { 51 if (asc_test_flag(flags, ASC_RECTANGLE_SHADER_FLAG_FILL)) {
52 asc_shader_init_uniform_by_name(shader, AscRectangleShader, color); 52 asc_shader_set_uniform_loc_by_name(shader, AscRectangleShader, color);
53 } 53 }
54 if (asc_test_flag(flags, ASC_RECTANGLE_SHADER_FLAG_BORDER)) { 54 if (asc_test_flag(flags, ASC_RECTANGLE_SHADER_FLAG_BORDER)) {
55 asc_shader_init_uniform_by_name(shader, AscRectangleShader, border_color); 55 asc_shader_set_uniform_loc_by_name(shader, AscRectangleShader, border_color);
56 asc_shader_init_uniform_by_name(shader, AscRectangleShader, thickness); 56 asc_shader_set_uniform_loc_by_name(shader, AscRectangleShader, thickness);
57 } 57 }
58 if (asc_test_flag(flags, ASC_RECTANGLE_SHADER_FLAG_ROUND)) { 58 if (asc_test_flag(flags, ASC_RECTANGLE_SHADER_FLAG_ROUND)) {
59 asc_shader_init_uniform_by_name(shader, AscRectangleShader, radius); 59 asc_shader_set_uniform_loc_by_name(shader, AscRectangleShader, radius);
60 } 60 }
61 } 61 }
62 62
63 static AscShaderProgram *asc_rectangle_shader_create(int flags) { 63 static AscShaderProgram *asc_rectangle_shader_create(int flags) {
64 return asc_shader_create((AscShaderCodes){ 64 return asc_shader_create((AscShaderCodes){
205 205
206 #define ASC_ELLIPSIS_SHADER_FLAG_FILL 1 206 #define ASC_ELLIPSIS_SHADER_FLAG_FILL 1
207 #define ASC_ELLIPSIS_SHADER_FLAG_BORDER 2 207 #define ASC_ELLIPSIS_SHADER_FLAG_BORDER 2
208 208
209 static void asc_ellipsis_shader_init(AscShaderProgram *shader, int flags) { 209 static void asc_ellipsis_shader_init(AscShaderProgram *shader, int flags) {
210 asc_shader_init_uniform_by_name(shader, AscEllipsisShader, radii); 210 asc_shader_set_uniform_loc_by_name(shader, AscEllipsisShader, radii);
211 if (asc_test_flag(flags, ASC_ELLIPSIS_SHADER_FLAG_FILL)) { 211 if (asc_test_flag(flags, ASC_ELLIPSIS_SHADER_FLAG_FILL)) {
212 asc_shader_init_uniform_by_name(shader, AscEllipsisShader, color); 212 asc_shader_set_uniform_loc_by_name(shader, AscEllipsisShader, color);
213 } 213 }
214 if (asc_test_flag(flags, ASC_ELLIPSIS_SHADER_FLAG_BORDER)) { 214 if (asc_test_flag(flags, ASC_ELLIPSIS_SHADER_FLAG_BORDER)) {
215 asc_shader_init_uniform_by_name(shader, AscEllipsisShader, thickness); 215 asc_shader_set_uniform_loc_by_name(shader, AscEllipsisShader, thickness);
216 asc_shader_init_uniform_by_name(shader, AscEllipsisShader, border_color); 216 asc_shader_set_uniform_loc_by_name(shader, AscEllipsisShader, border_color);
217 } 217 }
218 } 218 }
219 219
220 static AscShaderProgram *asc_ellipsis_shader_create(int flags) { 220 static AscShaderProgram *asc_ellipsis_shader_create(int flags) {
221 return asc_shader_create((AscShaderCodes){ 221 return asc_shader_create((AscShaderCodes){

mercurial