Changeset View
Changeset View
Standalone View
Standalone View
source/blender/render/intern/source/external_engine.c
| Show First 20 Lines • Show All 366 Lines • ▼ Show 20 Lines | if (rr) { | ||||
| MEM_freeN(rr->error); | MEM_freeN(rr->error); | ||||
| } | } | ||||
| rr->error = BLI_strdup(msg); | rr->error = BLI_strdup(msg); | ||||
| } | } | ||||
| RE_ReleaseResult(re); | RE_ReleaseResult(re); | ||||
| } | } | ||||
| } | } | ||||
| const char *RE_engine_active_view_get(RenderEngine *engine) | |||||
| { | |||||
| Render *re = engine->re; | |||||
| return RE_GetActiveRenderView(re); | |||||
| } | |||||
| void RE_engine_active_view_set(RenderEngine *engine, const char *viewname) | void RE_engine_active_view_set(RenderEngine *engine, const char *viewname) | ||||
| { | { | ||||
| Render *re = engine->re; | Render *re = engine->re; | ||||
| RE_SetActiveRenderView(re, viewname); | RE_SetActiveRenderView(re, viewname); | ||||
| } | } | ||||
| float RE_engine_get_camera_shift_x(RenderEngine *engine, Object *camera) | float RE_engine_get_camera_shift_x(RenderEngine *engine, Object *camera, int use_spherical_stereo) | ||||
| { | { | ||||
| Render *re = engine->re; | Render *re = engine->re; | ||||
| /* when using spherical stereo, get camera shift without multiview, leaving stereo to be handled by the engine */ | |||||
| if (use_spherical_stereo) | |||||
| re = NULL; | |||||
| return BKE_camera_multiview_shift_x(re ? &re->r : NULL, camera, re->viewname); | return BKE_camera_multiview_shift_x(re ? &re->r : NULL, camera, re->viewname); | ||||
| } | } | ||||
| void RE_engine_get_camera_model_matrix(RenderEngine *engine, Object *camera, float *r_modelmat) | void RE_engine_get_camera_model_matrix(RenderEngine *engine, Object *camera, int use_spherical_stereo, float *r_modelmat) | ||||
| { | { | ||||
| Render *re = engine->re; | Render *re = engine->re; | ||||
| /* when using spherical stereo, get model matrix without multiview, leaving stereo to be handled by the engine */ | |||||
| if (use_spherical_stereo) | |||||
| re = NULL; | |||||
| BKE_camera_multiview_model_matrix(re ? &re->r : NULL, camera, re->viewname, (float (*)[4])r_modelmat); | BKE_camera_multiview_model_matrix(re ? &re->r : NULL, camera, re->viewname, (float (*)[4])r_modelmat); | ||||
| } | } | ||||
| int RE_engine_get_spherical_stereo(RenderEngine *engine, Object *camera) | |||||
| { | |||||
| Render *re = engine->re; | |||||
| return BKE_camera_multiview_spherical_stereo(re ? &re->r : NULL, camera) ? 1 : 0; | |||||
| } | |||||
| rcti* RE_engine_get_current_tiles(Render *re, int *r_total_tiles, bool *r_needs_free) | rcti* RE_engine_get_current_tiles(Render *re, int *r_total_tiles, bool *r_needs_free) | ||||
| { | { | ||||
| static rcti tiles_static[BLENDER_MAX_THREADS]; | static rcti tiles_static[BLENDER_MAX_THREADS]; | ||||
| const int allocation_step = BLENDER_MAX_THREADS; | const int allocation_step = BLENDER_MAX_THREADS; | ||||
| RenderPart *pa; | RenderPart *pa; | ||||
| int total_tiles = 0; | int total_tiles = 0; | ||||
| rcti *tiles = tiles_static; | rcti *tiles = tiles_static; | ||||
| int allocation_size = BLENDER_MAX_THREADS; | int allocation_size = BLENDER_MAX_THREADS; | ||||
| ▲ Show 20 Lines • Show All 344 Lines • Show Last 20 Lines | |||||