현실세계의 물리 개념을 넣어 무게, 충격, 가속도, 관성이 있습니다. 생각보다 어렵습니다.

게임 물리학에 이해도가 낮은 부분이 느껴지는 멘트여서 좀 다듬어주시면 좋을 것 같습니다.

직접 다듬어주세요 ㅋㅋ 문과생 앞에서 가오잡지 마시구

문과생의 마음을 걱정해주셔서 감사합니다.ㅎㅎ ^^

제가 문구를 다듬어드리기 어려운 이유는 제가 만드신 코드를 보지 않아서 어떤 방식으로 물리엔진을 구현하셨는지 모르기 때문입니다.

원치 않은 지적을 드린 부분에 대해서 제가 사과드립니다.
많은 분들이 프로덕트 홍보를 하시는데, AI로 홍보하시거나 적절하지 않은 설명들을 첨부하시는 경우가 많아서 댓글을 남기는데요. 화나게 만들려고 적은 댓글은 아니었습니다.

관심 감사합니다. 전혀 기분 나쁘지 않았습니다. 조언은 항상 감사하죠. 오히려 어디를 어떻게 고쳐야 한다는 것인지 이해를 못해서 좀 더 자세히 설명해주시면 좋겠습니다.

현실물리를 적용했다는 내용에 대해 더 설명을 드리면, 이런 게임들이 보통 아주 간단한 충돌 감지 및 반사 만 구현을 하더군요. 근데 저는 실제 핀볼게임 처럼 공이나 벽돌이 충돌할 때 실제 무게감과 속도에 의한 충돌의 에너지가 느껴졌으면 좋겠다는 생각이 들어서 게임용 라이브러리 보다 좀 더 정교하다는 Planck.js 를 찾아다가 써보게 됐습니다. 벽돌이 공에 맞으면 그 충격에 밀리고 회전하고 하는 것을 표현을 했고요. 설정에서 공의 무게, 벽돌의 무게, 충돌 에너지의 감쇠, 저항 이런 것들을 바꿀 수 있게 되어 있어서 설정에 따라 다른 경험을 하게 만들었습니다.
(제가 크레이지 모드라고 부르는 설정이 있는데, 공의 무게를 최대로 올리고 벽돌의 무게를 최소로 낮추면 아주 다이나믹한 게임이 됩니다.)

코드도 깃허브에 있습니다.
https://github.com/gogodevelop2/mirror-breakout

넵 코멘트 드리면,
우선 충돌 설계, 반발계수 설정 등에서 더 많은 노력을 들이신 것 같습니다.
그리고 특히 충돌을 각각의 질량과 반발계수로 계산되어 발생하게 되었는데, 목적으로 하신 것과 다른 부분들을 말씀드리면

paddle이나 brick의 질량이나 속도 같은 것들이 ball의 모멘텀에만 영향을 주므로 사실
본질적으로는 충돌방식을 물리학 모델에서 영감을 받아
공과 (벽돌, 패들, 벽) 사이의 충돌을 각각 다르게 짜신 것에 가깝습니다.

따라서 현실 물리학이라고 말씀하시기 보다는, 물리엔진의 요소들을 차용해서 충돌과 모멘텀 변화를 다이나믹하게 설계하셨다고 설명하시는 것이 좋아보입니다.

특히, 충돌과정이 비현실적이어서 모멘텀이 달라지는 것들을 스피드 보정으로 적용하셨는데 이것이 조작감 측면에서는 히든처럼 느껴질 수도 있고, 되게 불친절한 면처럼 느껴질 수도 있는 것 같습니다.

조금 더 쉽게 풀어서 설명드리면,
물리학적인 수식들과 계산 방식이 쓰였지만 결과론적으로는 현실적이지 않은
모델이고, 현실적이지 않은 부분들에서 발생하는 문제들을 게임적으로 막기 위해(무한 스피드, 멈춤, 방향 조절 등) 에서 보정하신 부분들이 많이 들어가 있습니다.

상세한 설명 감사합니다. 이해가 잘 되었습니다. 게임 제작을 처음 해보다보니 게임물리학이라는 세계와 용어 사용의 적절함에 대해 잘 몰랐던 탓에 설명이 오해를 부르도록 적었었네요. 설명을 들으니 현업에 계시는 분들이 어떤 수준으로 결과물들을 바라보시는지 조금 알 것 같습니다. 본문 수정하는 법을 못찾겠어서..알아보고 수정하겠습니다. 고맙습니다.