2015-01-08 9 views
1

레트로 스타일의 2D 게임 엔진에 대한 대부분의 로직을 연구했지만 출력 결과를 표시하는 방법을 모르겠습니다.게임 엔진의 출력을 표시하는 방법은 무엇입니까?

기본적으로 대부분의 시스템 (스프라이트, 팔레트 등 사용)과 유사한 로직을 사용하여 저해상도 비트 맵을 생성합니다. DirectX 나 그와 비슷한 것을 배웠으므로 출력을 표시하고 정기적으로 업데이트해야합니까 (VSync에 연결되어 있습니까?). 나는 D와 함께 일하고 있지만, C 나 C++을 알고 있다면 괜찮습니다.

편집 : 좋아, SDL과 함께 작동하도록 다시 작성하고 있습니다. 출력 형식은 어떻게 작성해야합니까? 데이터가있는 배열 만들기?

+0

생성 된 비트 맵이 전체 화면을 캡처합니까? 일반 타이머에 표시하는 디스플레이 라이브러리를 사용할 수 있습니다. 내 simpledisplay.d에는이를 수행하는 기능이 있지만 어떻게 명확하지 않을 수 있습니다. –

+0

SFML, Allegro 또는 SDL을 살펴보고 그래픽을 표시하는 데 도움을 얻을 수 있습니다. – Canvas

답변

1

그냥 SDL, SFML 또는 Allegro와 같은 라이브러리를 검색하십시오. D를 사용해 본 적이 없지만 한 번 SDL과 함께 사용하는 사람에 대해 들었습니다.

편집 : D에 SDL2에

+0

정말, 정말 * 오래된 것입니다. 돌아 오는 길에서 D1 번. –

4

this 오픈 소스 게임을 확인하십시오. 그것은 크로스 플랫폼 게임을위한 사실상의 표준입니다 (현재 주로 Valve에 의해 개발되고 있습니다). 나중에 OpenGL 또는 D3D를 사용하려는 경우에도 기본으로 사용할 수 있습니다. OpenGL은 이며, D 커뮤니티에서 많이 사용되며 잘 지원됩니다.

실제로 비트 맵을 화면에 표시하려면 SDL 또는 OpenGL/D3D로 화면에 비트 맵을 복사하고 텍스쳐에 복사 한 다음 2 삼각형으로 표시해야합니다. 하지만 평범한 SDL만으로도 충분하다고 생각합니다.

This seems like what you need

D는 SDL, OpenGL에 바인딩, 다양한 SDL 확장 (포함 Derelict (@github) (how to use with DUB) 프로젝트를 가지고 (당신은하지만, 창/화면 크기에 맞게 비트 맵을 확장해야 할 수도 있습니다) SDL-TTF, SDL- 믹서, SDL- 이미지 등 - SDL 바인딩에 포함), FreeType (글꼴), Assimp (3D 모델 형식) 등이 있습니다. 바인딩은 원래의 C/C++ 라이브러리와 동일하게 디자인되었지만 순수 D 스타일 래퍼만큼 좋지 않을 수도 있지만 라이브러리에 대한 C/C++ 자습서가 계속 사용될 수 있음을 의미합니다.

또한 SDL/Derelict/GFM (GFM은 D 스타일 라이브러리)으로 게임을 만들기 위해 약간 tutorial을 만들었지 만 GFM은 현재 진행 중입니다. 자습서는 이미 약간일지도 모릅니다. 오래된. 반면에, 버려진 사람은 10 년 넘게 안정되어 유지되었습니다. (때문에 버려진의 디자인에 C++에 대한,하지만 D와 가능한)

편집 : 추가 더 많은 링크 EDIT2 : 실제로 출력

표시에 대한주의
관련 문제