sync to keep working
This commit is contained in:
parent
236cdd5ef7
commit
e267a0d2ed
12 changed files with 154 additions and 89 deletions
|
@ -6,6 +6,7 @@
|
|||
#include "pw/core/debug.hpp"
|
||||
#include "pw/core/size.hpp"
|
||||
#include "pw/core/point.hpp"
|
||||
#include "pw/core/timer.hpp"
|
||||
|
||||
|
||||
namespace pw {
|
||||
|
@ -13,69 +14,76 @@ namespace pw {
|
|||
void script_core::load(sol::table &ns)
|
||||
{
|
||||
|
||||
typedef real_t Scalar;
|
||||
typedef real_t Scalar;
|
||||
|
||||
ns.set("pi",pw::pi<Scalar>());
|
||||
ns.set("pi",pw::pi<Scalar>());
|
||||
|
||||
|
||||
ns.new_usertype<vector3>("vector3",
|
||||
sol::constructors<vector3(), vector3(Scalar,Scalar,Scalar)>(),
|
||||
"set",&vector3::set,
|
||||
"x", scripting::property(scripting::resolve<const Scalar&() const>(&vector3::x), &vector3::set_x),
|
||||
"y", scripting::property(scripting::resolve<const Scalar&() const>(&vector3::y), &vector3::set_y),
|
||||
"z", scripting::property(scripting::resolve<const Scalar&() const>(&vector3::z), &vector3::set_z),
|
||||
"norm",&vector3::norm,
|
||||
"cross",&vector3::cross,
|
||||
"dot",&vector3::dot,
|
||||
// sol::meta_function::addition, sol::resolve<vector3(const vector3&, const vector3&)>(::operator+),
|
||||
// sol::meta_function::subtraction, &vector3::operator-
|
||||
// "v",&vector3::values,
|
||||
"clone",&vector3::clone
|
||||
);
|
||||
ns.new_usertype<vector3>("vector3",
|
||||
sol::constructors<vector3(), vector3(Scalar,Scalar,Scalar)>(),
|
||||
"set",&vector3::set,
|
||||
"x", scripting::property(scripting::resolve<const Scalar&() const>(&vector3::x), &vector3::set_x),
|
||||
"y", scripting::property(scripting::resolve<const Scalar&() const>(&vector3::y), &vector3::set_y),
|
||||
"z", scripting::property(scripting::resolve<const Scalar&() const>(&vector3::z), &vector3::set_z),
|
||||
"norm",&vector3::norm,
|
||||
"cross",&vector3::cross,
|
||||
"dot",&vector3::dot,
|
||||
// sol::meta_function::addition, sol::resolve<vector3(const vector3&, const vector3&)>(::operator+),
|
||||
// sol::meta_function::subtraction, &vector3::operator-
|
||||
// "v",&vector3::values,
|
||||
"clone",&vector3::clone
|
||||
);
|
||||
|
||||
ns.new_usertype<quaternion>("quaternion",
|
||||
sol::constructors<quaternion(), quaternion(Scalar,Scalar,Scalar,Scalar)>(),
|
||||
"set",&quaternion::set,
|
||||
"x", scripting::property(scripting::resolve<const Scalar&() const>(&quaternion::x), &quaternion::set_x),
|
||||
"y", scripting::property(scripting::resolve<const Scalar&() const>(&quaternion::y), &quaternion::set_y),
|
||||
"z", scripting::property(scripting::resolve<const Scalar&() const>(&quaternion::z), &quaternion::set_z),
|
||||
"w", scripting::property(scripting::resolve<const Scalar&() const>(&quaternion::w), &quaternion::set_w),
|
||||
"dot",&quaternion::dot,
|
||||
"inverse",scripting::readonly_property(&quaternion::inverse),
|
||||
"normalized",&quaternion::normalized,
|
||||
"lerp",&quaternion::lerp,
|
||||
"slerp",&quaternion::slerp
|
||||
// "v",&vector3d::values,
|
||||
// "clone",&vector3d::clone
|
||||
);
|
||||
ns.new_usertype<quaternion>("quaternion",
|
||||
sol::constructors<quaternion(), quaternion(Scalar,Scalar,Scalar,Scalar)>(),
|
||||
"set",&quaternion::set,
|
||||
"x", scripting::property(scripting::resolve<const Scalar&() const>(&quaternion::x), &quaternion::set_x),
|
||||
"y", scripting::property(scripting::resolve<const Scalar&() const>(&quaternion::y), &quaternion::set_y),
|
||||
"z", scripting::property(scripting::resolve<const Scalar&() const>(&quaternion::z), &quaternion::set_z),
|
||||
"w", scripting::property(scripting::resolve<const Scalar&() const>(&quaternion::w), &quaternion::set_w),
|
||||
"dot",&quaternion::dot,
|
||||
"inverse",scripting::readonly_property(&quaternion::inverse),
|
||||
"normalized",&quaternion::normalized,
|
||||
"lerp",&quaternion::lerp,
|
||||
"slerp",&quaternion::slerp
|
||||
// "v",&vector3d::values,
|
||||
// "clone",&vector3d::clone
|
||||
);
|
||||
|
||||
ns.new_usertype<axisangle>("axisangle",
|
||||
sol::constructors<axisangle(), axisangle(vector3,Scalar)>(),
|
||||
"axis",scripting::property(&axisangle::axis,&axisangle::set_axis),
|
||||
"angle",scripting::property(&axisangle::angle,&axisangle::set_angle)
|
||||
);
|
||||
ns.new_usertype<axisangle>("axisangle",
|
||||
sol::constructors<axisangle(), axisangle(vector3,Scalar)>(),
|
||||
"axis",scripting::property(&axisangle::axis,&axisangle::set_axis),
|
||||
"angle",scripting::property(&axisangle::angle,&axisangle::set_angle)
|
||||
);
|
||||
|
||||
|
||||
ns.new_usertype<size>("size",
|
||||
sol::constructors<size(),size(Scalar,Scalar)>(),
|
||||
"width",&size::width,
|
||||
"height",&size::height
|
||||
// "none",sol::debug::level::none
|
||||
);
|
||||
ns.new_usertype<size>("size",
|
||||
sol::constructors<size(),size(Scalar,Scalar)>(),
|
||||
"width",&size::width,
|
||||
"height",&size::height
|
||||
// "none",sol::debug::level::none
|
||||
);
|
||||
|
||||
ns.new_usertype<point>("point",
|
||||
sol::constructors<point(),point(Scalar,Scalar)>(),
|
||||
"x",&point::x,
|
||||
"y",&point::y
|
||||
);
|
||||
ns.new_usertype<point>("point",
|
||||
sol::constructors<point(),point(Scalar,Scalar)>(),
|
||||
"x",&point::x,
|
||||
"y",&point::y
|
||||
);
|
||||
|
||||
|
||||
ns.new_usertype<debug>("debug",
|
||||
"new",sol::no_constructor,
|
||||
"get",&debug::get,
|
||||
"write",&debug::write
|
||||
// "none",sol::debug::level::none
|
||||
);
|
||||
ns.new_usertype<debug>("debug",
|
||||
"new",sol::no_constructor,
|
||||
"get",&debug::get,
|
||||
"write",&debug::write
|
||||
// "none",sol::debug::level::none
|
||||
);
|
||||
|
||||
|
||||
ns.new_usertype<timer>("timer",
|
||||
"now",sol::readonly_property(&timer::now),
|
||||
"elapsed",sol::readonly_property(&timer::elapsed),
|
||||
"reset",&timer::reset
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
#include "pw/system/display.hpp"
|
||||
|
||||
// hijacking
|
||||
#include "pw/visual/pipeline.hpp"
|
||||
//#include "pw/visual/pipeline.hpp"
|
||||
|
||||
namespace pw {
|
||||
|
||||
|
@ -13,6 +13,7 @@ void script_system::load(sol::table &ns)
|
|||
{
|
||||
ns.new_usertype<window>("window",
|
||||
"update",&window::update,
|
||||
"set_on_update",&window::set_on_update,
|
||||
"title",sol::writeonly_property(&window::set_title),
|
||||
"size",sol::property(&window::size,&window::set_size),
|
||||
"position",sol::property(&window::position,&window::set_position),
|
||||
|
@ -33,9 +34,16 @@ void script_system::load(sol::table &ns)
|
|||
"name",sol::readonly_property(&display::name)
|
||||
);
|
||||
|
||||
ns.new_usertype<pipeline>("pipeline",
|
||||
"create",&pipeline::create
|
||||
);
|
||||
|
||||
// ns.set_function("my_class_func_2", &my_class::func);
|
||||
|
||||
|
||||
//
|
||||
// // hijack part
|
||||
// //
|
||||
// ns.new_usertype<pipeline>("pipeline",
|
||||
// "create",&pipeline::create
|
||||
// );
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue