TShader Blog Posts

Why Do I Love the Go Programming Language as a C++ Dev?

Last months I have been writing a lot of Go, and I have to admit it — I am in love. What is so great about the language? Let’s see.

golang.webp

Golang Is Array-Centric

If you are good with arrays, you are good with Go (kind of). The default way to do anything is to use a dynamic array, not a list. A Go slice is very similar to std::vector.

Read more →

Bottle Liquid Shader with Physics for Android VR

This is a shader I created in three days for bottles in the game VR Bartender. The frame budget was very tight because there were many of these bottles in the scene, and it had to run at 70 fps on the Oculus Quest 1 (Android).

bottlefront.jpg

ginbottle.jpg Transparency is faked by using cubemaps.

The most common method of doing this (faking a liquid surface with two-sided rendering) was not an option here, because of the performance cost of using a mask or any form of transparency. My method is much more performant and works great on low-end devices.

Read more →