's Avatar

@vittorioromeo.bsky.social

29 Followers  |  12 Following  |  45 Posts  |  Joined: 21.11.2024  |  1.9338

Latest posts by vittorioromeo.bsky.social on Bluesky

Video thumbnail

Ever need a profiler but don't want the hassle of a heavy framework?

I wrote about a simple, hierarchical #ImGui profiler I created for my projects. It's thread-local, has minimal overhead, and only ~500 lines of C++.

Check it out! ๐Ÿ‘‡
vittorioromeo.com/index/blog/s...

#cpp #gamedev

17.10.2025 23:42 โ€” ๐Ÿ‘ 14    ๐Ÿ” 2    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Video thumbnail

I was incredibly fed-up with #powerpoint not supporting proportional text drag-resizing. So after searching hours for workarounds and solutions... I just implemented it myself ๐Ÿ˜Ž

#presentation #addin #office #microsoft #slides

21.09.2025 20:09 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

If you're curious about how Boost.PFR works, this blog article explains the basics:

akrzemi1.wordpress.com/2020/10/01/r...

It's clever but not too crazy! I definitely see potential uses for it

21.09.2025 07:56 โ€” ๐Ÿ‘ 20    ๐Ÿ” 4    ๐Ÿ’ฌ 2    ๐Ÿ“Œ 1

Yup, another cool thing that is relatively easy to do is automatically set up VBOs and vertex attributes for instanced drawing by reflecting over a struct.

21.09.2025 08:43 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Post image

I have created a self-contained version of my #cppcon 2025 keynote demo using @raysan5.bsky.social's excellent #raylib.

The only requirement is CMake, all dependencies are automatically fetched.

โžก๏ธ github.com/vittoriorome...

Enjoy! ๐Ÿš€

#cpp #indiedev #performance #cplusplus #performance

21.09.2025 06:36 โ€” ๐Ÿ‘ 7    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
More Speed & Simplicity: Practical Data-Oriented Design in C++ - Vittorio Romeo - CppCon 2025
YouTube video by CppCon More Speed & Simplicity: Practical Data-Oriented Design in C++ - Vittorio Romeo - CppCon 2025

My CppCon 2025 keynote is now available on YouTube -- eager to hear what you think! ๐Ÿš€

www.youtube.com/watch?v=SzjJ...

#cpp #cplusplus #gamedev #performance #sfml

19.09.2025 22:42 โ€” ๐Ÿ‘ 10    ๐Ÿ” 2    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Thanks for sharing -- it uses Boost.PFR under the hood so it's a similar approach. I did search for "imgui reflection" and similar terms but nothing came up :)

17.09.2025 18:14 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Post image

I'm very excited about C++26 reflection. However, people underestimate what you can achieve *today*!

Inspired by Barry Revzin's awesome "Practical Reflection" talk at @cppcon.bsky.social I wrote automatic Dear #imgui generation for structs, including labels! (via Boost.PFR)

#cpp #gamedev

17.09.2025 17:19 โ€” ๐Ÿ‘ 36    ๐Ÿ” 11    ๐Ÿ’ฌ 2    ๐Ÿ“Œ 1
Post image

Reflection in C++26...? Who needs that!

With some good old C++17 metaprogramming, you can get type-safe, refactor-proof Struct-of-Arrays transformations today๐Ÿ˜Ž

gcc.godbolt.org/z/sd7f4Mjx8

#cpp #gamedev #performance #HPC

06.09.2025 00:18 โ€” ๐Ÿ‘ 8    ๐Ÿ” 4    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Preview
Vittorio Romeo - C++ Training, Mentoring, and Consulting Elevate your C++ skills with expert guidance from Vittorio Romeo, offering tailored training and mentoring solutions.

This topic is very dear to me. I hope to inspire writing simpler and more efficient code, leveraging Modern C++'s benefits and avoiding its pitfalls.

P.S. I offer private consultations/mentoring on this topic and more -- check out: romeo.training

17.08.2025 13:57 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
2025 Keynote, Vittorio Romeo: โ€œMore Speed & Simplicity: Practical Data-Oriented Design in C++โ€ | CppCon

๐Ÿค” What if writing faster C++ code actually meant writing *simpler* code?

I'm incredibly excited to share that I will be giving my first-ever keynote at @cppcon.bsky.social 2025:

โžก๏ธ โ€œMore Speed & Simplicity: Practical Data-Oriented Design in C++โ€
cppcon.org/2025-keynote...

#cpp #gamedev #cplusplus

17.08.2025 13:57 โ€” ๐Ÿ‘ 7    ๐Ÿ” 2    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
Post image

POV: You combine C++23's "deducing this" and C++17's CTAD to implement a vector iterator that propagates constness with no repetition (DRY).

Can you spot the mistake? Every LLM seems to be fine with the code!

#cpp #cplusplus #gamedev #coding

20.06.2025 13:37 โ€” ๐Ÿ‘ 7    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Preview
You probably don't need a DI framework When working with Go in an industrial context, I feel like dependency injection (DI) often gets a bad rep because of DI frameworks. But DI as a technique is quite useful. It just tends to get explaine...

Unfortunately it's a #golang article but it's very valid for #cpp as well. KISS!

rednafi.com/go/di_framew...

25.05.2025 15:05 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Preview
how to break or continue from a lambda loop? Article/tutorial on http://vittorioromeo.com

Is it possible to write a simple iteration API that hides implementation details *and* lets users `break` and `continue`? ๐Ÿค”

Here's a new article about a lightweight solution using a `ControlFlow` enumeration!

โžก๏ธ vittorioromeo.com/index/blog/c... โฌ…๏ธ

#cpp #gamedev #cplusplus

22.05.2025 00:03 โ€” ๐Ÿ‘ 1    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Preview
SDL3: OpenGL Borderless Window Becomes Exclusive Fullscreen on `SDL_GL_SwapWindow` (Windows 11) ยท Issue #12791 ยท libsdl-org/SDL Creating a borderless OpenGL window (SDL_WINDOW_OPENGL | SDL_WINDOW_BORDERLESS) at the native display resolution on Windows 11 results in the window unexpectedly switching to an exclusive fullscree...

What is the proper way of ensuring non-exclusive borderless fullscreen on Windows + OpenGL?

Using windowed + borderless flags in SDL still results in exclusive fullscreen:
github.com/libsdl-org/S...

How do most games implement this sanely?

#cpp #gamedev #sdl #sdl3

09.05.2025 16:13 โ€” ๐Ÿ‘ 7    ๐Ÿ” 2    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Preview
Global Game Jam Jammer Spotlight: Vittorio Romeo | Global Game Jam Turning cats and bubbles into a Steam game!

globalgamejam.org/news/global-...

So happy for my friend @vittorioromeo.bsky.social representing our hometown in the global game jam with his cute, little game store.steampowered.com/app/3499760/...

#gamedev #gamejam #globalgamejam

09.05.2025 12:28 โ€” ๐Ÿ‘ 9    ๐Ÿ” 3    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Preview
Weird behavior involving context switching, FBOs, and `glGetIntegerv` - driver bug? Iโ€™ve managed to minimize a incredibly weird bug in one of my programs. Basically: Create OpenGL contexts A and B Activate context B and bind GL_FRAMEBUFFER 0 Activate context A and create a texture...

Any #opengl wizard interested in helping me demystifying an incredibly weird bug where an innocuous `glGetIntegerv` call causes an unrelated assertion failure? ๐Ÿคจ

forums.developer.nvidia.com/t/weird-beha...

#gamedev #cpp

02.05.2025 17:35 โ€” ๐Ÿ‘ 2    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Preview
Vittorio Romeo - C++ Training, Mentoring, and Consulting Elevate your C++ skills with expert guidance from Vittorio Romeo, offering tailored training and mentoring solutions.

Exciting news! ๐Ÿ“ข

I'm now offering bespoke C++ training, mentoring & consulting: romeo.training

While current availability is limited (weekends/off-hours), I'm keen to connect with potential clients for future projects as my schedule evolves.

RTs appreciated! #cpp

30.04.2025 11:26 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Preview
Display origin of template instantiations by vittorioromeo ยท Pull Request #105 ยท aras-p/ClangBuildAnalyzer Addresses #93. Could be improved in the future, but it's already quite useful. Example output: **** Templates that took longest to instantiate: 602 ms: std::vformat_to<std::__format::_Sin...

As part of my battle against long #cpp compilation times, I've opened a (work-in-progress) PR for Aras Pranckeviฤius's excellent ClangBuildAnalyzer to add an approximate origin of expensive template instantiations:

github.com/aras-p/Clang...

18.04.2025 17:41 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Thanks! It draws inspiration from:
- Cookie Clicker's addictive progression
- Stardew Valley's laid-back vibes
- Strategic elements reminiscent of Bloons TD
- A hint of Factorio's automation

It's a bit of a mix! But it works ๐Ÿ˜Š

You can try it out here:
store.steampowered.com/app/3499760/...

13.04.2025 12:25 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Video thumbnail

Released a major update today, adding #speedrun mode to my #indie game BubbleByte! ๐Ÿซง๐Ÿฑ

store.steampowered.com/news/app/349...

Powered by Modern #cpp, #sfml, #sdl, and #imgui. Fully #OpenSource!

#clicker #gameart #gamedev #idle #incremental #indiedev #indiegame #screenshotsaturday #towerdefense

10.04.2025 23:06 โ€” ๐Ÿ‘ 23    ๐Ÿ” 6    ๐Ÿ’ฌ 2    ๐Ÿ“Œ 0
Preview
free performance: autobatching in my SFML fork Article/tutorial on http://vittorioromeo.com

Here's short #cpp article on a simple yet suprisingly effective implementation of automatic draw batching in my fork of SFML ๐Ÿš€

vittorioromeo.com/index/blog/v...

#sfml #gamedev #opengl #performance #indiegame #indiedev

09.04.2025 01:47 โ€” ๐Ÿ‘ 9    ๐Ÿ” 2    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

The game my girlfriend and I made is going to be played live on stream for the first time -- hope it goes well!๐Ÿคž

#screenshotsaturday #cpp #gamedev #idle #incremental #indiedev #indiegame #sfml #towerdefense #twitch

06.04.2025 23:08 โ€” ๐Ÿ‘ 10    ๐Ÿ” 6    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Post image

Reviews like this remind me why I pour my heart into #gamedev. Every late night was worth it. ๐ŸŒ™

#screenshotsaturday #indiedev #indiegames #indie #Steam #sfml #sdl #cpp

28.03.2025 23:41 โ€” ๐Ÿ‘ 11    ๐Ÿ” 5    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Hey Stephen, it's been a while! Are you still interested in a possible collaboration -- would genuinely love to help make SS2VR a reality!

27.03.2025 12:30 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Preview
BubbleByte - BubbleByte ๐Ÿซง๐Ÿฑ | v1.5.0 - Steam News Prestige scaling rework, autocast, and accessibility improvements!

BubbleByte v1.5.0 Patch Notes:
store.steampowered.com/news/app/349...

22.03.2025 18:08 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Video thumbnail

Today I released the first major update for BubbleByte, reworking prestige scaling and adding a new autocast option for the Wizardcat!

(Pictured: the Wizardcat stops time ๐Ÿง™)

#screenshotsaturday #cpp #gamedev #idle #incremental #indiedev #indiegame #sfml #towerdefense @sfml.bsky.social

22.03.2025 18:08 โ€” ๐Ÿ‘ 10    ๐Ÿ” 5    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Note that compiling:
- without any flag resulted in 30FPS (SW emulation).
- with -maxvx512fp16 resulted in SIGILL.
- with -maxvx512fp16 -march=native resulted in SIGILL.
- with -march=native only results in the numbers above

17.03.2025 17:06 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

I did a quick test changing `float` to `_Float16`, and unless I screwed up, the results are very promising!

5M particles, multithreading on, rendering off, and repopulation off:
- float: ~5.1ms (180FPS)
- _Float16: ~2.15ms (380FPS)

17.03.2025 17:06 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Fellow fast #cpp compilation time enjoyers, has anyone figured out a way of defaulting C++20's spaceship operator (`<=>`) without having to include `<compare>`?

At the very least, defaulted equality does not require the header...

17.03.2025 15:17 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

@vittorioromeo is following 12 prominent accounts