SFML Development Updates
BDFL
Benevolent dictator for life (BDFL) is a title given to a small number of open-source software development leaders, typically project founders who retain the final say in disputes or arguments within the community
Wikipedia (ofc)
How does the joke go? Put five different architects in a room, if you want five different opinions, or something like that. When it comes to technical discussions about SFML, we often end up in a similar situation, where technical arguments reveal themselves more as opinions on technical details and the discussion often fizzles out, as either side loses the energy and/or will to continue to go in circles.
To break this cycle, some of the SFML Team members asked me, whether I could see myself in the role as BDFL, and then proposed it to the rest of the team, which in turn appointed me said role. The goal here really is to be a sort of tie-breaker at times, when technical arguments barely make a difference and nobody can be convinced of different viewpoints. It should help us waste less time on such discussions and get the development moving forward more quickly, while hopefully also leaving the people more satisfied, given that making progress is usually more exciting than discussing in circles for days.
I’m honored to have received this role, as it shows the trust the rest of the SFML Team puts in me. ❤️
SFML 2.6
I was really hoping to announce the release of SFML 2.6 in this post, but I guess one would’ve had to actually invest the necessary time. I did however chip away a bit on the tutorial parts. Hopefully the French translations will be acceptable.
SFML 3
The SFML 3 front is going very strong at the moment, so much so, that I won’t be able to capture all of it here. Maybe I provide some tips on how you can stay up-to-date on what’s going on in general instead:
- Watch the SFML GitHub repository – get ready to get spammed by notifications!
- Have a look at the SFML 3.0.0 GitHub Project – btw. if you have suggestions on how to improve that project overview, let me know!
- Join the SFML Discord server to see all the active discussions
- Check the SFML Development sub-forum
- You can even setup email notifications by clicking on “Notify”
- Or if you’re old-school, you can subscribe to the RSS feed
- And continue reading this blog of course! 😉
Two highlights from the past two weeks:
- binary1248’s Mesa 3D branch was merged, so now you can configure SFML to use Mesa 3D
- Overview issue for getting move semantics finalized across the whole SFML API
SFML Games & Projects
SFML Running on a Smart Watch
The one and only Zombieschannel got SFML to run on WearOS, which is based on Android. It’s not necessarily useful, but still cool seeing SFML on more “exotic” platforms.
De-Miner
The game you can see above on the watch is now available on Android, well for phones… 😄
It’s a really fun puzzle game, where the numbers on the top and side tell you the amount of connected squares or group of squares. So it’s there’s a 2 3 3 and it means, that there need to be a group of 2 then a group of 3 and then a group of another 3 squares.
The main levels are guaranteed to be solvable without guessing. If you finish them all, there’s always the possibility to generate some random levels and it even has a built-in editor!
I really enjoyed the puzzling and it was quit easy to use the app. If the grid is too small, you can even zoom in and move the view around.
Weather Program
Using SFML and OpenGL someone is working on a Weather application, that can load and render so called shapefiles, which is a file format describing geographic information. Doing this projection mapping correctly takes quite a bit of work, thus great to see how far it already is. Keep it up!
Pathfinding Algorithms
My favorite “SFML YouTuber” is finally back with another video and they implemented three different pathfinding algorithms and explain them quite well, with lots of humor. Definitely worth a watch and a sub 😉
Metropolis 1998
This city builder game has been in development since 2021, but I’ve only found out about it the other day by chance on Twitter. I’m really impressed how fast this all came together, you can read the few dev log entries on their website. There’s some amazing traffic simulation with pathfinding of 500’000 entities at once on YouTube. And of course Reddit and Discord can’t be forgotten.
You can already wishlist it on Steam and there’s a demo on itch.io, which I have yet to try myself!
2D Gravity Simulation
Duka posted in the Screenshot thread on the forum a really cool 2D gravity simulation.
I quite enjoy seeing such simulations and am always reminded of my matriculation project, where we built among other physics simulation, a n-body simulation, meaning that all the bodies in the simulation attracted each other. The cool thing was to insert the information about Earth and the ISS taken from Wikipedia and seeing the simulation reproduce a stable orbit without any additional tuning. One of these days, I’m going to rewrite it in SFML, instead of that horrible DirectX construction.
This simulation here creates quite some chaos when you add more and more objects. You can find the code and more screenshots on GitHub.
Lightning Talk: Modernizing SFML From C++03 to C++17
Our own Chris Thrasher held a lighting talk at last year’s CppCon and it has finally been published!
It’s really cool seeing how far we’ve already come since his talk and maybe we’ll see an updated talk this year? 😉
If you look closely, you can also spot me on those slides, referencing my lightning talk at Meeting C++ 2018.
Conclusion
Hope you find these posts informative, I find it very interesting to see what the community is building. If you have any suggestions for the the SFML News or if you think, I’ve missed something, please reach out, I’m more than happy to improve! 🙂
2 thoughts on “SFML News – Week 14 & 15 (2023)”