분류
SFML
| |
개발
| Laurent Gomila
|
플랫폼
| |
장르
| 멀티미디어 API
|
라이센스
| 2.0 zlib/png license
|
웹사이트
| |
1. 개요
2. 상세
SFML의 장점은 빠르고 사용하기 쉽고 객체지향적이라는 것에 있다. SDL이 C언어를 바탕으로 만들어져 객체지향적인 고려가 되어있지 않은데 비해, 처음부터 객체지향적인 개발을 염두에 두고 만든 API라서 현대의 다른 객체지향 언어(C#, JAVA)에서도 대응하기가 쉽다. 또한 인터페이스가 직관적이고 객체지향에 익숙해있다면 라이브러리를 사용하는데 어려움이 적다. 다시말해 편하고 쉽다. 그래픽 API 중 쉽다고 소문난 SDL보다 더 쉽다. 사용편의성만 치면 과거 볼랜드사에서 개발한 winbgi와 맞먹을 정도다. 그런데 이건 그래픽 뿐만 아니라 사운드, 입출력, 네트워크 라이브러리까지 된다. 그러면서도 빠르기까지 하다..
3. 주의점
4. 장점
- 크로스 플랫폼 라이브러리
2018년 기준 윈도우. 리눅스, 맥OS, 안드로이드, IOS를 지원한다.
- 다양한 언어 지원
SFML은 C++ 위주로 개발되었지만 다른 언어로도 바인딩 되어있다. 현재 지원하는 언어는 여기서 볼 수 있다. 대부분 최신 버전을 빠르게 따라 가고 있지만 그래도 역시 C++이 가장 빠르다.
5. 단점
장점도 많지만, 단점도 꽤 많다. 우선 마이너하다. SDL은 개발된지 꽤 된 물건이라서 많이 사용되어왔고 상용 프로그램에서도 널리 사용되고 있다.[1] 반면에 SFML은 그럭저럭 쓸만하다고 평가받는 1.6 버전이 나온게 2010년. 관록의 차이는 관련 커뮤니티의 규모, 관련 개발 도서, 레퍼런스, 소스 등등의 차이로 나타나서 개발에 어려움을 겪게 한다. 일례로 SDL은 관련 서적이 10종 이상 출간되었으나 SFML은 첫 개발 도서인 <SFML Game Development>가 2013년 6월 24일 출간되었다.
그리고 SDL 보다 국내 자료가 부족하다, 아니 아예 없는 수준이다. 국내에 출간된 SFML 관련 교재는 현재 딱 한 권 뿐이며, 그나마도 초급자용 맛보기 수준이다.[2] 외국에서도 공식 홈페이지 외에는 활발한 편인 사이트가 없어서 공식 홈페이지의 Tutorial이나 Open-sourced game을 뜯어서 소스를 살펴보고 공부하는 것 외에는 방법이 거의 없다. 그래도 홈페이지에 강좌가 꽤 자세하게 나와있는 편이므로 영어를 조금 할 줄 안다면 이곳에서 공부를 하자.
SFML의 미래는 아직은 불투명하지만, 장기적으로 SDL의 위치를 위협할 수 있을거라 전망된다. 일단 객체지향 라이브러리인 점이 개발에 굉장한 메리트를 갖고 있기 때문에 이거 하나만으로 SFML을 쓸 이유는 충분하다.
그리고 SDL 보다 국내 자료가 부족하다, 아니 아예 없는 수준이다. 국내에 출간된 SFML 관련 교재는 현재 딱 한 권 뿐이며, 그나마도 초급자용 맛보기 수준이다.[2] 외국에서도 공식 홈페이지 외에는 활발한 편인 사이트가 없어서 공식 홈페이지의 Tutorial이나 Open-sourced game을 뜯어서 소스를 살펴보고 공부하는 것 외에는 방법이 거의 없다. 그래도 홈페이지에 강좌가 꽤 자세하게 나와있는 편이므로 영어를 조금 할 줄 안다면 이곳에서 공부를 하자.
SFML의 미래는 아직은 불투명하지만, 장기적으로 SDL의 위치를 위협할 수 있을거라 전망된다. 일단 객체지향 라이브러리인 점이 개발에 굉장한 메리트를 갖고 있기 때문에 이거 하나만으로 SFML을 쓸 이유는 충분하다.
6. 설치법
공식 홈페이지의 튜토리얼 페이지의 Getting started 부분에 SFML이 지원하는 운영체체들의 설치 방법이 나와있다.