Skip to content

Instantly share code, notes, and snippets.

View sortofsleepy's full-sized avatar

Joe sortofsleepy

View GitHub Profile
@sortofsleepy
sortofsleepy / build.zig
Created January 24, 2023 23:51
Zig build script - passing command line value example
const Builder = @import("std").build.Builder;
const std = @import("std");
pub const OptionsStep = @import("std").build.OptionsStep;
pub fn build(b: *Builder) void {
var option = b.option(bool,"Desktop", "Set to true to build desktop focused library");
if(option == true){
std.log.info("TODO",.{});
@sortofsleepy
sortofsleepy / fullscreentriangle.tsx
Last active May 18, 2023 13:32
a-big-triangle React / react-three-fiber
import * as React from "react"
import {useEffect, useMemo,} from "react"
import {Sphere, Vector2, GLSL3} from "three";
import {useThree} from "@react-three/fiber";
/**
* A port of a-big-triangle to react-three-fiber.
*
* https://github.com/mikolalysenko/a-big-triangle
*
@sortofsleepy
sortofsleepy / houdini_json_geo_export.py
Created June 13, 2021 17:38
Basic way to export props of a geo node in Houdini into Json.
import json, os
# adapted from here with minor tweaks
# https://github.com/sideeffects/GameDevelopmentToolset/blob/Development/otls/rop_csv_exporter.hda/gamedev_8_8Driver_1rop__csv__exporter/PythonModule#L43
# needs a bit more work to make it better but works well enough for now.
node = hou.pwd()
geo = node.geometry()
filename = "./tester.json"
import * as vscode from 'vscode';
import {existsSync,promises,readFileSync} from "fs"
import {resolve, posix, normalize} from "path"
let getFiles = async(dir) =>{
const dirents = await promises.readdir(dir,{
withFileTypes:true
@sortofsleepy
sortofsleepy / shaderrcsample.cpp
Created June 8, 2020 03:13
sample of how to use shaderc to compile shaders
void Shader::compile(VkDevice * device,const std::string source_name, shaderc_shader_kind kind, const std::string source,
bool optimize) {
shaderc::Compiler compiler;
shaderc::CompileOptions options;
if(optimize){
options.SetOptimizationLevel(shaderc_optimization_level_size);
}
@sortofsleepy
sortofsleepy / example.cpp
Created May 30, 2020 15:07
Example of how to deal with HTML elements and callbacks entirely in Emscripten/C++.
/*
I know I pieced this together largely from another person's idea and their goal of trying to deal with
XMLHTTPRequests. I unfortunately can't find the original source, if you happen to be that person and this looks
familiar, link me to your post(s) and I'll credit you properly
*/
// Somewhere in your .cpp file "EmscriptenCallback" and "Callback" can be whatever you want, it just has to be a unique name
// for the argument to the std::function, that can be whatever you want too but for the purposes of this i think it makes sense to
// leave it as a val since you're expecting an event object back.
@sortofsleepy
sortofsleepy / copyGeo.h
Created May 23, 2020 03:09
Example of how to copy geometry with a VEX node in Houdini.
int numVerts = nvertices(1);
int numPoints = npoints(1);
int numPrim = nprimitives(1);
int ptTally = 0;
// copy all the primitives,vertex data, and indices.
for(int p = 0; p < numPrim; ++p){
int prim = addprim(0,"poly");
CompilerResultsLog: Error: NatureOfCodeGameModeBase.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl FDeferredCleanupInterface::FinishCleanup(void)" (?FinishCleanup@FDeferredCleanupInterface@@UEAAXXZ)
CompilerResultsLog: Error: NatureOfCodeGameModeBase.cpp.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl FShader::Serialize(class FArchive &)" (?Serialize@FShader@@UEAA_NAEAVFArchive@@@Z)
CompilerResultsLog: Error: NatureOfCodeGameModeBase.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FVertexFactoryParameterRef const * __cdecl FShader::GetVertexFactoryParameterRef(void)const " (?GetVertexFactoryParameterRef@FShader@@UEBAPEBVFVertexFactoryParameterRef@@XZ)
CompilerResultsLog: Error: NatureOfCodeGameModeBase.cpp.obj : error LNK2001: unresolved external symbol "public: virtual unsigned int __cdecl FShader::GetAllocatedSize(void)const " (?GetAllocatedSize@FShader@@UEBAIXZ)
CompilerResultsLog: Error: NatureOfCodeGameM
{"keyboard":"walletburner/neuron","keymap":"walletburner_neuron_layout_mine","layout":"LAYOUT","layers":[["KC_ESC","KC_Q","KC_W","KC_E","KC_R","KC_T","KC_Y","KC_U","KC_I","KC_O","KC_P","KC_BSPC","KC_TAB","KC_A","KC_S","KC_D","KC_F","KC_G","KC_H","KC_J","KC_K","KC_L","KC_ENT","KC_LSFT","KC_Z","KC_X","KC_C","KC_V","KC_B","KC_N","KC_M","KC_COMM","KC_DOT","MO(1)","KC_LCTL","KC_LGUI","MO(3)","KC_NO","KC_SPC","MO(2)","KC_RALT"],["KC_NO","KC_PGDN","KC_UP","KC_PGUP","KC_NO","KC_NO","KC_NO","KC_NO","KC_LPRN","KC_RPRN","KC_SLSH","KC_BSLS","KC_NO","KC_LEFT","KC_DOWN","KC_RGHT","KC_NO","KC_NO","KC_NO","KC_GRV","KC_SCLN","KC_LCBR","KC_RCBR","KC_LSFT","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_EQL","KC_NO","KC_QUOT","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO"],["KC_NO","KC_1","KC_2","KC_3","KC_4","KC_5","KC_6","KC_7","KC_8","KC_9","KC_0","KC_BSPC","KC_NO","KC_F1","KC_F2","KC_F3","KC_F4","KC_F5","KC_F6","KC_F7","KC_F8","KC_F9","KC_F10","KC_LSFT","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO",
@sortofsleepy
sortofsleepy / .gitignore
Created April 3, 2020 23:37
Common stuff I usually leave out
.DS_Store
node_modules/
vc2015/.vs
vc2015/x64
backup/