Changeset View
Changeset View
Standalone View
Standalone View
source/blender/gpu/intern/gpu_basic_shader.c
| Show First 20 Lines • Show All 134 Lines • ▼ Show 20 Lines | const GLubyte stipple_checker_8px[128] = { | ||||
| 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, | 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, | ||||
| 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, | 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, | ||||
| 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, | 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, | ||||
| 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, | 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, | ||||
| 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, | 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, | ||||
| 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, | 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, | ||||
| 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255}; | 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255}; | ||||
| const GLubyte stipple_interlace_row[128] = { | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, | |||||
| 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00}; | |||||
| const GLubyte stipple_interlace_row_swap[128] = { | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, | |||||
| 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff}; | |||||
| const GLubyte stipple_interlace_column[128] = { | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, | |||||
| 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55}; | |||||
| const GLubyte stipple_interlace_column_swap[128] = { | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa}; | |||||
| const GLubyte stipple_interlace_checker[128] = { | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, | |||||
| 0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa}; | |||||
| const GLubyte stipple_interlace_checker_swap[128] = { | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55, | |||||
| 0xaa, 0xaa, 0xaa, 0xaa, 0x55, 0x55, 0x55, 0x55}; | |||||
| const GLubyte stipple_hexagon[128] = { | const GLubyte stipple_hexagon[128] = { | ||||
| 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, | 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, | ||||
| 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, | 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, | ||||
| 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, | 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, | ||||
| 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, | 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, | ||||
| 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, | 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, | ||||
| 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, | 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, | ||||
| 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, | 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, | ||||
| ▲ Show 20 Lines • Show All 387 Lines • ▼ Show 20 Lines | switch (stipple_id) { | ||||
| glPolygonStipple(stipple_hexagon); | glPolygonStipple(stipple_hexagon); | ||||
| return; | return; | ||||
| case GPU_SHADER_STIPPLE_DIAG_STRIPES_SWAP: | case GPU_SHADER_STIPPLE_DIAG_STRIPES_SWAP: | ||||
| glPolygonStipple(stipple_diag_stripes_neg); | glPolygonStipple(stipple_diag_stripes_neg); | ||||
| return; | return; | ||||
| case GPU_SHADER_STIPPLE_DIAG_STRIPES: | case GPU_SHADER_STIPPLE_DIAG_STRIPES: | ||||
| glPolygonStipple(stipple_diag_stripes_pos); | glPolygonStipple(stipple_diag_stripes_pos); | ||||
| return; | return; | ||||
| case GPU_SHADER_STIPPLE_S3D_INTERLACE_ROW: | |||||
| glPolygonStipple(stipple_interlace_row); | |||||
| return; | |||||
| case GPU_SHADER_STIPPLE_S3D_INTERLACE_ROW_SWAP: | |||||
| glPolygonStipple(stipple_interlace_row_swap); | |||||
| return; | |||||
| case GPU_SHADER_STIPPLE_S3D_INTERLACE_COLUMN: | |||||
| glPolygonStipple(stipple_interlace_column); | |||||
| return; | |||||
| case GPU_SHADER_STIPPLE_S3D_INTERLACE_COLUMN_SWAP: | |||||
| glPolygonStipple(stipple_interlace_column_swap); | |||||
| return; | |||||
| case GPU_SHADER_STIPPLE_S3D_INTERLACE_CHECKER: | |||||
| glPolygonStipple(stipple_interlace_checker); | |||||
| return; | |||||
| case GPU_SHADER_STIPPLE_S3D_INTERLACE_CHECKER_SWAP: | |||||
| glPolygonStipple(stipple_interlace_checker_swap); | |||||
| return; | |||||
| default: | default: | ||||
| glPolygonStipple(stipple_hexagon); | glPolygonStipple(stipple_hexagon); | ||||
| return; | return; | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| void GPU_basic_shader_line_width(float line_width) | void GPU_basic_shader_line_width(float line_width) | ||||
| Show All 22 Lines | |||||