지구, 달 만들기 [OpenGL] 태양,

상세한 과정은 없고 단순히 태양계를 만들기 위한 과정입니다.

[중간 결과]

OpenGL 강의를 들으며 아래와 같은 궤도를 도는 예제 코드를 받았다.

1 예제 코드

저렇게 돌아가는 걸 보니 삼각형 주변에 위성처럼 돌아가는 걸 만들어 보는 게 어떨까 싶었다.

2

비행체 주위에 꼭 닮은 작은 놈이 돌기 시작했다.근데 이걸 보면 완전 지구 그 자체잖아!

그래서 3D 피라미드 모양의 태양, 지구, 달을 구현해 봤다.

3

색상은 대체로 해당 색상과 비슷한 것을 넣어 구현했다.pyramid 모양이라 그런지 바닥이 있고 뭔가 우주적인(?)인 넓은 공간 느낌이 들지 않아 3D 다이아◆ 형태로 만들어 봤다.

4

아, 뭔가 공간에서 돌고 있는 느낌이 아른하다.

그런데 지구는 조금 비스듬히 있는 것으로 알고 있다.그것을 구현해 보려고 한다.

5 – 1

자전축을 기울이다 보면 기울어진 상태에서!자전해야하는데

이상하게 쓰러져 가는 팽이처럼 돌고 있다.문제는 행렬 7과 순서에 있었다.

현재 scale->rotate->translate 순으로 진행하는데, 처음 시도한 것이 아래와 같았다.크기를 조정하기 위해 전축(z축 기준)으로 기울여 자전 방향으로 회전시켜 궤도 위에 올려놓고

근데 이 순서대로 돌리면

아래와 같이 되지만 이것들의 형태로 y축(위로 가는 화살표) 기준으로 회전하면 당연히 5-1의 그림과 같이 뒤돌아갈 수밖에 없다.

그래서 2.와 3. 순서를 바꿔 자전하고 축을 기울이면 이 부분을 수정할 수 있었다.

5 – 2

기울여서 자전하고 공전하는 것을 볼 수 있다.

그런데 행성은 무엇인가!This is sphere

구로 만들어 보았다.

6.

다른 수정부분이 조금 있었는데

지구도 여전히 약간 기울어져 있어 잘 돌아가는 것을 알 수 있다.

계획

광원 생성 (실제 태양처럼 빛내는) 시점 변화 (각 행성에 초점을 맞추는 것) 행성 텍스처 (텍스처를 추가하여 실제 행성과 마찬가지로) 실제 서로의 자전 속도, 공전 속도비에 맞게 수정 및 궤도 방향을 참고하여 수정

error: Content is protected !!