• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

프로그램 실행 순서 질문

21.08.16 18:15 작성 조회수 174

0

2강 과제( 지구 달 자전 공전)중 질문 있습니다.

하기의 코드에서 주석 단 것 처럼 실행 순서가 맞나요?  (주석은 실행순서를 의미합니다)

#pragma once

#include "Game2D.h"

namespace jm
{
	class SolarSystem : public Game2D
	{
		float time = 0.0f;

	public:
		void update() override
		{
			beginTransformation();
			{
				rotate(time * 20.0f); // 2
				drawFilledStar(Colors::gold, 0.2f, 0.13f); // 1

				rotate(time * 45.0f); // 5
				translate(0.5f, 0.0f); // 4
				drawFilledCircle(Colors::blue, 0.1f); // 3

				rotate(time * 90.0f);  // 8
				translate(0.2f, 0.0f); // 7
				drawFilledCircle(Colors::yellow, 0.05f);// 6
			}
			endTransformation();

			time += this->getTimeStep();

		}
	};
}

답변 1

답변을 작성해보세요.

0

안소님의 프로필

안소

2021.08.16

안녕하세요 😀

namespace jm
{
	class SolarSystem : public Game2D
	{
		float time = 0.0f;

	public:
		void update() override
		{
			beginTransformation();
			{
				rotate(time * 20.0f); // 8
				drawFilledStar(Colors::gold, 0.2f, 0.13f); // 1

				rotate(time * 45.0f); // 7
				translate(0.5f, 0.0f); // 6
				drawFilledCircle(Colors::blue, 0.1f); // 2

				rotate(time * 90.0f);  // 5
				translate(0.2f, 0.0f); // 4
				drawFilledCircle(Colors::yellow, 0.05f);// 3
			}
			endTransformation();

			time += this->getTimeStep();

		}
	};
}

실행 순서는 위와 같다고 알고 있습니다.

(그리는건 순차적으로, 이동 및 회전 코드는 역순으로) 

저도 이 강의를 수강할 당시 실행 순서에 대해 궁금했는데 여러 실험을 해보니 이게 맞는 것 같더라구요,,!

니르님의 프로필

니르

질문자

2021.08.16

joy님 말씀이 맞다면 노란색 원(달)의 위치가 파란색(지구)보다 왼쪽, 즉 

별 - 달 - 지구 순서로 있어야 하지 않나요? 

안소님의 프로필

안소

2021.08.16

제가 이 연습문제를 푼지가 굉장히 오래되어서 디테일 한 것들은 기억이 잘 나지 않는 상태입니다 ㅠㅠ 이 태양계 공전 연습 문제 풀 당시 https://ansohxxn.github.io/c++%20games/chapter1-2-prac/ 이 곳에 풀이를 기록했었는데요, 왜 저런 순서가 나오게 되었는지를 제가 써놨었네요..! 한번 참고해주시면 감사하겠습니다. 

니르님의 프로필

니르

질문자

2021.08.16

아 넵!! 1.3강 보니깐 해결이 되네요! 늦은시간까지 감사합니다 ㅎㅎ