SFML היא ספרייה ליצירת משחקי וידאו, שנכתבה בשפת התכנות מונחית האובייקטים C ++, והיא מתמקדת בפיתוח של משחקי וידאו דו-ממדיים, היא תומכת בפורמטי התמונה, המקורות והאודיו הנפוצים ביותר כיום. SFML הוא מורכב מחמשת המודולים הבאים.
- מערכת: זהו מודול בסיס SFML והיא מורכבת ממעמדות שונים המאפשרים לנו להשתמש בשרשורים, ניהול זמן, ומציעה לנו גם סדרה של תבניות לניהול וקטורים, שרשראות, זרמים, בין היתר.
- חלון: מודול זה מטפל לנהל את חלון היישום שלנו, הכוללת אירועי חלון (סגירה, מקסום, שינוי גודל בין היתר), אירועי קלט (פעולות מקלדת ועכבר וכו ') ומאפשר גם ליצור הקשר OpenGL שבו אתה יכול לצייר ישירות מ OpenGL.
- גרָפִיקָה: זה מאפשר לנו לצייר על החלון שלנו, אך יחד עם זאת הוא מספק לנו סדרה של שיעורים לניהול תמונות, טקסטורות, צבעים, ספריטים, טקסטים ודמויות דו-ממדיות כמו עיגולים, מלבנים וצורות קמורות.
- אודיו: SFML יש לו תמיכה בסאונד תלת ממדי, באותה צורה שהמודול הזה מספק לנו סדרת שיעורים לעבודה עם שמע.
- רשת: ל- SFML סדרת שיעורים לטיפול ב- http, ftp, packet, socket, בין היתר, שיעורים אלה מאפשרים לנו ליצור משחקי רשת.
כדי התקן SFML במנג'רו עלינו לבצע את השלבים הבאים, שכנראה ניתן להתאים לכל הפצה בקלות.
התקן כלים
sudo pacman -S gcc
באובונטו יש צורך להתקין יסודות לבנות
sudo apt-get install build-essential
sudo pacman -S sfml
במקרה של אובונטו הם יכולים להשתמש ב- sfml ppa
sudo add-apt-repository ppa:sonkun/sfml-development #ppa:sonkun/sfml-stable
sudo apt-get update
sudo apt-get install libsfml-dev
ולבסוף חסימת קוד האידי:
sudo pacman -S codeblocks
אובונטו ונגזרות:
sudo apt-get install codeblocks
הגדרת חסימות קוד
יש ליצור פרויקט בקובץ התפריט> חדש> פרויקט> יישום קונסולה ונבחר c ++.
הוספת sfml עוברת לפרויקט התפריט> אפשרות לבנות
ובחלון זה לשונית ספריות החיפוש ואז להוסיף והספרייה נבחרה: / usr / share / SFML
ואז בכרטיסיית הגדרות המקשר ונוסף הדברים הבאים:
בקובץ main.cpp שמנו את הקוד הבא:
#include <SFML/Graphics.hpp>
int main()
{
sf::RenderWindow ventana(sf::VideoMode(400, 400), "Funciona!");
sf::CircleShape circulo(400);
circulo.setFillColor(sf::Color::Red);
while (ventana.isOpen())
{
sf::Event event;
while (ventana.pollEvent(event))
{
if (event.type == sf::Event::Closed)
ventana.close();
}
ventana.clear();
ventana.draw(circulo);
ventana.display();
}
return 0;
}
אם זה עובד יהיה להם חלון כזה:
שמור קוד זה בו נשתמש בהמשך :), עד לפעם הבאה
תודה על המידע המלא מאוד על טופס ההתקנה. בברכה.
עם vim מוגדר היטב, תכנות עם sfml כמעט זהה לביצוע בחלונות ועם סטודיו חזותי, ההשלמה האוטומטית מתפקדת לחלוטין.