Skip to content

Instantly share code, notes, and snippets.

View luruke's full-sized avatar

Luigi De Rosa luruke

View GitHub Profile
$0 = 10 (Step pulse time, microseconds)
$1 = 25 (Step idle delay, milliseconds)
$2 = 0 (Step pulse invert, mask)
$3 = 1 (Step direction invert, mask)
$4 = 0 (Invert step enable pin, boolean)
$5 = 1 (Invert limit pins, boolean)
$6 = 0 (Invert probe pin, boolean)
$10 = 2 (Status report options, mask)
$11 = 0.010 (Junction deviation, millimeters)
$12 = 0.002 (Arc tolerance, millimeters)
/**
* Try to fix iOS lock on audio.
*
* By default, audio on iOS is locked until a sound is played within a user interaction,
* and then it plays normally the rest of the page session.
*/
// Inspired from https://github.com/goldfire/howler.js/blob/2.0/src/howler.core.js#L212
export default class IosUnlock {
import { Object3D } from 'three';
import { component } from 'bidello';
import { viewport, scroll } from './bidello';
import camera from './camera';
export default class extends component(Object3D) {
init() {
this.element = this._args[0];
}
@luruke
luruke / button.js
Last active October 25, 2019 12:23
import {
Mesh,
PlaneBufferGeometry,
RawShaderMaterial,
} from 'three';
import dom3D from '../dom3D';
import scene from '../scene';
import textures from 'gl/utils/textures';
import Button from './button/button';
import Person from './person/person';
import Footer from './footer/footer';
const elements = {
button: Button,
person: Person,
footer: Footer,
// ...
};
import { Component } from 'kapla';
import dom from 'gl/dom';
export default class extends Component {
init() {
dom.register(this.$el);
}
destroy() {
dom.unregister(this.$el);
<a href="#" data-component="trackable" data-type="button">Yo, button</a>
vec2 offsetr = vec2(trail.r * 0.003);
vec2 offsetg = vec2(trail.r * 0.005);
vec2 offsetb = vec2(trail.r * 0.007);
float r = texture2D(uScene, uv.xy + offsetr).x;
float g = texture2D(uScene, uv.xy + offsetg).y;
float b = texture2D(uScene, uv.xy + offsetb).z;
vec3 color = vec3(r, g, b);
import { component } from 'bidello';
import { visibility } from '../bidello';
import FBO from './fbo';
import { pointer } from '../bidello/index';
import {
Vector2,
LinearFilter,
} from 'three';
// Buffer
this.buffer = new FBO({
geometry: this.geometry,
width: SIZE_BUFFER,
height: SIZE_BUFFER,
name: 'buffer particles',
shader: `
precision highp float;
uniform sampler2D texture;
uniform sampler2D uImage;