Changeset View
Changeset View
Standalone View
Standalone View
source/blender/render/RE_engine.h
| Show First 20 Lines • Show All 70 Lines • ▼ Show 20 Lines | |||||
| /* RenderEngine.flag */ | /* RenderEngine.flag */ | ||||
| #define RE_ENGINE_ANIMATION 1 | #define RE_ENGINE_ANIMATION 1 | ||||
| #define RE_ENGINE_PREVIEW 2 | #define RE_ENGINE_PREVIEW 2 | ||||
| #define RE_ENGINE_DO_DRAW 4 | #define RE_ENGINE_DO_DRAW 4 | ||||
| #define RE_ENGINE_DO_UPDATE 8 | #define RE_ENGINE_DO_UPDATE 8 | ||||
| #define RE_ENGINE_RENDERING 16 | #define RE_ENGINE_RENDERING 16 | ||||
| #define RE_ENGINE_HIGHLIGHT_TILES 32 | #define RE_ENGINE_HIGHLIGHT_TILES 32 | ||||
| #define RE_ENGINE_CAN_DRAW 64 | |||||
| extern ListBase R_engines; | extern ListBase R_engines; | ||||
| typedef struct RenderEngineType { | typedef struct RenderEngineType { | ||||
| struct RenderEngineType *next, *prev; | struct RenderEngineType *next, *prev; | ||||
| /* type info */ | /* type info */ | ||||
| char idname[64]; /* best keep the same size as BKE_ST_MAXNAME. */ | char idname[64]; /* best keep the same size as BKE_ST_MAXNAME. */ | ||||
| ▲ Show 20 Lines • Show All 153 Lines • ▼ Show 20 Lines | void RE_engine_register_pass(struct RenderEngine *engine, | ||||
| int channels, | int channels, | ||||
| const char *chanid, | const char *chanid, | ||||
| eNodeSocketDatatype type); | eNodeSocketDatatype type); | ||||
| bool RE_engine_use_persistent_data(struct RenderEngine *engine); | bool RE_engine_use_persistent_data(struct RenderEngine *engine); | ||||
| struct RenderEngine *RE_engine_get(const struct Render *re); | struct RenderEngine *RE_engine_get(const struct Render *re); | ||||
| bool RE_engine_is_rendering(const struct Render *re); | /* Acquire render engine for drawing via its `draw()` callback. | ||||
| * | |||||
| * If drawing is not possible false is returned. If drawing is possible then the engine is | |||||
| * "acquired" so that it can not be freed by the render pipeline. | |||||
| * | |||||
| * Drawing is possible if the engine has the `draw()` callback and it is in its `render()` | |||||
| * callback. */ | |||||
| bool RE_engine_draw_acquire(struct Render *re); | |||||
| void RE_engine_draw_release(struct Render *re); | |||||
| /* NOTE: Only used for Cycles's BLenderGPUDisplay integration with the draw manager. A subject | /* NOTE: Only used for Cycles's BLenderGPUDisplay integration with the draw manager. A subject | ||||
| * for re-consideration. Do not use this functionality. */ | * for re-consideration. Do not use this functionality. */ | ||||
| bool RE_engine_has_render_context(struct RenderEngine *engine); | bool RE_engine_has_render_context(struct RenderEngine *engine); | ||||
| void RE_engine_render_context_enable(struct RenderEngine *engine); | void RE_engine_render_context_enable(struct RenderEngine *engine); | ||||
| void RE_engine_render_context_disable(struct RenderEngine *engine); | void RE_engine_render_context_disable(struct RenderEngine *engine); | ||||
| /* Engine Types */ | /* Engine Types */ | ||||
| Show All 26 Lines | |||||