웹지엘 좌표계

웹지엘 좌표계, 클립 공간, 뷰 볼륨에 대해 살펴봅니다.

1. 좌표계의 이해

### 데카르트 좌표계 descartes_coord
- 위쪽 +Y 기본 좌표계
- 데카르트 == 카테시안 (Orgin: Descartes -> Latin: Catesius adj. Cartesian)

오른손 좌표계

webgl-view-coord > + 방향만 표시한 오른손 좌표계

  • 모니터가 나를 향한 방향 +Z
  • 카메라/모델의 죄표계로 사용
  • 좌표계 범위
    • -1 <= X <= +1
    • -1 <= Y <= +1
    • -1 <= Z <= +1

텍스처 좌표계

texture_coord
- S, T (U, V)
- (0, 0) 좌측하단
- (1, 1) 우측상단

웹지엘 텍스처 좌표는 위쪽이 +Y 방향이지만,
이미지 좌표는 아래쪽이 +Y 방향인 스크린 좌표계를 따른다.
따라서 별 다른 처리없이 이미지를 매핑하면 상이 뒤집힌다.

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

  • 이미지 좌표
    texture_screen_coord
    • 이미지 좌표는 아래쪽 +Y 스크린 좌표
  • 텍스처 좌표
    texture_coord_flip
    • 이미지를 그대로 매핑하여 Y축 기준으로 이미지가 뒤집힌 상태

클립 영역

clip-space-2d ㅇ

(작성중)


뷰 볼륨

웹지엘 뷰 볼륨 2x2x2

Near, Far 평면

  • Near ~ Far 범위로 객체의 깊이를 구할 수 있다.
  • Near 평면은 NDC Z축의 -1에 대응 (Near != 0)
  • Far 평면은 NDC Z축의 +1에 대응
  • 카메라 공간으로 NDC를 바라보면 Z는 음의 방향으로 멀어진다.
  • Near: 0.1 -> -Near: -0.1
  • Far: 100 -> -Far: -100
  • -0.1 ~ -100 -> NDC 맵핑
(0) z' = A * z + B
(1) A * -Near + B = -1
(2) A * -Far + B = 1
--
-(A * -Far + B) = -1 

-1 - 1 = -2
A * -Near + B -(A * -Far + B) = -2 // B 소거
A * (-Near + Far) = -2

따라서 A = 2 / (Near - Far)

(1) 대입

따라서 B = (Near + Far) / (Near - Far)

(0) 대입

결국 z' = 2 / (Near - Far) * z + (Near + Far) / (Near - Far)

Near = 0.1, Far = 100이라면
Near - Far = -99
Near _ Far = 100.1

z' = (2 * z + 100.1) / -99.9

z = -0.1 -> z' = -1
z = -100 -> z' = 1

로컬과 월드 공간

  • 로컬은 객체마다 가지는 좌표 공간
  • 월드는 로컬 좌표 공간을 가진 객체가 놓이는 공간

카메라 공간

  • Camera/Eye/View 공간이라고 불림
  • 사람의 눈. 즉, 카메라 좌표를 중심으로 바라본 공간
  • 객체의 좌표는 카메라 공간을 중심으로 변환
  • 객체 좌표(0,0,0) -> 카메라 좌표(0,0,100) = 카메라 기준 객체 좌표 (0,0,-100)

버텍스 회전 방향

  • 버텍스 인덱스 순서로 회전 방향 결정
  • 반시계방향(CCW): 앞면
  • 시계방향(CW): 뒷면

참고

./files/attach/images/4033/790/043/48272881a91db693c68bc6e64d15ae6b.png
./files/attach/images/4033/790/043/13e8df3785d96cb5fa19ec312b01ecdc.png
./files/attach/images/4033/790/043/0d88bac372fcf08babccb842ad39f753.png > Perspective Frustum and Normalized Device Coordinates (NDC)

 

[출처] https://myounggun.github.io/webgl-coord/

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
41 Responsive Web ① – 반응형 웹을 위해 개발자가 꼭 알아야 하는 기술들 file 졸리운_곰 2019.02.08 326
40 서버 사이드 렌더링 그리고 클라이언트 사이드 렌더링 file 졸리운_곰 2018.11.02 801
39 무료 디자인소스 홈페이지들을 소개합니다! file 졸리운_곰 2018.02.27 518
38 스토리보드 템플릿 file 졸리운_곰 2017.10.10 628
37 [웹 기획] 화면 설계 용어 - 와이어프레임, 스토리보드, 프로토타입의 차이점 file 졸리운_곰 2017.10.10 1584
36 웹기획 탄탄한 홈페이지 설계방법 (스토리보드 다운로드) file 졸리운_곰 2017.10.10 2063
35 정보설계(IA : Information Architecture) 졸리운_곰 2016.11.20 330
34 정보 설계 — 웹 사이트 기획 file 졸리운_곰 2016.11.20 756
33 웹 서비스 구축 체크리스트 file 졸리운_곰 2016.10.30 608
32 반응형 웹 기획 file 졸리운_곰 2016.10.27 673
31 [UX 컨설팅] 모 전자 서비스 사례 보고서 secret 졸리운_곰 2016.10.09 0
30 [웹 기획] 기획자가 화면설계서(스토리보드)를 만든다구요? 기획자가 무슨 능력을 가지고 있는데요? 졸리운_곰 2016.10.09 485
29 [UX 디자인] UI 설계도에 해당하는 용어들 file 졸리운_곰 2016.10.09 531
28 [UX 디자인 사례] T모 소프트 "BUX컨설팅소개_V.1.0" file 졸리운_곰 2016.10.09 256
27 [UX 디자인] 사용자 경험(UX)과 사용자 경험 디자인(UX Design) - 위키피디아 정의 살펴보기 file 졸리운_곰 2016.10.08 290
26 [UX 디자인] UX 디자인 조직의 구조와 역할 file 졸리운_곰 2016.10.08 481
25 [UX 디자인] UX 디자인이란? - UI, UX, 인터랙션 디자인의 정의 file 졸리운_곰 2016.10.08 487
24 [UX 디자인] UX(User Experience) 란? UX 디자인 관련 다이어그램 Best 14 file 졸리운_곰 2016.10.08 584
23 [UX 디자인] 7단계 인간행위 모형 - 터치 기기 사용의 행위 모형 file 졸리운_곰 2016.10.08 534
22 [UX 디자인] 애플의 디자인 방법 file 졸리운_곰 2016.10.08 633
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED