Skip to content

Instantly share code, notes, and snippets.

View HeadClot's full-sized avatar

Benjamin Stanley HeadClot

  • Utah, United States
  • 07:18 (UTC -06:00)
View GitHub Profile
@JeodC
JeodC / pm-primer-gms.md
Last active February 5, 2026 21:27
PortMaster: Understanding Game Maker Engine - A Primer

image PortMaster: Understanding Game Maker Ports - A Primer image

image

A large chunk of PortMaster ports are games using the GameMaker Engine. This engine (referred to as GMS) is an excellent beginner engine for getting into porting, but can also quickly become pretty advanced. This primer hopes to accurately summarize a few key points for how GMS ports are created and work.

Tools Used

PortMaster Engineers heavily rely on a few major tools that make GMS ports successful.

@reduz
reduz / GPU_driven_renderer.md
Last active February 27, 2026 11:01
GPU Driven Renderer for Godot 4.x

GPU Driven renderer design for Godot 4.x

Goals:

The main goal is to implement a GPU driven renderer for Godot 4.x. This is a renderer that happens entirely on GPU (no CPU Dispatches during opaque pass).

Additionally, this is a renderer that relies exclusively on raytracing (and a base raster pass aided by raytracing).

It is important to make a note that we dont want to implement a GPU driven renderer similar to that of AAA/Unreal, as example.

@SorraTheOrc
SorraTheOrc / SquadBehaviour.cs
Last active June 12, 2022 03:24
A simple script to provide more intelligent behaviour in Universal AI. It's still very basic but it improves things alot. You set up a Squad in the inspector and then in game they will tell each other of a spotted target and approach the target one at a time, giving covering fire to one another.
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UniversalAI;
namespace WizardsCode.UniversalAIExtension
{
public class SquadBehaviours : MonoBehaviour
{
@WolfgangSenff
WolfgangSenff / gist:168cb0cbd486c8c9cd507f232165b976
Last active December 19, 2025 12:36
Godot 4.0 Migration/Upgrade guide
## For a beginner-friendly version of the following (more advanced users likely will get better use of the below,
## if you're just starting out...), see this new gist:
## https://gist.github.com/WolfgangSenff/0a9c1d800db42a9a9441b2d0288ed0fd
This document represents the beginning of an upgrade or migration document for GDScript 2.0 and Godot 4.0. I'm focusing on 2D
at the moment as I'm upgrading a 2D game, but will hopefully have more to add for 3D afterward.
## If you want more content like this, please help fund my cat's medical bills at https://ko-fi.com/kyleszklenski - thank you very much! On to the migration guide.
@realStandal
realStandal / blockbench-to-unreal-engine-5.md
Last active October 2, 2023 22:28
Blockbench to Unreal Engine 5

The following is how an object can be exported from Blockbench and imported to Unreal Engine 5.

Objects can be created in Blockbench according to its intended scale (16 pixels = 1 meter).

Objects should be exported from BB in the .obj format.

The .obj can be imported into Unreal Engine, just like any other asset.

A rotation should be applied to the object should be applied, used to normalize coordinates from Blockbech to UE.

  • X: 90
@SorraTheOrc
SorraTheOrc / CiDyPedestrians.cs
Last active April 4, 2025 10:00
Extension to CiDy that will allow you to create a NavMesh to guide pedestrians around the city. Any NavMesh driven character can be used. I provide some basic open source pedestrian code (see https://www.patreon.com/posts/64257587 and https://youtu.be/nzzS40XHWA8) but it's not required. If you don't use my Character controller code you will need…
/*
Extension to CiDy that will allow you to create a NavMesh to guide pedestrians around the city.
Any NavMesh driven character can be used. I provide some basic open source pedestrian code
(see https://www.patreon.com/posts/64257587 and https://youtu.be/nzzS40XHWA8) but it's not
required. If you don't use my Character controller code you will need to make a couple of
small changes to the scripts (see comments) and build your own Custom Editor base on my code
below.
Add CiDyPedestrians to a convenient object in your scene, setup a couple of parameters and
click the "Build NavMesh" button.
@NovemberDev
NovemberDev / godot_async_scene_loader.gd
Last active March 12, 2025 16:00
Asynchronously loads scenes in godot
# Loads a scene in the background using a seperate thread and a queue.
# Foreach new scene there will be an instance of ResourceInteractiveLoader
# that will raise an on_scene_loaded event once the scene has been loaded.
# Hooking the on_progress event will give you the current progress of any
# scene that is being processed in realtime. The loader also uses caching
# to avoid duplicate loading of scenes and it will prevent loading the
# same scene multiple times concurrently.
#
# Sample usage:
#
@timetocode
timetocode / transfer-example.js
Created June 1, 2019 19:37
Example of transferring a player between two nengi instances while maintaining an authoritative server. One instance registers some information with the other instance, and provides the client with a token which it uses to be reconnected with that information after connecting to the other instance.
// pseudocode for transfers if game has a practically infinite number of instances.
// From one of the game servers
transfer(client, toInstance) {
toInstance.someWebApi.request(
{ transfer: { token: 'abc123', data }},
(res) => {
if (res.transferAccepted) {
instance.message(new TransferMessage(address, token)), client)
client.disconnect()
}
@robinduckett
robinduckett / IsometricCameraController.cs
Created January 1, 2019 16:08
RPG Top Down / Isometric Camera Controller in C# for Unity
// RPG Top Down / Isometric Camera Controller
// Tested on Unity 2018.3.0f1
// While using the setup suggested by
// https://answers.unity.com/questions/12027/how-to-do-a-camera-that-is-top-downisometric.html
// I found no off the shelf camera controllers that worked as I would have liked
// This is for basic mouse control (Rotate, Pan, Zoom)
// Improvement suggestions left as exercise for the reader: