4 #ifndef __BLENDER_SYNC_H__
5 #define __BLENDER_SYNC_H__
9 #include "RNA_blender_cpp.h"
47 BL::BlendData &b_data,
51 bool use_developer_ui,
61 void sync_data(BL::RenderSettings &b_render,
63 BL::SpaceView3D &b_v3d,
67 void **python_thread_state);
75 const char *viewname);
79 return view_layer.samples;
83 return view_layer.bound_samples;
89 BL::Preferences &b_userpref,
102 void sync_lights(
BL::Depsgraph &b_depsgraph,
bool update_all);
103 void sync_materials(
BL::Depsgraph &b_depsgraph,
bool update_all);
104 void sync_objects(
BL::Depsgraph &b_depsgraph, BL::SpaceView3D &b_v3d,
float motion_time = 0.0f);
105 void sync_motion(BL::RenderSettings &b_render,
107 BL::SpaceView3D &b_v3d,
111 void **python_thread_state);
112 void sync_film(
BL::ViewLayer &b_view_layer, BL::SpaceView3D &b_v3d);
117 void sync_world(
BL::Depsgraph &b_depsgraph, BL::SpaceView3D &b_v3d,
bool update_all);
118 void sync_shaders(
BL::Depsgraph &b_depsgraph, BL::SpaceView3D &b_v3d,
bool update_all);
119 void sync_nodes(
Shader *shader, BL::ShaderNodeTree &b_ntree);
124 BL::DepsgraphObjectInstance &b_instance,
126 bool use_particle_hair,
134 BL::MeshSequenceCacheModifier &b_mesh_cache,
135 bool has_subdivision);
137 bool sync_object_attributes(BL::DepsgraphObjectInstance &b_instance,
Object *
object);
155 void sync_hair(
Hair *hair,
BObjectInfo &b_ob_info,
bool motion,
int motion_step = 0);
156 void sync_particle_hair(
158 bool object_has_particle_hair(
BL::Object b_ob);
165 void sync_camera_motion(
172 bool use_particle_hair,
179 bool use_particle_hair,
189 void sync_background_light(BL::SpaceView3D &b_v3d,
bool use_portal);
193 BL::DepsgraphObjectInstance &b_instance,
204 bool BKE_object_is_modified(
BL::Object &b_ob);
206 bool object_can_have_geometry(
BL::Object &b_ob);
211 BL::BlendData b_data;
220 set<Geometry *> geometry_synced;
221 set<Geometry *> geometry_motion_synced;
222 set<Geometry *> geometry_motion_attribute_synced;
224 map<void *, set<BL::ID>> instance_geometries_by_object;
225 set<float> motion_times;
233 bool use_developer_ui;
236 int max_subdivisions;
238 struct RenderLayerInfo {
241 use_background_shader(true),
245 use_motion_blur(true),
253 bool use_background_shader;
257 bool use_motion_blur;
267 bool has_updates_ =
true;
struct Depsgraph Depsgraph
struct ViewLayer ViewLayer
struct RegionView3D RegionView3D
_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 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
Read Guarded memory(de)allocation.
struct RenderEngine RenderEngine
struct RenderLayer RenderLayer
BlenderSync(BL::RenderEngine &b_engine, BL::BlendData &b_data, BL::Scene &b_scene, Scene *scene, bool preview, bool use_developer_ui, Progress &progress)
static DenoiseParams get_denoise_params(BL::Scene &b_scene, BL::ViewLayer &b_view_layer, bool background)
static bool get_session_pause(BL::Scene &b_scene, bool background)
void sync_recalc(BL::Depsgraph &b_depsgraph, BL::SpaceView3D &b_v3d)
static SceneParams get_scene_params(BL::Scene &b_scene, bool background)
void sync_camera(BL::RenderSettings &b_render, BL::Object &b_override, int width, int height, const char *viewname)
void sync_render_passes(BL::RenderLayer &b_render_layer, BL::ViewLayer &b_view_layer)
int get_layer_bound_samples()
void sync_view_layer(BL::ViewLayer &b_view_layer)
static BufferParams get_buffer_params(BL::SpaceView3D &b_v3d, BL::RegionView3D &b_rv3d, Camera *cam, int width, int height)
void sync_view(BL::SpaceView3D &b_v3d, BL::RegionView3D &b_rv3d, int width, int height)
void sync_data(BL::RenderSettings &b_render, BL::Depsgraph &b_depsgraph, BL::SpaceView3D &b_v3d, BL::Object &b_override, int width, int height, void **python_thread_state)
void reset(BL::BlendData &b_data, BL::Scene &b_scene)
static SessionParams get_session_params(BL::RenderEngine &b_engine, BL::Preferences &b_userpref, BL::Scene &b_scene, bool background)
void sync_integrator(BL::ViewLayer &b_view_layer, bool background)
#define CCL_NAMESPACE_END
@ OBJECT_PERSISTENT_ID_SIZE
const PointerRNA PointerRNA_NULL