I`m designing the collision detection system, it`s a basic thing but I forgot how it`s done (I had it once working). Do I need to check three out of four tile corners to get a collision?
CBody CollisionBodies[100];
int BodyCount =-1;
VOID AddCollisionBody(int posx, int posz, int tilewidth, CBody * Bodies)
{
BodyCount++;
Bodies[BodyCount].nwx = posx - tilewidth / 2;
Bodies[BodyCount].nex = posx + tilewidth / 2;
Bodies[BodyCount].sex = posx + tilewidth / 2;
Bodies[BodyCount].swx = posx - tilewidth / 2;
Bodies[BodyCount].nwz = posz + tilewidth / 2;
Bodies[BodyCount].nez = posz + tilewidth / 2;
Bodies[BodyCount].sez = posz - tilewidth / 2;
Bodies[BodyCount].swz = posz - tilewidth / 2;
}
VOID Detect(CBody * Bodies)
{
for (int ii = 0; ii < BodyCount + 1; ii++)
{
for (int i = 0; i < BodyCount + 1; i++)
{
if ((Bodies[ii].nex > Bodies[i].nwx) &&
(Bodies[ii].nex < Bodies[i].nex) &&
(Bodies[ii].nez > Bodies[i].sez) &&
(Bodies[ii].nez < Bodies[i].nez))
{
}
}
}
}