Skip to content

Instantly share code, notes, and snippets.

View mwaitzman's full-sized avatar

mwaitzman

  • 'merica
View GitHub Profile
@raysan5
raysan5 / raylib_vs_sdl.md
Last active July 8, 2025 18:03
raylib vs SDL - A libraries comparison

raylib_vs_sdl

In the last years I've been asked multiple times about the comparison between raylib and SDL libraries. Unfortunately, my experience with SDL was quite limited so I couldn't provide a good comparison. In the last two years I've learned about SDL and used it to teach at University so I feel that now I can provide a good comparison between both.

Hope it helps future users to better understand this two libraries internals and functionality.

Table of Content

1.17.1 Client-Side Fabric Modlist

  • Ambient indicates the mod adds audio ambience.
  • Optimization simply optimizes the game so it runs better. Just throw all of these mods into the mod folder without thinking about it
  • Visual means that it's purely a visual change, usually some form of tweak.
  • Tweak without the Visual tag means that it modifies existing behavior/functionality. Feature means it adds new functionality/other.
  • OF-Alt means that it's an Optifine Alternate

APIs & Dependencies

@programminghoch10
programminghoch10 / snapchat_data_extractor.sh
Last active June 20, 2025 03:09
Snapchat Data Extractor
#!/bin/bash
if [[ $(id -u) -ne 0 ]]; then
echo "This script must be run as root"
exit 1
fi
if [ -z $(pm list packages | grep com.snapchat.android) ]; then
echo "Snapchat not found"
exit 1
fi
@gullyn
gullyn / flappy.html
Last active January 24, 2025 00:41
Flappy bird in 205 bytes (improved!)
<body onload=z=c.getContext`2d`,setInterval(`c.width=W=150,Y<W&&P<Y&Y<P+E|9<p?z.fillText(S++${Y=`,9,9|z.fillRect(p`}*0,Y-=--M${Y+Y},P+E,9,W),P))):p=M=Y=S=6,p=p-6||(P=S%E,W)`,E=49) onclick=M=9><canvas id=c>
function randomSequenceOfUnique(intermediateOffset: number, seedBase = 1) {
// from https://preshing.com/20121224/how-to-generate-a-sequence-of-unique-random-integers/
let index = permuteQPR(permuteQPR(seedBase) + 0x682f01);
function permuteQPR(x: number) {
const prime = 16777199;
const halfPrime = 8388599;
if (x >= prime) return x; // The 17 integers out of range are mapped to themselves.
// squaring can cause exceeding 2^53
@blizzrdof77
blizzrdof77 / new_env_var.sh
Created September 15, 2020 23:03
Create new environment variable & print assignment statement to your shell's '.rc' file
# -----------------------------------------
# Create new environment variable & print assignment statement to your shell's '.rc' file
#
# @1 = variable new
# @2 = variable definition
# @requires: '~/.zshrc' or '~/.bashrc'
# -----------------------------------------
function new_env_var {
local detected_shell="$(ps -o comm= -p $$)"
local rcfile=$(echo "${HOME}/.${detected_shell//-/}rc")
@LambdAurora
LambdAurora / optifine_alternatives_fabric.md
Last active May 29, 2025 16:32
Recommended OptiFine alternatives on Fabric

The list is moving out!

If you share this list, please use this link instead: https://lambdaurora.dev/optifine_alternatives

It may still be only a redirection link, but it will have a better web display of the list soon. And the list being on GitHub/GitHub pages improves load times.

The gist version of this list will stop being updated.

Why?

@raysan5
raysan5 / custom_game_engines_small_study.md
Last active July 10, 2025 04:43
A small state-of-the-art study on custom engines

CUSTOM GAME ENGINES: A Small Study

a_plague_tale

WARNING: Article moved to separate repo to allow users contributions: https://github.com/raysan5/custom_game_engines

A couple of weeks ago I played (and finished) A Plague Tale, a game by Asobo Studio. I was really captivated by the game, not only by the beautiful graphics but also by the story and the locations in the game. I decided to investigate a bit about the game tech and I was surprised to see it was developed with a custom engine by a relatively small studio. I know there are some companies using custom engines but it's very difficult to find a detailed market study with that kind of information curated and updated. So this article.

Nowadays lots of companies choose engines like [Unreal](https:

@hyjk2000
hyjk2000 / .alacritty.yml
Created February 12, 2020 08:48
Alacritty with Tmux Setup
# Configuration for Alacritty, the GPU enhanced terminal emulator.
# Any items in the `env` entry below will be added as
# environment variables. Some entries may override variables
# set by alacritty itself.
#env:
# TERM variable
#
# This value is used to set the `$TERM` environment variable for
# each instance of Alacritty. If it is not present, alacritty will
@jimmychu0807
jimmychu0807 / string-conversion.rs
Created November 21, 2019 10:20
Conversion between String, str, Vec<u8>, Vec<char> in Rust
use std::str;
fn main() {
// -- FROM: vec of chars --
let src1: Vec<char> = vec!['j','{','"','i','m','m','y','"','}'];
// to String
let string1: String = src1.iter().collect::<String>();
// to str
let str1: &str = &src1.iter().collect::<String>();
// to vec of byte