원저자 | Laurent Gomila 등 |
---|---|
개발자 | SFML 팀 |
발표일 | 2007년 8월 9일 |
안정화 버전 | 2.5.1
/ 2018년 10월 15일 |
저장소 | |
프로그래밍 언어 | C++ |
운영 체제 | 리눅스, macOS, 윈도우, FreeBSD |
종류 | API |
라이선스 | Zlib 라이선스[1][2] |
웹사이트 | www |
SFML(Simple and Fast Multimedia Library)은 컴퓨터의 다양한 멀티미디어 구성 요소에 단순한 API를 제공하기 위해 설계된 크로스 플랫폼 소프트웨어 개발 라이브러리이다. C++로 작성되어 있으며 C, 크리스탈, D, 유포리아, Go, 자바, Julia, .NET, 님, OCaml, 파이썬, 루비, Rust용 바인딩이 제공된다.[3] 실험적인 모바일 포트들은 SFML 2.2의 출시와 함께 안드로이드, iOS용으로 이용 가능하게 되었다.[4]
SFML은 창에 대한 만들기 및 입력, 그리고 OpenGL 컨텍스트의 만들기 및 관리를 관리한다. 프리타입을 이용한 텍스트 렌더링, OpenAL을 사용하는 오디오 모듈, 기본적인 전송 제어 프로토콜(TCP)과 사용자 데이터그램 프로토콜(UDP) 통신을 위한 네트워크 모듈을 포함하여 2차원 컴퓨터 그래픽스의 단순한 하드웨어 가속을 위한 그래픽 모듈도 제공한다.
SFML은 zlib/png 라이선스 조항으로 제공되는 자유-오픈 소스 소프트웨어이다. 윈도우, 리눅스, macOS, FreeBSD에서 이용할 수 있다.[5][6] 최초 버전 1.0은 2007년 8월 9일 출시되었으며 최신 버전 v2.5.0은 2018년 5월 9일 출시되었다.
SFML은 다양한 모듈로 구성되어 있다:
SFML은 C++로 작성되어 있으며 C++ 인터페이스를 제공한다. 다른 프로그래밍 언어로 SFML을 사용할 수 있게 해주는 여러 언어 바인딩이 존재한다.[3]
이 표는 2017년 기준으로 SFML을 위해 지원되는 바인딩을 나열한다.
이름 | 언어 | 지원 버전 |
---|---|---|
CSFML1 | C | 2.3 |
SFML.Net1 | .NET | 2.2 |
CrSFML | Crystal | 2.4.1 |
DerelictSFML2 | D | 2.3 |
DSFML | D | 2.1 |
EuSFML2 | Euphoria | 2.3.2 |
csfml-fpc | 프리 파스칼 | 2.4.0 |
GoSFML2 | Go | 2.2 |
Hackage | 하스켈 | 2.3.2 |
JSFML | 자바 | 2.2 |
SFML.jl | Julia | 2.2 |
nim-csfml | 님 | 2.3 |
Ocsfml | OCaml | 2.3 |
OCaml-SFML | OCaml | 2.0 |
PasSFML | 파스칼 | 2.3 |
pySFML | 파이썬 | 2.3.2 |
rbSFML | 루비 | 2.3.2 |
rust-sfml | 러스트 | 2.3 |
1 공식 바인딩