Blender  V3.3
Macros | Variables
select_engine.c File Reference
#include "DNA_screen_types.h"
#include "UI_resources.h"
#include "DRW_engine.h"
#include "DRW_select_buffer.h"
#include "draw_cache_impl.h"
#include "draw_manager.h"
#include "select_engine.h"
#include "select_private.h"

Go to the source code of this file.

Macros

#define SELECT_ENGINE   "SELECT_ENGINE"
 

Functions

Utils
static void select_engine_framebuffer_setup (void)
 
Engine Functions
static void select_engine_init (void *vedata)
 
static void select_cache_init (void *vedata)
 
static void select_cache_populate (void *vedata, Object *ob)
 
static void select_draw_scene (void *vedata)
 
static void select_engine_free (void)
 
Exposed <tt>select_private.h</tt> functions
struct SELECTID_ContextDRW_select_engine_context_get (void)
 
GPUFrameBufferDRW_engine_select_framebuffer_get (void)
 
GPUTextureDRW_engine_select_texture_get (void)
 

Variables

struct {
   struct GPUFrameBuffer *   framebuffer_select_id
 
   struct GPUTexture *   texture_u32
 
   SELECTID_Shaders   sh_data [GPU_SHADER_CFG_LEN]
 
   struct SELECTID_Context   context
 
   uint   runtime_new_objects
 
e_data = {NULL}
 
Engine Type
static const DrawEngineDataSize select_data_size = DRW_VIEWPORT_DATA_SIZE(SELECTID_Data)
 
DrawEngineType draw_engine_select_type
 
RenderEngineType DRW_engine_viewport_select_type
 

Detailed Description

Engine for drawing a selection map where the pixels indicate the selection indices.

Definition in file select_engine.c.

Macro Definition Documentation

◆ SELECT_ENGINE

#define SELECT_ENGINE   "SELECT_ENGINE"

Definition at line 23 of file select_engine.c.

Function Documentation

◆ DRW_engine_select_framebuffer_get()

GPUFrameBuffer* DRW_engine_select_framebuffer_get ( void  )

Definition at line 375 of file select_engine.c.

References e_data.

Referenced by DRW_select_buffer_read().

◆ DRW_engine_select_texture_get()

GPUTexture* DRW_engine_select_texture_get ( void  )

Definition at line 380 of file select_engine.c.

References e_data.

Referenced by DRW_select_buffer_read(), and select_debug_engine_init().

◆ DRW_select_engine_context_get()

struct SELECTID_Context* DRW_select_engine_context_get ( void  )

◆ select_cache_init()

static void select_cache_init ( void vedata)
static

◆ select_cache_populate()

static void select_cache_populate ( void vedata,
Object ob 
)
static

◆ select_draw_scene()

static void select_draw_scene ( void vedata)
static

◆ select_engine_framebuffer_setup()

static void select_engine_framebuffer_setup ( void  )
static

◆ select_engine_free()

static void select_engine_free ( void  )
static

◆ select_engine_init()

static void select_engine_init ( void vedata)
static

Variable Documentation

◆ context

struct SELECTID_Context context

Definition at line 31 of file select_engine.c.

◆ draw_engine_select_type

DrawEngineType draw_engine_select_type
Initial value:
= {
N_("Select ID"),
NULL,
}
static void select_cache_populate(void *vedata, Object *ob)
static void select_cache_init(void *vedata)
static const DrawEngineDataSize select_data_size
static void select_engine_free(void)
static void select_draw_scene(void *vedata)
static void select_engine_init(void *vedata)
Definition: select_engine.c:76
#define N_(msgid)

Definition at line 325 of file select_engine.c.

Referenced by DRW_draw_select_id(), DRW_engines_register(), DRW_select_buffer_context_offset_for_object_elem(), select_cache_init(), and select_cache_populate().

◆ DRW_engine_viewport_select_type

RenderEngineType DRW_engine_viewport_select_type
Initial value:
= {
N_("Select ID"),
{NULL, NULL, NULL},
}
#define RE_USE_STEREO_VIEWPORT
Definition: RE_engine.h:51
#define RE_INTERNAL
Definition: RE_engine.h:43
#define RE_USE_GPU_CONTEXT
Definition: RE_engine.h:52
DrawEngineType draw_engine_select_type
#define SELECT_ENGINE
Definition: select_engine.c:23

Definition at line 345 of file select_engine.c.

◆ 

struct { ... } e_data

◆ framebuffer_select_id

struct GPUFrameBuffer* framebuffer_select_id

Definition at line 28 of file select_engine.c.

◆ runtime_new_objects

uint runtime_new_objects

Definition at line 33 of file select_engine.c.

◆ select_data_size

const DrawEngineDataSize select_data_size = DRW_VIEWPORT_DATA_SIZE(SELECTID_Data)
static

Definition at line 323 of file select_engine.c.

◆ sh_data

Definition at line 31 of file select_engine.c.

Referenced by select_engine_free(), and select_engine_init().

◆ texture_u32

struct GPUTexture* texture_u32

Definition at line 29 of file select_engine.c.

Referenced by select_debug_engine_init().