Blender  V2.93
ED_view3d_offscreen.h
Go to the documentation of this file.
1 /*
2  * This program is free software; you can redistribute it and/or
3  * modify it under the terms of the GNU General Public License
4  * as published by the Free Software Foundation; either version 2
5  * of the License, or (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program; if not, write to the Free Software Foundation,
14  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15  *
16  * The Original Code is Copyright (C) 2008 Blender Foundation.
17  * All rights reserved.
18  */
19 
24 #pragma once
25 
26 #include "DNA_object_enums.h"
27 #include "DNA_view3d_types.h"
28 
29 #include "IMB_imbuf_types.h"
30 
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34 
35 /* ********* exports for space_view3d/ module for offscreen rendering ********** */
36 struct ARegion;
37 struct Depsgraph;
38 struct GPUOffScreen;
39 struct GPUViewport;
40 struct Scene;
41 struct View3D;
42 struct View3DShading;
43 
45  const struct Scene *scene,
46  eDrawType drawtype,
47  struct View3D *v3d,
48  struct ARegion *region,
49  int winx,
50  int winy,
51  const float viewmat[4][4],
52  const float winmat[4][4],
53  bool is_image_render,
54  bool draw_background,
55  const char *viewname,
56  const bool do_color_management,
57  const bool restore_rv3d_mats,
58  struct GPUOffScreen *ofs,
59  struct GPUViewport *viewport);
61  struct Scene *scene,
62  struct View3DShading *shading_override,
63  int drawtype,
64  int winx,
65  int winy,
66  unsigned int draw_flags,
67  const float viewmat[4][4],
68  const float winmat[4][4],
69  float clip_start,
70  float clip_end,
71  bool is_image_render,
72  bool draw_background,
73  const char *viewname,
74  const bool do_color_management,
75  struct GPUOffScreen *ofs,
76  struct GPUViewport *viewport);
77 
79  struct Scene *scene,
80  eDrawType drawtype,
81  struct View3D *v3d,
82  struct ARegion *region,
83  int sizex,
84  int sizey,
85  eImBufFlags imbuf_flag,
86  int alpha_mode,
87  const char *viewname,
88  const bool restore_rv3d_mats,
89  struct GPUOffScreen *ofs,
90  char err_out[256]);
92  struct Scene *scene,
93  struct View3DShading *shading_override,
94  eDrawType drawtype,
95  struct Object *camera,
96  int width,
97  int height,
98  eImBufFlags imbuf_flags,
99  eV3DOffscreenDrawFlag draw_flags,
100  int alpha_mode,
101  const char *viewname,
102  struct GPUOffScreen *ofs,
103  char err_out[256]);
104 
105 #ifdef __cplusplus
106 }
107 #endif
struct Depsgraph Depsgraph
Definition: DEG_depsgraph.h:51
eDrawType
eV3DOffscreenDrawFlag
struct ImBuf * ED_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])
Definition: view3d_draw.c:1834
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)
struct ImBuf * ED_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])
Definition: view3d_draw.c:1991
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)
Definition: view3d_draw.c:1745
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei width
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei height
Contains defines and structs used throughout the imbuf module.
eImBufFlags
Scene scene
const Depsgraph * depsgraph
static void draw_background(const rcti *rect)
Definition: time_scrub_ui.c:63