부트캠프/Unity [ 스파르타 ]

[스파르타 ][TIL] 유니티 스파르타 7기 56일차 - 대미지 계산법

맏난거 2025. 4. 29. 21:01

  • 내 공격력적 방어력\frac{\text{내 공격력}}{\text{적 방어력}} : 공격력과 방어력의 비율을 계산합니다.
  • log⁡10(비율)\log_{10}(비율) : 이 비율의 로그를 취합니다 (밑은 10입니다).
  • log⁡10(비율)×10\log_{10}(비율) \times 10 : 이 결과에 10을 곱합니다.
  • 마지막으로, 내 공격력에 곱해 최종 대미지를 구합니다.

주의할 점:

  • 공격력방어력보다 작으면, log⁡\log 값이 음수가 되기 때문에 대미지가 음수로 나올 수 있습니다.
    • 보통 게임에서는 음수 대미지를 허용하지 않고, 최소 0 이상으로 처리하거나, 수식을 수정합니다.
  • 방어력이 0이면 0으로 나누게 되어 무한대가 됩니다. 이 경우는 예외처리 해야 합니다.
  • [스파르타 ][TIL] 유니티 스파르타 7기 55일차 - 유니티 커스텀 에디터
  1. 내 공격력 = 1000, 적 방어력 = 100비율=1000100=10비율 = \frac{1000}{100} = 10 log⁡10(10)=1\log_{10}(10) = 1 1×10=101 \times 10 = 10 1000×10=100001000 \times 10 = 10000대미지 = 10000
  2. 내 공격력 = 100, 적 방어력 = 1000비율=1001000=0.1비율 = \frac{100}{1000} = 0.1 log⁡10(0.1)=−1\log_{10}(0.1) = -1 −1×10=−10-1 \times 10 = -10 100×−10=−1000100 \times -10 = -1000대미지 = -1000 (비정상적)
    → 이런 경우는 보통 최소 0으로 고정하거나 수식을 수정합니다.