From 9d3f35a0bf1bf5776363bfd61d53a7c85b5827a4 Mon Sep 17 00:00:00 2001 From: Jeroen Bakker Date: Mon, 17 Jan 2022 14:45:22 +0100 Subject: Revert "Revert "GPUShaderCreateInfo for interface abstraction"" This reverts commit edee5a947b7ea3e1324aa334a22c7c9bbf47f5f7. Fixes compilation error (Missing file BLI_float2.hh) --- source/blender/gpu/GPU_shader_shared.h | 82 ++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 source/blender/gpu/GPU_shader_shared.h (limited to 'source/blender/gpu/GPU_shader_shared.h') diff --git a/source/blender/gpu/GPU_shader_shared.h b/source/blender/gpu/GPU_shader_shared.h new file mode 100644 index 00000000000..4d277921773 --- /dev/null +++ b/source/blender/gpu/GPU_shader_shared.h @@ -0,0 +1,82 @@ +/* + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * The Original Code is Copyright (C) 2022 Blender Foundation. + * All rights reserved. + */ + +/** \file + * \ingroup gpu + */ + +#ifndef USE_GPU_SHADER_CREATE_INFO +# include "intern/gpu_shader_shared_utils.h" +#endif + +#ifdef __cplusplus +using blender::float2; +using blender::float3; +using blender::float4; +using blender::float4x4; +#endif + +struct NodeLinkData { + float4 colors[3]; + float2 bezierPts[4]; + bool1 doArrow; + bool1 doMuted; + float dim_factor; + float thickness; + float dash_factor; + float dash_alpha; + float expandSize; + float arrowSize; +}; +BLI_STATIC_ASSERT_ALIGN(struct NodeLinkData, 16) + +struct NodeLinkInstanceData { + float4 colors[6]; + float expandSize; + float arrowSize; + float2 _pad; +}; +BLI_STATIC_ASSERT_ALIGN(struct NodeLinkInstanceData, 16) + +struct GPencilStrokeData { + float2 viewport; + float pixsize; + float objscale; + float pixfactor; + int xraymode; + int caps_start; + int caps_end; + bool1 keep_size; + bool1 fill_stroke; + float2 _pad; +}; +BLI_STATIC_ASSERT_ALIGN(struct GPencilStrokeData, 16) + +struct GPUClipPlanes { + float4x4 ModelMatrix; + float4 world[6]; +}; +BLI_STATIC_ASSERT_ALIGN(struct GPUClipPlanes, 16) + +struct SimpleLightingData { + float4 color; + float3 light; + float _pad; +}; +BLI_STATIC_ASSERT_ALIGN(struct SimpleLightingData, 16) -- cgit v1.2.3