Files
SDL3CPlusPlus/src/services/impl/lua_helpers.hpp
johndoe6345789 cb5b58ca9e feat(physics): Enhance physics bridge service with new functionalities
- Added SetGravity method to adjust the gravity in the physics world.
- Introduced AddSphereRigidBody method for creating sphere rigid bodies.
- Implemented RemoveRigidBody method to delete existing rigid bodies.
- Added SetRigidBodyTransform method to update the position and rotation of rigid bodies.
- Included ApplyForce and ApplyImpulse methods for applying forces and impulses to rigid bodies.
- Added SetLinearVelocity method to set the linear velocity of rigid bodies.
- Enhanced StepSimulation method to accept a maxSubSteps parameter.
- Implemented GetBodyCount method to retrieve the number of rigid bodies in the world.
- Added Clear method to remove all rigid bodies from the physics world.
- Updated the script engine service to bind new physics methods to Lua.
- Enhanced material configuration handling in shader script service.
- Introduced MaterialXMaterialConfig structure for better material management.
- Added texture binding support in ShaderPaths structure.
- Included stb_image implementation for image loading support.
2026-01-07 00:20:19 +00:00

26 lines
806 B
C++

#pragma once
#include <array>
#include <string>
struct lua_State;
namespace sdl3cpp::services::impl::lua {
std::array<float, 3> ReadVector3(lua_State* L, int index);
std::array<float, 2> ReadVector2(lua_State* L, int index);
std::array<float, 4> ReadQuaternion(lua_State* L, int index);
std::array<float, 16> ReadMatrix(lua_State* L, int index);
std::string GetLuaError(lua_State* L);
std::array<float, 16> IdentityMatrix();
int LuaGlmMatrixIdentity(lua_State* L);
int LuaGlmMatrixMultiply(lua_State* L);
int LuaGlmMatrixTranslation(lua_State* L);
int LuaGlmMatrixRotationX(lua_State* L);
int LuaGlmMatrixRotationY(lua_State* L);
int LuaGlmMatrixLookAt(lua_State* L);
int LuaGlmMatrixPerspective(lua_State* L);
int LuaGlmMatrixFromTransform(lua_State* L);
} // namespace sdl3cpp::services::impl::lua