opynsim
Unofficial C++ Documentation
Loading...
Searching...
No Matches
material_property_value_types.h
Go to the documentation of this file.
1#pragma once
2
13
14// Higher-order macro for generating code related to material properties
15//
16// This should match `MaterialPropertyValueTypes`. Yes, macros suck, but C++26 (reflection)
17// is required to work around it.
18#define OSC_FOR_EACH_MATERIAL_PROPERTY_VALUE_TYPE(X) \
19 X(bool) \
20 X(osc::Color) \
21 X(osc::Color32) \
22 X(osc::Cubemap) \
23 X(float) \
24 X(int) \
25 X(osc::Matrix3x3) \
26 X(osc::Matrix4x4) \
27 X(osc::RenderTexture) \
28 X(osc::SharedColorRenderBuffer) \
29 X(osc::SharedDepthStencilRenderBuffer) \
30 X(osc::Texture2D) \
31 X(osc::Vector2) \
32 X(osc::Vector3) \
33 X(osc::Vector4) \
34
35namespace osc
36{
38 bool,
39 Color,
40 Color32,
41 Cubemap,
42 float,
43 int,
50 Vector2,
51 Vector3,
53 >;
54}
Definition cubemap.h:29
Definition render_texture.h:18
Definition shared_color_render_buffer.h:48
Definition shared_depth_stencil_render_buffer.h:49
Definition texture2d.h:22
Definition vector.h:63
Definition custom_decoration_generator.h:5
Matrix< float, 4, 4 > Matrix4x4
Definition matrix4x4.h:378
Matrix< float, 3, 3 > Matrix3x3
Definition matrix3x3.h:371
Vector< float, 2 > Vector2
Definition vector.h:636
Rgba< Unorm8 > Color32
Definition color32.h:12
Rgba< float > Color
Definition color.h:11
Vector< float, 3 > Vector3
Definition vector.h:644
constexpr U to(T &&value)
Definition conversion.h:56
Definition typelist.h:15