프로젝트 소개
SadConsole은 C# 기반의 .NET 크로스 플랫폼 터미널, ASCII, 콘솔 및 게임 엔진입니다. 전통적인 콘솔 프로그램을 시뮬레이션하며 개발자가 현대 플랫폼에서 ASCII 스타일의 게임을 만들 수 있게 해줍니다. 핵심적으로는 타일 기반 게임 엔진으로, 전통적인 콘솔 애플리케이션과 개념적으로 유사한 객체 모델을 가지고 있습니다.
라이브러리 자체는 일반적이며 렌더링을 제공하지 않습니다. 대신 호스트 라이브러리가 렌더러를 추가합니다. 제공되는 두 호스트는 SadConsole.Host.MonoGame과 SadConsole.Host.SFML입니다. 호스트를 사용할 때는 기본 SadConsole 패키지를 직접 참조할 필요가 없습니다. MonoGame의 경우 MonoGame.Framework.DesktopGL과 같은 추가 렌더링 패키지가 필요합니다.
SadConsole은 현재 .NET 8, .NET 9 및 .NET 10을 대상으로 합니다.
주요 기능은 다음과 같습니다:
- 모든 크기의 콘솔을 원하는 수만큼 표시합니다.
- 그래픽 타일 기반 이미지를 사용하여 256자 이상을 지원하는 ASCII 문자 폰트를 구축합니다.
- 폰트는 ASCII 코드에 연결된 스프라이트 시트 타일셋입니다. 전체 그래픽 타일을 사용할 수 있습니다.
- 여러 폰트 파일을 지원하지만 각 콘솔은 단일 폰트로 제한됩니다.
- 목록 상자, 버튼, 텍스트 필드와 같은 대화형 컨트롤을 위한 완전한 GUI 시스템.
- DOS ANSI 파일, TheDraw 텍스트 폰트, RexPaint 및 Playscii용 임포터.
- 애니메이션 콘솔과 명령을 연결하는 명령 시스템.
- 인쇄 중 색상 및 효과를 위한 문자열 인코딩 시스템.
- 수천 개의 이동 가능한 객체를 그리기 위한 엔티티 지원.
- 이미지를 텍스트 블록으로 변환.
- 키보드 및 마우스 지원.
- 고도로 사용자 정의 가능한 프레임워크.
프로젝트에는 문자열 표시/파싱, GUI 라이브러리 및 스크롤 콘솔 예제가 포함되어 있습니다. NuGet에서 사용할 수 있으며 활발한 Discord 커뮤니티가 있습니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.