37 lines
		
	
	
		
			741 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			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" |