Blender  V2.59
Defines | Functions | Variables
pipeline.c File Reference
#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)
RenderLayerRE_GetRenderLayer (RenderResult *rr, const char *name)
static RenderResultnew_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)
RenderResultRE_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)
RenderRE_GetRender (const char *name)
RenderResultRE_AcquireResultRead (Render *re)
RenderResultRE_AcquireResultWrite (Render *re)
void RE_SwapResult (Render *re, RenderResult **rr)
void RE_ReleaseResult (Render *re)
SceneRE_GetScene (Render *re)
RenderLayerrender_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)
RenderStatsRE_GetStats (Render *re)
RenderRE_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 RenderResultnew_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 RenderPartfind_next_pano_slice (Render *re, int *minx, rctf *viewplane)
static RenderPartfind_next_part (Render *re, int minx)
static void print_part_stats (Render *re, RenderPart *pa)
static RenderResultnew_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)
RenderResultRE_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

Detailed Description

Definition in file pipeline.c.


Define Documentation

#define RR_USEMEM   0

Function Documentation

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().

static int check_valid_camera ( Scene scene,
Object camera_override 
) [static]
static int composite_needs_render ( Scene sce,
int  this_scene 
) [static]
static int default_break ( void *  UNUSEDarg) [static]

Definition at line 144 of file pipeline.c.

References Global::afbreek, and G.

Referenced by RE_InitRenderCB().

static void do_merge_fullsample ( Render re,
bNodeTree ntree 
) [static]
static void do_merge_tile ( RenderResult rr,
RenderResult rrpart,
float *  target,
float *  tile,
int  pixsize 
) [static]
static void* do_part_thread ( void *  pa_v) [static]
static void do_render_3d ( Render re) [static]
static void do_render_all_options ( Render re) [static]
static void do_render_blur_3d ( Render re) [static]
static void do_render_composite_fields_blur_3d ( Render re) [static]
static void do_render_fields_3d ( Render re) [static]
static void do_render_fields_blur_3d ( Render re) [static]
static void do_render_seq ( Render re) [static]
static int do_write_image_or_movie ( Render re,
Scene scene,
bMovieHandle mh,
const char *  name_override 
) [static]
static int external_render_3d ( Render re,
int  do_all 
) [static]
static RenderPart* find_next_pano_slice ( Render re,
int *  minx,
rctf viewplane 
) [static]
static RenderPart* find_next_part ( Render re,
int  minx 
) [static]
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]
static const char* get_pass_name ( int  passtype,
int  channel 
) [static]
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]
static void merge_renderresult_blur ( RenderResult rr,
RenderResult brr,
float  blurfac,
int  key_alpha 
) [static]
static void merge_renderresult_fields ( RenderResult rr,
RenderResult rr1,
RenderResult rr2 
) [static]
static void* ml_addlayer_cb ( void *  base,
char *  str 
) [static]
static void ml_addpass_cb ( void *  UNUSEDbase,
void *  lay,
char *  str,
float *  rect,
int  totchan,
char *  chan_id 
) [static]
static RenderResult* new_full_sample_buffers ( Render re,
ListBase lb,
rcti partrct,
int  crop 
) [static]
static RenderResult* new_full_sample_buffers_exr ( Render re) [static]
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]
float panorama_pixel_rot ( Render re)
static int passtype_from_name ( char *  str) [static]
static void pop_render_result ( Render re) [static]
static void print_part_stats ( Render re,
RenderPart pa 
) [static]
static void push_render_result ( Render re) [static]
void RE_AcquireResultImage ( Render re,
RenderResult rr 
)
RenderResult* RE_AcquireResultRead ( Render re) [read]
RenderResult* RE_AcquireResultWrite ( Render re) [read]
void RE_AddObject ( Render UNUSEDre,
Object UNUSEDob 
)

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 
)
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_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.

void RE_draw_lock_cb ( Render re,
void *  handle,
void(*)(void *handle, int i f 
)

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]
void RE_engine_end_result ( RenderEngine engine,
RenderResult result 
)
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 
)
void RE_engine_update_stats ( RenderEngine engine,
const char *  stats,
const char *  info 
)
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)
void RE_FreeRenderResult ( RenderResult res)
Render* RE_GetRender ( const char *  name) [read]
RenderLayer* RE_GetRenderLayer ( RenderResult rr,
const char *  name 
) [read]
Scene* RE_GetScene ( Render re) [read]

Definition at line 1064 of file pipeline.c.

References NULL, and Render::scene.

RenderStats* RE_GetStats ( Render re) [read]

Definition at line 1163 of file pipeline.c.

References Render::i.

Referenced by stampdata().

void RE_init_threadcount ( Render re)
void RE_InitRenderCB ( Render re)
void RE_InitState ( Render re,
Render source,
RenderData rd,
SceneRenderLayer srl,
int  winx,
int  winy,
rcti disprect 
)
int RE_is_rendering_allowed ( Scene scene,
Object camera_override,
ReportList reports 
)
void RE_layer_load_from_file ( RenderLayer layer,
ReportList reports,
const char *  filename,
int  x,
int  y 
)
void RE_MergeFullSample ( Render re,
Main bmain,
Scene sce,
bNodeTree ntree 
)
RenderResult* RE_MultilayerConvert ( void *  exrhandle,
int  rectx,
int  recty 
) [read]
Render* RE_NewRender ( const char *  name) [read]
void RE_PreviewRender ( Render re,
Main bmain,
Scene sce 
)
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().

void RE_ReadRenderResult ( Scene scene,
Scene scenode 
)
void RE_ReleaseResult ( Render re)
void RE_ReleaseResultImage ( Render re)
float* RE_RenderLayerGetPass ( RenderLayer rl,
int  passtype 
)
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 
)
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().

void RE_SetDispRect ( struct Render re,
rcti disprect 
)
void RE_SetOrtho ( Render re,
rctf viewplane,
float  clipsta,
float  clipend 
)
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] 
)
void RE_SetWindow ( Render re,
rctf viewplane,
float  clipsta,
float  clipend 
)
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 
)
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 
)
static void read_render_result ( Render re,
int  sample 
) [static]
static int read_render_result_from_file ( const char *  filename,
RenderResult rr 
) [static]
static void render_composit_stats ( void *  UNUSEDarg,
char *  str 
) [static]
static int render_display_draw_enabled ( Render re) [static]
RenderLayer* render_get_active_layer ( Render re,
RenderResult rr 
) [read]
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]
static void render_layer_add_pass ( RenderResult rr,
RenderLayer rl,
int  channels,
int  passtype 
) [static]
static void render_scene ( Render re,
Scene sce,
int  cfra 
) [static]
static int render_scene_needs_vector ( Render re) [static]
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]
static void renderresult_stampinfo ( Render re) [static]
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]
static void save_render_result_tile ( RenderResult rr,
RenderResult rrpart 
) [static]
static void scene_unique_exr_name ( Scene scene,
char *  str,
int  sample 
) [static]
static int seq_render_active ( Render re) [static]
static void stats_background ( void *  UNUSEDarg,
RenderStats rs 
) [static]
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]
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]
static void update_physics_cache ( Render re,
Scene scene,
int   UNUSEDanim_init 
) [static]
static void validate_render_settings ( Render re) [static]

Variable Documentation

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]

Definition at line 120 of file pipeline.c.

int threads