심플하고 빠른 멀티미디어 라이브러리
Simple and Fast Multimedia Library![]() SFML 로고 | |
원저작자 | 로랑 고밀라 외 |
---|---|
개발자 | SFML 팀 |
초기 릴리즈 | 2007년 8월 9일, | 전(
안정된 릴리스 | 2.5.1 / 2018년 10월 , 전( |
저장소 | |
기입처 | C++ |
운영 체제 | Linux, macOS, Windows, FreeBSD |
유형 | API |
면허증. | zlib 라이선스[1][2] |
웹 사이트 | www |
SFML(Simple and Fast Multimedia Library)은 컴퓨터의 다양한 멀티미디어 컴포넌트에 심플한 애플리케이션 프로그래밍 인터페이스(API)를 제공하도록 설계된 크로스 플랫폼 소프트웨어 개발 라이브러리입니다.이것은 Ada, C, Crystal, D, Euphoria, Go, Java, Julia 등에 사용 가능한 바인딩과 함께 C++로 쓰여져 있습니다.NET, Nim, OCaml, Python, Ruby 및 Rust.[3]실험적인 모바일 포트는 SFML 2.2 [4]출시와 함께 Android 및 iOS용으로 제공되었습니다.
SFML은 창 작성 및 입력, OpenGL 컨텍스트 작성 및 관리를 처리합니다.또한 FreeType을 사용한 텍스트 렌더링, OpenAL을 사용하는 오디오 모듈 및 기본 Transmission Control Protocol(TCP) 및 UDP(User Datagram Protocol) 통신을 위한 네트워킹 모듈을 포함한 2D 컴퓨터 그래픽의 간단한 하드웨어 가속을 위한 그래픽 모듈을 제공합니다.
SFML은 zlib/png 라이센스 조건에 따라 제공되는 무료 오픈 소스 소프트웨어입니다.Linux, macOS,[5][6] Windows 및 FreeBSD에서 사용할 수 있습니다.첫 번째 버전 v1.0은 2007년 8월 9일에 출시되었으며 최신 버전 v2.5.1은 2018년 10월 15일에 출시되었습니다.
소프트웨어 아키텍처
모듈
SFML은 다양한 모듈로 구성됩니다.
- 시스템 – 벡터 및 Unicode 문자열 클래스, 휴대용 스레드 및 타이머 기능
- 창 – 조이스틱 지원, OpenGL 컨텍스트 관리 등 창 및 입력 디바이스 관리
- 그래픽스 – 스프라이트, 폴리곤, 텍스트 렌더링 등의 2D 그래픽스 하드웨어 액셀러레이션
- 오디오 – 하드웨어에 의한 공간 절약 오디오 재생 및 녹음
- 네트워크 – TCP 및 UDP 네트워크 소켓, 데이터 캡슐화 기능, HTTP 및 FTP 클래스
그래픽스 모듈은 SFML의 주요 기능 중 하나이지만 OpenGL에서 직접 프로그래밍하는 환경 구축에만 관심이 있는 개발자는 그래픽스 모듈을 사용하지 않고 윈도 모듈을 사용하여 직접 프로그래밍할 수 있습니다.마찬가지로 모든 모듈에서 사용되는 시스템 모듈을 제외하고 다른 모듈도 서로 독립적으로 사용할 수 있습니다.
언어 바인딩
SFML은 C++로 기술되어 C++ 인터페이스를 제공합니다(공식 CSFML 바인딩을 통해 C 인터페이스도 제공합니다).다른 프로그래밍 [3]언어로 SFML을 사용할 수 있도록 하는 여러 언어 바인딩이 있습니다.
다음 표에 2017년 현재[update] SFML에서 지원되는 바인딩을 나타냅니다.
이름. | 언어 | 지원되는 버전 |
---|---|---|
CSFML1 | C | 2.5 |
SFML.Net1 | .그물 | 2.5 |
CrSFML | 크리스탈 | 2.5 |
유기SFML2 | D | 2.4 |
DSFML | D | 2.1 |
EuSFML2 | 행복감 | 2.4 |
csfml-fpc | 프리 파스칼 | 2.4.0 |
GoSFML2 | 가세요 | 2.0 |
해킹 | 하스켈 | 2.3.2 |
JSFML | 자바 | 2.2 |
CSFML.jl | 줄리아. | 2.5.1 |
nim-csfml | 님 | 2.3 |
Ocsfml | OCaml | 2.3 |
OCaml-SFML | OCaml | 2.0 |
PasSFML | 파스칼 | 2.4 |
pySFML | 파이썬 | 2.3.2 |
RBSFML | 루비 | 2.3.2 |
녹슬지 않는 | 녹 | 2.4 |
지그재그ml | 지그 | 2.3.2 |
1 공식 바인딩
비공식 애드온
SFML은 고급 소프트웨어를 구축할 수 있는 기본 기능을 제공합니다.그래픽 사용자 인터페이스(GUI),[7][8] 2D 조명,[9] 파티클 시스템 [10]및 애니메이션, 비디오[11] 재생 및 타일 [12]맵에 대한 추가 지원을 제공하는 애드온 라이브러리가 있습니다.
접수 및 도입
SFML은 주로 취미 게임 개발자, 소규모 독립 비디오 게임 개발자, 최대 여러 개발자로 구성된 스타트업 회사가 사용합니다.SFML은 많은 양의 코드를 작성할 필요가 없기 때문에 많은 Ludum Dare 참가자들에게도 [13]채택되고 있습니다.Simple Direct Media Layer(SDL)나 Allegro 등의 오래된 라이브러리에 비해 SFML 사용자 베이스는 비교적 작지만 증가하고 있습니다.2021년 2월[update] 8일 현재, GitHub 소프트웨어 저장소는 6549명의 사용자가 [14]스타를 차지하고 있다.
SFML은 대학에서의 수업과 [15][16][17][18][19][20]과학 프로젝트에서 사용되어 왔다.
비디오 게임 사용 예시
- 아톰 좀비 스마셔 [21]실시간 전략 게임입니다.
- 어웨이 팀,[22] 시뮬레이션 인터랙티브 픽션 게임.
- 체스터,[23] 퍼즐 게임.
- 코스모스크롤,[24] 무료 오픈소스 우주 기반 슈팅 게임이야
- 크레아,[25] 변조 가능한 2D 샌드박스 게임.
- 마법의 숲[26]
- Extreme Tux Racer,[27] 턱스(버전 0.7 이후 SFML 사용)를 특징으로 하는 무료 오픈 소스 북극 레이싱 게임입니다.
- HolySpirit, [28]3D Isometric 해킹 및 슬래시 게임.
- Hope,[29] point, click adventure game (Myst 등)
- Android용 2D 플랫폼 게임인 I Can Transform.[30]
- KeeperRL,[31] 악성코드와 RPG 요소를 가진 던전 시뮬레이터.
- Kroniax,[32] 미니멀리즘 사이드 스크롤러, Android용 최초의 SFML 게임.
- 한계 이론,[33] 무한, 절차적 우주 게임.
- M.A.R.S.,[34] 멀티플레이어 슈팅 게임.
- 문맨,[35] 픽셀 아트 탐험 샌드박스 게임.
- 오픈 헥사곤,[36] 무료 오픈 소스 슈퍼 헥사곤 클론.
- 오비드 [37]올빼미 퍼즐 플랫폼 게임
- 개척자 [38]여러분, RPG [26]요소를 이용한 턴 기반 탐험 게임입니다.
- 사후에, 누군가는 [39]죽어야 한다, 이야기 모험 게임.
- Project Black Sun,[40] 복고풍 2D 사이드 스크롤 비디오 게임.
- TacWars,[41] 난쟁이와 고블린을 겨루는 퍼즐 RPG.
- 듀크,[42] 액션 플랫폼 게임.
- 아이작의 [43]슈팅, 수직 슈팅 게임.
- 바간테,[44] 액션 RPG 플랫폼 게임.
- Zloxx,[45] 2D 액션 플랫폼.
SFML을 사용한 게임의 추가 예는 IndieDB에 [46]기재되어 있습니다.
기타 소프트웨어 사용
- Aquila,[47] C++용 오픈소스 디지털 신호 처리(DSP) 라이브러리.
- Otter는 [48]SFML 2를 기반으로 구축된 2D C# 프레임워크입니다.
- GDevelop,[49] 오픈 소스 게임 제작 소프트웨어.
- 상세한 풍경과 건축을 시각화하는 도구인 몰입 엔진.[50]
- Android 및 PC용 엔진,[51] 2D C++ 게임 엔진입니다.
「 」를 참조해 주세요.
- 알레그로
- 클랜립
- 크로스 플랫폼 지원 미들웨어
- GLFW
- 오픈GL
- OpenGL 유틸리티 툴킷(GLUT)
- 레이리브
- 심플 다이렉트 미디어 레이어(SDL)
레퍼런스
- ^ "License".
- ^ "GitHub - SFML/SFML: Simple and Fast Multimedia Library". GitHub. 14 December 2021.
- ^ a b "Bindings (SFML / Download)". SFML. Retrieved 13 November 2014.
- ^ "Changelog (SFML / Development)". Retrieved 18 December 2014.
- ^ Gomila, Laurent. "SFML 2.1 (SFML / Download)". SFML. Retrieved 9 August 2014.
- ^ "SFML/Config.cmake at f24ca9a84012531cf886f72354c1f88341dd7ac7 · SFML/SFML". GitHub. Retrieved 13 November 2014.
- ^ "SFGUI". SFGUI. Retrieved 13 November 2014.
- ^ "TGUI". TGUI. Retrieved 13 November 2014.
- ^ "hovatterz/light". GitHub. Retrieved 13 November 2014.
- ^ "Bromeon :: Thor". Jan Haller. Retrieved 13 November 2014.
- ^ "sfeMovie". sfeMovie. Retrieved 13 November 2014.
- ^ "Tiled SFML Map Loader SourceForge.net". SourceForge. Retrieved 13 November 2014.
- ^ "sfml Ludum Dare". Ludum Dare. Retrieved 13 November 2014.
- ^ "SFML/SFML". GitHub. 10 May 2018. Retrieved 10 May 2018.
- ^ "SFML Setup". University of Mary Washington. Retrieved 13 November 2014.
- ^ "Rensselaer Center for Open Source Software". Rensselaer Polytechnic Institute. Retrieved 13 November 2014.
- ^ "CSCI 261 - Programming Concepts". Colorado School of Mines. Retrieved 13 November 2014.
- ^ "COMPSCI 464: Computer Graphics". Boise State University. Retrieved 13 November 2014.
- ^ "Engaging Computing Group Comp4spr14 / PS5b". University of Massachusetts Lowell. Retrieved 13 November 2014.
- ^ "Tianyu Cheng's Homepage". University of Texas at Austin. Retrieved 13 November 2014.
- ^ Chung, Brendon (20 August 2011). "Atom Zombie Tech « Blendo news". Blendo Games. Retrieved 9 August 2014.
- ^ "The Away Team - Sci-fi Interactive Fiction". 7 July 2016. Retrieved 1 April 2020.
- ^ "Chesster [SFML Puzzle Game]". 18 October 2011. Retrieved 13 November 2014.
- ^ "cosmoscroll - SFML-based shoot'em up game. - Github". GitHub. Retrieved 19 July 2015.
- ^ "Development Update - Lighting and Saving Siege Games". Siege Games. 3 April 2012. Retrieved 13 November 2014.
- ^ a b "Pirate's Treasure & Enchanted Forest". Retrieved 13 November 2014.
- ^ "NEWS for Extreme Tux Racer". Revision 698. 27 August 2017. Retrieved 12 September 2017.
- ^ "HolySpirit Windows game Desura". Desura. 13 November 2014. Retrieved 19 July 2015.
- ^ "FAQ - Hope Dev Blog". 2015-08-11. Retrieved 11 August 2015.
- ^ "I Can Transform". Retrieved 9 November 2018.
- ^ "miki151/keeperrl". GitHub. Retrieved 11 January 2015.
- ^ "Kroniax available in the Play Store!". Retrieved 15 November 2014.
- ^ "Limit Theory Forums • View topic - SFML::Texturing". Retrieved 13 November 2014.
- ^ "M.A.R.S. - a ridiculous shooter - M.A.R.S. 0.7.2 Bugfix Release". M.A.R.S. 26 April 2011. Retrieved 13 November 2014.
- ^ "SFML 2.0 BP I make video games". Ben Porter. Retrieved 13 November 2014.
- ^ "Open Hexagon - challenging fast paced game". Retrieved 13 November 2014.
- ^ "LZR Ovid the Owl". Leeran Z. Raphaely. Retrieved 13 November 2014.
- ^ "Eigen's development notes". Eigen Lenk. Retrieved 13 November 2014.
- ^ "Tools and resources for making an indie game Koobazaur's Domain". Jakub Kasztalski. 2013-04-20. Retrieved 13 November 2014.
- ^ "Version 1.0.2 is available of PC and Linux news - Project Black Sun Game - Indie DB". Indie DB. 20 December 2011. Retrieved 13 November 2014.
- ^ "TacWars puzzle RPG home page". Facebook.
- ^ "The Duke". 8 June 2009. Retrieved 13 November 2014.
- ^ "Philippe Offermann » The Shooting Of Isaac". Philippe Offerman. Retrieved 13 November 2014.
- ^ "Vagante Tools of the Trade". Vagante Game. 3 December 2013. Archived from the original on 13 November 2014. Retrieved 13 November 2014.
- ^ "Zloxx II - An action Jump'n'Run". Retrieved 15 November 2014.
- ^ sfml/module
- ^ "Download Aquila - a C++ library for digital signal processing". Zbigniew Siciarz. Retrieved 13 November 2014.
- ^ "Otter - A 2D C# Framework built on SFML 2". Kyle Pulver. Retrieved 13 November 2014.
- ^ "Florian Rival's personal website". Florian Rival. Retrieved 14 November 2014.
- ^ "Good news for ImmersionEngine". Facebook. Retrieved 12 February 2015.
- ^ "is::Engine - 2D C++ game engine for Android and PC". Is Daouda. Retrieved 19 February 2020.
추가 정보
- Jan Haller, Henryk Vogelius Hansson, Artur Moreira: SFML 게임 개발, Packt 퍼블리싱, ISBN 1-849696-84-5
- http://www.lifehacker.com.au/2013/02/xna-is-dead-3-alternatives-that-let-you-use-your-c-and-net-skills/
- https://www.binpress.com/tutorial/creating-a-city-building-game-with-sfml/137
- http://www.gamefromscratch.com/page/Game-From-Scratch-CPP-Edition-The-Introduction.aspx
외부 링크