phoboslab | 2 years ago | on: When should you use the IN instead of the OR operator in Postgres?
phoboslab's comments
phoboslab | 2 years ago | on: Quake's lightning gun bug explained [video]
In the likely event that this fails, I'll just YOLO it and put it on Github. After all, Sony didn't care that I published[1] all of wipEout's assets seven years ago.
phoboslab | 2 years ago | on: Quake's lightning gun bug explained [video]
Modifying Quake to run on the Occulus Rift was a breeze[2], compared to the mountains of garbage I have to wade through with wipEout.
[1] https://twitter.com/phoboslab/status/1653707447586922498
phoboslab | 2 years ago | on: Quake's lightning gun bug explained [video]
Also, the distinct style of the last episode is easily explained by the fact that all of its maps were built by Sandy Petersen. E3 was mostly American McGee, while John Romero and Tim Willits worked on E1 and E2.
I'm not a fan of Petersen's maps either, but they are regarded (and liked) as quite unique, compared to the rest of the game.
phoboslab | 2 years ago | on: The Disappointment of 5G
phoboslab | 3 years ago | on: QOA, the Quite OK Audio Format
[1] https://github.com/phoboslab/qoa/blob/master/qoa.h#L324-L336
phoboslab | 3 years ago | on: QOA, the Quite OK Audio Format
I haven't done any formal benchmarks, but with a simple `time` on the command line QOA encodes 10x faster and decodes 7x faster than Opus.
QOA should be quite suitable for SIMD optimizations, which would improve performance even more. Still on my todo list.
phoboslab | 3 years ago | on: QOA, the Quite OK Audio Format
- Original, 4039kb: https://phoboslab.org/files/qoa-samples/adpcm_comp/orig.wav
- MS ADPCM, 1022kb: https://phoboslab.org/files/qoa-samples/adpcm_comp/ms_adpcm....
- QOA, 812kb: https://phoboslab.org/files/qoa-samples/adpcm_comp/qoa.wav
IMA ADPCM is in the same ballpark as MS ADPCM. ADX (not listed) comes close to QOA, but at 1136kb is also larger than those traditional ADPCM flavors.
phoboslab | 3 years ago | on: Quite OK Image is now my favorite asset format
The benchmark suite[1] I compiled contains many different types of images. The "industry standard" sets like the Kodak and Tecnick Photos, texture packs and icons are complete. No images have been removed from these sets. Some of the other collections (photos and game screenshots from Wikipedia and those from pngimg.com) are a random sample. I did not remove any images just because they compressed badly.
Also, the fact that some images compress badly is a non issue, if the whole set of assets that you need for your game/app combined have an acceptable compression ratio. If that's not the case, by all means, chose another image format.
On average, for a lot of assets types, QOI usually performs quite ok.
phoboslab | 3 years ago | on: Making all your integers positive with zigzag encoding
uval = (val<<1) ^ (val>>31);
Variations of this have probably been used countless of times in other libraries.[1] https://github.com/LordJZ/libflac/blob/master/src/libFLAC/bi...
phoboslab | 3 years ago | on: System memory allocator free operation zeroes out deallocated blocks in iOS 16
> Since this app hasn’t been updated within the last three years [...] it has been removed from the App Store
phoboslab | 3 years ago | on: The last person standing in the floppy disk business
We are moving towards a solid state future where no user interaction directly drives mechanics. Physical media has largely disappeared, few cars are sold with a manual transmission and everything is wireless.
Maybe folding phones will fill the gap. For now, at least my toaster remains!
phoboslab | 3 years ago | on: Final thoughts on Ubiquiti
You only ever hear about it when he gets high profile cases wrong.
When my project was targeted by him, he ended up going down some conspiracy rabbit hole and doxed all the wrong people. This forced me to issue a correction - mission accomplished, I guess.
During his "investigation" he accidentally sent an email that was meant for his business partner to some of my friends. It offered a glimpse into his sensationalist mindset. I don't have much respect for that guy.
phoboslab | 3 years ago | on: Why does gRPC insist on trailers?
phoboslab | 3 years ago | on: Miniexpect – A very simple expect-like library
So for everyone as ignorant as myself, I guess it's referring to this[1]:
> Expect is a tool for automating interactive applications such as telnet, ftp, passwd, fsck, rlogin, tip, etc.
phoboslab | 3 years ago | on: Embed is in C23
It's a crutch, but at least you don't need to stuff the shader into multiple "strings" or have string continuations (\) at the end of every line. Plus you get some syntax highlighting from the embedding language. I.e. the shader is highlighted as C code, which for the most part seems to be close enough.
[1] https://github.com/phoboslab/pl_mpeg/blob/master/pl_mpeg_pla...
phoboslab | 3 years ago | on: Video codecs and 4k
For MPEG-1 this is not true anymore. All patents have expired. It's also far less computationally expensive and easier to implement/integrate than more modern codecs. This makes MPEG-1 a "good enough" solution for (e.g.) short video clips in a game.
Disclaimer: I wrote pl_mpeg[1], so my opinion is biased.
phoboslab | 3 years ago | on: Square-Enix sells all of its Western game studios and their games to Embracer
phoboslab | 4 years ago | on: Wipeout (PSX and Windows Source)
[1] https://phoboslab.org/log/2015/04/reverse-engineering-wipeou...
phoboslab | 4 years ago | on: Show HN: Self-hosted service for creating random avatars
Related: here's some PHP code I wrote 14 years ago that does something similar, but tries to generate aesthetically pleasing avatars: