The painting used is Barge Haulers on the Volga - https://en.m.wikipedia.org/wiki/Barge_Haulers_on_the_Volga Can someone please expand on the significance of this achievement to someone used to shooting their foot off in C++ in a predominantly single threaded manner?
Peredvizhnikov Engine: Lock-free game engine written in C++20
141–150 of 183 posts
Re: Peredvizhnikov Engine: Lock-free game engine written in C++20
#142Earlier quoted context omitted.
He's probably referring to the Desktop/laptop market. In which case windows controls like 90%.
Title is: "Peredvizhnikov Engine is a fully lock-free game engine written in C++20 " A Game Engine targets various platforms A "video-game" is not something exclusive to desktop/laptop windows market
Toy game engines like this are in the majority of cases used on desktop.
Re: Peredvizhnikov Engine: Lock-free game engine written in C++20
#143Earlier quoted context omitted.
> sending messages to an actor is equivalent to running the actor function under a mutex Where does it say that? In my understanding actor model means message-passing with asynchronous execution. So quite the contrary, actor model allows N threads executing in parallel given N actors.
Whenever I read any press about actors or goroutines, they say the same thing about preventing races (and the need for explicit locking) through share-nothing concurrency. It's easy to scatter the computations, but they never go on to explain how to gather them back up. You're going to render one frame to the screen. Did multiple actors have a write-handle into the frame buffer? What about collisions, does each entit…
Re: Peredvizhnikov Engine: Lock-free game engine written in C++20
#144Where is the game demo? Also to be considered gaming engine nowadays, you need actual tools, exporters (Maya, 3DSMax, etc.) + who knows what else (collaboration tooling, metrics, alerts)
I disagree—"game engine" does not necessarily mean "thing I can replace Unity or Unreal with".
Re: Peredvizhnikov Engine: Lock-free game engine written in C++20
#145Actors is one of the worst programming models possible. It's hard to observe actor-based systems and debug them. The protocol complexity (and complete protocol informality) usually brings much more trouble than any kind of locking/synchronization.
For game dev or in general? I hate using actors for general backend stuff, but for game dev maybe it makes more sense.
Actors are self defeating because they turn everything into a distributed system.
Re: Peredvizhnikov Engine: Lock-free game engine written in C++20
#146> At the moment, the only supported platform is Linux. Regardless of your feelings on the status quo, there is one thing you must do when building a game engine if you want it to succeed: support Windows .
bullshit, consoles/mobile are bigger markets than PC/Windows PC is just less than 1/3 of the whole picture https://www.data.ai/en/insights/mobile-gaming/2022-gaming-sp...
Sure they're both "games" but I don't know that they're competing for the same set of users - either people play one or the other, or the people that do crossover in both markets are probably playing PC/console games at home and mobile games on the bus or train.
Re: Peredvizhnikov Engine: Lock-free game engine written in C++20
#147Earlier quoted context omitted.
Actually its only the PS5 that's FreeBSD based. Switch runs a completely proprietary Nintendo OS that borrows a lot from Android.
It borrows very little from Android - I think it mostly draws some parts from stagefright.
I'd call that a pretty significant piece.
Re: Peredvizhnikov Engine: Lock-free game engine written in C++20
#148Earlier quoted context omitted.
Actually its only the PS5 that's FreeBSD based. Switch runs a completely proprietary Nintendo OS that borrows a lot from Android.
A mix of the two "partially Unix-like via certain components which are based on FreeBSD and Android" https://en.wikipedia.org/wiki/Nintendo_Switch_system_softwar...
"it is based on a proprietary microkernel"
"....Despite popular misconceptions to the contrary, Horizon (the Switch's OS) is not largely derived from FreeBSD code, nor from Android..."
Re: Peredvizhnikov Engine: Lock-free game engine written in C++20
#149Earlier quoted context omitted.
I have nothing against the SDL project. I have everything against the DirectMedia style api of 1997. I get that people are actively developing with it and that roadmap towards 3.0 is getting close but my experience is it’s designed for legacy games, legacy rendering styles, legacy ABI’s. No one is shipping games for Dreamcast or PS2. 2/3rds of the library is dead code when working with Vulkan.
TIL Unreal 5 based games were "legacy"
Re: Peredvizhnikov Engine: Lock-free game engine written in C++20
#150Earlier quoted context omitted.
For what? Working with Vulkan? Or a windowing library? Personally I use a mix of glfw and native windowing on mobile, which is surprisingly simple for a gfx context window and this gets me to triangle. SDL2 is about the same amount of boilerplate code only in SDL_Thing form. Now, if I was writing a game that needed to be shipped on everything possible and I can’t afford Unity or Unreal, SDL is a viable choice. MonoGa…
As with most SDL usage, it merely provides a rendering context and an input abstraction. That's almost nothing, its boilerplate you don't want to write. Which particular lib you grab that boilerplate from, SDL, GLFW, fucking GLEW, whatever, it doesn't matter. SDL is a widely accepted library for doing so and it's fine . If you want more complete input handling you'll be using the platform APIs directly.