Blender  V3.3
Functions
overlay_antialiasing.c File Reference
#include "DRW_render.h"
#include "ED_screen.h"
#include "overlay_private.h"

Go to the source code of this file.

Functions

void OVERLAY_antialiasing_init (OVERLAY_Data *vedata)
 
void OVERLAY_antialiasing_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_antialiasing_cache_finish (OVERLAY_Data *vedata)
 
void OVERLAY_antialiasing_start (OVERLAY_Data *vedata)
 
void OVERLAY_xray_depth_copy (OVERLAY_Data *vedata)
 
void OVERLAY_xray_depth_infront_copy (OVERLAY_Data *vedata)
 
void OVERLAY_xray_fade_draw (OVERLAY_Data *vedata)
 
void OVERLAY_antialiasing_end (OVERLAY_Data *vedata)
 

Detailed Description

Overlay antialiasing:

Most of the overlays are wires which causes a lot of flickering in motions due to aliasing problems.

Our goal is to have a technique that works with single sample per pixel to avoid extra cost of managing MSAA or additional texture buffers and jitters.

To solve this we use a simple and effective post-process AA. The technique goes like this:

This technique has one major shortcoming compared to MSAA:

The pros of this approach are many:

Definition in file overlay_antialiasing.c.

Function Documentation

◆ OVERLAY_antialiasing_cache_finish()

void OVERLAY_antialiasing_cache_finish ( OVERLAY_Data vedata)

◆ OVERLAY_antialiasing_cache_init()

void OVERLAY_antialiasing_cache_init ( OVERLAY_Data vedata)

◆ OVERLAY_antialiasing_end()

void OVERLAY_antialiasing_end ( OVERLAY_Data vedata)

◆ OVERLAY_antialiasing_init()

void OVERLAY_antialiasing_init ( OVERLAY_Data vedata)

◆ OVERLAY_antialiasing_start()

void OVERLAY_antialiasing_start ( OVERLAY_Data vedata)

◆ OVERLAY_xray_depth_copy()

void OVERLAY_xray_depth_copy ( OVERLAY_Data vedata)

◆ OVERLAY_xray_depth_infront_copy()

void OVERLAY_xray_depth_infront_copy ( OVERLAY_Data vedata)

◆ OVERLAY_xray_fade_draw()

void OVERLAY_xray_fade_draw ( OVERLAY_Data vedata)