zengine-old/engine/3rdparty/zlib/test/refl/vertex.h
2024-06-25 20:26:46 +08:00

37 lines
741 B
C++

#include <iostream>
#include "refl/refl.h"
using namespace std;
using namespace refl;
struct vec3_parent {
virtual int norm(int x1, int& x2) {
x2 = x1 * x2;
return x2;
//cout << x2 << "vec3_parent::norm" << endl;
}
};
struct vec3 : public vec3_parent {
UPROPERTY_vk({ 1.f})
float x = 1;
UPROPERTY_dx({ 2.f})
int y = 2;
UPROPERTY({ 5.f})
uint32_t z = 3;
UPROPERTY({ "hello meta"})
string name = "???a";
USING_OVERLOAD_CTOR(vec3)
UFUNCTION({},ref = USING_CTOR_NAME)
vec3() {
}
USING_OVERLOAD_CTOR(vec3,float, int , uint32_t)
UFUNCTION({1, 2.f, 3.f}, ref = USING_CTOR_NAME)
vec3(float x1, int y1, uint32_t z1) {
x = x1;
y = y1;
z = z1;
}
UFUNCTION()
vec3 make() {
return vec3{};
}
};
#include "vertex_gen.inl"