Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- kubernetes
- 시장
- PC
- 리뷰
- 암호화폐
- game
- 스마트 컨트랙트
- 쿠버네티스
- 탈중앙화
- 젤다 왕눈
- Docker
- Three
- Linux
- 주식
- threejs
- ps4
- 거래
- review
- 스마트 계약
- 비트코인
- strongloop
- 이더리움
- 블록체인
- 게임
- Games
- angular
- 보안
- 부동산
- loopback
- 투자
Archives
- Today
- Total
BaeBox
Matrix ( transformation) 본문
반응형
Matrix : Threejs가 사용하는 3D 형태를 정의하는 행렬. (위치, 회전률, 비례(크기조정?))
모든 Object3D 객체는 위치, 회전률, 투사비율값을 가지는 matrix 를 가진다.
즉, 요놈을 update 하면 Object의 변경사항이 적용된다!!
Object3D 는 세 가지의 Matrix 를 가지는데,
Matrix Type | Description |
Object3D.matrix | object 자기 자신만의 상태값 가진다. 이 값은 부모값에 대하여 상대적이다. |
Object3D.matrixWorld | object 의 global 혹은 world(즉, 전체)의 상태값을 가진다. parrent 가 없다면 world 와 같은 값을 가진다. |
Object3D.modelViewMatrix | 카메라의 coordinate system에 대한 object 의 상대적인 상태값.(나는 카메라로부터의 위치값 정도로 이해하고 있다.) modelViewMatrix = matrixWorld * matrixWorldInverse(아래 표 참조) 이다. |
Camera 가 가지는 추가적인 2개의 matrice(plural) | Description |
Camera.matrixWorldInverse | camera의 matrixWorld 의 반대값(? 역을 말하는 듯.) |
Camera.projectionMatrix | 정해진 공간에 어떻게 투사할 것인지를 결정하는 값. |
- Object3D가 가지느 matrix 는 부모에 대한 상대적인 변경값을 가진다. 전체에 대한 변경값을 알고 싶다면 matrixWorld를 보면 된다.\
- 하나의 객체만을 update 하고자 한다면 Object3D.matrixWorld()를 사용하면 되고, child와 Parent 모두 업데이트하고자 한다면 Object3D.updateMatrixWorld() 함수를 사용하면 된다.
내용이 어렵다.
다시 한 번 제대로 정리를 할 필요성이 있을 것 같다.
덤.
threejs 는 webgl 에게 여러 개의 matrix 를 전달하는데,
projectionMatrix : aspaect ratio, fov, front and back.
modelViewMatrix : 공간상의 위치.
그 중 위 두 가지는 필수적으로 전달하여야 한다.
위 두 가지를 곱하여 (projectionMatrix * modelViewMatrix ) 2D 상에 그리게 된다. shader 입문
아래는 matrix 에 대한 설명.
https://github.com/mrdoob/three.js/issues/1188
공식 문서.
https://threejs.org/docs/index.html#manual/en/introduction/Matrix-transformations
반응형
'개발 관련' 카테고리의 다른 글
Zokeeper (0) | 2019.10.21 |
---|---|
분산 어플리케이션(Distributed app/system) (0) | 2019.10.21 |
Points(舊 ParticleSystems) (0) | 2019.10.21 |
Bezier curve(베지어 곡선) (0) | 2019.10.21 |
예제. three.js 를 이용해서 지구본을 만들어보자. (0) | 2019.10.21 |
Comments