• 티스토리 홈
  • 프로필사진
    디지털 블리자드
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
디지털 블리자드
  • 프로필사진
    디지털 블리자드
    • 분류 전체보기 (55) N
      • 과제(숙제) (19)
      • 컴퓨터관련 (17)
      • 윈도우7 (19) N
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
        등록된 공지가 없습니다.
      # Home
      # 공지사항
      #
      # 태그
      # 검색결과
      # 방명록
      • 2022.07.25 과제
        2022년 07월 25일
        • 디지털 블리자드
        • 작성자
        • 2022.07.25.:18

        키 프레임 애니메이션 (key frame animation)
        전체 애니메이션중에서 중요한 몇개의 프레임에 애니메이션 키 값을 등록하고, 나머지 들은 자동으로 생성하는 방법입니다.
        프레임은 애니메이션에서 출력될 한 장면 한 장면을 말한다.

             (1)                                             (2)
             ◆       ◇       ◇       ◇       ◇       ◆  
         (-10,0,0)                                       (10,0,0)

        전체 6프레임짜리 애니메이션이 있습니다.
        검은색 마름모가 처음1번에서부터 2번까지 이동하는 애니메이션입니다.
        여기서 검은색 점이 키값이라 하면 그 지점에서의 좌표라고 생각하면됩니다.
        프레임은 (1)번 프레임 (2)번 프레임 두개만 만들어놓고 나머지 4개의 중간프레임( ◇ ) 들은 보간(interpolate)하여 자동으로 생성합니다.

        애니메이션이 여러장의 그림을 나열하는 것은 알고 있을 것입니다.
        그런데 그러한 그림을 노트에서 페이지 넘겨서 움직이는 공을 그리듯이 무작정 순서대로 그리진 않습니다.
        먼저 원화라고 Key Animation을 그린 후 그것을 연결하는 동화를 그립니다.
        예를들어 공이 위에서 아래로 떨어지는 애니를 만든다면 원화가는 어디에서 공이 떨어질지에 대한 그림을 그리고 어느 바닥에 도착할지에 대한 그림을 그립니다.
        그럼 총 두 장의 키 애니메이션이 만들어집니다.
        하지만 이 두 장으론 애니가 성립되지 않습니다.
        그것을 위해 동화맨들이 두 장을 바탕으로 중간에 연결되는 그림을 왕창 그리는 것입니다.
        만약 원화가가 한 장은 개를 그려놓고 한 장은 우주를 그려놓으면 동화를 그리려고 한다면 이 두 장 사이에 뭘 그리라는 건지 혼란에 빠질 것입니다.
        그러므로 키 애니메이션은 거의 모든 중요정보를 담고있는 말 그대로 그 장면 장면의 키가 되어서 누가봐도 중간 장면을 예상할 수 있어야합니다.

        만약에 키 에니메이션에서 물체가 위치를 이동하면서 회전까지 한고 합시다
        크기와 이동은 선형보간으로 해결이 가능하지만 회전은 사원수를 이용해야합니다.
        키프레임에 회전값을 이용하려면 사원수(쿼터니언(Quaternion))사용합니다.
        3차원 그래픽에서 회전을 표현할때, 행렬 대신 사용하는 수학적 개념입니다.
        행렬에 비해 연산속도도 빠르고 차지하는 메모리의 양도 적습니다.
        행렬에서는 짐발락(Gimbal Lock) 등 오류가 발생하지만 사원수는 그렇지 않습니다. 
        쿼터니언은 회전메트릭스간의 보간을 위해 사용됩니다.
        중간값을 뽑아서 다시 회전 매트릭스로 만들어야 사용할 수 있습니다.

        2D 게임 시대를 지나 3D 게임 시대가 돼서도 사용되고 있는 것이 '키프레임 애니메이션'이다.
        키프레임 방식은 처음 프레임과 끝 프레임을 설정해 시간의 흐름에 따라 이어지도록 하는 것으로 비교적 간단하고 요구 사양이 저렴하여 아직도 많이 사용되고 있는 기법이다. 
        키프레임 애니메이션은 시간의 흐름에 따라 미리 움직임을 만들어 놓은 것으로 동영상이 출력되면 수정할 수 없기 때문에 제작단계로 다시 돌아가야한다.
        키프레임 애니메이션은 스킬과 점프, 걷기 등 패턴화된 움직임을 구현할 때 유용합니다.
        단점으로는 기계적으로 같은 움직임을 보여주기 때문에 딱딱함을 느낄 수 있습니다.

        참고 문헌 및 출처

        https://www.theguru.co.kr/news/article.html?no=18731
        https://skmagic.tistory.com/16
        http://twinbraid.blogspot.com/2016/01/blog-post_19.html

         

        스키닝 애니메이션
        스키닝(skinning)이란 피부를 붙이는 작업이라고 말할 수 있습니다.
        3차원 메쉬는 관절과 관절 사이가 사람과 달리 끊김 현상이 발생할 수 있는데, 이를 막는 기법을 스키닝이라고 합니다.
        마치 사람의 뼈 위에 피부가 있어서 관절부위가 보이지 않는 것과 같다고 할 수 있습니다.
        과거에는 고급 기법이었으나, 요즘에는 스키닝이 되지 않는 경우가 더 어색해 보일정도로 일반화 되었습니다.

        V(최종 world) = V(스킨 world) * M0(월드 상에서 뼈가 움직인 만큼의 애니) * W0(가중치) +  V(스킨 local) * M1(뼈대 애니) * W1(가중치)....
        V_world = V_local(메시의 로컬좌표) * M_world(메시의 월드행렬) * M_world의 역행렬(본의 월드의 역행렬) * M_Animation(본의 애니메이션 월드행렬) * W_0( 0번째 가중치값 )

        스키닝의 기본적인 개념을 설명하자면 연결점을 가진 Mesh들은 특별한 설정이 없을 시 애니메이션을 설정하면 각 연결점은 떨어져 있게 되어있습니다.
        그 떨어져 있는 부분의 어색함을 없애기 위해 스키닝이라는 개념이 나오게 되었습니다.

        스키닝을 처리하는 방법은 Software 방식과 Hardware 방식으로 나눌 수 있는데 software 방식은 CPU에서 처리하고 Hardware 방식은 GPU처리를 할 수 있습니다.
        GPU처리는 Vertex Shader 를 통해 처리하기때문에 Software 방식보다 빠른 처리가 가능합니다.

        참고 문헌 및 출처
        http://jionpapa.blogspot.com/2017/11/skinning-animation.html?m=1
        http://lab.gamecodi.com/board/zboard.php?id=GAMECODILAB_QnA_etc&no=5018
        https://skmagic.tistory.com/18

         

        저작자표시 비영리 변경금지 (새창열림)

        '과제(숙제)' 카테고리의 다른 글

        2022.08.18  (0) 2022.08.19
        2022.07.26 과제  (0) 2022.07.27
        2022.07.20. 정리  (0) 2022.07.21
        2022.07.18 정리  (0) 2022.07.18
        22.07.12 과제  (0) 2022.07.13
        다음글
        다음 글이 없습니다.
        이전글
        이전 글이 없습니다.
        댓글
      조회된 결과가 없습니다.
      스킨 업데이트 안내
      현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
      ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
      목차
      표시할 목차가 없습니다.
        • 안녕하세요
        • 감사해요
        • 잘있어요

        티스토리툴바