Blender  V2.93
Functions
ED_view3d_offscreen.h File Reference
#include "DNA_object_enums.h"
#include "DNA_view3d_types.h"
#include "IMB_imbuf_types.h"

Go to the source code of this file.

Functions

void ED_view3d_draw_offscreen (struct Depsgraph *depsgraph, const struct Scene *scene, eDrawType drawtype, struct View3D *v3d, struct ARegion *region, int winx, int winy, const float viewmat[4][4], const float winmat[4][4], bool is_image_render, bool draw_background, const char *viewname, const bool do_color_management, const bool restore_rv3d_mats, struct GPUOffScreen *ofs, struct GPUViewport *viewport)
 
void ED_view3d_draw_offscreen_simple (struct Depsgraph *depsgraph, struct Scene *scene, struct View3DShading *shading_override, int drawtype, int winx, int winy, unsigned int draw_flags, const float viewmat[4][4], const float winmat[4][4], float clip_start, float clip_end, bool is_image_render, bool draw_background, const char *viewname, const bool do_color_management, struct GPUOffScreen *ofs, struct GPUViewport *viewport)
 
struct ImBufED_view3d_draw_offscreen_imbuf (struct Depsgraph *depsgraph, struct Scene *scene, eDrawType drawtype, struct View3D *v3d, struct ARegion *region, int sizex, int sizey, eImBufFlags imbuf_flag, int alpha_mode, const char *viewname, const bool restore_rv3d_mats, struct GPUOffScreen *ofs, char err_out[256])
 
struct ImBufED_view3d_draw_offscreen_imbuf_simple (struct Depsgraph *depsgraph, struct Scene *scene, struct View3DShading *shading_override, eDrawType drawtype, struct Object *camera, int width, int height, eImBufFlags imbuf_flags, eV3DOffscreenDrawFlag draw_flags, int alpha_mode, const char *viewname, struct GPUOffScreen *ofs, char err_out[256])
 

Function Documentation

◆ ED_view3d_draw_offscreen()

void ED_view3d_draw_offscreen ( struct Depsgraph depsgraph,
const struct Scene scene,
eDrawType  drawtype,
struct View3D v3d,
struct ARegion region,
int  winx,
int  winy,
const float  viewmat[4][4],
const float  winmat[4][4],
bool  is_image_render,
bool  draw_background,
const char *  viewname,
const bool  do_color_management,
const bool  restore_rv3d_mats,
struct GPUOffScreen ofs,
struct GPUViewport viewport 
)

◆ ED_view3d_draw_offscreen_imbuf()

struct ImBuf* ED_view3d_draw_offscreen_imbuf ( Depsgraph depsgraph,
Scene scene,
eDrawType  drawtype,
View3D v3d,
ARegion region,
int  sizex,
int  sizey,
eImBufFlags  imbuf_flag,
int  alpha_mode,
const char *  viewname,
const bool  restore_rv3d_mats,
GPUOffScreen ofs,
char  err_out[256] 
)

◆ ED_view3d_draw_offscreen_imbuf_simple()

struct ImBuf* ED_view3d_draw_offscreen_imbuf_simple ( Depsgraph depsgraph,
Scene scene,
View3DShading shading_override,
eDrawType  drawtype,
Object camera,
int  width,
int  height,
eImBufFlags  imbuf_flag,
eV3DOffscreenDrawFlag  draw_flags,
int  alpha_mode,
const char *  viewname,
GPUOffScreen ofs,
char  err_out[256] 
)

Creates own fake 3d views (wrapping ED_view3d_draw_offscreen_imbuf)

Parameters
ofsOptional off-screen buffer can be NULL. (avoids re-creating when doing multiple GL renders).
Note
used by the sequencer

Definition at line 1991 of file view3d_draw.c.

References View3DShading::background_type, BKE_camera_multiview_params(), BKE_camera_multiview_render(), BKE_camera_params_compute_matrix(), BKE_camera_params_compute_viewplane(), BKE_camera_params_from_object(), BKE_camera_params_init(), View3D::camera, View3D::clip_end, View3D::clip_start, copy_m4_m4(), DEG_get_evaluated_object(), depsgraph, Scene::display, ED_view3d_draw_offscreen_imbuf(), ListBase::first, View3DShading::flag, View3D::flag2, View3DOverlay::gpencil_vertex_paint_opacity, View3D::gridflag, height, invert_m4_m4(), ListBase::last, View3D::lens, mul_m4_m4m4(), normalize_m4(), NULL, OB_MATERIAL, OB_RENDER, Object::obmat, View3D::overlay, params, RegionView3D::persinv, RegionView3D::persmat, RegionView3D::persp, Scene::r, View3D::regionbase, ARegion::regiondata, ARegion::regiontype, View3DShading::render_pass, RGN_TYPE_WINDOW, RV3D_CAMOB, SCE_PASS_COMBINED, scene, SceneDisplay::shading, View3D::shading, View3DShading::type, V3D_HIDE_OVERLAYS, V3D_OFSDRAW_OVERRIDE_SCENE_SETTINGS, V3D_OFSDRAW_SHOW_ANNOTATION, V3D_OFSDRAW_SHOW_GRIDFLOOR, V3D_SHADING_BACKGROUND_WORLD, V3D_SHADING_SCENE_LIGHTS, V3D_SHADING_SCENE_LIGHTS_RENDER, V3D_SHADING_SCENE_WORLD, V3D_SHADING_SCENE_WORLD_RENDER, V3D_SHOW_ANNOTATION, V3D_SHOW_FLOOR, V3D_SHOW_X, V3D_SHOW_Y, RegionView3D::viewinv, RegionView3D::viewmat, width, RegionView3D::winmat, RenderData::xasp, and RenderData::yasp.

Referenced by action_preview_render(), blend_file_thumb(), ED_spacetype_sequencer(), object_preview_render(), and screen_opengl_render_doit().

◆ ED_view3d_draw_offscreen_simple()

void ED_view3d_draw_offscreen_simple ( Depsgraph depsgraph,
Scene scene,
View3DShading shading_override,
int  drawtype,
int  winx,
int  winy,
uint  draw_flags,
const float  viewmat[4][4],
const float  winmat[4][4],
float  clip_start,
float  clip_end,
bool  is_image_render,
bool  draw_background,
const char *  viewname,
const bool  do_color_management,
GPUOffScreen ofs,
GPUViewport viewport 
)