최근에 C++ 및 SFML 최신 버전을 사용하여 간단한 게임을 작업 해 왔지만 충돌 감지가 좋지 않다는 문제가있었습니다. 예를 들어 적이 아직 터치하지 않은 경우에도 플레이어가 죽는 등의 문제가있었습니다. , 그러나 그저 근처에.SFML의 충돌이 좋지 않습니다. 어떻게 개선할까요?
`클래스 PlayerA : { 공공 공공 CircleShape :
//Constructor:
PlayerA(float xposition, float yposition, float radius, float s)
{
setRadius(radius);
setFillColor(Color::Yellow);
setOutlineColor(Color(00,80,00));
setOutlineThickness(-2);
setPointCount(3);
setSpeed(s);
setPosition(xposition,yposition);
}
//Movements of the player:
void up()
{
move(0,-10*speed);
}
void down()
{
move(0,10*speed);
}
void right()
{
move(10*speed,0);
}
void left()
{
move(-10*speed,0);
}
void checkA(ObsA *obs1=NULL,ObsA *obs2=NULL, ObsA *obs3=NULL, ObsA *obs4=NULL, ObsA *obs5=NULL)
{
if(obs2==NULL)
{
if(getGlobalBounds().intersects(obs1->getGlobalBounds()))
{
relevel();
}
}
private:
float speed=0.00;
void obs()
{
if(speed > 0)
{
rotate(0.5*speed);
}
else
{
rotate(0.5*speed);
}
}
private:
float speed = 0.00;
void obs()
{
if(speed > 0)
{
rotate(0.5*speed);
}
else
{
rotate(0.5*speed);
}
}
private:
float speed = 0.00;
뭔가 문제가 여기에 이동 기능과 충돌 감지 코드와 적 클래스의 움직임과 플레이어 클래스의 코드는 코드와 함께, 문제를 해결하는 방법, 감사합니다!
가능한 중복 http://stackoverflow.com/questions/27280264/sfml-bounding-box-collision-detection) – Conduit