Views 1281 Votes 3 Comment 0
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print

안녕하세요. 제프입니다. 오랜만에 글을 적는것 같네요. ^^;;


 


오늘은 코드 분석을 하는 것이 아니라, 지난번에 알려드렸던 3대 행렬 변환에 대한 유의사항을 적어보겠습니다.


 


지난번에 알려드린 부분 Render 함수를 이용하여 여러가지 변환(이동,회전,크기변환)을 해보셨다면, 이런 문제를 접하셨을수 있을 것입니다.


 


문제의 코드를 약간만 적어보도록 하겠습니다.


 


 


------------------------------------------------------


 


D3DXMATRIX move;


D3DXMatrixTranslation(&move, 1.0, 0.0, 0.0); //x축 방향으로 1만큼 이동


 


D3DXMATRIX rotate;


D3DXMatrixRotationZ(&rotate, (((float)timeGetTime()*D3DX_PI*2.0)/1000.0)); // 시간에 따라 Z축 기준으로 1초에 1바퀴 회전함.


 


D3DXMATRIX local;


 


// local = move * rotate; //1번의 경우


// local = rotate * move; //2번의 경우


 


// 이하 local 행렬을 기준으로 그림을 그림


 


/*


TIP.


 


가장 헷갈리실 수 있는 (((float)timeGetTime()*D3DX_PI*2.0)/1000.0) 부분은


 


timeGetTime() 함수는 시간을 1/1000 초 단위로 알려주는 함수입니다.


 


이것을 1000으로 나누면 초단위가 되고, 2*D3DX_PI로 곱해주면 1바퀴에 해당하는 라디안값으로 변환됩니다.


 


즉 1초에 1바퀴를 표현하는 라디안 값을 구하라는 표시이지요.


*/


 


 


-------------------------------------------------------


 


 


 


 


 


 


중요한 내용은 이 다음에 주석처리한 2가지 경우입니다.


 


1번의 경우 move * rotate를 시행하였습니다만, 이경우 다음 그림을 그릴 대상을 이동->회전을 가하는 경우입니다.


 


이것은 원점기준으로 시행되는 연산이기 때문에,


 


먼저 X축방향으로 1만큼 이동을 한후 회전을 합니다.


 


 


 


      |                                  |


      |                                  |


      |                                  |■


      |                                  |   ↖


     □->■---------               ---□----------


  - 대상이 이동한 모습 - - 회전 명령을 시행한 모습 -


 


 


정점을 기준으로 회전행렬이 적용되어 이동한 거리를 기준으로 원운동을 하는 모습이 될것입니다.


 


 


 


2번의 경우는 회전이 먼저 시행되는 경우이므로 다음과 같습니다. (그리기가 쉽네요. ^^;)


 


      |                                  |


      |                                  |


      |                                  |


      |                                  |


      ◆------------               -->◆----------


  - 대상이 회전한 모습 - - 이동 명령을 시행한 모습 -


 


사각형이 회전을 먼저한후, 이동을 취한 상태입니다.


 


두가지의 모습이 어떻게 달라지는지 아셨겠지요?


 


 


 


이런 간단한 오류들을 확실히 인지하고 전체적으로 실수가 발생하지 않도록 하는것이 중요하겠습니다. ^^;

?

  1. 물체 밀어서 움직이는 이벤트 조금 더 쉽게 하는 법

    Date2018.01.02 CategoryRPG Maker Byzero? Views691
    Read More
  2. [마지막 3명 모집] [취업연계무료교육] VR/AR 게임 콘텐츠 전문가 양성 과정 교육생 모집

    Date2017.07.14 Category언어/기타 By황금상자 Views849
    Read More
  3. rpg vxa 로 겜만들때 데미지 설정 공식[링크]

    Date2017.06.08 CategoryRPG Maker By준E Views794
    Read More
  4. [꿀팁] 간단하게 만들 수 있는 실시간 전투 시스템

    Date2017.03.31 CategoryRPG Maker By준E Views2059
    Read More
  5. JSON parser 변환데이터 저장시 생기는 Object Too Deep 해결하기

    Date2016.12.24 Category언어/기타 Bytitle: 댓글러lklslel Views921
    Read More
  6. 앙뜨프리너십에서 해커톤 부트캠프 모집중이네요

    Date2016.11.08 Category언어/기타 By마나님이 Views978
    Read More
  7. RPG MV에서 플러그인 오류의 원인에 대하여

    Date2016.07.08 CategoryRPG Maker Bytitle: 댓글러lklslel Views2440
    Read More
  8. RPG MV 게임 도중에 윈도우 스킨 파일 자체를 통째로 바꿔버리는 방법 (출처: HIME)

    Date2016.07.08 CategoryRPG Maker By최저 Views1678
    Read More
  9. 게임의 버전을 짜 보자! - 유의적 버전 2.0.0

    Date2016.06.07 Category언어/기타 ByYanggaeng Views1195
    Read More
  10. 텍스트 대화 도중 메뉴 여는 방법을 알아냈습니다!

    Date2016.03.12 CategoryRPG Maker By정궈니 Views3017
    Read More
  11. rpgmv 마우스 지원과 터치 지원이 되니.

    Date2015.10.25 CategoryRPG Maker By팡소리 Views1057
    Read More
  12. RPG Maker MV 와 AJAX를 이용한 웹통신 관련 영상.

    Date2015.10.25 CategoryRPG Maker ByHT9MAN Views2293
    Read More
  13. RPG게임 뻔한요소들.

    Date2015.10.05 Category언어/기타 Bytitle: 천무천무 Views1712
    Read More
  14. 자바스크립트와 관련해서 참고할 만한 사이트들

    Date2015.10.04 Category언어/기타 ByMARCO Views957
    Read More
  15. 꿀잼이군요!

    Date2015.05.20 Category언어/기타 By사람님[대회참가] Views944
    Read More
  16. [RPG2000/3 팁] 간편한 이벤트 단축키

    Date2015.04.06 CategoryRPG Maker Bytitle: 자게이하앵 Views1897
    Read More
  17. [RPG2000/3 팁] 간편한 이벤트 단축키

    Date2015.04.05 CategoryRPG Maker Bytitle: 자게이하앵 Views795
    Read More
  18. [강의링크] 대비법칙-색상대비-밀당의 재미 약한 반대색 설계

    Date2015.04.02 Category언어/기타 Bytitle: 천무천무 Views694
    Read More
  19. 오다 주웠습니다.

    Date2015.03.30 Category언어/기타 By사람님[대회참가] Views990
    Read More
  20. 무료 이미지 사이트 Pixabay!

    Date2015.03.28 Category언어/기타 By나작소 Views970
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 51 Next
/ 51


[privacy statements] | [Terms of Use] | [Contact us] | [Sponsorship] | [Indiside History]

Copyright © 1999 - 2016 INdiSide.com/CL3D Co., Ltd. All Rights Reserved.
Owner : Chunmu(Jiseon Lee) | kernys(Wonbae Kim) | Sasinji(Byungkook Kim)