@SonnyBonds@mastodon.gamedev.place avatar

SonnyBonds

@SonnyBonds@mastodon.gamedev.place

PROGRAMMING / MUSIC / GAMES

C++, music and silly games as Sonny Bonds

Life as Anders

Owner/founder of Kilohearts

Former Meqon, AGEIA and Power Challenge

Somehow can't stay away from build systems.

he/him 🇸🇪

#cpp #audio #programming #gamedev

This profile is from a federated server and may be incomplete. Browse more on the original instance.

pervognsen, to random
@pervognsen@mastodon.social avatar

This came up in another thread today but I figure I'd throw a brief comment to the timeline. The concept of "grace periods" where you separate the logical and physical deletion of resources is something you see in RCU, EBR, QSBR, etc, but it's just as useful in single-threaded code where you only have pseudo-concurrency through subroutine calls. Like the age-old pattern of deferring deletion until the end of the game loop, or autorelease pools in Objective C which get drained by the run loop.

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@pervognsen What would you say the big upsides of e.g. "slot arenas" are compared to classic allocation of objects? Memory locality is obviously one, although I'm thinking that mostly affects operations that involve sequential iteration over objects?

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@pervognsen Can you have generations in an arena with different object sizes? I'm thinking an old generation value should never end up in the middle of a new object, if that makes sense.

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@pervognsen Got it, just wanted to double check if there was some trick I hadn't thought about.

My most recent foray into it was mostly for a different reason; having clonable arenas so a full state can be synced between threads or stored for undo etc etc. But that means the arena location isn't static and needs to be passed around together with references and I never came up with a satisfactory way of doing that.

sinbad, to random
@sinbad@mastodon.gamedev.place avatar

Bleh, Git 2.45 broke fresh clones of repos using git-lfs because they disallow post-checkout hooks by default, this broke my overnight game builds. https://github.com/git-lfs/git-lfs/issues/5749

Should be fixed in Git 2.45.2 apparently, but the temporary workaround is to define the env var GIT_CLONE_PROTECTION_ACTIVE=false during clone

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@sinbad We went from a SVN repo to Git with LFS and when we did that we first converted without LFS and then migrated binary stuff to LFS. It did it really well without much problem as I can remember, but it rewrites git history so you can obviously only do it on a repo where that's ok.

pervognsen, to random
@pervognsen@mastodon.social avatar

I switched from Windows to Linux not directly because of the most recent shit show with Recall (though it's part of the general trend). But it sure does make me feel even better about making that choice when I'm struggling with some minor annoyance on Linux.

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@wolfpld @pervognsen Possibly. We're doing pretty UI heavy stuff and while I know WSL can do UI too I don't know how representative of an environment it is. But yes it could definitely be a way to get some of the main stuff running. (We're currently on Windows and MacOS so it already has platform splits and I expect at least some things will be the same on linux and macos.)

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@pervognsen Considering trying some Linux out on my home laptop, but I use it for work quite a bit where we currently can't build for Linux. Guess that's a reason as good as any to port stuff, but that makes switching a vastly different undertaking.

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@pervognsen What distro did you pick?

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@wolfpld @pervognsen Installed a dual boot of Endeavor OS now. Haven't had time to poke around a lot yet, but initial install went without hitches as far as I can tell.

pervognsen, to random
@pervognsen@mastodon.social avatar

Who remembers this awesome jankfest? The IK was bleeding edge for 1998 and when that indie game Hellish Quart came out I remember getting flashbacks to Die By The Sword.

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@pervognsen There's Trespasser as well that combined being an FPS with being a janky mess.

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@pervognsen Yeah I mean I loved all of this stuff, jank aside. There's a reason I ran straight into game physics at Meqon/AGEIA/PhysX after school. 😄

sinbad, to random
@sinbad@mastodon.gamedev.place avatar

I don't even use Microsoft Edge. 😠

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@sinbad Something something edging

SonnyBonds, to cpp
@SonnyBonds@mastodon.gamedev.place avatar

Here goes! Put a little template thingie to somewhat emulate checked exceptions in C++ on GitHub.

It's mostly a proof of concept and probably problematic in a dozen ways, but I think there might be something useful in there.

#cpp #cplusplus #programming #softwareengineering

https://github.com/SonnyBonds/cpp-checked-exceptions

demofox, to random
@demofox@mastodon.gamedev.place avatar

I asked my son "if you flip a coin 3 times, is it more likely to get 3 heads in a row, or head, tails, tails?"
He thought for a second and thought "they are equally likely aren't they?"
Oh damn... he is so much smarter than I was.

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@demofox Now do the Monty Hall thing 😄

SonnyBonds, to cpp
@SonnyBonds@mastodon.gamedev.place avatar

Getting totally owned by this build issue after I updated to XCode 15.

  • Running a build through Jenkins (ninja + clang): 5x longer build time than normal

  • Running exact same command in jenkins' workspace folder from a ssh session: normal build time

  • -ftime-trace says backend time takes longer time, but all parts within it seems to just be proportionally slower, no single area stands out

Not even sure what to try anymore. Ideas welcome.

#cpp #xcode #clang #jenkins #softwareengineering

SonnyBonds, to random
@SonnyBonds@mastodon.gamedev.place avatar

Looking into home automation in general and home assistant specifically. Looks pretty neat, but I have so far approximately zero ideas for things it could do that would improve anything.

SonnyBonds, to cpp
@SonnyBonds@mastodon.gamedev.place avatar

What's your favorite way of doing type safe flags in C++? I typically just use some enum/int combo, but it's not really type safe and you can combine flags from different sets.

SonnyBonds, to random
@SonnyBonds@mastodon.gamedev.place avatar

Don't want to start a war but if someone who may or may not be me would hypothetically try out linux, what distro should they try out?

  • Developer workloads, but want the average user desktop experience.
  • Possibly dual boot on a laptop.
  • Bonus points if easy to try out in a VM first.
SonnyBonds, to random
@SonnyBonds@mastodon.gamedev.place avatar

@sinbad Hey, sorry if I'm asking something I could figure out on my own, but is there somewhere I could read about your agent AI/behavior stuff?

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@sinbad Cool, I'm mostly interested in the concepts. Thanks!

SonnyBonds, to cpp
@SonnyBonds@mastodon.gamedev.place avatar

Hot take: I don't think I've ever seen an application UI made with Dear ImGui that feels good.

Feel free to prove me wrong!

SonnyBonds, to random
@SonnyBonds@mastodon.gamedev.place avatar

Anyone running any nice shell on Windows that's not Powershell or regular cmd?

  • Tried nushell but didn't quite feel it.
  • I guess I could run any linux shell through WSL, but it has its whole own environment and I'm not sure I want that.
  • There are a few bash variants (git-bash, msys, etc etc) but it feels a bit boring. :D

Not sure what I'm looking for, just random suggestions!

SonnyBonds, to GNOME
@SonnyBonds@mastodon.gamedev.place avatar

Seriously, does the titlebar really have to be like 10% of the screen height?

#gnome

Liquidream, to random
@Liquidream@mastodon.gamedev.place avatar

Framed
🎥 🟩 ⬛ ⬛ ⬛ ⬛ ⬛
Finally! There was no way I wasn't getting this in one 😁
https://framed.wtf

SonnyBonds,
@SonnyBonds@mastodon.gamedev.place avatar

@Liquidream Cool game! It took me more tries than I'd like to admit for this one, but I picked another random one and got it on the first frame. Maybe I should quit while on top. 😄

SonnyBonds, to random
@SonnyBonds@mastodon.gamedev.place avatar

Don't talk to me or my son ever again.

SonnyBonds, to GNOME
@SonnyBonds@mastodon.gamedev.place avatar

Fantastic titlebar/content ratio. Good job everyone.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • anitta
  • InstantRegret
  • mdbf
  • ngwrru68w68
  • magazineikmin
  • thenastyranch
  • rosin
  • khanakhh
  • osvaldo12
  • Youngstown
  • slotface
  • Durango
  • kavyap
  • DreamBathrooms
  • JUstTest
  • tacticalgear
  • ethstaker
  • modclub
  • cisconetworking
  • tester
  • GTA5RPClips
  • cubers
  • everett
  • megavids
  • provamag3
  • normalnudes
  • Leos
  • lostlight
  • All magazines