기말과제로 당구겜 만드는건데 순차적으로 진행할려하는데
일단 당구대는 그렸고
다음 목표가 저 당구대에 공9개 정도를 배치하는거거든?
1. Ball에 대한 다양한 정보(반지름, 색, 위치 등등)와 멤버함수를 포함한 클
래스 생성
- 반드시 Shape 클래스를 먼저 정의하고 이를 상속받아서 생성
- 가상 함수 및 함수의 재정의 활용
근데 꼭 이렇게 하래
빈프로젝트면 어찌어찌 더듬더듬 하겠는데
MFC니깐 드는 의문이
Shape클래스는 걍 c++클래스인가 MFC 클래스인가 MFC클래스면 기본클래스는 무언인가
Shape를 상속받는 클래스(ball)는 c++클래스인가 MFC클래스로써 Shape를 상속받는 것인가 근데Shape를 기본클래스로 만들어지지조차않던데 뭔개소릴까
애시당초 교수가 원하는게 상속과 가상함수를 억지로 쓰게 만들려고 귀찮게 클래스 ball에다가 단순 정보만 저장해서쓰라는건가
아니면 ball.draw(); 이런 클래스의 맴버함수를 온드로 에서 그림그리게 작동시키게 만드는건가
혹시 뭐가 맞는지 알려주실수있는 형님없나요
문제낸교수가알것같은질문이내요
ball.draw(); 를 MFC 기반 컨테이너 위에서 돌아주면 될듯.
MFC 가 게임 구현체랑 주고받을만한 정보는 드로잉 관련 DC, 타이머 정보 정도임. 공마다 자신이 timeGetTime 등으로 현재시간을 부른다면 매번 기준시간이 달라 동기화가 깨질수 밖에 없음.
ball 객체는 수동적인게 정상이야. 그걸 자신이 DC를 받아 그리는 수준으로 할지, 컨테이너에게 공의 위치정보를 공유해주는 수준으로 할지가 선택이지. 종속성을 줄여 포팅을 유리하게 하는 입장에선 후자가 더 나아.
여기서는 가상함수/함수의 재정의를 활용하라고 하니까, 비단 공 뿐만 아니라 여러가지 드로어블 객체들을 같은방법으로 그려지게 하는 프로시져를 만들기 원하는것 같아.
일종의 scene manager 를 구성하길 원하는거지.
그렇다는건 DC나, 그걸 절차적으로 한 번 더 가공한 더블 버퍼에 그려지게 하는 구성이 합리적일 것 같아.
답변 감사합니다 형님 제 수준에 다소 이해하기어려운 말도있지만 계속 공부하면서 완성해봐야겠네요 ㅠㅠ
ㄴ프갤러답다 이런애들이 늘어야대는데 현실은 개헛소리하는 과제충들이 천지니 -