|
Blender
V2.59
|
#include <math.h>#include <limits.h>#include <string.h>#include <stdlib.h>#include <stddef.h>#include "DNA_group_types.h"#include "DNA_image_types.h"#include "DNA_node_types.h"#include "DNA_object_types.h"#include "DNA_scene_types.h"#include "DNA_sequence_types.h"#include "DNA_userdef_types.h"#include "MEM_guardedalloc.h"#include "BKE_animsys.h"#include "BKE_global.h"#include "BKE_image.h"#include "BKE_main.h"#include "BKE_node.h"#include "BKE_object.h"#include "BKE_pointcache.h"#include "BKE_report.h"#include "BKE_scene.h"#include "BKE_sequencer.h"#include "BKE_utildefines.h"#include "BKE_writeavi.h"#include "BLI_math.h"#include "BLI_blenlib.h"#include "BLI_rand.h"#include "BLI_threads.h"#include "BLI_callbacks.h"#include "BLI_utildefines.h"#include "PIL_time.h"#include "IMB_imbuf.h"#include "IMB_imbuf_types.h"#include "intern/openexr/openexr_multi.h"#include "RE_pipeline.h"#include "render_types.h"#include "renderpipeline.h"#include "renderdatabase.h"#include "rendercore.h"#include "envmap.h"#include "initrender.h"#include "shadbuf.h"#include "pixelblending.h"#include "zbuf.h"Go to the source code of this file.
Defines | |
| #define | RR_USEMEM 0 |
Functions | |
| static int | do_write_image_or_movie (Render *re, Scene *scene, bMovieHandle *mh, const char *name_override) |
| static int | thread_break (void *UNUSED(arg)) |
| static void | result_nothing (void *UNUSED(arg), RenderResult *UNUSED(rr)) |
| static void | result_rcti_nothing (void *UNUSED(arg), RenderResult *UNUSED(rr), volatile struct rcti *UNUSED(rect)) |
| static void | stats_nothing (void *UNUSED(arg), RenderStats *UNUSED(rs)) |
| static void | float_nothing (void *UNUSED(arg), float UNUSED(val)) |
| static int | default_break (void *UNUSED(arg)) |
| static void | stats_background (void *UNUSED(arg), RenderStats *rs) |
| void | RE_FreeRenderResult (RenderResult *res) |
| static void | free_render_result (ListBase *lb, RenderResult *rr) |
| static void | push_render_result (Render *re) |
| static void | pop_render_result (Render *re) |
| static const char * | get_pass_name (int passtype, int channel) |
| static int | passtype_from_name (char *str) |
| static void | scene_unique_exr_name (Scene *scene, char *str, int sample) |
| static void | render_unique_exr_name (Render *re, char *str, int sample) |
| static void | render_layer_add_pass (RenderResult *rr, RenderLayer *rl, int channels, int passtype) |
| float * | RE_RenderLayerGetPass (RenderLayer *rl, int passtype) |
| RenderLayer * | RE_GetRenderLayer (RenderResult *rr, const char *name) |
| static RenderResult * | new_render_result (Render *re, rcti *partrct, int crop, int savebuffers) |
| static int | render_scene_needs_vector (Render *re) |
| static void | do_merge_tile (RenderResult *rr, RenderResult *rrpart, float *target, float *tile, int pixsize) |
| static void | merge_render_result (RenderResult *rr, RenderResult *rrpart) |
| static void | save_render_result_tile (RenderResult *rr, RenderResult *rrpart) |
| static void | save_empty_result_tiles (Render *re) |
| static char * | make_pass_name (RenderPass *rpass, int chan) |
| void | RE_WriteRenderResult (RenderResult *rr, const char *filename, int compress) |
| static void * | ml_addlayer_cb (void *base, char *str) |
| static void | ml_addpass_cb (void *UNUSED(base), void *lay, char *str, float *rect, int totchan, char *chan_id) |
| RenderResult * | RE_MultilayerConvert (void *exrhandle, int rectx, int recty) |
| static void | renderresult_add_names (RenderResult *rr) |
| static int | read_render_result_from_file (const char *filename, RenderResult *rr) |
| static void | read_render_result (Render *re, int sample) |
| Render * | RE_GetRender (const char *name) |
| RenderResult * | RE_AcquireResultRead (Render *re) |
| RenderResult * | RE_AcquireResultWrite (Render *re) |
| void | RE_SwapResult (Render *re, RenderResult **rr) |
| void | RE_ReleaseResult (Render *re) |
| Scene * | RE_GetScene (Render *re) |
| RenderLayer * | render_get_active_layer (Render *re, RenderResult *rr) |
| void | RE_AcquireResultImage (Render *re, RenderResult *rr) |
| void | RE_ReleaseResultImage (Render *re) |
| void | RE_ResultGet32 (Render *re, unsigned int *rect) |
| RenderStats * | RE_GetStats (Render *re) |
| Render * | RE_NewRender (const char *name) |
| void | RE_InitRenderCB (Render *re) |
| void | RE_FreeRender (Render *re) |
| void | RE_FreeAllRender (void) |
| void | RE_InitState (Render *re, Render *source, RenderData *rd, SceneRenderLayer *srl, int winx, int winy, rcti *disprect) |
| void | RE_SetDispRect (struct Render *re, rcti *disprect) |
| void | RE_SetWindow (Render *re, rctf *viewplane, float clipsta, float clipend) |
| void | RE_SetOrtho (Render *re, rctf *viewplane, float clipsta, float clipend) |
| void | RE_SetView (Render *re, float mat[][4]) |
| void | RE_display_init_cb (Render *re, void *handle, void(*f)(void *handle, RenderResult *rr)) |
| void | RE_display_clear_cb (Render *re, void *handle, void(*f)(void *handle, RenderResult *rr)) |
| void | RE_display_draw_cb (Render *re, void *handle, void(*f)(void *handle, RenderResult *rr, volatile rcti *rect)) |
| void | RE_stats_draw_cb (Render *re, void *handle, void(*f)(void *handle, RenderStats *rs)) |
| void | RE_progress_cb (Render *re, void *handle, void(*f)(void *handle, float)) |
| void | RE_draw_lock_cb (Render *re, void *handle, void(*f)(void *handle, int i)) |
| void | RE_test_break_cb (Render *re, void *handle, int(*f)(void *handle)) |
| void | RE_AddObject (Render *UNUSED(re), Object *UNUSED(ob)) |
| static int | render_display_draw_enabled (Render *re) |
| static RenderResult * | new_full_sample_buffers (Render *re, ListBase *lb, rcti *partrct, int crop) |
| static void * | do_part_thread (void *pa_v) |
| float | panorama_pixel_rot (Render *re) |
| static RenderPart * | find_next_pano_slice (Render *re, int *minx, rctf *viewplane) |
| static RenderPart * | find_next_part (Render *re, int minx) |
| static void | print_part_stats (Render *re, RenderPart *pa) |
| static RenderResult * | new_full_sample_buffers_exr (Render *re) |
| static void | threaded_tile_processor (Render *re) |
| void | RE_TileProcessor (Render *re) |
| static int | external_render_3d (Render *re, int do_all) |
| static void | do_render_3d (Render *re) |
| static void | addblur_rect_key (RenderResult *rr, float *rectf, float *rectf1, float blurfac) |
| static void | addblur_rect (RenderResult *rr, float *rectf, float *rectf1, float blurfac, int channels) |
| static void | merge_renderresult_blur (RenderResult *rr, RenderResult *brr, float blurfac, int key_alpha) |
| static void | do_render_blur_3d (Render *re) |
| static void | interleave_rect (RenderResult *rr, float *rectf, float *rectf1, float *rectf2, int channels) |
| static void | merge_renderresult_fields (RenderResult *rr, RenderResult *rr1, RenderResult *rr2) |
| static void | do_render_fields_3d (Render *re) |
| static void | do_render_fields_blur_3d (Render *re) |
| static void | render_scene (Render *re, Scene *sce, int cfra) |
| static int | composite_needs_render (Scene *sce, int this_scene) |
| static void | tag_scenes_for_render (Render *re) |
| static void | ntree_render_scenes (Render *re) |
| static void | render_composit_stats (void *UNUSED(arg), char *str) |
| static void | do_merge_fullsample (Render *re, bNodeTree *ntree) |
| void | RE_MergeFullSample (Render *re, Main *bmain, Scene *sce, bNodeTree *ntree) |
| static void | do_render_composite_fields_blur_3d (Render *re) |
| static void | renderresult_stampinfo (Render *re) |
| static int | seq_render_active (Render *re) |
| static void | do_render_seq (Render *re) |
| static void | do_render_all_options (Render *re) |
| static int | check_valid_camera (Scene *scene, Object *camera_override) |
| int | RE_is_rendering_allowed (Scene *scene, Object *camera_override, ReportList *reports) |
| static void | validate_render_settings (Render *re) |
| static void | update_physics_cache (Render *re, Scene *scene, int UNUSED(anim_init)) |
| static int | render_initialize_from_main (Render *re, Main *bmain, Scene *scene, SceneRenderLayer *srl, Object *camera_override, unsigned int lay, int anim, int anim_init) |
| void | RE_SetReports (Render *re, ReportList *reports) |
| void | RE_BlenderFrame (Render *re, Main *bmain, Scene *scene, SceneRenderLayer *srl, Object *camera_override, unsigned int lay, int frame, const short write_still) |
| void | RE_BlenderAnim (Render *re, Main *bmain, Scene *scene, Object *camera_override, unsigned int lay, int sfra, int efra, int tfra) |
| void | RE_PreviewRender (Render *re, Main *bmain, Scene *sce) |
| void | RE_ReadRenderResult (Scene *scene, Scene *scenode) |
| void | RE_set_max_threads (int threads) |
| void | RE_init_threadcount (Render *re) |
| RenderResult * | RE_engine_begin_result (RenderEngine *engine, int x, int y, int w, int h) |
| void | RE_engine_update_result (RenderEngine *engine, RenderResult *result) |
| void | RE_engine_end_result (RenderEngine *engine, RenderResult *result) |
| int | RE_engine_test_break (RenderEngine *engine) |
| void | RE_engine_update_stats (RenderEngine *engine, const char *stats, const char *info) |
| void | RE_engine_report (RenderEngine *engine, int type, const char *msg) |
| void | RE_layer_load_from_file (RenderLayer *layer, ReportList *reports, const char *filename, int x, int y) |
| void | RE_result_load_from_file (RenderResult *result, ReportList *reports, const char *filename) |
Variables | |
| struct { | |
| ListBase renderlist | |
| int threads | |
| } | RenderGlobal |
| Render | R |
| static volatile int | g_break = 0 |
Definition in file pipeline.c.
| #define RR_USEMEM 0 |
Definition at line 545 of file pipeline.c.
Referenced by do_part_thread(), do_render_blur_3d(), do_render_composite_fields_blur_3d(), do_render_fields_3d(), do_render_fields_blur_3d(), new_full_sample_buffers(), RE_engine_begin_result(), RE_SetDispRect(), and read_render_result().
| static void addblur_rect | ( | RenderResult * | rr, |
| float * | rectf, | ||
| float * | rectf1, | ||
| float | blurfac, | ||
| int | channels | ||
| ) | [static] |
Definition at line 1867 of file pipeline.c.
References RenderResult::rectx, and RenderResult::recty.
Referenced by merge_renderresult_blur().
| static void addblur_rect_key | ( | RenderResult * | rr, |
| float * | rectf, | ||
| float * | rectf1, | ||
| float | blurfac | ||
| ) | [static] |
Definition at line 1831 of file pipeline.c.
References RenderResult::rectx, and RenderResult::recty.
Referenced by merge_renderresult_blur().
Definition at line 2658 of file pipeline.c.
References Scene::camera, CMP_NODE_R_LAYERS, Scene::ed, ListBase::first, bNode::id, Sequence::next, bNode::next, bNodeTree::nodes, Scene::nodetree, NULL, Scene::r, R_DOCOMP, R_DOSEQ, RenderData::scemode, Sequence::scene, Sequence::scene_camera, scene_find_camera(), SEQ_SCENE, Editing::seqbase, Sequence::type, bNode::type, and Scene::use_nodes.
Referenced by RE_is_rendering_allowed().
| static int composite_needs_render | ( | Scene * | sce, |
| int | this_scene | ||
| ) | [static] |
Definition at line 2176 of file pipeline.c.
References CMP_NODE_R_LAYERS, ListBase::first, bNode::id, Scene::id, bNode::next, bNodeTree::nodes, Scene::nodetree, NULL, Scene::r, R_DOCOMP, RenderData::scemode, bNode::type, and Scene::use_nodes.
Referenced by do_render_composite_fields_blur_3d(), RE_is_rendering_allowed(), and tag_scenes_for_render().
| static int default_break | ( | void * | UNUSEDarg | ) | [static] |
Definition at line 144 of file pipeline.c.
References Global::afbreek, and G.
Referenced by RE_InitRenderCB().
Definition at line 2261 of file pipeline.c.
References add_filt_fmask_coord(), Global::background, BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), RenderStats::curfsa, Render::ddh, Render::display_draw, ID::flag, G, Render::i, Scene::id, LIB_DOIT, mask_array(), MEM_freeN(), MEM_mapallocN(), Render::next, ntreeCompositExecTree(), ntreeCompositTagAnimated(), ntreeCompositTagRender(), NULL, Render::osa, RenderData::osa, bNodeTree::prh, Render::prh, bNodeTree::progress, Render::progress, Render::r, R_FULL_SAMPLE, RE_AcquireResultImage(), RE_ReleaseResultImage(), read_render_result(), RenderResult::rectf, Render::rectx, Render::recty, render_composit_stats(), render_get_active_layer(), RenderGlobal, RenderResult::renlay, Render::result, Render::resultmutex, RenderData::scemode, Render::scene, bNodeTree::sdh, Render::sdh, bNodeTree::stats_draw, tag_scenes_for_render(), bNodeTree::tbh, Render::tbh, bNodeTree::test_break, Render::test_break, and THREAD_LOCK_WRITE.
Referenced by do_render_composite_fields_blur_3d(), and RE_MergeFullSample().
| static void do_merge_tile | ( | RenderResult * | rr, |
| RenderResult * | rrpart, | ||
| float * | target, | ||
| float * | tile, | ||
| int | pixsize | ||
| ) | [static] |
Definition at line 694 of file pipeline.c.
References RenderResult::crop, RenderResult::rectx, RenderResult::recty, RenderResult::tilerect, rcti::xmin, and rcti::ymin.
Referenced by merge_render_result().
| static void* do_part_thread | ( | void * | pa_v | ) | [static] |
Definition at line 1468 of file pipeline.c.
References RenderPart::crop, RenderPart::disprect, RenderResult::exrhandle, RenderPart::fullresult, merge_render_result(), new_full_sample_buffers(), new_render_result(), RenderResult::next, NULL, Render::osa, Render::r, R_FULL_SAMPLE, R_PREVIEWBUTS, RenderPart::ready, render_display_draw_enabled(), RenderPart::result, Render::result, RR_USEMEM, save_render_result_tile(), RenderData::scemode, Render::sss_points, Render::tbh, Render::test_break, zbufshade_sss_tile(), zbufshade_tile(), and zbufshadeDA_tile().
Referenced by threaded_tile_processor().
| static void do_render_3d | ( | Render * | re | ) | [static] |
Definition at line 1792 of file pipeline.c.
References add_halo_flare(), Render::dlh, Render::draw_lock, external_render_3d(), Render::field_offs, Render::flag, Render::lay, Render::main, Render::mblur_offs, Scene::r, R_HALO, RE_Database_Free(), RE_Database_FromScene(), RE_Database_FromScene_Vectors(), render_scene_needs_vector(), Render::scene, RenderData::subframe, Render::tbh, Render::test_break, and threaded_tile_processor().
Referenced by do_render_blur_3d(), do_render_fields_3d(), do_render_fields_blur_3d(), and RE_PreviewRender().
| static void do_render_all_options | ( | Render * | re | ) | [static] |
Definition at line 2618 of file pipeline.c.
References BKE_image_all_free_anim_ibufs(), BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), RenderData::cfra, Render::ddh, Render::display_draw, do_render_composite_fields_blur_3d(), do_render_seq(), external_render_3d(), Render::i, RenderStats::lastframetime, NULL, PIL_check_seconds_timer(), Render::r, R_STAMP_ALL, R_STAMP_DRAW, renderresult_add_names(), renderresult_stampinfo(), Render::result, Render::resultmutex, Render::scene, scene_camera_switch_update(), Render::sdh, seq_render_active(), RenderData::stamp, RenderStats::starttime, Render::stats_draw, Render::tbh, Render::test_break, and THREAD_LOCK_WRITE.
Referenced by RE_BlenderAnim(), and RE_BlenderFrame().
| static void do_render_blur_3d | ( | Render * | re | ) | [static] |
Definition at line 1916 of file pipeline.c.
References RenderData::alphamode, BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), RenderData::blurfac, RenderStats::curblur, Render::ddh, Render::display_draw, Render::disprect, do_render_3d(), Render::i, Render::mblur_offs, RenderData::mblur_samples, merge_renderresult_blur(), new_render_result(), NULL, Render::r, R_ALPHAKEY, RE_FreeRenderResult(), render_get_active_layer(), RenderResult::renlay, Render::result, Render::resultmutex, RR_USEMEM, Render::tbh, Render::test_break, and THREAD_LOCK_WRITE.
Referenced by do_render_fields_3d(), and do_render_fields_blur_3d().
| static void do_render_composite_fields_blur_3d | ( | Render * | re | ) | [static] |
Definition at line 2409 of file pipeline.c.
References Global::background, BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), BLI_srandom(), RenderData::cfra, composite_needs_render(), Render::ddh, Render::display_draw, Render::disprect, do_merge_fullsample(), do_render_fields_blur_3d(), G, Render::lay, Render::main, new_render_result(), Scene::nodetree, ntree_render_scenes(), ntreeCompositExecTree(), ntreeCompositTagAnimated(), ntreeCompositTagRender(), ntreeFreeCache(), NULL, pop_render_result(), bNodeTree::prh, Render::prh, bNodeTree::progress, Render::progress, Render::r, R_DOCOMP, R_FULL_SAMPLE, R_SINGLE_LAYER, RE_FreeRenderResult(), render_composit_stats(), render_get_active_layer(), RenderResult::renlay, Render::result, Render::resultmutex, RR_USEMEM, RenderData::scemode, Render::scene, scene_update_for_newframe(), bNodeTree::sdh, Render::sdh, bNodeTree::stats_draw, Render::stats_draw, bNodeTree::tbh, Render::tbh, bNodeTree::test_break, Render::test_break, and THREAD_LOCK_WRITE.
Referenced by do_render_all_options().
| static void do_render_fields_3d | ( | Render * | re | ) | [static] |
Definition at line 1995 of file pipeline.c.
References BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), RenderStats::curfield, Render::ddh, Render::display_draw, Render::disprect, do_render_3d(), do_render_blur_3d(), Render::field_offs, Render::flag, Render::i, merge_renderresult_fields(), RenderData::mode, new_render_result(), NULL, Render::r, R_FIELDSTILL, R_FULL_SAMPLE, R_MBLUR, R_ODDFIELD, R_SEC_FIELD, RE_FreeRenderResult(), RE_GetCamera(), RE_SetCamera(), Render::recty, render_get_active_layer(), RenderResult::renlay, Render::result, Render::resultmutex, RR_USEMEM, RenderData::scemode, Render::tbh, Render::test_break, THREAD_LOCK_WRITE, Render::winy, rcti::ymax, and rcti::ymin.
Referenced by do_render_fields_blur_3d().
| static void do_render_fields_blur_3d | ( | Render * | re | ) | [static] |
Definition at line 2072 of file pipeline.c.
References Global::afbreek, BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), Render::ddh, Render::dih, Render::display_draw, Render::display_init, Render::disprect, do_render_3d(), do_render_blur_3d(), do_render_fields_3d(), G, merge_render_result(), RenderData::mode, new_render_result(), NULL, Render::r, R_BORDER, R_CROP, R_FIELDS, R_FULL_SAMPLE, R_MBLUR, RE_FreeRenderResult(), RE_GetCamera(), RE_SetCamera(), Render::rectx, Render::recty, render_get_active_layer(), RenderResult::renlay, Render::result, Render::resultmutex, RR_USEMEM, RenderData::scemode, THREAD_LOCK_WRITE, RenderResult::tilerect, Render::winx, Render::winy, rcti::xmax, rcti::xmin, RenderResult::xof, rcti::ymax, rcti::ymin, and RenderResult::yof.
Referenced by do_render_composite_fields_blur_3d(), and render_scene().
| static void do_render_seq | ( | Render * | re | ) | [static] |
Definition at line 2516 of file pipeline.c.
References BKE_animsys_evaluate_all_animation(), BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), RenderStats::cfra, RenderData::cfra, RenderData::color_mgt_flag, Scene::ed, free_imbuf_seq(), give_ibuf_seq(), Render::i, IB_PROFILE_LINEAR_RGB, IMB_freeImBuf(), linearrgb_to_srgb_rgba_rgba_buf(), Render::main, MEM_callocN(), MEM_freeN(), MEM_mallocN(), NULL, ImBuf::profile, Render::r, R_COLOR_MANAGEMENT, R_DOSEQ, ImBuf::rect, RenderResult::rect32, ImBuf::rect_float, RenderResult::rectf, RenderResult::rectx, RenderResult::recty, Render::result, Render::resultmutex, RenderData::scemode, Render::scene, seq_new_render_data(), Editing::seqbase, srgb_to_linearrgb_rgba_rgba_buf(), THREAD_LOCK_WRITE, and TRUE.
Referenced by do_render_all_options().
| static int do_write_image_or_movie | ( | Render * | re, |
| Scene * | scene, | ||
| bMovieHandle * | mh, | ||
| const char * | name_override | ||
| ) | [static] |
Definition at line 2952 of file pipeline.c.
References bMovieHandle::append_movie, BKE_add_image_extension(), BKE_imtype_is_movie(), BKE_makepicstring(), BKE_write_ibuf_stamp(), BLI_strncpy(), BLI_testextensie(), BLI_timestr(), RenderData::cfra, RenderData::color_mgt_flag, ImBuf::depth, ImBuf::dither, RenderData::dither_intensity, ELEM, FILE_MAX, Render::i, IB_PROFILE_LINEAR_RGB, IB_PROFILE_SRGB, if(), IMB_allocImBuf(), IMB_color_to_bw(), IMB_dupImBuf(), IMB_float_from_rect(), IMB_freeImBuf(), RenderData::imtype, RenderStats::lastframetime, MEM_freeN(), MEM_mapallocN(), ImBuf::name, NULL, RenderData::pic, RenderData::planes, ImBuf::profile, RenderData::quality, Render::r, Scene::r, R_COLOR_MANAGEMENT, R_EXTENSION, R_JPEG90, R_MULTILAYER, R_OPENEXR, R_PREVIEW_JPG, R_RADHDR, RE_AcquireResultImage(), RE_GetCamera(), RE_ReleaseResultImage(), RE_ResultGet32(), RE_WriteRenderResult(), ImBuf::rect, RenderResult::rect32, ImBuf::rect_float, RenderResult::rectf, RenderResult::rectx, RenderResult::recty, RenderResult::rectz, Render::reports, Render::result, RenderData::scemode, RenderData::subimtype, TRUE, and ImBuf::zbuf_float.
Referenced by RE_BlenderAnim(), and RE_BlenderFrame().
| static int external_render_3d | ( | Render * | re, |
| int | do_all | ||
| ) | [static] |
Definition at line 3408 of file pipeline.c.
References BLI_findstring(), BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), Render::disprect, RenderData::engine, RenderResult::exrhandle, ListBase::first, RenderEngineType::flag, free_render_result(), Render::fullresult, RenderEngine::fullresult, IMB_exr_close(), new_full_sample_buffers_exr(), new_render_result(), RenderResult::next, NULL, Render::r, R_engines, R_PREVIEWBUTS, RenderEngine::re, RE_DO_ALL, RE_DO_PREVIEW, RE_FreeRenderResult(), read_render_result(), RenderEngineType::render, Render::result, Render::resultmutex, save_empty_result_tiles(), RenderData::scemode, Render::scene, THREAD_LOCK_WRITE, and RenderEngine::type.
Referenced by do_render_3d(), and do_render_all_options().
| static RenderPart* find_next_pano_slice | ( | Render * | re, |
| int * | minx, | ||
| rctf * | viewplane | ||
| ) | [static] |
Definition at line 1534 of file pipeline.c.
References Render::clipend, Render::clipsta, copy_m4_m4(), cos(), RenderPart::disprect, ListBase::first, RenderPart::next, RenderPart::nr, NULL, Render::panoco, Render::panodxp, Render::panodxv, panorama_pixel_rot(), Render::panosi, Render::parts, project_renderdata(), projectverto(), RE_SetWindow(), RenderPart::ready, sin(), Render::viewplane, Render::winmat, Render::winx, rcti::xmax, rctf::xmax, rcti::xmin, and rctf::xmin.
Referenced by threaded_tile_processor().
| static RenderPart* find_next_part | ( | Render * | re, |
| int | minx | ||
| ) | [static] |
Definition at line 1570 of file pipeline.c.
References RenderPart::disprect, ListBase::first, RenderData::mode, RenderPart::next, RenderPart::nr, NULL, Render::parts, Render::r, R_PANORAMA, RenderPart::ready, sqrt(), Render::winx, Render::winy, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by threaded_tile_processor().
| static void float_nothing | ( | void * | UNUSEDarg, |
| float | UNUSEDval | ||
| ) | [static] |
Definition at line 143 of file pipeline.c.
Referenced by RE_InitRenderCB().
| static void free_render_result | ( | ListBase * | lb, |
| RenderResult * | rr | ||
| ) | [static] |
Definition at line 215 of file pipeline.c.
References BLI_remlink(), ListBase::first, RenderResult::next, and RE_FreeRenderResult().
Referenced by external_render_3d(), RE_engine_end_result(), and threaded_tile_processor().
| static const char* get_pass_name | ( | int | passtype, |
| int | channel | ||
| ) | [static] |
Definition at line 288 of file pipeline.c.
References SCE_PASS_AO, SCE_PASS_COMBINED, SCE_PASS_DIFFUSE, SCE_PASS_EMIT, SCE_PASS_ENVIRONMENT, SCE_PASS_INDEXMA, SCE_PASS_INDEXOB, SCE_PASS_INDIRECT, SCE_PASS_MIST, SCE_PASS_NORMAL, SCE_PASS_RAYHITS, SCE_PASS_REFLECT, SCE_PASS_REFRACT, SCE_PASS_RGBA, SCE_PASS_SHADOW, SCE_PASS_SPEC, SCE_PASS_UV, SCE_PASS_VECTOR, and SCE_PASS_Z.
Referenced by RE_WriteRenderResult(), read_render_result_from_file(), render_layer_add_pass(), renderresult_add_names(), and save_render_result_tile().
| static void interleave_rect | ( | RenderResult * | rr, |
| float * | rectf, | ||
| float * | rectf1, | ||
| float * | rectf2, | ||
| int | channels | ||
| ) | [static] |
Definition at line 1955 of file pipeline.c.
References RenderResult::rectx, and RenderResult::recty.
Referenced by merge_renderresult_fields().
| static char* make_pass_name | ( | RenderPass * | rpass, |
| int | chan | ||
| ) | [static] |
Definition at line 811 of file pipeline.c.
References BLI_strncpy(), RenderPass::chan_id, EXR_PASS_MAXNAME, and RenderPass::name.
Referenced by RE_WriteRenderResult().
| static void merge_render_result | ( | RenderResult * | rr, |
| RenderResult * | rrpart | ||
| ) | [static] |
Definition at line 729 of file pipeline.c.
References RenderPass::channels, do_merge_tile(), ListBase::first, RenderResult::layers, RenderPass::next, RenderLayer::next, RenderLayer::passes, RenderPass::rect, and RenderLayer::rectf.
Referenced by do_part_thread(), do_render_fields_blur_3d(), and RE_engine_end_result().
| static void merge_renderresult_blur | ( | RenderResult * | rr, |
| RenderResult * | brr, | ||
| float | blurfac, | ||
| int | key_alpha | ||
| ) | [static] |
Definition at line 1891 of file pipeline.c.
References addblur_rect(), addblur_rect_key(), RenderPass::channels, ListBase::first, RenderResult::layers, RenderPass::next, RenderLayer::next, RenderLayer::passes, RenderPass::rect, and RenderLayer::rectf.
Referenced by do_render_blur_3d().
| static void merge_renderresult_fields | ( | RenderResult * | rr, |
| RenderResult * | rr1, | ||
| RenderResult * | rr2 | ||
| ) | [static] |
Definition at line 1971 of file pipeline.c.
References RenderPass::channels, ListBase::first, interleave_rect(), RenderResult::layers, RenderPass::next, RenderLayer::next, RenderLayer::passes, RenderPass::rect, and RenderLayer::rectf.
Referenced by do_render_fields_3d().
| static void* ml_addlayer_cb | ( | void * | base, |
| char * | str | ||
| ) | [static] |
Definition at line 875 of file pipeline.c.
References BLI_addtail(), BLI_strncpy(), EXR_LAY_MAXNAME, RenderResult::layers, MEM_callocN(), and RenderLayer::name.
Referenced by RE_MultilayerConvert().
| static void ml_addpass_cb | ( | void * | UNUSEDbase, |
| void * | lay, | ||
| char * | str, | ||
| float * | rect, | ||
| int | totchan, | ||
| char * | chan_id | ||
| ) | [static] |
Definition at line 886 of file pipeline.c.
References BLI_addtail(), BLI_strncpy(), RenderPass::chan_id, RenderPass::channels, EXR_PASS_MAXNAME, MEM_callocN(), RenderPass::name, RenderLayer::passes, RenderLayer::passflag, RenderPass::passtype, passtype_from_name(), and RenderPass::rect.
Referenced by RE_MultilayerConvert().
| static RenderResult* new_full_sample_buffers | ( | Render * | re, |
| ListBase * | lb, | ||
| rcti * | partrct, | ||
| int | crop | ||
| ) | [static] |
Definition at line 1450 of file pipeline.c.
References BLI_addtail(), ListBase::first, new_render_result(), Render::osa, RR_USEMEM, and RenderResult::sample_nr.
Referenced by do_part_thread(), and RE_engine_begin_result().
| static RenderResult* new_full_sample_buffers_exr | ( | Render * | re | ) | [static] |
Definition at line 1623 of file pipeline.c.
References BLI_addtail(), Render::disprect, ListBase::first, Render::fullresult, new_render_result(), Render::osa, and RenderResult::sample_nr.
Referenced by external_render_3d(), and threaded_tile_processor().
| static RenderResult* new_render_result | ( | Render * | re, |
| rcti * | partrct, | ||
| int | crop, | ||
| int | savebuffers | ||
| ) | [static] |
Definition at line 550 of file pipeline.c.
References RenderData::actlay, BLI_addtail(), BLI_strncpy(), RenderResult::crop, Render::disprect, RenderResult::exrhandle, ListBase::first, IMB_exr_add_channel(), IMB_exr_get_handle(), RenderLayer::lay, SceneRenderLayer::lay, RenderLayer::lay_zmask, SceneRenderLayer::lay_zmask, RenderResult::layers, RenderData::layers, RenderLayer::layflag, SceneRenderLayer::layflag, RenderLayer::light_override, SceneRenderLayer::light_override, RenderLayer::mat_override, SceneRenderLayer::mat_override, MEM_callocN(), MEM_mapallocN(), RenderLayer::name, SceneRenderLayer::name, SceneRenderLayer::next, NULL, RenderLayer::pass_xor, SceneRenderLayer::pass_xor, RenderLayer::passflag, SceneRenderLayer::passflag, Render::r, R_SINGLE_LAYER, RenderLayer::rectf, RenderLayer::rectx, RenderResult::rectx, RenderLayer::recty, RenderResult::recty, render_layer_add_pass(), RenderResult::renrect, SCE_LAY_DISABLE, SCE_PASS_AO, SCE_PASS_COMBINED, SCE_PASS_DIFFUSE, SCE_PASS_EMIT, SCE_PASS_ENVIRONMENT, SCE_PASS_INDEXMA, SCE_PASS_INDEXOB, SCE_PASS_INDIRECT, SCE_PASS_MIST, SCE_PASS_NORMAL, SCE_PASS_RAYHITS, SCE_PASS_REFLECT, SCE_PASS_REFRACT, SCE_PASS_RGBA, SCE_PASS_SHADOW, SCE_PASS_SPEC, SCE_PASS_UV, SCE_PASS_VECTOR, SCE_PASS_Z, RenderData::scemode, RenderResult::tilerect, Render::winx, Render::winy, rcti::xmax, rcti::xmin, RenderResult::xof, rcti::ymax, rcti::ymin, and RenderResult::yof.
Referenced by do_part_thread(), do_render_blur_3d(), do_render_composite_fields_blur_3d(), do_render_fields_3d(), do_render_fields_blur_3d(), external_render_3d(), new_full_sample_buffers(), new_full_sample_buffers_exr(), RE_engine_begin_result(), RE_SetDispRect(), read_render_result(), and threaded_tile_processor().
| static void ntree_render_scenes | ( | Render * | re | ) | [static] |
Definition at line 2218 of file pipeline.c.
References RenderData::cfra, CMP_NODE_R_LAYERS, ListBase::first, ID::flag, bNode::id, LIB_DOIT, Render::main, bNode::next, bNodeTree::nodes, NodeTagChanged(), Scene::nodetree, NULL, Scene::r, render_scene(), Render::scene, set_scene_bg(), tag_scenes_for_render(), and bNode::type.
Referenced by do_render_composite_fields_blur_3d().
| float panorama_pixel_rot | ( | Render * | re | ) |
Definition at line 1510 of file pipeline.c.
References KDL::atan(), Render::clipsta, Render::disprect, Render::partx, Render::viewplane, Render::winx, rcti::xmax, rctf::xmax, rcti::xmin, rctf::xmin, and Render::xparts.
Referenced by find_next_pano_slice(), and initparts().
| static int passtype_from_name | ( | char * | str | ) | [static] |
Definition at line 404 of file pipeline.c.
References SCE_PASS_AO, SCE_PASS_COMBINED, SCE_PASS_DIFFUSE, SCE_PASS_EMIT, SCE_PASS_ENVIRONMENT, SCE_PASS_INDEXMA, SCE_PASS_INDEXOB, SCE_PASS_INDIRECT, SCE_PASS_MIST, SCE_PASS_NORMAL, SCE_PASS_RAYHITS, SCE_PASS_REFLECT, SCE_PASS_REFRACT, SCE_PASS_RGBA, SCE_PASS_SHADOW, SCE_PASS_SPEC, SCE_PASS_UV, SCE_PASS_VECTOR, and SCE_PASS_Z.
Referenced by ml_addpass_cb().
| static void pop_render_result | ( | Render * | re | ) | [static] |
Definition at line 245 of file pipeline.c.
References RenderData::actlay, BLI_addtail(), BLI_remlink(), BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), ListBase::first, RenderResult::layers, RenderData::layers, SceneRenderLayer::name, SceneRenderLayer::next, NULL, Render::pushedresult, Render::r, Scene::r, RE_FreeRenderResult(), RE_GetRenderLayer(), RenderResult::rectx, RenderResult::recty, Render::result, Render::resultmutex, Render::scene, and THREAD_LOCK_WRITE.
Referenced by do_render_composite_fields_blur_3d().
| static void print_part_stats | ( | Render * | re, |
| RenderPart * | pa | ||
| ) | [static] |
Definition at line 1612 of file pipeline.c.
References BLI_snprintf(), Render::i, Scene::id, RenderStats::infostr, ID::name, RenderPart::nr, NULL, Render::scene, Render::sdh, Render::stats_draw, str, and RenderStats::totpart.
Referenced by threaded_tile_processor().
| static void push_render_result | ( | Render * | re | ) | [static] |
Definition at line 231 of file pipeline.c.
References BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), NULL, Render::pushedresult, RE_FreeRenderResult(), Render::result, Render::resultmutex, and THREAD_LOCK_WRITE.
Referenced by render_initialize_from_main().
| void RE_AcquireResultImage | ( | Render * | re, |
| RenderResult * | rr | ||
| ) |
Definition at line 1083 of file pipeline.c.
References BLI_rw_mutex_lock(), RenderResult::have_combined, RenderResult::layers, NULL, RE_RenderLayerGetPass(), RenderResult::rect32, RenderLayer::rectf, RenderResult::rectf, RenderResult::rectx, RenderResult::recty, RenderResult::rectz, render_get_active_layer(), Render::result, Render::resultmutex, SCE_PASS_Z, and THREAD_LOCK_READ.
Referenced by do_merge_fullsample(), do_write_image_or_movie(), ed_preview_draw_rect(), image_get_render_result(), RE_ResultGet32(), renderresult_stampinfo(), and seq_render_scene_strip_impl().
| RenderResult* RE_AcquireResultRead | ( | Render * | re | ) | [read] |
Definition at line 1028 of file pipeline.c.
References BLI_rw_mutex_lock(), NULL, Render::result, Render::resultmutex, and THREAD_LOCK_READ.
Referenced by BKE_image_acquire_renderresult(), image_renderinfo_cb(), node_composit_exec_rlayers(), screen_opengl_render_apply(), and uiTemplateImage().
| RenderResult* RE_AcquireResultWrite | ( | Render * | re | ) | [read] |
Definition at line 1038 of file pipeline.c.
References BLI_rw_mutex_lock(), NULL, Render::result, Render::resultmutex, and THREAD_LOCK_WRITE.
Referenced by node_composit_exec_composite(), and screen_opengl_render_init().
Definition at line 1433 of file pipeline.c.
| void RE_BlenderAnim | ( | Render * | re, |
| Main * | bmain, | ||
| Scene * | scene, | ||
| Object * | camera_override, | ||
| unsigned int | lay, | ||
| int | sfra, | ||
| int | efra, | ||
| int | tfra | ||
| ) |
Definition at line 3052 of file pipeline.c.
References Global::afbreek, BKE_get_movie_handle(), BKE_imtype_is_movie(), BKE_makepicstring(), BLI_CB_EVT_RENDER_POST, BLI_CB_EVT_RENDER_PRE, BLI_delete(), BLI_exec_cb(), BLI_exist(), BLI_filepathsize(), BLI_make_existing_file(), BLI_touch(), RenderData::cfra, do_render_all_options(), do_write_image_or_movie(), bMovieHandle::end_movie, FILE_MAX, G, bMovieHandle::get_next_frame, if(), RenderData::imtype, Render::lay, Render::main, RenderData::mode, ImBuf::name, NULL, RenderData::pic, Render::r, Scene::r, R_EXTENSION, R_NO_OVERWRITE, R_TOUCH, Render::rectx, Render::recty, render_initialize_from_main(), Global::rendering, Render::reports, RenderData::scemode, scene_update_for_newframe(), RenderData::sfra, bMovieHandle::start_movie, Render::tbh, Render::test_break, and TRUE.
Referenced by render_animation(), render_frame(), render_startjob(), and screen_render_exec().
| void RE_BlenderFrame | ( | Render * | re, |
| Main * | bmain, | ||
| Scene * | scene, | ||
| SceneRenderLayer * | srl, | ||
| Object * | camera_override, | ||
| unsigned int | lay, | ||
| int | frame, | ||
| const short | write_still | ||
| ) |
Definition at line 2917 of file pipeline.c.
References Global::afbreek, BKE_imtype_is_movie(), BKE_makepicstring(), BLI_CB_EVT_RENDER_POST, BLI_CB_EVT_RENDER_PRE, BLI_exec_cb(), RenderData::cfra, do_render_all_options(), do_write_image_or_movie(), FALSE, FILE_MAX, G, Render::main, MEM_reset_peak_memory(), ImBuf::name, NULL, Scene::r, R_EXTENSION, render_initialize_from_main(), and Global::rendering.
Referenced by render_startjob(), screen_render_exec(), and seq_render_scene_strip_impl().
| void RE_display_clear_cb | ( | Render * | re, |
| void * | handle, | ||
| void(*)(void *handle, RenderResult *rr) | f | ||
| ) |
Definition at line 1395 of file pipeline.c.
References Render::dch, and Render::display_clear.
| void RE_display_draw_cb | ( | Render * | re, |
| void * | handle, | ||
| void(*)(void *handle, RenderResult *rr, volatile rcti *rect) | f | ||
| ) |
Definition at line 1400 of file pipeline.c.
References Render::ddh, and Render::display_draw.
| void RE_display_init_cb | ( | Render * | re, |
| void * | handle, | ||
| void(*)(void *handle, RenderResult *rr) | f | ||
| ) |
Definition at line 1390 of file pipeline.c.
References Render::dih, and Render::display_init.
Definition at line 1416 of file pipeline.c.
References Render::draw_lock, and Render::tbh.
| RenderResult* RE_engine_begin_result | ( | RenderEngine * | engine, |
| int | x, | ||
| int | y, | ||
| int | w, | ||
| int | h | ||
| ) | [read] |
Definition at line 3260 of file pipeline.c.
References BLI_addtail(), CLAMP(), RenderEngine::fullresult, new_full_sample_buffers(), new_render_result(), RenderEngine::re, RenderResult::rectx, RenderResult::recty, Render::result, RR_USEMEM, simple_enum_gen::w, ImBuf::x, rcti::xmax, rcti::xmin, ImBuf::y, rcti::ymax, and rcti::ymin.
| void RE_engine_end_result | ( | RenderEngine * | engine, |
| RenderResult * | result | ||
| ) |
Definition at line 3304 of file pipeline.c.
References Render::ddh, Render::display_draw, RenderResult::exrhandle, ListBase::first, free_render_result(), RenderEngine::fullresult, RenderResult::layers, merge_render_result(), RenderResult::next, NULL, Render::r, R_PREVIEWBUTS, RenderEngine::re, render_display_draw_enabled(), RenderResult::renlay, Render::result, save_render_result_tile(), RenderData::scemode, Render::tbh, and Render::test_break.
| void RE_engine_report | ( | RenderEngine * | engine, |
| int | type, | ||
| const char * | msg | ||
| ) |
Definition at line 3353 of file pipeline.c.
References BKE_report(), RenderEngine::re, and Render::reports.
| int RE_engine_test_break | ( | RenderEngine * | engine | ) |
Definition at line 3335 of file pipeline.c.
References RenderEngine::re, Render::tbh, and Render::test_break.
| void RE_engine_update_result | ( | RenderEngine * | engine, |
| RenderResult * | result | ||
| ) |
Definition at line 3294 of file pipeline.c.
References Render::ddh, Render::display_draw, ListBase::first, RenderResult::layers, NULL, RenderEngine::re, render_display_draw_enabled(), and RenderResult::renlay.
| void RE_engine_update_stats | ( | RenderEngine * | engine, |
| const char * | stats, | ||
| const char * | info | ||
| ) |
Definition at line 3342 of file pipeline.c.
References Render::i, RenderStats::infostr, NULL, RenderEngine::re, Render::sdh, Render::stats_draw, and RenderStats::statstr.
| void RE_FreeAllRender | ( | void | ) |
Definition at line 1225 of file pipeline.c.
References RE_FreeRender(), and RenderGlobal.
Referenced by WM_exit().
| void RE_FreeRender | ( | Render * | re | ) |
Definition at line 1210 of file pipeline.c.
References BLI_remlink(), BLI_rw_mutex_end(), free_renderdata_tables(), free_sample_tables(), MEM_freeN(), Render::pushedresult, RE_FreeRenderResult(), RenderGlobal, Render::result, and Render::resultmutex.
Referenced by envmap_free_render_copy(), and RE_FreeAllRender().
| void RE_FreeRenderResult | ( | RenderResult * | res | ) |
Definition at line 180 of file pipeline.c.
References RenderLayer::acolrect, BLI_remlink(), ListBase::first, RenderResult::layers, MEM_freeN(), NULL, RenderLayer::passes, RenderPass::rect, RenderResult::rect32, RenderLayer::rectf, RenderResult::rectf, RenderResult::rectz, RenderLayer::scolrect, and RenderResult::text.
Referenced by BKE_image_backup_render(), do_render_blur_3d(), do_render_composite_fields_blur_3d(), do_render_fields_3d(), do_render_fields_blur_3d(), external_render_3d(), free_image(), free_render_result(), image_free_buffers(), image_load_sequence_multilayer(), pop_render_result(), push_render_result(), RE_FreeRender(), RE_InitState(), RE_SetDispRect(), read_render_result(), sss_create_tree_mat(), and threaded_tile_processor().
| Render* RE_GetRender | ( | const char * | name | ) | [read] |
Definition at line 1015 of file pipeline.c.
References Render::name, Render::next, RE_MAXNAME, and RenderGlobal.
Referenced by BKE_image_acquire_renderresult(), BKE_image_backup_render(), BKE_image_release_renderresult(), ed_preview_draw_rect(), image_get_render_result(), node_composit_exec_composite(), node_composit_exec_rlayers(), RE_NewRender(), RE_ReadRenderResult(), seq_render_scene_strip_impl(), shader_preview_render(), stampdata(), and uiTemplateImage().
| RenderLayer* RE_GetRenderLayer | ( | RenderResult * | rr, |
| const char * | name | ||
| ) | [read] |
Definition at line 533 of file pipeline.c.
References ListBase::first, RenderResult::layers, RenderLayer::name, RenderLayer::next, NULL, and RE_MAXNAME.
Referenced by node_composit_exec_rlayers(), and pop_render_result().
Definition at line 1064 of file pipeline.c.
References NULL, and Render::scene.
| RenderStats* RE_GetStats | ( | Render * | re | ) | [read] |
| void RE_init_threadcount | ( | Render * | re | ) |
Definition at line 3249 of file pipeline.c.
References BLENDER_MAX_THREADS, BLI_system_thread_count(), MIN2, RenderData::mode, Render::r, R_FIXED_THREADS, RenderGlobal, and RenderData::threads.
Referenced by RE_Database_Baking(), and RE_InitState().
| void RE_InitRenderCB | ( | Render * | re | ) |
Definition at line 1193 of file pipeline.c.
References Global::background, Render::dch, Render::ddh, default_break(), Render::dih, Render::display_clear, Render::display_draw, Render::display_init, float_nothing(), G, NULL, Render::prh, Render::progress, result_nothing(), result_rcti_nothing(), Render::sdh, stats_background(), Render::stats_draw, stats_nothing(), Render::tbh, and Render::test_break.
Referenced by RE_NewRender(), and render_endjob().
| void RE_InitState | ( | Render * | re, |
| Render * | source, | ||
| RenderData * | rd, | ||
| SceneRenderLayer * | srl, | ||
| int | winx, | ||
| int | winy, | ||
| rcti * | disprect | ||
| ) |
Definition at line 1237 of file pipeline.c.
References RenderData::actlay, BKE_imtype_is_movie(), BKE_report(), BLI_findindex(), BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), Render::clipcrop, Render::disprect, Render::field_offs, Render::i, RenderData::imtype, RenderData::layers, make_sample_tables(), Render::mblur_offs, MEM_callocN(), RenderData::mode, NULL, Render::ok, Render::osa, RenderData::osa, PIL_check_seconds_timer(), Render::r, R_BORDER, R_EXR_TILE_FILE, R_FULL_SAMPLE, R_OSA, R_PREVIEWBUTS, R_SINGLE_LAYER, RE_FreeRenderResult(), RE_init_threadcount(), RenderResult::rectx, Render::rectx, RenderResult::recty, Render::recty, Render::reports, Render::result, Render::resultmutex, RPT_ERROR, RenderData::scemode, RenderStats::starttime, THREAD_LOCK_WRITE, TRUE, Render::winx, Render::winy, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by envmap_render_copy(), RE_make_sticky(), RE_PreviewRender(), RE_ReadRenderResult(), render_initialize_from_main(), render_scene(), and screen_opengl_render_init().
| int RE_is_rendering_allowed | ( | Scene * | scene, |
| Object * | camera_override, | ||
| ReportList * | reports | ||
| ) |
Definition at line 2715 of file pipeline.c.
References RenderData::actlay, BKE_report(), BLI_findlink(), BLI_is_writable(), RenderData::border, Scene::camera, check_valid_camera(), CMP_NODE_COMPOSITE, composite_needs_render(), ELEM, FILE_MAX, ListBase::first, RenderData::layers, SceneRenderLayer::layflag, RenderData::mode, bNode::next, SceneRenderLayer::next, bNodeTree::nodes, Scene::nodetree, NULL, object_camera_mode(), Scene::r, R_BORDER, R_DOCOMP, R_EDGE, R_EXR_TILE_FILE, R_FULL_SAMPLE, R_INTERN, R_ORTHO, R_PANORAMA, R_SINGLE_LAYER, R_YAFRAY, RenderData::renderer, RPT_ERROR, SCE_LAY_DISABLE, RenderData::scemode, scene_unique_exr_name(), str, bNode::type, Scene::use_nodes, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by screen_render_invoke().
| void RE_layer_load_from_file | ( | RenderLayer * | layer, |
| ReportList * | reports, | ||
| const char * | filename, | ||
| int | x, | ||
| int | y | ||
| ) |
Definition at line 3360 of file pipeline.c.
References BKE_reportf(), IB_rect, IB_rectfloat, IMB_allocImBuf(), IMB_float_from_rect(), IMB_freeImBuf(), IMB_loadiffname(), IMB_rectcpy(), NULL, ImBuf::rect, ImBuf::rect_float, RenderLayer::rectf, RenderLayer::rectx, RenderLayer::recty, RPT_ERROR, ImBuf::x, and ImBuf::y.
Definition at line 2365 of file pipeline.c.
References Global::afbreek, CMP_NODE_R_LAYERS, Render::dch, Render::dih, Render::display_clear, Render::display_init, do_merge_fullsample(), ListBase::first, ID::flag, G, bNode::id, Scene::id, LIB_DOIT, Render::main, RenderData::mode, ID::next, bNode::next, bNodeTree::nodes, NULL, Scene::r, R_OSA, RE_ReadRenderResult(), Render::result, Main::scene, Render::scene, and bNode::type.
Referenced by node_read_fullsamplelayers_exec().
| RenderResult* RE_MultilayerConvert | ( | void * | exrhandle, |
| int | rectx, | ||
| int | recty | ||
| ) | [read] |
Definition at line 908 of file pipeline.c.
References ListBase::first, IMB_exr_multilayer_convert(), RenderResult::layers, MEM_callocN(), ml_addlayer_cb(), ml_addpass_cb(), RenderPass::next, RenderLayer::next, RenderLayer::passes, RenderPass::rectx, RenderLayer::rectx, RenderResult::rectx, RenderPass::recty, RenderLayer::recty, and RenderResult::recty.
Referenced by image_create_multilayer().
| Render* RE_NewRender | ( | const char * | name | ) | [read] |
Definition at line 1168 of file pipeline.c.
References BLI_addtail(), BLI_rw_mutex_init(), MEM_callocN(), Render::name, NULL, RE_GetRender(), RE_InitRenderCB(), RE_MAXNAME, RenderGlobal, Render::resultmutex, and Render::ycor.
Referenced by envmap_render_copy(), init_bake_internal(), node_read_fullsamplelayers_exec(), RE_make_sticky(), RE_ReadRenderResult(), render_animation(), render_frame(), render_scene(), screen_opengl_render_init(), screen_render_exec(), screen_render_invoke(), seq_render_scene_strip_impl(), and shader_preview_render().
Definition at line 3178 of file pipeline.c.
References do_render_3d(), Render::lay, Scene::lay, Render::main, NULL, Scene::r, RE_GetCamera(), RE_InitState(), RE_SetCamera(), Render::scene, RenderData::size, RenderData::xsch, and RenderData::ysch.
Referenced by shader_preview_render().
| void RE_progress_cb | ( | Render * | re, |
| void * | handle, | ||
| void(*)(void *handle, float) | f | ||
| ) |
Definition at line 1410 of file pipeline.c.
References Render::prh, and Render::progress.
Referenced by screen_render_invoke().
Definition at line 3201 of file pipeline.c.
References RenderData::border, Scene::id, RenderData::mode, ID::name, NULL, Scene::r, R_BORDER, RE_GetRender(), RE_InitState(), RE_NewRender(), read_render_result(), Render::scene, RenderData::size, rcti::xmax, rctf::xmax, rcti::xmin, rctf::xmin, RenderData::xsch, rcti::ymax, rctf::ymax, rcti::ymin, rctf::ymin, and RenderData::ysch.
Referenced by node_read_renderlayers_exec(), and RE_MergeFullSample().
| void RE_ReleaseResult | ( | Render * | re | ) |
Definition at line 1057 of file pipeline.c.
References BLI_rw_mutex_unlock(), and Render::resultmutex.
Referenced by BKE_image_release_renderresult(), image_renderinfo_cb(), node_composit_exec_composite(), node_composit_exec_rlayers(), screen_opengl_render_apply(), screen_opengl_render_init(), and uiTemplateImage().
| void RE_ReleaseResultImage | ( | Render * | re | ) |
Definition at line 1116 of file pipeline.c.
References BLI_rw_mutex_unlock(), and Render::resultmutex.
Referenced by BKE_image_release_ibuf(), do_merge_fullsample(), do_write_image_or_movie(), ed_preview_draw_rect(), image_get_render_result(), RE_ResultGet32(), renderresult_stampinfo(), and seq_render_scene_strip_impl().
| float* RE_RenderLayerGetPass | ( | RenderLayer * | rl, |
| int | passtype | ||
| ) |
Definition at line 523 of file pipeline.c.
References ListBase::first, RenderPass::next, NULL, RenderLayer::passes, RenderPass::passtype, and RenderPass::rect.
Referenced by atm_tile(), compbuf_from_pass(), RE_AcquireResultImage(), reset_sky_speed(), and reset_sky_speedvectors().
| void RE_result_load_from_file | ( | RenderResult * | result, |
| ReportList * | reports, | ||
| const char * | filename | ||
| ) |
Definition at line 3400 of file pipeline.c.
References BKE_reportf(), read_render_result_from_file(), and RPT_ERROR.
| void RE_ResultGet32 | ( | Render * | re, |
| unsigned int * | rect | ||
| ) |
Definition at line 1123 of file pipeline.c.
References RenderData::color_mgt_flag, FTOCHAR, linearrgb_to_srgb(), Render::r, R_COLOR_MANAGEMENT, RE_AcquireResultImage(), RE_ReleaseResultImage(), RenderResult::rect32, RenderResult::rectf, RenderResult::rectx, Render::rectx, RenderResult::recty, and Render::recty.
Referenced by do_write_image_or_movie(), and shader_preview_render().
| void RE_set_max_threads | ( | int | threads | ) |
Definition at line 3238 of file pipeline.c.
References BLENDER_MAX_THREADS, BLI_system_thread_count(), RenderGlobal, and threads.
Referenced by set_threads().
Definition at line 1342 of file pipeline.c.
References BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), Render::disprect, new_render_result(), RE_FreeRenderResult(), Render::rectx, Render::recty, Render::result, Render::resultmutex, RR_USEMEM, THREAD_LOCK_WRITE, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Definition at line 1370 of file pipeline.c.
References Render::clipend, Render::clipsta, RenderData::mode, orthographic_m4(), Render::r, R_ORTHO, Render::viewplane, Render::winmat, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
| void RE_SetReports | ( | Render * | re, |
| ReportList * | reports | ||
| ) |
Definition at line 2911 of file pipeline.c.
References Render::reports.
Referenced by render_animation(), render_frame(), render_startjob(), and screen_render_exec().
| void RE_SetView | ( | Render * | re, |
| float | mat[][4] | ||
| ) |
Definition at line 1382 of file pipeline.c.
References copy_m4_m4(), invert_m4_m4(), Render::viewinv, and Render::viewmat.
Referenced by database_fromscene_vectors(), RE_Database_Baking(), RE_Database_FromScene(), and RE_make_sticky().
Definition at line 1357 of file pipeline.c.
References Render::clipend, Render::clipsta, RenderData::mode, perspective_m4(), Render::r, R_ORTHO, Render::viewplane, Render::winmat, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by find_next_pano_slice().
| void RE_stats_draw_cb | ( | Render * | re, |
| void * | handle, | ||
| void(*)(void *handle, RenderStats *rs) | f | ||
| ) |
Definition at line 1405 of file pipeline.c.
References Render::sdh, and Render::stats_draw.
Referenced by screen_render_invoke().
| void RE_SwapResult | ( | Render * | re, |
| RenderResult ** | rr | ||
| ) |
Definition at line 1048 of file pipeline.c.
References Render::result, and SWAP.
Referenced by BKE_image_backup_render().
| void RE_test_break_cb | ( | Render * | re, |
| void * | handle, | ||
| int(*)(void *handle) | f | ||
| ) |
Definition at line 1422 of file pipeline.c.
References Render::tbh, and Render::test_break.
Referenced by bake_image_exec(), bake_startjob(), screen_render_exec(), screen_render_invoke(), and shader_preview_render().
| void RE_TileProcessor | ( | Render * | re | ) |
Definition at line 1783 of file pipeline.c.
References threaded_tile_processor().
Referenced by render_envmap(), and sss_create_tree_mat().
| void RE_WriteRenderResult | ( | RenderResult * | rr, |
| const char * | filename, | ||
| int | compress | ||
| ) |
Definition at line 827 of file pipeline.c.
References BLI_make_existing_file(), RenderPass::channels, ListBase::first, get_pass_name(), IMB_exr_add_channel(), IMB_exr_begin_write(), IMB_exr_close(), IMB_exr_get_handle(), IMB_exr_write_channels(), RenderResult::layers, make_pass_name(), RenderLayer::name, RenderPass::next, RenderLayer::next, RenderLayer::passes, RenderPass::passtype, RenderPass::rect, RenderLayer::rectf, RenderResult::rectf, RenderResult::rectx, RenderResult::recty, and SCE_PASS_COMBINED.
Referenced by do_write_image_or_movie(), and save_image_doit().
| static void read_render_result | ( | Render * | re, |
| int | sample | ||
| ) | [static] |
Definition at line 995 of file pipeline.c.
References BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), Render::disprect, FILE_MAX, new_render_result(), RE_FreeRenderResult(), read_render_result_from_file(), render_unique_exr_name(), Render::result, Render::resultmutex, RR_USEMEM, str, and THREAD_LOCK_WRITE.
Referenced by do_merge_fullsample(), external_render_3d(), RE_ReadRenderResult(), and threaded_tile_processor().
| static int read_render_result_from_file | ( | const char * | filename, |
| RenderResult * | rr | ||
| ) | [static] |
Definition at line 944 of file pipeline.c.
References RenderPass::channels, ListBase::first, get_pass_name(), IMB_exr_begin_read(), IMB_exr_close(), IMB_exr_get_handle(), IMB_exr_read_channels(), IMB_exr_set_channel(), RenderResult::layers, RenderLayer::name, RenderPass::next, RenderLayer::next, NULL, RenderLayer::passes, RenderPass::passtype, RenderPass::rect, RenderLayer::rectf, RenderResult::rectx, RenderResult::recty, renderresult_add_names(), and SCE_PASS_COMBINED.
Referenced by RE_result_load_from_file(), and read_render_result().
| static void render_composit_stats | ( | void * | UNUSEDarg, |
| char * | str | ||
| ) | [static] |
Definition at line 2252 of file pipeline.c.
References Render::i, RenderStats::infostr, NULL, Render::sdh, Render::stats_draw, and str.
Referenced by do_merge_fullsample(), and do_render_composite_fields_blur_3d().
| static int render_display_draw_enabled | ( | Render * | re | ) | [static] |
Definition at line 1440 of file pipeline.c.
References Render::r, R_PREVIEWBUTS, RenderData::scemode, and Render::sss_points.
Referenced by do_part_thread(), RE_engine_end_result(), RE_engine_update_result(), and threaded_tile_processor().
| RenderLayer* render_get_active_layer | ( | Render * | re, |
| RenderResult * | rr | ||
| ) | [read] |
Definition at line 1071 of file pipeline.c.
References RenderData::actlay, BLI_findlink(), ListBase::first, RenderResult::layers, and Render::r.
Referenced by do_merge_fullsample(), do_render_blur_3d(), do_render_composite_fields_blur_3d(), do_render_fields_3d(), do_render_fields_blur_3d(), RE_AcquireResultImage(), zbufshade_sss_tile(), zbufshade_tile(), and zbufshadeDA_tile().
| static int render_initialize_from_main | ( | Render * | re, |
| Main * | bmain, | ||
| Scene * | scene, | ||
| SceneRenderLayer * | srl, | ||
| Object * | camera_override, | ||
| unsigned int | lay, | ||
| int | anim, | ||
| int | anim_init | ||
| ) | [static] |
Definition at line 2843 of file pipeline.c.
References RenderData::border, Render::camera_override, Render::dch, Render::dih, Render::display_clear, Render::display_init, Render::disprect, Render::lay, Render::main, RenderData::mode, ntreeCompositTagRender(), NULL, Render::ok, push_render_result(), Scene::r, R_BORDER, R_SINGLE_LAYER, RE_InitState(), Render::result, RenderData::scemode, Render::scene, RenderData::size, tag_scenes_for_render(), update_physics_cache(), validate_render_settings(), rcti::xmax, rctf::xmax, rcti::xmin, rctf::xmin, RenderData::xsch, rcti::ymax, rctf::ymax, rcti::ymin, rctf::ymin, and RenderData::ysch.
Referenced by RE_BlenderAnim(), and RE_BlenderFrame().
| static void render_layer_add_pass | ( | RenderResult * | rr, |
| RenderLayer * | rl, | ||
| int | channels, | ||
| int | passtype | ||
| ) | [static] |
Definition at line 486 of file pipeline.c.
References BLI_addtail(), RenderPass::channels, RenderResult::exrhandle, get_pass_name(), IMB_exr_add_channel(), MEM_callocN(), MEM_mapallocN(), RenderLayer::name, NULL, PASS_VECTOR_MAX, RenderLayer::passes, RenderPass::passtype, RenderPass::rect, RenderPass::rectx, RenderLayer::rectx, RenderResult::rectx, RenderPass::recty, RenderLayer::recty, RenderResult::recty, SCE_PASS_VECTOR, and SCE_PASS_Z.
Referenced by new_render_result().
Definition at line 2138 of file pipeline.c.
References RenderData::cfra, Render::ddh, Render::display_draw, Render::disprect, do_render_fields_blur_3d(), Scene::id, Render::lay, Scene::lay, Render::main, ID::name, NULL, Scene::r, RE_InitState(), RE_NewRender(), Render::scene, scene_camera_switch_update(), Render::sdh, set_scene_bg(), RenderData::size, Render::stats_draw, Render::tbh, Render::test_break, Render::winx, Render::winy, RenderData::xsch, and RenderData::ysch.
Referenced by ntree_render_scenes().
| static int render_scene_needs_vector | ( | Render * | re | ) | [static] |
Definition at line 682 of file pipeline.c.
References ListBase::first, RenderData::layers, SceneRenderLayer::layflag, SceneRenderLayer::next, SceneRenderLayer::passflag, Scene::r, SCE_LAY_DISABLE, SCE_PASS_VECTOR, and Render::scene.
Referenced by do_render_3d().
| static void render_unique_exr_name | ( | Render * | re, |
| char * | str, | ||
| int | sample | ||
| ) | [static] |
Definition at line 481 of file pipeline.c.
References Render::scene, and scene_unique_exr_name().
Referenced by read_render_result(), and threaded_tile_processor().
| static void renderresult_add_names | ( | RenderResult * | rr | ) | [static] |
Definition at line 933 of file pipeline.c.
References BLI_strncpy(), ListBase::first, get_pass_name(), RenderResult::layers, RenderPass::name, RenderPass::next, RenderLayer::next, RenderLayer::passes, and RenderPass::passtype.
Referenced by do_render_all_options(), and read_render_result_from_file().
| static void renderresult_stampinfo | ( | Render * | re | ) | [static] |
Definition at line 2488 of file pipeline.c.
References BKE_stamp_buf(), RE_AcquireResultImage(), RE_GetCamera(), RE_ReleaseResultImage(), RenderResult::rect32, RenderResult::rectf, RenderResult::rectx, RenderResult::recty, and Render::scene.
Referenced by do_render_all_options().
| static void result_nothing | ( | void * | UNUSEDarg, |
| RenderResult * | UNUSEDrr | ||
| ) | [static] |
Definition at line 140 of file pipeline.c.
Referenced by RE_InitRenderCB().
| static void result_rcti_nothing | ( | void * | UNUSEDarg, |
| RenderResult * | UNUSEDrr, | ||
| volatile struct rcti * | UNUSEDrect | ||
| ) | [static] |
Definition at line 141 of file pipeline.c.
Referenced by RE_InitRenderCB().
| static void save_empty_result_tiles | ( | Render * | re | ) | [static] |
Definition at line 791 of file pipeline.c.
References RenderPart::crop, RenderPart::disprect, Render::disprect, RenderResult::exrhandle, ListBase::first, IMB_exrtile_clear_channels(), IMB_exrtile_write_channels(), RenderPart::next, RenderResult::next, Render::parts, RenderPart::ready, Render::result, rcti::xmin, and rcti::ymin.
Referenced by external_render_3d(), and threaded_tile_processor().
| static void save_render_result_tile | ( | RenderResult * | rr, |
| RenderResult * | rrpart | ||
| ) | [static] |
Definition at line 748 of file pipeline.c.
References BLI_lock_thread(), BLI_unlock_thread(), RenderPass::channels, RenderResult::crop, RenderResult::exrhandle, ListBase::first, get_pass_name(), IMB_exr_set_channel(), IMB_exrtile_write_channels(), RenderResult::layers, LOCK_IMAGE, RenderLayer::name, RenderPass::next, RenderLayer::next, offs, RenderLayer::passes, RenderPass::passtype, RenderPass::rect, RenderLayer::rectf, RenderResult::rectx, SCE_PASS_COMBINED, RenderResult::tilerect, rcti::xmin, and rcti::ymin.
Referenced by do_part_thread(), and RE_engine_end_result().
| static void scene_unique_exr_name | ( | Scene * | scene, |
| char * | str, | ||
| int | sample | ||
| ) | [static] |
Definition at line 466 of file pipeline.c.
References BLI_make_file_string(), BLI_snprintf(), BLI_splitdirstring(), BLI_strncpy(), btempdir, FILE_MAX, FILE_MAXFILE, G, Scene::id, Global::main, MAX_ID_NAME, Main::name, and ID::name.
Referenced by RE_is_rendering_allowed(), and render_unique_exr_name().
| static int seq_render_active | ( | Render * | re | ) | [static] |
Definition at line 2498 of file pipeline.c.
References Scene::ed, ListBase::first, Sequence::next, Render::r, R_DOSEQ, RenderData::scemode, Render::scene, SEQ_SOUND, Editing::seqbase, and Sequence::type.
Referenced by do_render_all_options().
| static void stats_background | ( | void * | UNUSEDarg, |
| RenderStats * | rs | ||
| ) | [static] |
Definition at line 146 of file pipeline.c.
References RenderStats::cfra, RenderStats::curblur, RenderStats::curfield, RenderStats::infostr, MEM_get_mapped_memory_in_use(), MEM_get_memory_in_use(), MEM_get_peak_memory(), mem_in_use, mmap_in_use, RenderStats::scenename, RenderStats::totface, RenderStats::tothalo, RenderStats::totlamp, and RenderStats::totvert.
Referenced by RE_InitRenderCB().
| static void stats_nothing | ( | void * | UNUSEDarg, |
| RenderStats * | UNUSEDrs | ||
| ) | [static] |
Definition at line 142 of file pipeline.c.
Referenced by RE_InitRenderCB().
| static void tag_scenes_for_render | ( | Render * | re | ) | [static] |
Definition at line 2193 of file pipeline.c.
References CMP_NODE_R_LAYERS, composite_needs_render(), ListBase::first, ID::flag, bNode::id, Scene::id, LIB_DOIT, Render::main, ID::next, bNode::next, bNodeTree::nodes, Scene::nodetree, NULL, RE_GetCamera(), Main::scene, Render::scene, and bNode::type.
Referenced by do_merge_fullsample(), ntree_render_scenes(), and render_initialize_from_main().
| static int thread_break | ( | void * | UNUSEDarg | ) | [static] |
Definition at line 134 of file pipeline.c.
References g_break.
Referenced by threaded_tile_processor().
| static void threaded_tile_processor | ( | Render * | re | ) | [static] |
Definition at line 1636 of file pipeline.c.
References BLI_available_thread_index(), BLI_available_threads(), BLI_end_threads(), BLI_init_threads(), BLI_insert_thread(), BLI_remove_thread(), BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), Render::ddh, Render::display_draw, Render::disprect, do_part_thread(), RenderResult::exrhandle, FILE_MAX, find_next_pano_slice(), find_next_part(), ListBase::first, free_render_result(), freeparts(), RenderPart::fullresult, Render::fullresult, g_break, Render::i, IMB_exr_close(), IMB_exrtile_begin_write(), initparts(), RenderData::mode, new_full_sample_buffers_exr(), new_render_result(), RenderPart::next, RenderResult::next, RenderPart::nr, NULL, Render::parts, RenderStats::partsdone, Render::partx, Render::party, PIL_sleep_ms(), Render::prh, print_part_stats(), Render::progress, Render::r, R_EXR_TILE_FILE, R_FULL_SAMPLE, R_PANORAMA, R_PREVIEWBUTS, RE_FreeRenderResult(), read_render_result(), RenderPart::ready, RenderResult::rectx, RenderResult::recty, render_display_draw_enabled(), render_unique_exr_name(), RenderResult::renrect, RenderPart::result, Render::result, Render::resultmutex, RenderResult::sample_nr, save_empty_result_tiles(), RenderData::scemode, Render::sss_points, str, Render::tbh, Render::test_break, RenderPart::thread, thread_break(), THREAD_LOCK_WRITE, threads, RenderData::threads, RenderStats::totpart, and Render::viewplane.
Referenced by do_render_3d(), and RE_TileProcessor().
Definition at line 2825 of file pipeline.c.
References PTCacheBaker::anim_init, PTCacheBaker::bake, BKE_ptcache_bake(), PTCacheBaker::break_data, PTCacheBaker::break_test, PTCacheBaker::main, Render::main, NULL, PTCacheBaker::pid, PTCacheBaker::progressbar, PTCacheBaker::quick_step, PTCacheBaker::render, PTCacheBaker::scene, Render::tbh, and Render::test_break.
Referenced by render_initialize_from_main().
| static void validate_render_settings | ( | Render * | re | ) | [static] |
Definition at line 2816 of file pipeline.c.
References RenderData::osa, Render::r, R_EXR_TILE_FILE, R_FULL_SAMPLE, and RenderData::scemode.
Referenced by render_initialize_from_main().
volatile int g_break = 0 [static] |
Definition at line 133 of file pipeline.c.
Referenced by thread_break(), and threaded_tile_processor().
Definition at line 127 of file pipeline.c.
struct { ... } RenderGlobal [static] |
Referenced by do_merge_fullsample(), RE_FreeAllRender(), RE_FreeRender(), RE_GetRender(), RE_init_threadcount(), RE_NewRender(), and RE_set_max_threads().
Definition at line 120 of file pipeline.c.
| int threads |
Definition at line 123 of file pipeline.c.
Referenced by bake_image_exec(), BKE_ptcache_bake(), distribute_particles_on_dm(), make_occ_tree(), ntreeCompositExecTree(), occ_build_recursive(), project_paint_op(), psys_cache_child_paths(), psys_threads_create(), RE_bake_shade_all_selected(), RE_set_max_threads(), sb_cf_threads_run(), sb_sfesf_threads_run(), threaded_makeshadowbufs(), threaded_tile_processor(), and vol_precache_objectinstance_threads().