5#include "testing/testing.h"
20template<eGPUBlend blend_type>
57 float4(0.0f, 1.0f, 0.0f, 0.5f),
58 float4(0.0f, 1.0f, 0.0f, 0.5f));
65 float4(0.0f, 1.0f, 0.0f, 0.5f),
66 float4(0.5f, 0.5f, 0.5f, 1.0f));
73 float4(0.0f, 1.0f, 0.0f, 0.5f),
74 float4(0.5f, 1.0f, 0.5f, 1.0f));
81 float4(0.0f, 1.0f, 0.0f, 0.5f),
82 float4(1.0f, 0.5f, 1.0f, 1.0f));
89 float4(0.0f, 1.0f, 0.0f, 0.5f),
90 float4(1.0f, 1.0f, 1.0f, 1.5f));
97 float4(0.0f, 1.0f, 0.0f, 0.5f),
98 float4(0.0f, 0.0f, 0.0f, 0.5f));
105 float4(0.0f, 1.0f, 0.0f, 0.5f),
106 float4(1.0f, 0.0f, 1.0f, 0.5f));
113 float4(0.0f, 1.0f, 0.0f, 0.5f),
114 float4(0.0f, 0.0f, 0.0f, 1.0f));
121 float4(0.0f, 1.0f, 0.0f, 0.5f),
122 float4(1.0f, 2.0f, 1.0f, 0.5f));
129 float4(0.0f, 1.0f, 0.0f, 0.5f),
130 float4(0.5f, 0.5f, 0.5f, 0.5f));
EXPECT_EQ(BLI_expr_pylike_eval(expr, nullptr, 0, &result), EXPR_PYLIKE_INVALID)
void GPU_batch_program_set_builtin(blender::gpu::Batch *batch, eGPUBuiltinShader shader_id)
void GPU_batch_draw(blender::gpu::Batch *batch)
#define GPU_batch_uniform_4fv(batch, name, val)
GPUOffScreen * GPU_offscreen_create(int width, int height, bool with_depth_buffer, eGPUTextureFormat format, eGPUTextureUsage usage, char err_out[256])
void GPU_offscreen_bind(GPUOffScreen *offscreen, bool save)
GPUTexture * GPU_offscreen_color_texture(const GPUOffScreen *offscreen)
void GPU_offscreen_free(GPUOffScreen *offscreen)
void GPU_offscreen_read_color(GPUOffScreen *offscreen, eGPUDataFormat data_format, void *r_data)
void GPU_offscreen_unbind(GPUOffScreen *offscreen, bool restore)
@ GPU_SHADER_3D_UNIFORM_COLOR
void GPU_memory_barrier(eGPUBarrier barrier)
void GPU_blend(eGPUBlend blend)
@ GPU_BARRIER_TEXTURE_FETCH
void GPU_texture_clear(GPUTexture *texture, eGPUDataFormat data_format, const void *data)
@ GPU_TEXTURE_USAGE_HOST_READ
@ GPU_TEXTURE_USAGE_ATTACHMENT
void DRW_shape_cache_free()
blender::gpu::Batch * DRW_cache_quad_get()
#define GPU_TEST(test_name)
static void test_blend_none()
static void test_blend_alpha()
static void test_blend_background()
static void test_blend_alpha_premult()
void blend_test(float4 source_a, float4 source_b, float4 expected_result)
static void test_blend_multiply()
static void test_blend_invert()
static void test_blend_additive_premult()
static void test_blend_subtract()
static void test_blend_additive()
static void test_blend_oit()
VecBase< float, 4 > float4