142 func = &rna_RenderEngine_update_func;
160 func = &rna_RenderEngine_render_func;
169 static void engine_render_frame_finish(
RenderEngine *engine)
171 extern FunctionRNA rna_RenderEngine_render_frame_finish_func;
177 func = &rna_RenderEngine_render_frame_finish_func;
193 func = &rna_RenderEngine_draw_func;
207 const int pass_filter,
217 func = &rna_RenderEngine_bake_func;
235 extern FunctionRNA rna_RenderEngine_view_update_func;
241 func = &rna_RenderEngine_view_update_func;
255 extern FunctionRNA rna_RenderEngine_view_draw_func;
261 func = &rna_RenderEngine_view_draw_func;
271 static void engine_update_script_node(
RenderEngine *engine,
275 extern FunctionRNA rna_RenderEngine_update_script_node_func;
282 func = &rna_RenderEngine_update_script_node_func;
291 static void engine_update_render_passes(
RenderEngine *engine,
295 extern FunctionRNA rna_RenderEngine_update_render_passes_func;
301 func = &rna_RenderEngine_update_render_passes_func;
333 const char *identifier,
341 int have_function[9];
344 dummyengine.
type = &dummyet;
349 if (validate(&dummyptr,
data, have_function) != 0) {
353 if (strlen(identifier) >=
sizeof(dummyet.
idname)) {
356 "Registering render engine class: '%s' is too long, maximum length is %d",
358 (
int)
sizeof(dummyet.
idname));
366 rna_RenderEngine_unregister(bmain, et->
rna_ext.
srna);
374 memcpy(et, &dummyet,
sizeof(dummyet));
382 et->
update = (have_function[0]) ? engine_update :
NULL;
383 et->
render = (have_function[1]) ? engine_render :
NULL;
385 et->
draw = (have_function[3]) ? engine_draw :
NULL;
386 et->
bake = (have_function[4]) ? engine_bake :
NULL;
388 et->
view_draw = (have_function[6]) ? engine_view_draw :
NULL;
448 static void rna_RenderEngine_engine_frame_set(
RenderEngine *engine,
int frame,
float subframe)
473 static void rna_RenderResult_stamp_data_add_field(
RenderResult *rr,
486 static int rna_RenderPass_rect_get_length(
const PointerRNA *
ptr,
497 static void rna_RenderPass_rect_get(
PointerRNA *
ptr,
float *values)
541 "rna_RenderEngine_register",
542 "rna_RenderEngine_unregister",
543 "rna_RenderEngine_instance");
560 func,
"Perform finishing operations after all view layers in a frame were rendered");
586 "Filter to combined, diffuse, glossy and transmission passes",
590 parm =
RNA_def_int(func,
"width", 0, 0, INT_MAX,
"Width",
"Image width", 0, INT_MAX);
592 parm =
RNA_def_int(func,
"height", 0, 0, INT_MAX,
"Height",
"Image height", 0, INT_MAX);
635 func,
"Create render result to write linear floating-point render layers and passes");
636 parm =
RNA_def_int(func,
"x", 0, 0, INT_MAX,
"X",
"", 0, INT_MAX);
638 parm =
RNA_def_int(func,
"y", 0, 0, INT_MAX,
"Y",
"", 0, INT_MAX);
640 parm =
RNA_def_int(func,
"w", 0, 0, INT_MAX,
"Width",
"", 0, INT_MAX);
642 parm =
RNA_def_int(func,
"h", 0, 0, INT_MAX,
"Height",
"", 0, INT_MAX);
645 func,
"layer",
NULL, 0,
"Layer",
"Single layer to get render result for");
647 func,
"view",
NULL, 0,
"View",
"Single view to get render result for");
653 func,
"Signal that pixels have been updated and can be redrawn in the user interface");
659 "All pixels in the render result have been set and are final");
663 func,
"cancel", 0,
"Cancel",
"Don't mark tile as done, don't merge results unless forced");
664 RNA_def_boolean(func,
"highlight", 0,
"Highlight",
"Don't mark tile as done yet");
666 func,
"do_merge_results", 0,
"Merge Results",
"Merge results even if cancel=true");
671 func,
"name",
NULL, 0,
"Name",
"Name of the Pass, without view or channel tag");
673 parm =
RNA_def_int(func,
"channels", 0, 0, INT_MAX,
"Channels",
"", 0, INT_MAX);
676 func,
"chan_id",
NULL, 0,
"Channel IDs",
"Channel names, one character per channel");
679 func,
"layer",
NULL, 0,
"Layer",
"Single layer to add render pass to");
688 "Test if the render operation should been canceled, this is a "
689 "fast call that should be used regularly for responsiveness");
693 func =
RNA_def_function(srna,
"pass_by_index_get",
"RE_engine_pass_by_index_get");
694 parm =
RNA_def_string(func,
"layer",
NULL, 0,
"Layer",
"Name of render layer to get pass for");
696 parm =
RNA_def_int(func,
"index", 0, 0, INT_MAX,
"Index",
"Index of pass to get", 0, INT_MAX);
698 parm =
RNA_def_pointer(func,
"render_pass",
"RenderPass",
"Index",
"Index of pass to get");
701 func =
RNA_def_function(srna,
"active_view_get",
"RE_engine_active_view_get");
705 func =
RNA_def_function(srna,
"active_view_set",
"RE_engine_active_view_set");
707 func,
"view",
NULL, 0,
"View",
"Single view to set as active");
710 func =
RNA_def_function(srna,
"camera_shift_x",
"RE_engine_get_camera_shift_x");
713 RNA_def_boolean(func,
"use_spherical_stereo", 0,
"Spherical Stereo",
"");
714 parm =
RNA_def_float(func,
"shift_x", 0.0f, 0.0f, FLT_MAX,
"Shift X",
"", 0.0f, FLT_MAX);
717 func =
RNA_def_function(srna,
"camera_model_matrix",
"RE_engine_get_camera_model_matrix");
720 RNA_def_boolean(func,
"use_spherical_stereo", 0,
"Spherical Stereo",
"");
729 "Normalized camera model matrix",
735 func =
RNA_def_function(srna,
"use_spherical_stereo",
"RE_engine_get_spherical_stereo");
738 parm =
RNA_def_boolean(func,
"use_spherical_stereo", 0,
"Spherical Stereo",
"");
748 func =
RNA_def_function(srna,
"frame_set",
"rna_RenderEngine_engine_frame_set");
750 parm =
RNA_def_int(func,
"frame", 0, INT_MIN, INT_MAX,
"Frame",
"", INT_MIN, INT_MAX);
752 parm =
RNA_def_float(func,
"subframe", 0.0f, 0.0f, 1.0f,
"Subframe",
"", 0.0f, 1.0f);
755 func =
RNA_def_function(srna,
"update_progress",
"RE_engine_update_progress");
758 func,
"progress", 0, 0.0f, 1.0f,
"",
"Percentage of render that's done", 0.0f, 1.0f);
761 func =
RNA_def_function(srna,
"update_memory_stats",
"RE_engine_update_memory_stats");
769 "Current memory usage in megabytes",
773 func,
"memory_peak", 0, 0.0f, FLT_MAX,
"",
"Peak memory usage in megabytes", 0.0f, FLT_MAX);
784 "Set error message displaying after the render is finished");
788 func =
RNA_def_function(srna,
"bind_display_space_shader",
"engine_bind_display_space_shader");
790 "Bind GLSL fragment shader that converts linear colors to "
791 "display space colors using scene color management settings");
796 srna,
"unbind_display_space_shader",
"engine_unbind_display_space_shader");
798 func,
"Unbind GLSL display space shader, must always be called after binding the shader");
801 srna,
"support_display_space_shader",
"engine_support_display_space_shader");
803 "Test if GLSL display space shader is supported for the "
804 "combination of graphics card and scene settings");
810 func =
RNA_def_function(srna,
"get_preview_pixel_size",
"engine_get_preview_pixel_size");
812 "Get the pixel size that should be used for preview rendering");
815 parm =
RNA_def_int(func,
"pixel_size", 0, 1, 8,
"Pixel Size",
"", 1, 8);
818 func =
RNA_def_function(srna,
"free_blender_memory",
"RE_engine_free_blender_memory");
821 func =
RNA_def_function(srna,
"tile_highlight_set",
"RE_engine_tile_highlight_set");
823 parm =
RNA_def_int(func,
"x", 0, 0, INT_MAX,
"X",
"", 0, INT_MAX);
825 parm =
RNA_def_int(func,
"y", 0, 0, INT_MAX,
"Y",
"", 0, INT_MAX);
827 parm =
RNA_def_int(func,
"width", 0, 0, INT_MAX,
"Width",
"", 0, INT_MAX);
829 parm =
RNA_def_int(func,
"height", 0, 0, INT_MAX,
"Height",
"", 0, INT_MAX);
834 func =
RNA_def_function(srna,
"tile_highlight_clear_all",
"RE_engine_tile_highlight_clear_all");
864 prop,
"rna_RenderEngine_tempdir_get",
"rna_RenderEngine_tempdir_length",
NULL);
878 func,
"Register a render pass that will be part of the render with the current settings");
885 parm =
RNA_def_int(func,
"channels", 1, 1, 8,
"Channels",
"", 1, 4);
908 "Use Preview Render",
909 "Render engine supports being used for rendering previews of materials, lights and worlds");
920 prop,
"Use Eevee Viewport",
"Uses Eevee for viewport shading in LookDev shading mode");
927 "Use Custom Freestyle",
928 "Handles freestyle rendering on its own, instead of delegating it to EEVEE");
937 "Save images/movie to disk while rendering an animation. "
938 "Disabling image saving is only supported when bl_use_postprocess is also disabled");
946 "Enable OpenGL context for the render method, for engines that render using OpenGL");
953 "Use Custom Shading Nodes",
954 "Don't expose Cycles and Eevee shading nodes in the node editor user "
955 "interface, so own nodes can be used instead");
971 prop,
"Use Alembic Procedural",
"Support loading Alembic data at render time");
986 srna,
"Render Result",
"Result of rendering, including all layers and passes");
988 func =
RNA_def_function(srna,
"load_from_file",
"RE_result_load_from_file");
990 "Copies the pixels of this render result from an image file");
998 "Filename to load into this render tile, must be no smaller than "
999 "the render result");
1002 func =
RNA_def_function(srna,
"stamp_data_add_field",
"rna_RenderResult_stamp_data_add_field");
1004 parm =
RNA_def_string(func,
"field",
NULL, 1024,
"Field",
"Name of the stamp field to add");
1022 "rna_RenderResult_layers_begin",
1023 "rna_iterator_listbase_next",
1024 "rna_iterator_listbase_end",
1025 "rna_iterator_listbase_get",
1034 "rna_RenderResult_views_begin",
1035 "rna_iterator_listbase_next",
1036 "rna_iterator_listbase_end",
1037 "rna_iterator_listbase_get",
1076 func =
RNA_def_function(srna,
"find_by_type",
"rna_RenderPass_find_by_type");
1082 func,
"view",
NULL, 0,
"View",
"Render view to get pass from");
1084 parm =
RNA_def_pointer(func,
"render_pass",
"RenderPass",
"",
"The matching render pass");
1087 func =
RNA_def_function(srna,
"find_by_name",
"rna_RenderPass_find_by_name");
1092 func,
"view",
NULL, 0,
"View",
"Render view to get pass from");
1094 parm =
RNA_def_pointer(func,
"render_pass",
"RenderPass",
"",
"The matching render pass");
1109 func =
RNA_def_function(srna,
"load_from_file",
"RE_layer_load_from_file");
1111 "Copies the pixels of this renderlayer from an image file");
1119 "Filename to load into this render tile, must be no smaller than the renderlayer");
1127 "Offset the position to copy from if the image is larger than the render layer",
1136 "Offset the position to copy from if the image is larger than the render layer",
1147 "rna_RenderLayer_passes_begin",
1148 "rna_iterator_listbase_next",
1149 "rna_iterator_listbase_end",
1150 "rna_iterator_listbase_get",
void BKE_render_result_stamp_data(struct RenderResult *rr, const char *key, const char *value)
void BKE_reportf(ReportList *reports, eReportType type, const char *format,...) ATTR_PRINTF_FORMAT(3
int BKE_render_preview_pixel_size(const struct RenderData *r)
void BLI_kdtree_nd_() free(KDTree *tree)
void BLI_freelinkN(struct ListBase *listbase, void *vlink) ATTR_NONNULL(1)
char * BLI_strncpy(char *__restrict dst, const char *__restrict src, size_t maxncpy) ATTR_NONNULL()
#define BPy_BEGIN_ALLOW_THREADS
#define BPy_END_ALLOW_THREADS
struct Depsgraph Depsgraph
struct Object * DEG_get_evaluated_object(const struct Depsgraph *depsgraph, struct Object *object)
Object is a sort of wrapper for general info.
#define RE_PASSNAME_COMBINED
@ SCE_PASS_SUBSURFACE_INDIRECT
@ SCE_PASS_SUBSURFACE_COLOR
@ SCE_PASS_DIFFUSE_DIRECT
@ SCE_PASS_GLOSSY_INDIRECT
@ SCE_PASS_TRANSM_INDIRECT
@ SCE_PASS_DIFFUSE_INDIRECT
@ SCE_PASS_SUBSURFACE_DIRECT
void ED_render_engine_changed(struct Main *bmain, bool update_scene_data)
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei GLsizei GLenum type _GL_VOID_RET _GL_VOID GLsizei GLenum GLenum const void *pixels _GL_VOID_RET _GL_VOID const void *pointer _GL_VOID_RET _GL_VOID GLdouble v _GL_VOID_RET _GL_VOID GLfloat v _GL_VOID_RET _GL_VOID GLint GLint i2 _GL_VOID_RET _GL_VOID GLint j _GL_VOID_RET _GL_VOID GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble GLdouble GLdouble zFar _GL_VOID_RET _GL_UINT GLdouble *equation _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLenum GLfloat *v _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLfloat *values _GL_VOID_RET _GL_VOID GLushort *values _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLenum GLdouble *params _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_BOOL GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLushort pattern _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble u2 _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLdouble GLdouble v2 _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLdouble GLdouble nz _GL_VOID_RET _GL_VOID GLfloat GLfloat nz _GL_VOID_RET _GL_VOID GLint GLint nz _GL_VOID_RET _GL_VOID GLshort GLshort nz _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const GLfloat *values _GL_VOID_RET _GL_VOID GLsizei const GLushort *values _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID const GLuint const GLclampf *priorities _GL_VOID_RET _GL_VOID GLdouble y _GL_VOID_RET _GL_VOID GLfloat y _GL_VOID_RET _GL_VOID GLint y _GL_VOID_RET _GL_VOID GLshort y _GL_VOID_RET _GL_VOID GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLfloat GLfloat z _GL_VOID_RET _GL_VOID GLint GLint z _GL_VOID_RET _GL_VOID GLshort GLshort z _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble w _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat w _GL_VOID_RET _GL_VOID GLint GLint GLint w _GL_VOID_RET _GL_VOID GLshort GLshort GLshort w _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble y2 _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat y2 _GL_VOID_RET _GL_VOID GLint GLint GLint y2 _GL_VOID_RET _GL_VOID GLshort GLshort GLshort y2 _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLuint *buffer _GL_VOID_RET _GL_VOID GLdouble t _GL_VOID_RET _GL_VOID GLfloat t _GL_VOID_RET _GL_VOID GLint t _GL_VOID_RET _GL_VOID GLshort t _GL_VOID_RET _GL_VOID GLdouble GLdouble r _GL_VOID_RET _GL_VOID GLfloat GLfloat r _GL_VOID_RET _GL_VOID GLint GLint r _GL_VOID_RET _GL_VOID GLshort GLshort r _GL_VOID_RET _GL_VOID GLdouble GLdouble r
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei height
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei width
void GPU_shader_unbind(void)
int GPU_shader_get_uniform(GPUShader *shader, const char *name)
struct GPUShader GPUShader
void GPU_shader_uniform_int(GPUShader *shader, int location, int value)
GPUShader * GPU_shader_get_builtin_shader(eGPUBuiltinShader shader)
void GPU_shader_bind(GPUShader *shader)
bool IMB_colormanagement_support_glsl_draw(const struct ColorManagedViewSettings *view_settings)
Read Guarded memory(de)allocation.
#define RE_USE_CUSTOM_FREESTYLE
#define RE_USE_ALEMBIC_PROCEDURAL
#define RE_USE_NO_IMAGE_SAVE
#define RE_USE_EEVEE_VIEWPORT
#define RE_USE_STEREO_VIEWPORT
#define RE_ENGINE_DO_UPDATE
#define RE_ENGINE_ANIMATION
#define RE_USE_GPU_CONTEXT
#define RE_ENGINE_PREVIEW
#define RE_ENGINE_HIGHLIGHT_TILES
#define RE_USE_SPHERICAL_STEREO
#define RE_USE_SHADING_NODES_CUSTOM
#define RE_USE_POSTPROCESS
#define RE_ENGINE_DO_DRAW
#define RNA_MAX_ARRAY_DIMENSION
void(* StructFreeFunc)(void *data)
int(* StructValidateFunc)(struct PointerRNA *ptr, void *data, int *have_function)
int(* StructCallbackFunc)(struct bContext *C, struct PointerRNA *ptr, struct FunctionRNA *func, ParameterList *list)
return(oflags[bm->toolflag_index].f &oflag) !=0
const Depsgraph * depsgraph
void RE_engine_frame_set(RenderEngine *engine, int frame, float subframe)
void RE_engines_register(RenderEngineType *render_type)
RenderData * RE_engine_get_render_data(Render *re)
struct Object * RE_GetCamera(Render *re)
void * BKE_tempdir_session
void *(* MEM_mallocN)(size_t len, const char *str)
T length(const vec_base< T, Size > &a)
RenderPass * RE_pass_find_by_type(RenderLayer *rl, int passtype, const char *viewname)
RenderPass * RE_pass_find_by_name(RenderLayer *rl, const char *name, const char *viewname)
void RE_FreeAllPersistentData(void)
void RNA_pointer_create(ID *id, StructRNA *type, void *data, PointerRNA *r_ptr)
void RNA_struct_blender_type_set(StructRNA *srna, void *blender_type)
ParameterList * RNA_parameter_list_create(ParameterList *parms, PointerRNA *UNUSED(ptr), FunctionRNA *func)
void * RNA_struct_blender_type_get(StructRNA *srna)
void RNA_parameter_list_free(ParameterList *parms)
void rna_iterator_listbase_begin(CollectionPropertyIterator *iter, ListBase *lb, IteratorSkipFunc skip)
void RNA_parameter_set_lookup(ParameterList *parms, const char *identifier, const void *value)
PointerRNA rna_pointer_inherit_refine(PointerRNA *ptr, StructRNA *type, void *data)
PropertyRNA * RNA_def_string_file_name(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description)
PropertyRNA * RNA_def_float(StructOrFunctionRNA *cont_, const char *identifier, float default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
void RNA_def_struct_refine_func(StructRNA *srna, const char *refine)
PropertyRNA * RNA_def_boolean(StructOrFunctionRNA *cont_, const char *identifier, bool default_value, const char *ui_name, const char *ui_description)
PropertyRNA * RNA_def_enum_flag(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description)
PropertyRNA * RNA_def_pointer(StructOrFunctionRNA *cont_, const char *identifier, const char *type, const char *ui_name, const char *ui_description)
void RNA_def_property_boolean_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t bit)
void RNA_def_property_string_funcs(PropertyRNA *prop, const char *get, const char *length, const char *set)
void RNA_def_function_return(FunctionRNA *func, PropertyRNA *ret)
PropertyRNA * RNA_def_float_matrix(StructOrFunctionRNA *cont_, const char *identifier, int rows, int columns, const float *default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
void RNA_def_property_float_funcs(PropertyRNA *prop, const char *get, const char *set, const char *range)
void RNA_define_verify_sdna(bool verify)
void RNA_def_property_enum_native_type(PropertyRNA *prop, const char *native_enum_type)
void RNA_def_property_ui_text(PropertyRNA *prop, const char *name, const char *description)
void RNA_def_property_string_sdna(PropertyRNA *prop, const char *structname, const char *propname)
FunctionRNA * RNA_def_function(StructRNA *srna, const char *identifier, const char *call)
void RNA_def_property_srna(PropertyRNA *prop, const char *type)
void RNA_def_property_collection_funcs(PropertyRNA *prop, const char *begin, const char *next, const char *end, const char *get, const char *length, const char *lookupint, const char *lookupstring, const char *assignint)
void RNA_def_struct_ui_text(StructRNA *srna, const char *name, const char *description)
void RNA_def_function_output(FunctionRNA *UNUSED(func), PropertyRNA *ret)
void RNA_def_property_boolean_default(PropertyRNA *prop, bool value)
void RNA_def_struct_register_funcs(StructRNA *srna, const char *reg, const char *unreg, const char *instance)
void RNA_def_property_dynamic_array_funcs(PropertyRNA *prop, const char *getlength)
void RNA_def_property_multi_array(PropertyRNA *prop, int dimension, const int length[])
StructRNA * RNA_def_struct_ptr(BlenderRNA *brna, const char *identifier, StructRNA *srnafrom)
void RNA_def_struct_sdna(StructRNA *srna, const char *structname)
void RNA_def_property_array(PropertyRNA *prop, int length)
void RNA_def_property_struct_type(PropertyRNA *prop, const char *type)
void RNA_def_function_ui_description(FunctionRNA *func, const char *description)
PropertyRNA * RNA_def_property(StructOrFunctionRNA *cont_, const char *identifier, int type, int subtype)
void RNA_def_struct_name_property(struct StructRNA *srna, struct PropertyRNA *prop)
void RNA_def_function_flag(FunctionRNA *func, int flag)
void RNA_def_property_clear_flag(PropertyRNA *prop, PropertyFlag flag)
void RNA_struct_free_extension(StructRNA *srna, ExtensionRNA *rna_ext)
void RNA_def_property_pointer_funcs(PropertyRNA *prop, const char *get, const char *set, const char *type_fn, const char *poll)
StructRNA * RNA_def_struct(BlenderRNA *brna, const char *identifier, const char *from)
void RNA_struct_free(BlenderRNA *brna, StructRNA *srna)
PropertyRNA * RNA_def_string(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description)
void RNA_def_property_flag(PropertyRNA *prop, PropertyFlag flag)
PropertyRNA * RNA_def_int(StructOrFunctionRNA *cont_, const char *identifier, int default_value, int hardmin, int hardmax, const char *ui_name, const char *ui_description, int softmin, int softmax)
PropertyRNA * RNA_def_enum(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description)
void RNA_def_property_int_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_property_boolean_negative_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t booleanbit)
void RNA_def_parameter_flags(PropertyRNA *prop, PropertyFlag flag_property, ParameterFlag flag_parameter)
void rna_RenderPass_rect_set(PointerRNA *ptr, const float *values)
void rna_def_view_layer_common(struct BlenderRNA *brna, struct StructRNA *srna, bool scene)
const EnumPropertyItem rna_enum_bake_pass_type_items[]
static void rna_def_render_pass(BlenderRNA *brna)
static void rna_def_render_view(BlenderRNA *brna)
static void rna_def_render_engine(BlenderRNA *brna)
static void rna_def_render_passes(BlenderRNA *brna, PropertyRNA *cprop)
void RNA_def_render(BlenderRNA *brna)
const EnumPropertyItem rna_enum_render_pass_type_items[]
static void rna_def_render_layer(BlenderRNA *brna)
static void rna_def_render_result(BlenderRNA *brna)
const EnumPropertyItem rna_enum_wm_report_items[]
void(* render)(struct RenderEngine *engine, struct Depsgraph *depsgraph)
void(* view_draw)(struct RenderEngine *engine, const struct bContext *context, struct Depsgraph *depsgraph)
void(* update)(struct RenderEngine *engine, struct Main *bmain, struct Depsgraph *depsgraph)
void(* view_update)(struct RenderEngine *engine, const struct bContext *context, struct Depsgraph *depsgraph)
struct RenderEngineType * next
void(* draw)(struct RenderEngine *engine, const struct bContext *context, struct Depsgraph *depsgraph)
void(* render_frame_finish)(struct RenderEngine *engine)
void(* update_script_node)(struct RenderEngine *engine, struct bNodeTree *ntree, struct bNode *node)
void(* update_render_passes)(struct RenderEngine *engine, struct Scene *scene, struct ViewLayer *view_layer)
void(* bake)(struct RenderEngine *engine, struct Depsgraph *depsgraph, struct Object *object, int pass_type, int pass_filter, int width, int height)
struct Depsgraph * depsgraph
struct Object * camera_override
ColorManagedViewSettings view_settings