@wolfpld@mastodon.gamedev.place
@wolfpld@mastodon.gamedev.place avatar

wolfpld

@wolfpld@mastodon.gamedev.place

Author of Tracy Profiler, etcpak, and some other stuff.

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

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

How common are forced separate gfx and present queues in Vulkan? Does this separation exist on real hardware, or is it just a theoretical possibility?

To see if present is supported on a queue, you need to pass a surface to draw on to vkGetPhysicalDeviceSurfaceSupportKHR. This allows you to select the queue setup that will work.

But what if you don't have a surface to render to yet, but want to create a VkDevice that will be able to present?

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@sascha Thank you. Now I wonder how many things will break when someone finally does this in their driver and all these untested code paths become active.

dotstdy, to random
@dotstdy@mastodon.social avatar

Both the "window can set its titlebar icon" and "application can control placement of its own windows" wayland protocols are now up to 150 comments each! Congrats on this milestone. However while it took 3 months for the placement protocol to reach, the window icon protocol managed it in only 4 weeks! Impressive.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dotstdy Ah, yes, "Here is yet another controversial protocol", the protocol to set the application icon the way everyone else does.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dotstdy Ok, so I read half of the icon PR and it is, as expected, a complete shitshow. There is:

  1. Bikeshedding about the current solution of having desktop files for everything as the best. Oh no, but what about containerized applications, or something you want to run from a USB stick? Let's completely ignore the original icon problem and discuss what to do with that. How do we pass file descriptors? What about desktop files that need to be temporary?
wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dotstdy 2. Questions about why the application doesn't just tell which icons it wants to use. Well, I don't know, maybe you want to have an icon thumbnail of the picture you draw in GIMP, like you have had for the last quarter century?

  1. But if application can set it icon, what about icon themes? Yes, what about them? What about libadwaita and gtk removing all theming support because they can be the only ones to say how UI should look like? What about https://stopthemingmy.app/ ?
wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dotstdy 4. An asshole who says "no one will implement this" and that "you should start to understand the restrictions". Oh yes, the restrictions that are not present in the rest of the available systems. Or even in Wayland itself, because XWayland is still a thing, and it supports exactly this.

  1. Deranged statements that the current solution is the best because application developers have no choice but to use it.
wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dotstdy 6. Statements that it's completely impossible for the compositor to ask the application for a number of different icon sizes, because computers are slow or something.

  1. Small obstacles ("my compositor doesn't use icons, I have satellite programs that want them") presented as problems without solutions, instead of design flaws that should be solved by, I don't know, creating a communication channel between the external program and the icon owner (which in this case is the compositor).
wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dotstdy And for the love of God, it all boils down to this:

Everyone: here's the little API, we hope you find it useful and do fun things with it!

Wayland devs: we have to make it as obtuse as possible, or these little shits will run Doom in the application icon!

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

Two related questions for computer graphics people:

  1. is it true that ray/line/whatever intersection tests are common in interviews?

  2. how common are questions of this nature, where you have equations memorized?🤔

(boosts appreciated pls)

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@forrestthewoods @aras @im @ruba The knowledge (or lack thereof) of the dot product is a running joke in certain gamedev circles. It started with someone who couldn't fathom that you didn't know what it was or how to use it.

Well, I don't know the formula(s) off the top of my head, so my firm stance is that I don't "know" dot product. I just have not had the need to use it in the last few years.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@forrestthewoods @aras @im @ruba Ray-sphere intersections are not something I would be able to do. I can see how to do it geometrically in 2D, but implementing it or extending it to 3D is black magic to me.

Maybe I'm not a good graphics programmer after all?

Well, I only have an MSc in graphics programming, and I have shipped games that use dot product to compute most of the game logic, and I have written some of the fastest texture compressors there are.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@forrestthewoods @aras @im @ruba But I don't know some basic mathematical formulas that have been relatively unimportant to me during my 20 years of work.

The important thing is that you can find all the answers to these silly trivia questions with 5 minutes of googling.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@aras @forrestthewoods @im @ruba The interviews I keep reading about seem to be nothing more than ego trips. I have never been through anything like that.

When I interviewed people, I found that asking simple questions was enough to get a reliable feeling about the candidate.

For example, simply asking what operating systems someone has worked on is a great way to see if they have been exposed to more than one environment, and if they can handle a new set of challenges.

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

Somebody submitted Live++ to the orange site and the comments did not disappoint.

It's simple: use DLLs, reload them, and tell your devs to never use anything stateful like globals, function statics, or TLS. Done.

In fact, Casey built this in a single day for Handmade Hero.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dougbinks @molecularmusing Same thing with Tracy.

Hurr durr, why should I use this humongous library in my app when I can just do some timestamp queries on my own and write them to disk?

And then these "obvious" solutions have orders of magnitude worse accuracy, and/or write to disk from the profiled thread, and/or don't deal with thread safety, and so on.

Fortunately, it is limited to random comments on the orange site or reddit.

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

An interesting topic came up in the PRs, related to the recent blog posts by @forrestthewoods.

Should it be acceptable for a C++ build process to require network availability to succeed?

To put it in context, the network would be used to download the source code of some of the libraries that need to be compiled and linked into your program.

My stance is that builds should be local only, but maybe I'm just an old man who hasn't noticed that modems are long gone by now?

What are your opinions?

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @forrestthewoods There is no fallback in the case I'm talking about.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@forrestthewoods @pervognsen I think I may have heard something along the lines of "dockerhub has rate limited us because we build so many things" at my day job.

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

People keep asking me for advice on fitness for us professional keyboard abusers, so I wrote it down in one place. Part 1 of "Exercise for nerds who hate exercise":
https://cohost.org/tomforsyth/post/4111638-exercise-for-nerds-w

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@BartWronski @TomF The issue is that we are conditioned on multiple layers to avoid doing this.

I absolutely hated walking the 1 km from my home to the tram twice a day to get to school. 30° in the blazing sun or -20° with ice on the pavement, I had to do it. And it was through an environment that was pretty depressing at the time. And there was no one to talk to to pass the time.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@BartWronski @TomF To get to the university, I had to go to a bus stop 1.5 km away. When I wanted to go back home, I had to wait for an hour at the bus stop because the previous bus had just left at the time when the classes were ending.

Going to work and having a car was a blessing. The tram extension that was promised 30 years ago still hasn't happened.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@BartWronski @TomF If you watch any "teen" movie, having to walk or bike anywhere is portrayed as something losers do. All the cool kids have cars.

Thanks, modern media, for the ingraining of the idea that walking anywhere is stupid.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@BartWronski @TomF P.E. at school is nonsense. You get all these stupid sports you don't care about. You get the bullying, intentional or not (e.g. someone has to be the last one picked for the team). You get all the stupid gymnastics that serve no purpose. You get the fucking batshit insane assumption that you can run for 12 minutes straight for some asshole test.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@BartWronski @TomF The gym at my university was universally feared because it was run by some grandpa who supposedly pushed you to the limit. You had to go to the gym as a form of punishment to make up for the classes you had missed. I have never been there.

Well, looking back, the "tough" teachers were usually the most stable ones who really could and wanted to teach you something. Maybe it was a mistake to choose voleyball instead, where you sat on the bench most of the time.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@BartWronski @TomF My high school gym teacher was nicknamed "Ogór" (a pickle) because he liked to go to his cubbyhole and come back with a red nose.

The one super important thing that nobody stresses is that you get better as you train. When you are in bad shape, you are discouraged by the comparison to your peers and you just look for ways to avoid doing anything.

All you need is for someone to tell you to start slow and just stick with it and see how fast you improve.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@TomF @BartWronski That's a hard sell, because most people will find excuses, like "they get tired". Even for simple things like taking the stairs instead of the elevator.

Well, duh, your body optimizes energy expenditure to be just enough for what you need it to do. Keep it up and you'll be tired just getting off the couch.

I have no idea what these people have in their heads. Do they think that fit people got fit through genetics or by drinking milk every morning instead of exercising?

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

pdflatex is a definition of a bad software UX pattern.
How many times do you need to run it in a row, without any change in options otherwise? Oh it's simple, everyone knows it's three.

Everytime the result is different. In the meanwhile it produces a wall of text that is illegible.
But what if you need to also run bibtex? Pff, that's trivial; you run it after the first run of pdflatex, and then run it and repeat pdflatex twice!

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@BartWronski It's funnier when you explain why you have to run it three times.

The first run layouts the text and creates metadata that tells you what pages everything is on.

The second run uses that location metadata to insert the table of contents. This offsets where everything is, so the page references in the TOC are wrong. The location information in the metadata is updated again.

The third run can finally output the correct TOC.

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

The Polish trains DRM talk has been released.

https://media.ccc.de/v/37c3-12142-breaking_drm_in_polish_trains

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