[WinApi] 20240213 수업 낙서

라멘커비·2024년 2월 13일
0

WinApi

목록 보기
13/32

엔진 변경사항

  • CreateAnimation에 start와 end를 지정하는 것이 아니라 인덱스를 자유롭게 지정할 수 있도록 벡터로 넣어주는 함수도 추가.

수학

  • Api => 삼각함수, 원주율, 각도, 벡터 기초에 대해서 이해해야 한다.

  • DX, 언리얼 => 행렬에 대해 이해해야 한다.

  • 벡터 기초 => 기하학

    • 기하학은 클라이언트 프로그래머의 수학 기초이다.
    • 기하학은 공간과 도형을 연구하는 수학이다. 점, 직선, 곡선, 면, 부피 등 공간의 성질을 연구하는 수학 분야이다.
  • 지금까지 어떤 위치를 표현할 때 {100, 100}이라고 표현한 것을 (100,100)위치의 점이 아니라 원점에서 (100,100)로 향하는 벡터로 인식해야 한다.

  • 벡터 덧셈
    보통 이동에 사용.

  • 벡터 뺄셈
    상대를 바라보는 방향의 벡터가 나온다. 그래서 대상 추적에 가장 많이 쓰인다.

    • B - A => A가 B를 바라보는 방향의 벡터가 나옴.
    • PlayerPos - MonsterPos 하면 MonsterDir를 알 수 있음. MonsterDir를 더하면 추적하는 대상의 위치가 됨. 근데 서서히 가야함.
    • Normalize
      • MonsterDir을 단위벡터로 바꾸고 거기에 델타타임과 speed를 곱해서 이동 거리 계산 가능.
      • 벡터를 삼각형으로 볼 때 빗변의 길이를 알아내서 나눠주면 벡터의 길이를 1로 만들 수 있다. 그게 방향 벡터가 됨.
      • 그 벡터를 단위벡터, 정규화벡터, 노말라이즈벡터 등등으로 부른다.
    • 그래서 일반적인 이동식은 방향벡터 * 델타타임 * 스피드가 된다. (등속이동에서)
  • 게임 물리 기초
    모든 힘이 하나로 합쳐진 것이 최종 힘 방향(이동 방향)이다.

내 커비 상황

  • 벽에 닿으면 무한 루프 -> 범위 조건 &&를 ||로. 수정 ok
  • 맵 오른쪽 끝에서 카메라가 끝까지 안 가고 조금 앞에 멈춰짐 -> y값이 가끔 떨어져서 카메라 위치랑 캐릭터 위치랑 달라져서 그랬음. (ok)

다음 하고 싶은 것
:

  • 경사 매끄럽게 오르기 -> 바꿔봤는데 안 매끄러움?
  • 배경 이미지는 속도 다르게 랜더링...... (512/4720)
    • 이미지 렌더러 0,0 에서 MovePos * (512/4720)만큼 이동?
  • 맵에 잔디 애니메이션 어카지 -> 맵을 다시 이미지 편집해서 애니메이션으로 띄워야할듯.. -> ok
profile
일단 시작해보자

0개의 댓글