Suggestion of a forum that knows SFML

In summary, the conversation discusses the SFML library and its use as a game development tool. The primary question is whether it is worth investing time to learn SFML, as technology and the industry are constantly changing. It is noted that the gaming industry is particularly fast-paced and staying in one technology for a long time may not be feasible. The conversation also touches on the speaker's personal experience switching from software and digital hardware design to analog and RF electronics design, as well as the challenges of learning new things as one gets older. Ultimately, it is suggested to invest in technologies that are currently being used and to be prepared to adapt to changes in the industry.
  • #1
yungman
5,718
241
Any suggestion of a forum that can answer question on SFML? The SFML community doesn't answer much question. I don't think it's a real forum, more like the staff answer very specific questions.

Thanks
 
Technology news on Phys.org
  • #3
As I dig deeper and deeper to SFML, it's a big program to learn with a lot of member function. here are a few questions I want to ask before I spend a lot of time in this. I don't want to spend a lot of time on something that will disappear in a few years.

1) What do you call SFML? a game development tool? Game engine?
2) What is the most popular tool for game development tool like SFML?
3) Will SFML be around for a long time so it worth the effort to learn?

Thanks
 
  • #4
yungman said:
As I dig deeper and deeper to SFML, it's a big program to learn with a lot of member function.
It's not a "program." The full name is Simple and Fast Multimedia Library.
yungman said:
1) What do you call SFML? a game development tool? Game engine?
A library that can be called from C, C#, Java, Haskell, Go, Pascal, Python, Ruby, Rust, and several other languages. Interestingly, they don't seem to have a binding for C++. The main use of SFML seems to be games, but that's just from the web pages I've found.
 
  • Like
Likes yungman
  • #5
yungman said:
3) Will SFML be around for a long time so it worth the effort to learn?
If anyone could answer such a question, they would be rich.

Now, the authors of SFML will certainly have a strong opinion, but they might be biased.But we can bookend it somewhat reliably.
It won't last as long as COBOL.
It will last longer than any JavaScript library you care to name (but then again, so will a mayfly).
 
  • Like
Likes yungman
  • #6
From my understanding, SFML is a collection of classes you call to do things like drawing, sound etc.

Put it in another way, who is the competitors of SFML? I know it's hard to say how long SFML will be around. Just want an educated guess. This is like investment, I want to invest in something that has a high chance to survive for a long time. Like I invested in learning C++ because I think it will be around for a long time.

thanks
 
  • #7
yungman said:
This is like investment, I want to invest in something that has a high chance to survive for a long time.
Invest in things that are being used right now. You're more concerned with having work today than you are about having work in two years, right? Two years from now everything will be different.

They may or may not become obsolete as the industry changes. You will have to adapt to those changes on-the-fly by, incorporating the learning of new technology while you work and in your free time.

The industry is defined by its penchant for never letting you rest on your laurels for any length of time.

If your goal is to work in the same technology for more than a couple of years, you should probably get out of the gaming industry and go into something a little less bleeding edge. Even the banking industry turns over its technology relatively often.
 
  • #8
DaveC426913 said:
Invest in things that are being used right now. You're more concerned with having work today than you are about having work in two years, right? Two years from now everything will be different.

They may or may not become obsolete as the industry changes. You will have to adapt to those changes on-the-fly by, incorporating the learning of new technology while you work and in your free time.

The industry is defined by its penchant for never letting you rest on your laurels for any length of time.

If your goal is to work in the same technology for more than a couple of years, you should probably get out of the gaming industry and go into something a little less bleeding edge. Even the banking industry turns over its technology relatively often.
That's what I am afraid of, and that's the reason I went totally away from software and even digital hardware design 40 years ago and switch to analog and RF electronics design all together. I was doing some programming at the time, then I realize it is not hard to get into the field. In the late 70s and early 80s when I started my career, programming and hardware were easier, a few months learning and you can design and write programs. BUT I could see it change very fast, so I asked myself, you want to go the easy route and have to keep learning as you get older, OR button down, really study hard on analog and RF electronics that takes a lot of knowledge, math to learn. But once you get into the field, things don't change much. It's a huge investment, but you literally pay ONCE and you are in. I chose analog and RF. And yes, the knowledge from 1982 is very much valid today as I got good pay contract job knocking on my door even in 2015 after I retired for 10 years!

See, when people are young, they likely don't have a family, the brain is young, it's so easy to learn new things. As people get older, get married, kids and the most important thing, the brain starts leaking and you don't learn nearly as fast as when you were young. I sure hate to be situation when I get old, lost the enthusiasm to learn, then things change everyday and having young kids nipping on my heel. That must be an awful feeling if you cannot afford to retire.

But anyway, I get your point, not the answer I want, but kind of what I expected already.

Thanks
 
  • Like
Likes Keith_McClary
  • #9
yungman said:
As people get older, get married, kids and the most important thing, the brain starts leaking and you don't learn nearly as fast as when you were young. I sure hate to be situation when I get old, lost the enthusiasm to learn, then things change everyday and having young kids nipping on my heel. That must be an awful feeling if you cannot afford to retire.
Preach, bro. :confused:
 
  • #10
It is just an intentionally simple cross platform library that offers setting up a window, handling input devices, rendering simple 2D graphics, and playing sounds. The appeal is that it is cross platform, and very easy to use.

The learning curve for the library is negligible compared to the learning curve of making a game from these basic building blocks. It is comparable to learning how to use a set of tools, like socket wrenches and screw drivers, compared to learning how to fix a car.

But I don't think it is something that would be commonly used for commercial games right now. More commonly, people will use a professional game engine, like Unity, or Unreal engine, which will be much more complicated to learn than SFML, but offers a lot more built in tools, like 3d graphics, VR, animation, physics, etc. They are sort of like IDE's for games.

Due to the sort of monopoly that Unity, and Unreal engine have on the game engine industry, it's a pretty safe bet that they'll be around for a long time. Although they will keep releasing new versions with more features. It would be similar to the situation with Microsoft Word, Windows, IOS, Photoshop, etc.

I still recommend to just start with SFML though. It's good practice for learning basic programming skills, and you can get started easily. Maybe start with something like pong.
 
  • Like
Likes yungman and Keith_McClary
  • #11
Jarvis323 said:
It is just an intentionally simple cross platform library that offers setting up a window, handling input devices, rendering simple 2D graphics, and playing sounds. The appeal is that it is cross platform, and very easy to use.

The learning curve for the library is negligible compared to the learning curve of making a game from these basic building blocks. It is comparable to learning how to use a set of tools, like socket wrenches and screw drivers, compared to learning how to fix a car.

But I don't think it is something that would be commonly used for commercial games right now. More commonly, people will use a professional game engine, like Unity, or Unreal engine, which will be much more complicated to learn than SFML, but offers a lot more built in tools, like 3d graphics, VR, animation, physics, etc. They are sort of like IDE's for games.

Due to the sort of monopoly that Unity, and Unreal engine have on the game engine industry, it's a pretty safe bet that they'll be around for a long time. Although they will keep releasing new versions with more features. It would be similar to the situation with Microsoft Word, Windows, IOS, Photoshop, etc.

I still recommend to just start with SFML though. It's good practice for learning basic programming skills, and you can get started easily. Maybe start with something like pong.
Thanks for the reply

I have been downloading documents from SFML site on different classes and go through their member functions and all. So far, it's not hard, just a lot to learn.

Seems like I can download Unity free, would it be too hard to learn? I know, I am pushing it, but I did learn C++ to a certain degree, I want to learn the ultimate tool rather than ease in and then learn again.But one thing, I am really not a game person, I am more into graphics more than anything else. You can see a lot of demonstration programs using graphics and even some animation, nothing to do with games. What kind of graphics IDE they use? ( I assume this is called graphics IDE!). Seems like I can create render window using a real picture as long as it's in .png format. Is SFML useful for this?I know I sounded like all over the place, I really don't know what I want to do and what I want out of this. I got into this because I am so sick of keep learning C++, it's an endless pit and it's so dry. I just cannot read another chapter anymore for now. Then also my grandson is very into gaming and want to get into game programming. This is grandpa giving him motivation by nipping on his heel! Beyond that, I sure don't know what the hell am I doing!
 

1. What is SFML and why would I need to know about it?

SFML (Simple and Fast Multimedia Library) is a cross-platform software development library designed to provide a simple and efficient interface for multimedia and game development. It is commonly used for creating 2D and 3D games, as well as other interactive multimedia applications. If you are interested in game development or multimedia programming, knowing SFML would be beneficial as it provides a user-friendly and efficient way to work with graphics, audio, and networking.

2. Is SFML suitable for all types of game development?

SFML is primarily designed for 2D game development, but it also has some features for 3D game development. However, for more complex 3D games, other libraries or game engines may be more suitable. It is best to research and evaluate the specific needs of your game before deciding if SFML is the right tool for the job.

3. Can SFML be used with any programming language?

SFML was originally written in C++, but it also has bindings for other programming languages such as C, Java, and Python. This allows developers to use SFML with their preferred language and still have access to its powerful features.

4. Are there any good resources for learning SFML?

Yes, there are plenty of resources available for learning SFML. The official website offers tutorials, examples, and a detailed documentation for each module. There are also many online tutorials, videos, and books that cover SFML in depth. Additionally, the active community of SFML developers is always willing to help and share their knowledge.

5. Is SFML a free and open-source library?

Yes, SFML is completely free and open-source under the zlib/png license. This means that it can be used for both personal and commercial projects without any restrictions. It also allows developers to modify and contribute to the library, making it a constantly evolving and improving tool for game development.

Similar threads

  • Programming and Computer Science
Replies
3
Views
688
  • Programming and Computer Science
Replies
9
Views
1K
  • Programming and Computer Science
Replies
24
Views
1K
  • STEM Academic Advising
Replies
3
Views
929
  • Programming and Computer Science
Replies
7
Views
2K
  • New Member Introductions
Replies
1
Views
55
Replies
2
Views
802
Replies
3
Views
92
  • Precalculus Mathematics Homework Help
Replies
8
Views
290
  • Feedback and Announcements
Replies
32
Views
1K
Back
Top