Create GDExtension clases for PhysicsServer3D
* Allows creating a GDExtension based 3D Physics Server (for Bullet, PhysX, etc. support) * Some changes on native struct binding for PhysicsServer This allows a 3D Physics server created entirely from GDExtension. Once it works, the idea is to port the 2D one to it.
This commit is contained in:
parent
41edfc88a3
commit
8b547331be
44 changed files with 2486 additions and 110 deletions
|
|
@ -33,6 +33,22 @@
|
|||
#include "core/config/project_settings.h"
|
||||
#include "core/string/print_string.h"
|
||||
|
||||
void PhysicsServer3DRenderingServerHandler::set_vertex(int p_vertex_id, const void *p_vector3) {
|
||||
GDVIRTUAL_REQUIRED_CALL(_set_vertex, p_vertex_id, p_vector3);
|
||||
}
|
||||
void PhysicsServer3DRenderingServerHandler::set_normal(int p_vertex_id, const void *p_vector3) {
|
||||
GDVIRTUAL_REQUIRED_CALL(_set_normal, p_vertex_id, p_vector3);
|
||||
}
|
||||
void PhysicsServer3DRenderingServerHandler::set_aabb(const AABB &p_aabb) {
|
||||
GDVIRTUAL_REQUIRED_CALL(_set_aabb, p_aabb);
|
||||
}
|
||||
|
||||
void PhysicsServer3DRenderingServerHandler::_bind_methods() {
|
||||
GDVIRTUAL_BIND(_set_vertex, "vertex_id", "vertices");
|
||||
GDVIRTUAL_BIND(_set_normal, "vertex_id", "normals");
|
||||
GDVIRTUAL_BIND(_set_aabb, "aabb");
|
||||
}
|
||||
|
||||
PhysicsServer3D *PhysicsServer3D::singleton = nullptr;
|
||||
|
||||
void PhysicsDirectBodyState3D::integrate_forces() {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue