Skip to content

Instantly share code, notes, and snippets.

View milcktoast's full-sized avatar
🔬
Making Microbium

Ash Weeks milcktoast

🔬
Making Microbium
View GitHub Profile
@milcktoast
milcktoast / drawProgress.js
Last active November 6, 2022 03:42
Draw progress bar in Node JS
// cols (int) – character width
// progress (float) – progress in the range (0-1)
function drawProgress (cols, progress) {
const { stdout } = process
let c0 = Math.round(progress * cols)
let c1 = cols - c0
let b0 = new Array(c0).fill('/').join('')
let b1 = new Array(c1).fill('.').join('')
@milcktoast
milcktoast / XrThree.js
Last active October 13, 2020 23:03
XrThree camera pipeline module for 8th Wall
import {
Scene,
PerspectiveCamera,
WebGLRenderer
} from 'three'
function createXrThree () {
let sessionState = {
isActive: false,
scene: null,
import {
NearestFilter,
RGBAFormat,
Uniform
} from 'three'
import {
BlendFunction,
Effect
} from 'postprocessing'
import { SavePass } from 'postprocessing'
export class SaveSwapPass extends SavePass {
render (renderer, inputBuffer, outputBuffer, deltaTime, stencilTest, composer) {
let currentRenderTarget = this.renderTarget
let composerRenderTargetName = inputBuffer === composer.inputBuffer
? 'inputBuffer'
: 'outputBuffer'
this.renderTarget = composer[composerRenderTargetName]
@milcktoast
milcktoast / index.js
Created February 20, 2018 22:08
WebVR polyfill – Vertex shader coordinates
const WebVRPolyfill = require('webvr-polyfill')
const polyfill = new WebVRPolyfill({
BUFFER_SCALE: 0.5,
CARDBOARD_UI_DISABLED: true,
DIRTY_SUBMIT_FRAME_BINDINGS: false
})
console.log('WebVRPolyfill', polyfill)
const regl = require('regl')({
@milcktoast
milcktoast / index.js
Created October 30, 2017 16:57
requirebin sketch
const createREGL = require('regl')
const { mat4 } = require('gl-matrix')
const { Stats } = require('@jpweeks/rstats')
const { LineBuilder } = require('regl-line-builder')
const regl = createREGL()
const setupCamera = regl({
uniforms: {
view: mat4.identity([]),
projection: ({ viewportWidth, viewportHeight }) => {
@milcktoast
milcktoast / index.js
Created October 30, 2017 16:52
requirebin sketch
const traversable = require('traverse')
const state = traversable({
layers: [
{
color: 'red'
},
{
color: 'blue'
}
@milcktoast
milcktoast / v005.md
Last active October 27, 2017 02:45
Bacterium Draw Prototype
@milcktoast
milcktoast / index.js
Created October 6, 2017 17:34
requirebin sketch
const createREGL = require('regl')
const mat4 = require('gl-mat4')
const { Stats } = require('@jpweeks/rstats')
const { LineBuilder } = require('regl-line-builder')
const regl = createREGL()
const setupCamera = regl({
uniforms: {
view: mat4.identity([]),
projection: ({ viewportWidth, viewportHeight }) => {
@milcktoast
milcktoast / index.js
Created October 4, 2017 19:16
requirebin sketch
const createREGL = require('regl')
const mat4 = require('gl-mat4')
const { LineBuilder } = require('regl-line-builder')
const regl = createREGL()
const setupCamera = regl({
uniforms: {
view: mat4.identity([]),
projection: ({ viewportWidth, viewportHeight }) => {
const w = viewportWidth / 2