Kevin Gibson's Avatar

Kevin Gibson

@kevin-gibson.com

He/him. Software developer, graphics/ML@Apple prev. Xbox, Hololens. Canadian in Seattle. Music, computer graphics, baking, etc.

1,056
Followers
448
Following
137
Posts
24.09.2023
Joined
Posts Following

Latest posts by Kevin Gibson @kevin-gibson.com

Is it a good sign when the "market update" from my financial advisors mentions the assassination of Archduke Franz Ferdinand?

06.03.2026 17:47 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Shocked that it happened, but grateful that the indirect draw structures all match across Vulkan/Metal/D3D12. Just one less thing to worry about.

10.02.2026 19:14 πŸ‘ 7 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Transporting them is fine until you need to turn, then the gyroscopic effects really become interesting!

04.02.2026 04:37 πŸ‘ 3 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

At least in swift they're statically checked, and they don't involve stack unwinding. Basically a Result<T, E> in disguise, but for some reason they kept the exception syntax

02.02.2026 04:56 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
No Graphics API β€” Sebastian Aaltonen Graphics APIs and shader languages have significantly increased in complexity over the past decade. It’s time to start discussing how to strip down the abstractions to simplify development, improve pe...

This + some other existing extensions could get you very close to the API described here. Once slang support and drivers catch up it could be a good exercise. www.sebastianaaltonen.com/blog/no-grap...

23.01.2026 03:35 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
VK_EXT_descriptor_heap(3) :: Vulkan Documentation Project

Vulkan is getting descriptor heaps. Seems like a significant simplification, looking forward to driver support docs.vulkan.org/refpages/lat...

23.01.2026 02:17 πŸ‘ 9 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

This is very good and thank you for reminding me of how much I love that game (and also Dan's goofy playthrough)

22.01.2026 21:51 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Metal is also 0-1 for NDC z, so all the modern APIs are in agreement.

05.01.2026 07:05 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
No Graphics API β€” Sebastian Aaltonen Graphics APIs and shader languages have significantly increased in complexity over the past decade. It’s time to start discussing how to strip down the abstractions to simplify development, improve pe...

My "No Graphics API" blog post is live! Please repost :)
www.sebastianaaltonen.com/blog/no-grap...

I spend 1.5 years doing this. Full rewrite last summer and another partial rewrite last month. As Hemingway said: "First draft of everything is always shit".

16.12.2025 18:51 πŸ‘ 467 πŸ” 191 πŸ’¬ 19 πŸ“Œ 12
The grand wooden spiral staircase in the AGO

The grand wooden spiral staircase in the AGO

The interior of the Gallery at the AGO, with glass windows and wooden curves reminiscent of a canoe

The interior of the Gallery at the AGO, with glass windows and wooden curves reminiscent of a canoe

RIP to Frank Gehry. The Art Gallery of Ontario is probably my favorite space in Toronto, in no small part because of his design

06.12.2025 03:34 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Wait, they're using Stingray? Game development timelines really have gotten out of hand...

02.12.2025 22:11 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

MSVC still defaults to permissive/non-standard mode, where templates are only checked/compiled when instantiated. If you add /permissive- to the command line it will also complain, because then templates are syntax checked at the point of definition, which is the indended standard behavior.

25.11.2025 17:22 πŸ‘ 1 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0
Preview
Compiler Explorer - C++ template&lt;class T&gt; class Foo { public: class A{ public: int i; }; class B : public A { using A::i; void foo() { i++; } ...

Ah right, forgot about that flag. Looks like I just need to fully qualify the name or alias it to make the lookup happy. Still, not an edge case I've hit before! godbolt.org/z/dKnWrezsc

25.11.2025 17:34 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
Compiler Explorer - C++ template&lt;class T&gt; class Foo { public: class A{ public: protected: int i; }; class B : public A { void foo() { i++ } }; };

Huh, I think this is the first time I've found such a major compiler difference. Feels like MSVC is right here, not sure why Clang/gcc wont compile. Note it works correctly if the parent class isn't a template. godbolt.org/z/c76exG6ha

25.11.2025 17:07 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
25.11.2025 07:22 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Man, shipbreaker was so good. Played through it on my paternity leave, was the perfect zen game to play with a newborn asleep on my chest.

25.11.2025 07:09 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Blue Prince and Silksong were my GOTY, I was strictly going for the pun :). You break a lot of ground in DK.

19.11.2025 19:44 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Donkey Kong was definitely the most ground breaking game I've played this year

19.11.2025 19:42 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Could take advantage of β€˜sqrt(x) = 2^(log2(x)/2)’, since those can all be bitshifts/built in ops. Might be off by a little if there’s rounding down in the division, but would be a good initial guess and could loop from there.

16.11.2025 17:19 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Announcing dotnet run app.cs - A simpler way to start with C# and .NET 10 - .NET Blog Run C# files instantly with dotnet run app.cs, no project file needed! Coming to .NET 10, try it out today in Preview 4.

Worth calling out that top level statements are now a thing -(devblogs.microsoft.com/dotnet/annou...) but I agree that this is late to the party. Especially with projects like uv making the python ecosystem a bit easier to use, it's an uphill battle for C#

13.11.2025 23:27 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

They're on different release cycles entirely. The Pro 3s are the most recent release, the AirPods 4 were a 2024 release.

13.11.2025 00:30 πŸ‘ 4 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

What baffles me is that it's just... not a problem the federal (or state) government needs to be involved in? Like we don't need legislation deciding the rules for baseball, and it seems insane to suggest otherwise

06.11.2025 23:42 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

There's an old joke about Canada just being 3 corporations in a trench coat. It's increasingly true about the USA, just with a bigger coat.

04.11.2025 22:10 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Yeah, the original court case was around whether a movie critical of Hillary Clinton could be run on TV before the 2008 primary, and I can get behind not letting the government stop that, but the court went and ruled an entire campaign finance law unconstitutional and now its a mess.

04.11.2025 22:02 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

(This last bit is not particularly enforced in practice, and irrelevant anyways as it's not hard to guess what would help a candidate)

04.11.2025 21:49 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Corporations/unions/for-profit groups can spend as much money as they would like on political ads, as doing otherwise would be a restriction on their free speech. Led to the creation of SuperPACs, fundraising groups with no limits on spending as long as they don't directly coordinate with campaigns.

04.11.2025 21:48 πŸ‘ 3 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

This actually helps, thank you

02.11.2025 04:25 πŸ‘ 1077 πŸ” 194 πŸ’¬ 1 πŸ“Œ 0

So many opportunities, so few runs, so much pain

02.11.2025 04:19 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Cuff The Duke - If I Live or If I Die (Official Audio)
Cuff The Duke - If I Live or If I Die (Official Audio) YouTube video by Cuff The Duke

There's some more modern/indie ones I've heard this series - Cuff The Duke, Arkells, and Tragically Hip. youtu.be/A90ph7-cvR4?..., youtu.be/vQvp6EghJ18?..., youtu.be/d18UWu4dRv4?...

02.11.2025 02:03 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

On the Canadian broadcast it is a decent amount of Canadian music going into commercials, not sure it makes it into the Fox broadcast

02.11.2025 01:54 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0