sfml 튜토리얼
sfml 시작하기
수색…
비고
SFML은 멀티미디어입니다.
SFML은 PC의 다양한 구성 요소에 간단한 인터페이스를 제공하여 게임 및 멀티미디어 응용 프로그램의 개발을 용이하게합니다. 그것은 시스템, 창, 그래픽, 오디오 및 네트워크의 5 개 모듈로 구성됩니다.
튜토리얼 및 API 문서 에서 기능을 자세히 살펴보십시오.
SFML은 멀티 플랫폼입니다.
SFML을 사용하면 응용 프로그램을 Windows, Linux, Mac OS X 및 곧 Android 및 iOS와 같은 가장 일반적인 운영 체제에서 즉시 컴파일하여 실행할 수 있습니다.
좋아하는 OS 용 사전 컴파일 된 SDK는 다운로드 페이지 에서 사용할 수 있습니다.
SFML은 다국어입니다.
SFML에는 C 및 .Net 언어에 대한 공식 바인딩이 있습니다. 또한 활발한 커뮤니티 덕분에 Java, Ruby, Python, Go 등과 같은 다른 많은 언어로도 사용할 수 있습니다.
바인딩 페이지 에서 해당 항목에 대해 자세히 알아보십시오.
버전
번역 | 출시일 |
---|---|
1.0 | 2007-07-01 |
1.1 | 2007-09-18 |
1.2 | 2008-07-16 |
1.3 | 2008-06-22 |
1.4 | 2009-01-07 |
1.5 | 2009-06-04 |
1.6 | 2010-04-06 |
2.0 | 2013-04-29 |
2.1 | 2013-07-27 |
2.2 | 2014-12-17 |
2.3 | 2015-05-09 |
2.3.1 | 2015-07-11 |
2.3.2 | 2015-10-12 |
2.4.0 | 2016-08-10 |
2.4.1 | 2016-11-04 |
2.4.2 | 2017-02-08 |
설치 또는 설정
- 쉽게 액세스 할 수있는 컴퓨터 어디서나 저장할 수 있습니다.
- Codeblocks를 엽니 다.
- 프로젝트 -> 빌드 옵션 -> 링커 설정 탭으로 이동 하십시오.
- 추가 버튼을 클릭하고 SFML의 bin 폴더로 이동하여 거기에있는 모든 파일을 선택하십시오.
- 이제 검색 디렉토리 탭으로 이동하여 SFML의 'include'폴더를 추가하십시오.
- 같은 탭에서 하위 탭 링커 설정을 클릭하고 'bin'폴더를 추가하십시오.
기본 SFML 프로그램
모든 것이 제대로 설정 되었다면 다음 코드 조각은 "SFML이 작동합니다!"라는 제목의 창이 나타납니다. 녹색 원으로 표시 :
#include <SFML/Graphics.hpp>
int main()
{
sf::RenderWindow window(sf::VideoMode(200, 200), "SFML works!");
sf::CircleShape shape(100.f);
shape.setFillColor(sf::Color::Green);
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
}
window.clear();
window.draw(shape);
window.display();
}
return 0;
}
설치 - Linux
Linux에서 SFML을 설치하는 방법에는 여러 가지가 있습니다.
- 배포판의 패키지 저장소에서 직접 설치하십시오.
- 소스 코드를 가져 와서 빌드하고 설치하십시오.
- 미리 컴파일 된 SDK를 다운로드하고 파일을 수동으로 복사하십시오.
옵션 1이 선호됩니다. 설치하려는 SFML의 버전이 공식 저장소에서 사용 가능한 경우 패키지 관리자를 사용하여 설치하십시오. 예를 들어 데비안에서는 다음과 같이 할 수 있습니다 :
sudo apt-get install libsfml-dev
옵션 2는 더 많은 작업이 필요합니다 : 개발 헤더를 포함하여 모든 SFML의 의존성을 확인하고, CMake가 설치되어 있는지 확인하고, 일부 명령을 수동으로 실행해야합니다. 이렇게하면 시스템에 맞는 패키지가 만들어집니다. 이런 식으로 가고 싶다면 직접 SFML을 만드는 방법에 대한 전용 자습서가 있습니다 .
마지막으로 옵션 3은 SFML을 공식 패키지로 사용할 수없는 경우 빠른 설치를위한 좋은 선택입니다. 다운로드 페이지에서 SDK를 다운로드하고 압축을 풀고 개인 폴더의 별도 경로 (예 : / home / me / sfml) 또는 표준 경로 (/ usr / local)를 원하는 위치에 복사합니다.
이전 버전의 SFML이 이미 설치되어있는 경우 새로운 버전과 충돌하지 않도록하십시오!
설치 - Windows
SFML을 Windows에 설치하는 가장 일반적인 방법은 공식 SDK 를 다운로드하는 것입니다.
그런 다음 아카이브 압축을 풀고 선택한 환경에서 아카이브를 사용할 수 있습니다.
vcpkg
비주얼 스튜디오 2017 이상을 사용하는 경우 여전히 개발 단계에 있지만 Visual Studio와 통합되는 vcpkg을 통해 SFML 을 설치할 수도 있으므로 설치 프로세스가 크게 단순 해집니다.
vcpkg install sfml
Insallation - macOS
먼저 SFML SDK를 다운로드해야합니다. SFML 응용 프로그램 개발을 시작하려면 다음 항목을 설치해야합니다.
헤더 파일 및 라이브러리
SFML은 dylib 또는 프레임 워크로 사용할 수 있습니다. 둘 다 동일한 시스템에 동시에 설치할 수 있지만 한 유형의 바이너리 만 필요합니다. 프레임 워크를 사용하는 것이 좋습니다.
프레임 워크
- Frameworks의 내용을 / Library / Frameworks에 복사합니다.
떡방울
- lib의 내용을 / usr / local / lib에 복사하고 include의 내용을 / usr / local / include에 복사하십시오.
SFML 의존성
SFML은 Mac OS X의 몇 가지 외부 라이브러리에 의존합니다. extlib의 내용을 / Library / Frameworks에 복사하십시오.
Xcode 템플릿
Xcode를 사용하는 경우 템플릿을 설치하는 것이 좋습니다. SFML 디렉토리를 템플릿에서 / Library / Developer / Xcode / Templates로 복사합니다 (아직 존재하지 않으면 폴더를 만듭니다).
SFML 창에서의 Hello World
작은 창을 열고 창에 "Hello World"라고 적으십시오.
#include <SFML\Graphics.hpp>
#include <cassert>
int main() {
sf::RenderWindow sfmlWin(sf::VideoMode(600, 360), "Hello World SFML Window");
sf::Font font;
//You need to pass the font file location
if (!font.loadFromFile(/*
Put the filename that identify the font file you want to load*/"myfont.ttf")) {
return -1;
}
sf::Text message("Hello, World !", font);
while (sfmlWin.isOpen()) {
sf::Event e;
while (sfmlWin.pollEvent(e)) {
switch (e.type) {
case sf::Event::EventType::Closed:
sfmlWin.close();
break;
}
}
sfmlWin.clear();
sfmlWin.draw(message);
sfmlWin.display();
}
return 0;
}
우리가 한 일을 설명합시다.
먼저 sf::Font
객체를 만들었습니다. 텍스트를 표시하는 데 사용할 글꼴 데이터를 저장하려면이 객체가 필요합니다. 그런 다음 메모리에 글꼴을로드하는 데 사용되는 loadFromFile
메서드를 호출했습니다. SFML은 시스템 글꼴을 모르기 때문에 글꼴 이름이 아닌 파일 이름을 제공해야합니다.
그런 다음 sf::Text
객체를 만들었습니다. 우리는 다음을 취하는 3 개의 파라미터 생성자를 호출한다.
- 표시 할 문자열
- 오브젝트가 사용하는 폰트
- 우리가 여기에 전달하지 않은 픽셀 단위의 문자 크기이므로 il은 기본값으로 설정됩니다.
sf::Text
객체가 준비 sfmlWin
이전에 만든 sfmlWin
렌더 윈도우 객체에서 draw 메서드를 호출하여 주 sfml 루프에 그려야합니다.