A lot of files were missing copyright field in the header and
the Blender Foundation contributed to them in a sense of bug
fixing and general maintenance.
This change makes it explicit that those files are at least
partially copyrighted by the Blender Foundation.
Note that this does not make it so the Blender Foundation is
the only holder of the copyright in those files, and developers
who do not have a signed contract with the foundation still
hold the copyright as well.
Another aspect of this change is using SPDX format for the
header. We already used it for the license specification,
and now we state it for the copyright as well, following the
FAQ:
https://reuse.software/faq/
114 lines
4.9 KiB
C
114 lines
4.9 KiB
C
/* SPDX-FileCopyrightText: 2008 Blender Foundation
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
|
|
/** \file
|
|
* \ingroup editors
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "DNA_object_enums.h"
|
|
#include "DNA_view3d_types.h"
|
|
|
|
#include "IMB_imbuf_types.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/* ********* exports for space_view3d/ module for offscreen rendering ********** */
|
|
struct ARegion;
|
|
struct Depsgraph;
|
|
struct GPUOffScreen;
|
|
struct GPUViewport;
|
|
struct Scene;
|
|
struct View3D;
|
|
struct View3DShading;
|
|
|
|
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,
|
|
bool do_color_management,
|
|
bool restore_rv3d_mats,
|
|
struct GPUOffScreen *ofs,
|
|
struct GPUViewport *viewport);
|
|
/**
|
|
* Creates own fake 3d views (wrapping #ED_view3d_draw_offscreen). Similar too
|
|
* #ED_view_draw_offscreen_imbuf_simple, but takes view/projection matrices as arguments.
|
|
*/
|
|
void ED_view3d_draw_offscreen_simple(struct Depsgraph *depsgraph,
|
|
struct Scene *scene,
|
|
struct View3DShading *shading_override,
|
|
eDrawType drawtype,
|
|
int object_type_exclude_viewport_override,
|
|
int object_type_exclude_select_override,
|
|
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_xr_surface,
|
|
bool is_image_render,
|
|
bool draw_background,
|
|
const char *viewname,
|
|
bool do_color_management,
|
|
struct GPUOffScreen *ofs,
|
|
struct GPUViewport *viewport);
|
|
|
|
/**
|
|
* Utility func for ED_view3d_draw_offscreen
|
|
*
|
|
* \param ofs: Optional off-screen buffer, can be NULL.
|
|
* (avoids re-creating when doing multiple GL renders).
|
|
*/
|
|
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,
|
|
bool restore_rv3d_mats,
|
|
struct GPUOffScreen *ofs,
|
|
char err_out[256]);
|
|
/**
|
|
* Creates own fake 3d views (wrapping #ED_view3d_draw_offscreen_imbuf)
|
|
*
|
|
* \param ofs: Optional off-screen buffer can be NULL.
|
|
* (avoids re-creating when doing multiple GL renders).
|
|
*
|
|
* \note used by the sequencer
|
|
*/
|
|
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]);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|