천문 프로그래밍과 관련된 이야기를 나눌 수 있는 곳입니다.
총 게시물 144건, 최근 0 건
   
현재 시간에 따른 태양, 달 위치 계산.
글쓴이 : 조재훈 별님  (203.♡.233.93) 날짜 : 2013-08-30 (금) 12:39 조회 : 6340
제가 현재 게임 개발중에 있습니다.
현재 SSAO, HDR, Depth-of-field, Motion-bluring, Speed-blur 등의 Post fx가 적용되어 있고,
거기에 조금 더 실사같은 그래픽을 위해 천문학적으로 태양 위치, 달 위치, 별같은 물체를 실시간으로 위치가 자동으로 변경되는
시스템을 구축하고 있습니다. 또, 태양과 달이 정상적으로 위치를 잡으면(?) 이제 더 실사같도록 다른 천체도 적용할 예정입니다.

현재 상태 스크린샷입니다.



현재 태양의 위치를 적용하기 위해
        core::matrix4 mat;
        core::vector3df kampas;
        f32 vieta[4];

        saule(52.0f,-5.0f,Juliandate);
        kampas.X=-sun_angle[1];
        kampas.Y=sun_angle[0];
        kampas.Z=0.0f;
        mat.setRotationDegrees(kampas);
        vieta[0]=0.0f;
        vieta[1]=0.0f;
        vieta[2]=1000.0f;
        vieta[3]=0.0f;
        mat.multiplyWith1x4Matrix(vieta);
        sun_pos_from.X=vieta[0];
        sun_pos_from.Y=vieta[1];
        sun_pos_from.Z=vieta[2];
        sun_angle_from=sun_angle[1];
        saule(52.0f,-5.0f,Juliandate+time);
        kampas.X=-sun_angle[1];
        kampas.Y=sun_angle[0];
        kampas.Z=0.0f;
        core::matrix4 mat2;
        mat2.setRotationDegrees(kampas);
        vieta[0]=0.0f;
        vieta[1]=0.0f;
        vieta[2]=1000.0f;
        vieta[3]=0.0f;
        sun_angle_to=sun_angle[1];
        mat2.multiplyWith1x4Matrix(vieta);
        sun_pos_to.X=vieta[0];
        sun_pos_to.Y=vieta[1];
        sun_pos_to.Z=vieta[2];
요런 코드를 쓰고 있습니다.

현재는 분단위로 태양의 위치를 계산해서 from과 to로 구분, 즉,
from에서 부터 to 까지의 이동은 vector transforming으로 밀어버리고,
분단위의 계산만 정확히 하려고 합니다.

그런데 현재로서의 문제도,
정확한 계산이 아닌건지, 현제 game data exchange timer의 문제인지
아니면 위 코드를 도출시킨 공식들에 문제가 있는건지

시간 주기도 맞질 않고 태양이나 달의 위치도 전혀 변하지 않네요.;;
또 시간 주기를 빠르게 돌리도록 해 봐도 전혀 위치가 변하질 않네요,....;;

박명정별님 (59.♡.120.190) 2013-10-23 (수) 10:37
잘 만드시고 중간 중간 데모 프로그램도 오픈 해 주시면 감사~ ^^
댓글주소
   

총 게시물 144건, 최근 0 건
번호 제목 글쓴이 날짜 조회 추천
144  음양력 변환 프로그램 CalTime 3.4 +1 김동빈별님 11-24 7091 0
143  현재 시간에 따른 태양, 달 위치 계산. +1 조재훈별님 08-30 6341 0
142  [DreamSpark] Microsoft의 정품 프로그램을 무료로 … +6 백승우별님 01-21 8224 0
141  일식 예측을 위한 태양과 달의 위치 계산 +1 이형철별님 11-21 10750 0
140  사이토구니치의 古天文學 번역판을 공개하며 +1 이형철별님 08-22 11151 2
139  [AstroDev의 C언어 강좌] 나왔다 Hello World!!! +3 유환용별님 07-01 8575 0
138  [AstroDev의 C언어 강좌] 컴퓨터 데이터 표현 방… 유환용별님 06-28 9844 0
137  IAU2000 장동 모델 +2 김창환별님 06-25 11766 0
136  [AstroDev의 C언어 강좌]메모리 안에서는 무슨일… +10 유환용별님 06-10 11921 0
135  [AstroDev의 C언어 강좌]우리는 무엇을 준비해야… +7 유환용별님 06-08 9817 0
134  [AstroDev의 C언어 강좌]우리는 무엇을 준비해야… +3 유환용별님 06-07 9393 0
133  [AstroDev의 C언어 강좌]C언어를 공부하기 전에 … +4 유환용별님 06-06 9982 0
132  IAU2006 세차 모델 +1 김창환별님 05-18 10560 0
131  각도변환문제 : 도(degree), 시(hour), 라디안(radia 지용호별님 04-15 17931 0
130  지구의 세차운동(歲差運動, Precession) 계산하… +5 지용호별님 04-14 14418 0
 1  2  3  4  5  6  7  8  9  10  맨끝
 
Since 2001.2.7 미래창조과학부 등록 비영리민간단체 천문노트. Copyright All rights reserved.
단체명 : 천문노트  |    고유번호 : 101-82-15888  |    대표자명 : 김태욱, 조우성  |    주소 : 138-804 서울특별시 송파구 가락동 93 금강빌딩 7층 710호  |    전화 : 02-543-3295  |    Fax : 02-6918-6888  |    통신판매신고번호 : 종로 제01-5696호  |    개인정보관리책임자 및 사이트관리자 : 지용호