fix du spawn d'un objet

fix:
+ les objets ne spawn plus a une distance elevees
This commit is contained in:
StratiX0 2024-04-22 14:50:14 +02:00
parent 23da293d54
commit d51619f437
4 changed files with 11 additions and 8 deletions

View File

@ -744,8 +744,7 @@ bool ApplicationClass::Frame(InputClass* Input)
object->SetAcceleration(XMVectorZero());
// Apply forces
m_Physics->ApplyGravity(object, frameTime);
m_Physics->ApplyDrag(object, 1.0f, frameTime);
float forceX = 0, forceY = 0, forceZ = 0, forceW = 0;
@ -779,11 +778,14 @@ bool ApplicationClass::Frame(InputClass* Input)
position = position + velocity * frameTime;
object->SetPosition(position);
// Check if the object has fallen below the ground
if (XMVectorGetY(object->GetPosition()) < -10.0f)
m_Physics->ApplyGravity(object, frameTime);
m_Physics->ApplyDrag(object, 1.0f, frameTime);
// Check if the object has fallen below a certain position
if (XMVectorGetY(object->GetPosition()) < -30.0f)
{
XMVECTOR currentPosition = object->GetPosition(); // Obtain the current position of the object
object->SetPosition(XMVectorSetY(currentPosition, 20.0f)); // Define the new position of the object
object->SetPosition(XMVectorSetY(currentPosition, 50.0f)); // Define the new position of the object
}
object->m_previousPosition = object->GetPosition();

View File

@ -7,7 +7,7 @@ Pos=593,31
Size=694,210
[Window][Objects]
Pos=87,45
Pos=81,40
Size=492,353
[Window][Terrain]

View File

@ -10,7 +10,7 @@ Object::Object() : ModelClass()
m_previousPosition = XMVectorZero();
m_velocity = XMVectorZero();
m_acceleration = XMVectorZero();
m_mass = 1.0f;
m_mass = NULL;
}
Object::~Object()

View File

@ -1,8 +1,9 @@
#include "physics.h"
Physics::Physics() : m_gravity(XMVectorSet(0.0f, -9.81f, 0.0f, 0.0f)) // Initialize the gravity vector
Physics::Physics()
{
m_gravity = XMVectorSet(0.0f, -9.81f, 0.0f, 0.0f); // Initialize the gravity vector
}
Physics::Physics(const Physics& other)