나는 인터넷에서 검색하면서 이걸 찾을 수있을 것이라고 생각했지만, 내가 찾은 모든 것은 퐁 (pong) 또는 다른 임의적 인 질문과 같은 것으로 벽을 튀게하는 공이다. 나는 2D 던전 크롤러 게임을 만들고 있습니다. 적을 죽이고 전리품을 떨어 뜨리면, 방금 공중에 던져진 것처럼 아이템이 날아 와서 유닛이 있던 타일 위에 무작위로 점령되기를 원합니다.C# 바운스/던지는 물리학을 던져 넣기
나는 이것을 알아 내려고 노력하고 있지만 알아낼 수는 없지만 아마도 많은 질문을받을 수 있습니다. 누군가 나를 도울 수 있다면 정말 감사 할 것입니다.
편집은 AS 요청한 :
이이 좋아 잘 몬스터 나는 그것이에서의 타일 내에서 임의의 위치를 선택할 것 파괴 될 때의이 위치 endLoc과 몬스터의 위치 startLoc를 호출 할 수 있습니다. 내가 생각
launchLoc = new Vector2(startLoc.X + ((endLoc.X - startLoc.X)/2), startLoc.Y - 20)
: 그럼이라는 변수 launchLoc를이 두 위치 사이의 중앙 X 점을 발견하고 (즉 내가 항목에 의해 가고 싶어 얼마나 많은 픽셀이기 때문에) (20)에 의해 Y 감소, 이렇게하자 것 올바른 벡터를 생성합니다.
이제 startLoc에서 launchLoc으로 항목을 시작한 다음 endLoc으로 다시 가져와야합니다. 이것은 혼란스럽고 현실적인 호를 만드는 방법을 잘 모르겠습니다. 최종 결과는 그것이 마치 공중에 던져진 것처럼 가우스를 따라 움직이는 것처럼 항목을 움직이게 할 것입니다.
각 간격마다 속도를 증가 시키려고 시도했지만 속도가 startLoc과 launchLoc 사이의 X 차이의 120 배만큼 증가하는 배수로 증가했지만 제대로 작동하지 못했습니다. 이것이 최선의 방법인지 확실하지 않습니다. 나는 y 값이 20이고, 항목이 간격마다 1 픽셀 씩 올라 가기 때문에 120을 사용합니다. 따라서 1에서 20까지 더하면 120을 얻습니다. 이것은 x 움직임이 끊임없이 증가하도록 만듭니다.
이것은 2D로 작성되었습니다. 도움이되기를 바랍니다.
문제가있는 코드가 있습니까? 그렇다면 여기에 게시 할 수 있습니까? 이런 식의 논리가 어떻게 작용할 것인가? 조금 더 자세하게 설명해 주시겠습니까? 더 많은 정보가 없어도 이와 같은 질문에 대답하는 것은 어렵습니다. –
내 게시물이 업데이트되었습니다. – user1009573
이것은 2d인가요? 그래서 화면에서 튀어 나오는 3 차원을 시뮬레이트해야합니까? – scottheckel