Suboptimal Engineer's Avatar

Suboptimal Engineer

@suboptimaleng.bsky.social

πŸ‘¨πŸΎβ€πŸ’» Indian-American Software Engineer πŸ‘Ύ Computer Graphics YouTuber (25k+) ❀️ Shaders, Anime, Gaming, Running

40 Followers  |  51 Following  |  91 Posts  |  Joined: 18.11.2024  |  1.4524

Latest posts by suboptimaleng.bsky.social on Bluesky

Post image

Made a 12 minute tutorial going over how to set up and use the C++ debugger in VS Code. Video is live on my YouTube channel!

16.02.2026 19:35 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 17)

Spent the last 2 days cleaning up tech debt created from mindlessly copy pasting AI generated code.

The project is finally at a good pausing point! Here's one final demo (for now).

09.02.2026 01:08 β€” πŸ‘ 2    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 16)

Added the Sobel filter as a post processing effect.

07.02.2026 20:50 β€” πŸ‘ 2    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 15)

Swapping noise textures.

07.02.2026 18:29 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 14)

Finally working on an option to import noise textures.

Code is complete AI slop. Need to fix it at some point.

07.02.2026 02:48 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 13)

Couldn't stop myself from adding more features.

Using the node editor seemed a bit excessive so I implemented a simpler way to add and customize post processing effects.

06.02.2026 06:32 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 12)

Terrain generation! My computer can't handle it.

I should add a feature to import noise textures to avoid computing noise on the fly. But that's for another day.

Going to pause work on this project and finally start the C++ deep dive!

03.02.2026 03:47 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 1
Video thumbnail

C++ WebGPU Shader Game Engine (part 11)

I got so caught up in making the shader engine that I forgot to make shaders!

01.02.2026 02:39 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 10)

Going to pause working on this project to learn more about C++. I got nerd-sniped by the language.

Here's a short video that logs the progress we (me and AI) made over the last few weeks.

31.01.2026 05:20 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 9)

Minecraft terrain in a WGSL shader.

Starting to dislike using the node editor for post processing effects. Too much mouse input required for small changes. Iterating with code is much faster.

Time for another refactor?

30.01.2026 03:25 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 8)

Hot reloading WGSL shaders!

28.01.2026 06:57 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 7)

When the code is all vibes, but the vibes are good.

28.01.2026 03:26 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 6)

Implemented the Sobel filter node.

27.01.2026 06:47 β€” πŸ‘ 5    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 5)

Simplified the Ray Marching node architecture and added a Blit (block image transfer) node.

TL;DR Blit is Ctrl + C, Ctrl + V for GPU textures.

26.01.2026 03:28 β€” πŸ‘ 6    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 4)

Refactoring the animation and UI to allow users to toggle between color, normal, and depth textures in the ray march node itself.

Still quite hacky since I'm prioritizing progress over maintainability (for the time being).

25.01.2026 01:16 β€” πŸ‘ 6    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Game Engine (part 3)

Got animations working, but the code is hacky. Shader state, ImGui UI, and WebGPU resources are all mixed together. Need to do a full refactor.

24.01.2026 06:25 β€” πŸ‘ 6    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Engine Progress (part 2)

23.01.2026 03:04 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

β™ŠοΈ lowkenuinely 🐐

22.01.2026 07:25 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

C++ WebGPU Shader Engine Progress (part 1)

22.01.2026 03:32 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

This is the last time I restart writing my shader animation engine from scratch.

The previous two attempts taught me important lessons about (not using) web tech and writing maintainable code.

v1 - TypeScript and WebGL

v2 - C++ with SFML

v3 - C++ with WebGPU and ImNodes

19.01.2026 03:25 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Making progress on my C++ WebGPU shader editor.

18.01.2026 23:25 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Must resist the urge to use templates to clean up this (perfectly readable) C++ code.

17.01.2026 23:43 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Here's the latest update on my C++ WebGPU node editor. It now draws textures in each ImGui node.

Have to pause work on this project soon because I'm moving across the country from NYC to PNW and I haven't started packing yet!

27.12.2025 16:21 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Making some progress on this node editor. I made the graph data structure with nodes, edges, and ports (with help from ChatGPT of course).

In a surprise twist, solving 75+ LeetCode problems in C++ came in handy. I implemented the topological sort algorithm from scratch!

27.12.2025 00:12 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

After 5 hours of fighting CMake compiler errors, I finally got WebGPU working with ImGui and ImNodes!

I present to you the magenta Christmas tree.

Happy holidays everyone πŸŽ„

26.12.2025 00:17 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

AI Thought Experiment

50% less white collar jobs -> 50% less productivity SaaS apps needed (slack, gmail, notion, jira, msft word...)

Once company downsizes -> businesses that depend on said companies "growing in size" also lose.

AI doesn't need Slack, Jira, etc.

What now?

24.12.2025 22:44 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Got nerd-sniped into learning more about header files this afternoon so I had to speed run this after dinner.

Ran into a segfault, stepped through code in LLDB, found + fixed the bug, and finally got a triangle up and running in C++ and WebGPU!

22.12.2025 02:52 β€” πŸ‘ 5    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Setting up a new WebGPU project in C++ and realized that the API has changed since last time.

It's taking longer than I expected, but maybe I can render a triangle tomorrow.

I also ran 5 miles in 30 degree weather which was fun.

Time to take a break and play video games!

20.12.2025 23:21 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Today, I reset my LeetCode progress, and solved 50 problems in C++ in 4.5 hours.

No CPP reference, no ChatGPT, no Google, no NeetCode, no nothing.

Gonna call it the "Suboptimal 50 Speedrun Challenge".

Complete 50 problems from NeetCode 150 without any hints/help.

09.12.2025 23:09 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

C++ Learning Journey Part 8

Finally completed the classic "Blind 75" problem set on LeetCode.

I don't need to constantly check the C++ reference website which is nice. Can I start calling myself an advanced-beginner now?

08.12.2025 23:19 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

@suboptimaleng is following 20 prominent accounts