El codigo de detección es algo así:
Código
bool Colision_Pj_Objeto(int IdObjeto){ pj.bounding.Crear(pj.bounding.Tipo,0); objeto[IdObjeto].bounding.Crear(objeto[IdObjeto].bounding.Tipo,IdObjeto); for(int i=1;i<9;i++){ if(Colision_Punto_ABCD(pj.bounding.vx[i],pj.bounding.vy[i],pj.bounding.vz[i],IdObjeto) == true) return 1; } return 0; } bool Colision_Punto_ABCD(float p_x,float p_y,float p_z,int IdObjeto){ //if(objeto[IdObjeto].usado == true){ if(p_x >= objeto[IdObjeto].bounding.vx[1] && p_x <= objeto[IdObjeto].bounding.vx[3] && p_y >= objeto[IdObjeto].bounding.vy[2] && p_y <= objeto[IdObjeto].bounding.vy[1] && p_z >= objeto[IdObjeto].bounding.vz[5] && p_z <= objeto[IdObjeto].bounding.vz[1]) { return true; } return false; }