init commit

This commit is contained in:
2025-06-11 22:45:11 +08:00
commit 71307f3e53
115 changed files with 13922 additions and 0 deletions
+105
View File
@@ -0,0 +1,105 @@
#pragma once
#include "dv_config.h"
#ifdef DV_CORE_EXPORTS
#define DV_CORE_API __declspec(dllexport)
#else
#define DV_CORE_API __declspec(dllimport)
#endif
//core namespace
#define DV_CORE_BEGIN_NAMESPACE namespace davinci {
#define DV_CORE_END_NAMESPACE }
//basic types
DV_CORE_BEGIN_NAMESPACE
enum ComponentType
{
CT_UNKNOWN,
CT_Int8,
CT_Uint8,
CT_Int16,
CT_Uint16,
CT_Int32,
CT_Uint32,
CT_Float32,
CT_Float64,
};
enum DataType
{
DT_UNKNOWN,
DT_Scalar,
DT_Vec2,
DT_Vec3,
DT_Vec4,
DT_Matrix2,
DT_Matrix3,
DT_Matrix4,
};
enum VertexElementType
{
VET_UNKNOWN,
VET_POSITION,
VET_NORMAL,
VET_TANGENT,
VET_BINORMAL,
VET_TEXCOORD_0, VET_TEXCOORD_1, VET_TEXCOORD_2, VET_TEXCOORD_3,
VET_TEXCOORD_4, VET_TEXCOORD_5, VET_TEXCOORD_6, VET_TEXCOORD_7,
VET_TEXCOORD_LAST=VET_TEXCOORD_7,
VET_COLOR_0, VET_COLOR_1, VET_COLOR_2, VET_COLOR_3,
VET_COLOR_4, VET_COLOR_5, VET_COLOR_6, VET_COLOR_7,
VET_COLOR_LAST=VET_COLOR_7,
VET_JOINTS_0, VET_JOINTS_1, VET_JOINTS_2, VET_JOINTS_3,
VET_JOINTS_4, VET_JOINTS_5, VET_JOINTS_6, VET_JOINTS_7,
VET_JOINTS_LAST=VET_JOINTS_7,
VET_WEIGHTS_0, VET_WEIGHTS_1, VET_WEIGHTS_2, VET_WEIGHTS_3,
VET_WEIGHTS_4, VET_WEIGHTS_5, VET_WEIGHTS_6, VET_WEIGHTS_7,
VET_WEIGHTS_LAST=VET_WEIGHTS_7,
VET_STANDARD_LAST=VET_WEIGHTS_LAST,
};
enum PrimitiveType
{
PT_UNKNOWN,
PT_POINT_LIST,
PT_LINE_LIST,
PT_LINE_LOOP,
PT_LINE_STRIP,
PT_TRIANGLE_LIST,
PT_TRIANGLE_STRIP,
PT_TRIANGLE_FAN,
};
enum PixelFormat
{
//96-bit pixel format, 32 bits (float) for red, 32 bits (float) for green, 32 bits (float) for blue
PF_FLOAT32_RGB,
/// 128-bit pixel format, 32 bits (float) for red, 32 bits (float) for green, 32 bits (float) for blue, 32 bits (float) for alpha
PF_FLOAT32_RGBA,
// 32-bit pixel format, 32 bits (float) for red
PF_FLOAT32_R,
/// 132-bit pixel format, 8 bits (float) for red, 8 bits (float) for green, 8 bits (float) for blue, 8 bits (float) for alpha
PF_UINT8_RGBA,
};
DV_CORE_END_NAMESPACE