Blender V4.3
overlay_image.cc File Reference
#include "DRW_render.hh"
#include "BKE_camera.h"
#include "BKE_image.hh"
#include "BKE_movieclip.h"
#include "BKE_object.hh"
#include "BLI_listbase.h"
#include "BLI_math_rotation.h"
#include "DNA_camera_types.h"
#include "DNA_screen_types.h"
#include "DEG_depsgraph_query.hh"
#include "ED_view3d.hh"
#include "IMB_imbuf_types.hh"
#include "overlay_private.hh"

Go to the source code of this file.

Functions

void OVERLAY_image_init (OVERLAY_Data *vedata)
 
void OVERLAY_image_cache_init (OVERLAY_Data *vedata)
 
static void overlay_image_calc_aspect (Image *ima, const int size[2], float r_image_aspect[2])
 
static eStereoViews camera_background_images_stereo_eye (const Scene *scene, const View3D *v3d)
 
static void camera_background_images_stereo_setup (const Scene *scene, const View3D *v3d, Image *ima, ImageUser *iuser)
 
static GPUTexture * image_camera_background_texture_get (CameraBGImage *bgpic, const DRWContextState *draw_ctx, OVERLAY_PrivateData *pd, float *r_aspect, bool *r_use_alpha_premult, bool *r_use_view_transform)
 
static void OVERLAY_image_free_movieclips_textures (OVERLAY_Data *data)
 
static void image_camera_background_matrix_get (const Camera *cam, const CameraBGImage *bgpic, const DRWContextState *draw_ctx, const float image_aspect, float rmat[4][4])
 
void OVERLAY_image_camera_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_image_empty_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_image_cache_finish (OVERLAY_Data *vedata)
 
void OVERLAY_image_scene_background_draw (OVERLAY_Data *vedata)
 
void OVERLAY_image_background_draw (OVERLAY_Data *vedata)
 
void OVERLAY_image_draw (OVERLAY_Data *vedata)
 
void OVERLAY_image_in_front_draw (OVERLAY_Data *vedata)
 

Function Documentation

◆ camera_background_images_stereo_eye()

static eStereoViews camera_background_images_stereo_eye ( const Scene * scene,
const View3D * v3d )
static

◆ camera_background_images_stereo_setup()

static void camera_background_images_stereo_setup ( const Scene * scene,
const View3D * v3d,
Image * ima,
ImageUser * iuser )
static

◆ image_camera_background_matrix_get()

◆ image_camera_background_texture_get()

◆ OVERLAY_image_background_draw()

void OVERLAY_image_background_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_image_cache_finish()

◆ OVERLAY_image_cache_init()

◆ overlay_image_calc_aspect()

static void overlay_image_calc_aspect ( Image * ima,
const int size[2],
float r_image_aspect[2] )
static

Definition at line 63 of file overlay_image.cc.

References Image::aspx, and Image::aspy.

Referenced by OVERLAY_image_empty_cache_populate().

◆ OVERLAY_image_camera_cache_populate()

◆ OVERLAY_image_draw()

◆ OVERLAY_image_empty_cache_populate()

◆ OVERLAY_image_free_movieclips_textures()

static void OVERLAY_image_free_movieclips_textures ( OVERLAY_Data * data)
static

◆ OVERLAY_image_in_front_draw()

◆ OVERLAY_image_init()

◆ OVERLAY_image_scene_background_draw()

void OVERLAY_image_scene_background_draw ( OVERLAY_Data * vedata)

This function draws images that needs the view transform applied. It draws these images directly into the scene color buffer.

Definition at line 447 of file overlay_image.cc.

References DefaultFramebufferList::default_fb, DRW_draw_pass(), DRW_pass_is_empty(), DRW_state_is_fbo(), DRW_viewport_framebuffer_list_get(), GPU_framebuffer_bind(), OVERLAY_PassList::image_background_scene_ps, OVERLAY_PassList::image_foreground_scene_ps, and OVERLAY_Data::psl.

Referenced by OVERLAY_draw_scene().