Changeset View
Changeset View
Standalone View
Standalone View
source/blender/draw/engines/gpencil/gpencil_engine.h
| Show First 20 Lines • Show All 259 Lines • ▼ Show 20 Lines | typedef struct g_data { | ||||
| /* for buffer only one batch is nedeed because the drawing is only of one stroke */ | /* for buffer only one batch is nedeed because the drawing is only of one stroke */ | ||||
| GPUBatch *batch_buffer_stroke; | GPUBatch *batch_buffer_stroke; | ||||
| GPUBatch *batch_buffer_fill; | GPUBatch *batch_buffer_fill; | ||||
| GPUBatch *batch_buffer_ctrlpoint; | GPUBatch *batch_buffer_ctrlpoint; | ||||
| /* grid geometry */ | /* grid geometry */ | ||||
| GPUBatch *batch_grid; | GPUBatch *batch_grid; | ||||
| /* textures */ | |||||
| struct GPUTexture *gpencil_blank_texture; | |||||
| /* runtime pointers texture */ | /* runtime pointers texture */ | ||||
| struct GPUTexture *input_depth_tx; | struct GPUTexture *input_depth_tx; | ||||
| struct GPUTexture *input_color_tx; | struct GPUTexture *input_color_tx; | ||||
| /* working textures */ | /* working textures */ | ||||
| struct GPUTexture *temp_color_tx_a; | struct GPUTexture *temp_color_tx_a; | ||||
| struct GPUTexture *temp_depth_tx_a; | struct GPUTexture *temp_depth_tx_a; | ||||
| Show All 13 Lines | typedef enum eGPsession_Flag { | ||||
| GP_DRW_PAINT_HOLD = (1 << 0), | GP_DRW_PAINT_HOLD = (1 << 0), | ||||
| GP_DRW_PAINT_IDLE = (1 << 1), | GP_DRW_PAINT_IDLE = (1 << 1), | ||||
| GP_DRW_PAINT_FILLING = (1 << 2), | GP_DRW_PAINT_FILLING = (1 << 2), | ||||
| GP_DRW_PAINT_READY = (1 << 3), | GP_DRW_PAINT_READY = (1 << 3), | ||||
| GP_DRW_PAINT_PAINTING = (1 << 4), | GP_DRW_PAINT_PAINTING = (1 << 4), | ||||
| } eGPsession_Flag; | } eGPsession_Flag; | ||||
| typedef struct GPENCIL_e_data { | typedef struct GPENCIL_e_data { | ||||
| /* textures */ | |||||
| struct GPUTexture *gpencil_blank_texture; | |||||
| /* general drawing shaders */ | /* general drawing shaders */ | ||||
| struct GPUShader *gpencil_fill_sh; | struct GPUShader *gpencil_fill_sh; | ||||
| struct GPUShader *gpencil_stroke_sh; | struct GPUShader *gpencil_stroke_sh; | ||||
| struct GPUShader *gpencil_point_sh; | struct GPUShader *gpencil_point_sh; | ||||
| struct GPUShader *gpencil_edit_point_sh; | struct GPUShader *gpencil_edit_point_sh; | ||||
| struct GPUShader *gpencil_line_sh; | struct GPUShader *gpencil_line_sh; | ||||
| struct GPUShader *gpencil_drawing_fill_sh; | struct GPUShader *gpencil_drawing_fill_sh; | ||||
| struct GPUShader *gpencil_fullscreen_sh; | struct GPUShader *gpencil_fullscreen_sh; | ||||
| ▲ Show 20 Lines • Show All 73 Lines • ▼ Show 20 Lines | typedef struct GpencilBatchCache { | ||||
| int grp_used; | int grp_used; | ||||
| /** Max size of the array */ | /** Max size of the array */ | ||||
| int grp_size; | int grp_size; | ||||
| /** Array of cache elements */ | /** Array of cache elements */ | ||||
| struct GpencilBatchGroup *grp_cache; | struct GpencilBatchGroup *grp_cache; | ||||
| } GpencilBatchCache; | } GpencilBatchCache; | ||||
| /* general drawing functions */ | /* general drawing functions */ | ||||
| struct DRWShadingGroup *gpencil_shgroup_stroke_create(struct GPENCIL_Data *vedata, | struct DRWShadingGroup *gpencil_shgroup_stroke_create(struct GPENCIL_e_data *e_data, | ||||
| struct GPENCIL_Data *vedata, | |||||
| struct DRWPass *pass, | struct DRWPass *pass, | ||||
| struct GPUShader *shader, | struct GPUShader *shader, | ||||
| struct Object *ob, | struct Object *ob, | ||||
| float (*obmat)[4], | float (*obmat)[4], | ||||
| struct bGPdata *gpd, | struct bGPdata *gpd, | ||||
| struct bGPDlayer *gpl, | struct bGPDlayer *gpl, | ||||
| struct bGPDstroke *gps, | struct bGPDstroke *gps, | ||||
| struct MaterialGPencilStyle *gp_style, | struct MaterialGPencilStyle *gp_style, | ||||
| ▲ Show 20 Lines • Show All 137 Lines • Show Last 20 Lines | |||||