안드로이드 스튜디오에서 Im 프로그래밍을하고 있으며, 일부 물리학 게임을하고 싶습니다. 내 게임의 물리학을 구현하는 방법에 대해서는 잘 모릅니다. 예를 들어, 볼을 사용하여 게임을 만들고 싶습니다.이 게임은 일부 직사각형을 뛰어 넘을 수 있고 실제 물리처럼 충돌 할 수 있습니다. 어떻게 구현할 수 있습니까? 커버 너무 많은 옵션이 있기 때문에안드로이드 게임에서 물리학 구현
public abstract class GameObject {
protected double vX;
protected double vY;
protected double mass;
protected MyPoint centerOfMass;
protected double accelerationX;
protected double accelerationY;
protected void update()
{
if(Math.abs(vX)<0.05)
{
if(Math.abs(accelerationX)==0.05)
{
vX=0;
accelerationX=0;
}
}
vY+=accelerationY;
vX+=accelerationX;
this.centerOfMass.setX(this.centerOfMass.getX()+vX);
this.centerOfMass.setY(this.centerOfMass.getY()+vY);
}
protected void collide()
{
// no idea ...
}
나는 방법을 충돌 방법을 implemet하는 아무 생각이 볼이 RECT 이상, 또는 그것 RECT에서, 또는에서 떨어지는 때 그가 오는 경우와 같은 직사각형의 왼쪽 또는 점프 할 때옵니다.
또한, AndEngine과 같은 물리 엔진을 사용하고 싶지 않습니다. 직접 프로그래밍하고 싶습니다.
누군가 구현 방법에 대한 아이디어를 줄 수 있습니까? 고맙습니다 !!
게임에서 충돌 감지의 핵심은 수학이다 2D 연합과 같은 C++ 게임 프로그래밍 뭔가를 사용하는 것이 좋습니다. 수학적 원시 객체는 방정식을 사용하여 설명 될 수 있습니다. MDN에서 [2D 충돌 감지] (https://developer.mozilla.org/en-US/docs/Games/Techniques/2D_collision_detection) 문서를 읽는 것이 좋습니다. –
당신은 주제에 관한 (좋은) 책을 움켜 잡아야합니다. 게임 개발사의 상위 레벨 cs 코스를 치른 후에 Ian Millington이 "게임용 인공 지능"사본을 가지고 있습니다. 충돌 감지 (구현을 해체하는 가짜 코드)에 대한 몇 가지 장이 있습니다. 또한, 그 MDN 기사도 꽤 좋아 보입니다. – trooper
정말 고마워요. 이 기사는 내가 찾고있는 것입니다. –