Joined April 2014
140 Photos and videos
Henry Rose retweeted
🎉 Announcement 🎉 A Little Perspective's demo will be part of the Cerebral Puzzle Showcase on Steam, starting May 29! I'll likely drop it a bit earlier (i.e. the weekend before), so I have time to fix any last issues before the event :) Stay tuned!
3
10
41
1,850
13 May 2025
Got texture streaming working. Textures are procedurally generated from shader code input data file as part of the texture builder. (middle & right are made from the same shader, different input data)
12
577
Henry Rose retweeted
Thrilled to announce that A Little Perspective, a puzzler where perception and reality are one and the same, now has a trailer and a store page! 🟥👁 Wishlists/reposts appreciated, link in the replies :) #indiegames #puzzle
42
86
711
51,429
Henry Rose retweeted
11 Mar 2025
The wait is over… Voxile is LIVE 🎉 After years of development, our FPS-RPG survival game is finally here! Explore, build, and battle your way to the top in destructible voxel worlds. #indiegames #IndieGameDev Play Early Access here ⤵️ (link in reply)
22
96
767
38,817
23 Feb 2025
Made some procedural materials, both using the same shader just modified input parameters
14
449
Henry Rose retweeted
7 Feb 2025
3 weeks ago I posted this. Then I joined the Khronos Group (my employer is a member) and worked to get it added to the language. I can now announce today that #extension GL_EXT_nontemporal_keyword has been added to the GLSL compiler. Just prefix your data with nontemporal. 🙂
19 Jan 2025
I’m really confused why no shader compiler uses or exposes SPIR-V’s Nontemporal memory/image operand flags, yet the Khronos committee and IHVs cared enough to put it in. Why am I apparently the first person working to expose this really useful feature? Not even a keyword in GLSL.
6
12
150
13,523
Henry Rose retweeted
23 Jan 2025
Optimised (I think) HLSL for converting float3 to and from R11G11B10. Input values must be in range, doesn't handle -ve/denorms/nan/inf. Handy for packing positive float3 data into a single uint. Convert to from is 21 DXC instructions. Handy for packing 3D data into a single int
4
23
182
9,959
Henry Rose retweeted
21 Jan 2025
Posted this in the Vulkan Discord and someone volunteered to rectify it. Already got a commit available. 😇 github.com/umbral-software/g…
19 Jan 2025
I’m really confused why no shader compiler uses or exposes SPIR-V’s Nontemporal memory/image operand flags, yet the Khronos committee and IHVs cared enough to put it in. Why am I apparently the first person working to expose this really useful feature? Not even a keyword in GLSL.
2
5
35
4,508
Henry Rose retweeted
20 Jan 2025
Announcing Voxile! Voxile is our stunning, ray-traced voxel FPS RPG Survival game where you can explore hand-crafted worlds or build your own! 🌎 Play the demo and become a Kickstarter backer today! Links below 👇
18
92
855
56,622
27 Dec 2024
Made a nice little profiler built into my game, it allows me to pause, zoom and pan the graph at the bottom. Commands are at the bottom and scopes span ranges of commands and other scopes on top.
6
3
70
3,413
27 Dec 2024
There are not many resources online around how to make a profiler from using vulkan timestamps. This is what i have come up with.
22
593
Henry Rose retweeted
26 Dec 2024
We received over 500 applications for a couple of Principal Software Engineering positions. Less than a dozen were even remotely qualified for us to consider interviewing. None actually met our standards for Principal and we ended up having to settle by hiring a couple Seniors.
Anyone who tells you there’s a shortage of talented people in America is lying to your face. We have an abundance of talented people. For proponents of mass “skilled” immigration, it’s about being able to pay less because foreign labor will work for dirt cheap.
139
57
1,813
548,197
30 Nov 2024
Installing this new GPU. Should hopefully be the last of my GPU crashes that bring down the whole DE 🤞
6
430
28 Nov 2024
I will be streaming raytracing ellipsoids from scratch using a compute shader and implementing MSAA in software. Come join me in 9 hours time (7:30pm GMT) twitch.tv/hero_dev

10
365
26 Nov 2024
Made an OKLCH colour picker for my game & editor. Should help keeping the same perceptual brightness when adjusting the hue.
2
22
1,010
24 Nov 2024
The way you are supposed to properly handle swapchains in vulkan is such a fail. Quote: "If an application resizes the window constantly and at a high rate, we would keep accumulating old swapchains and not free them until it stops." github.com/KhronosGroup/Vulk…
6
2
56
4,953
24 Nov 2024
To expand on my problem more. The proposed solution technically allows the number of swapchains to keep growing if the user resizes their screen really fast. I only wanna use preallocated arrays in my game. Also, the amount of memory from all the swapchain images will be insane
1
5
609
24 Nov 2024
I could only allow the creation of the new swapchain when the user stops resizing their screen. But this won't look as nice
2
3
583
24 Nov 2024
Has anyone got any other ideas on how to solve this problem? without the extension
2
2
559
24 Nov 2024
I have my own idea... 1. capture average_frame_time 2. if current_time - swapchain_last_used_at > max(average_frame_time_ms, 33.33f) * (2 or 3) 3. then you can safely remove the old swapchain
2
527