Skip to content

Instantly share code, notes, and snippets.

View meshula's full-sized avatar
💭
Exploring liminal spaces

Nick Porcino meshula

💭
Exploring liminal spaces
View GitHub Profile
class Marker {
}
class Element {
var layers = [CGImage?]() // this will become an ImageIndex that refers to a jpg, tile, etc
var markers = [Int]()
var start_frame = Int(0)
var end_frame_ex = Int(0)
var in_frame = Int(0)
@meshula
meshula / usd-tbb-boost.md
Last active October 14, 2021 12:18
usd-tbb-boost.md

boost removal is an ongoing, low noise effort.

At this point, if you build without python, you can build the usd libraries treating boost as header only, without actually building boost. one or two of the command line tools use boost for command line options.

Porting those to (my suggestion) CLI11 would remove the last non-python boost dependency.

to be redundant and clear: you can manually cherrypick the boost headers

There's two kinds of documentation you can reasonably achieve, forensic, and narrative.

Placing a camera in the room and pointing it at the screen is forensic. You can go much farther than a camera in the room, and record an in-experience motion trace of objects in the virtual world, as well as HMD and controller pose.

Narrative documentation is crafted recordings, meant to communicate specific points, and the creation of the narrative documentation is no different than making a movie.

The fundamental problem with forensic documentation is the same as in court room. Maybe the camera was pointed in the wrong direction when the murder occurred, or you neglected to record a crucial signal such as in-experience audio cues.

The fundamental problem with narrative documentation is that you can't omnisciently provide the answers to future questions.

Definitions

Ansible server - where ansible is installed Module - a set of commands meant to run on the client Task - a section in a playbook with a single procedure to complete Role

  • independent yaml files that can be invoked from
@meshula
meshula / classic-film-editing.md
Created October 24, 2021 19:33
Classic film editing

The basis for the mathematical roots of non-linear editing begins with its roots in film.

At the end of day of shooting, rolls of film for images, and reels of magnetic tape for sound, were gathered for developing and processing. Once the film was developed, the audio was registered with the image frames, by transfer to a so called “mag track”. If the source film was 35mm, with four perforations per frame, the audio was transferred to a a 35mm mag track, recorded at the appropriate speed such that each four perforations on the mag track corresponded to 1/24 of a second of sound.

A clapper was recorded for each take recorded to film and tape; and a frame was manually marked on the film where the boards of the clapper first visually meet. The audio was then matched to the film so that the peak in the audio recording of the clapper matches the frame where the clapper's “sticks” met. The perforations in the film and the audio track provide the increments forward and back that the mag-track can be synchronized

@meshula
meshula / strings.hpp
Created November 24, 2021 19:39
strings.hpp
#include <atomic>
#include <cstdlib>
#include <vector>
#include <stdlib.h>
//#define PRINT(...) printf(__VA_ARGS__)
#define PRINT(...)
/*
1>------ Build started: Project: tinyusd, Configuration: RelWithDebInfo x64 ------
1>main.obj : error LNK2001: unresolved external symbol "class pxrInternal_v0_22__pxrReserved__::Usd_PrimFlagsConjunction const pxrInternal_v0_22__pxrReserved__::UsdPrimDefaultPredicate" (?UsdPrimDefaultPredicate@pxrInternal_v0_22__pxrReserved__@@3VUsd_PrimFlagsConjunction@1@B)
1>main.obj : error LNK2001: unresolved external symbol "private: static char * * pxrInternal_v0_22__pxrReserved__::Sdf_Pool<struct pxrInternal_v0_22__pxrReserved__::Sdf_PathPrimTag,24,8,16384>::_regionStarts" (?_regionStarts@?$Sdf_Pool@USdf_PathPrimTag@pxrInternal_v0_22__pxrReserved__@@$0BI@$07$0EAAA@@pxrInternal_v0_22__pxrReserved__@@0PAPEADA)
1>main.obj : error LNK2001: unresolved external symbol "private: static char * * pxrInternal_v0_22__pxrReserved__::Sdf_Pool<struct pxrInternal_v0_22__pxrReserved__::Sdf_PathPropTag,24,8,16384>::_regionStarts" (?_regionStarts@?$Sdf_Pool@USdf_PathPropTag@pxrInternal_v0_22__pxrReserved__@@$0BI@$07$0EAAA@@pxrInternal_v
@meshula
meshula / README.md
Created December 13, 2021 05:31 — forked from pfgithub/CALLOC.md
wrapper to use a zig allocator in c code

usage

export allocation functinos from zig

comptime {
    @import("calloc").wrapAllocator(struct {
        pub fn getAllocator() std.mem.Allocator {
            return …;
 }
@meshula
meshula / zig.md
Last active December 21, 2021 17:29
zig notes

by our incantations we manipulate the dance of electrons in the microcosm, the very fabric of the universe itself

.? is equivalent to orelse unreachable. So to unwrap you can either do const y = x orelse <default>; or if (x) |unwrapped_x| {};

One way to debug ZLS lookups is to do zig run zls/zig-out/bin/build-runner.zig --pkg-begin "@build@" path/to/your/build.zig --pkg-end and make sure it outputs a list of packages.

Using slices for a stringmap

@meshula
meshula / pipeline.labfx
Created December 23, 2021 02:38
pipeline program
--- labfx version 1.0
name: Particles
version: 1.0
-------------------------------------------------------------------------------
buffer: gbuffer
has depth: yes