Skip to content

Instantly share code, notes, and snippets.

View mikolalysenko's full-sized avatar

Mikola Lysenko mikolalysenko

View GitHub Profile
@mikolalysenko
mikolalysenko / head.html
Created July 6, 2013 19:50
made with requirebin.com
<style type='text/css'> html, body { margin: 0; padding: 0; border: 0; } </style>
@mikolalysenko
mikolalysenko / index.js
Created July 8, 2013 17:23
made with requirebin.com
var shell = require("gl-now")()
var createMesh = require("gl-mesh")
var simple3DShader = require("simple-3d-shader")
var attachCamera = require("game-shell-orbit-camera")
var glm = require("gl-matrix")
var mat4 = glm.mat4
var shader, mesh
var camera = attachCamera(shell)
@mikolalysenko
mikolalysenko / index.js
Created July 8, 2013 17:25
made with requirebin.com
var shell = require("gl-now")()
var createMesh = require("gl-mesh")
var simple3DShader = require("simple-3d-shader")
var attachCamera = require("game-shell-orbit-camera")
var glm = require("gl-matrix")
var mat4 = glm.mat4
var shader, mesh
var camera = attachCamera(shell)
@mikolalysenko
mikolalysenko / index.js
Created July 8, 2013 17:28
made with requirebin.com
var shell = require("gl-now")()
var createMesh = require("gl-mesh")
var simple3DShader = require("simple-3d-shader")
var attachCamera = require("game-shell-orbit-camera")
var glm = require("gl-matrix")
var mat4 = glm.mat4
var shader, mesh
var camera = attachCamera(shell)
@mikolalysenko
mikolalysenko / index.js
Created July 9, 2013 14:56
made with requirebin.com
var shell = require("gl-now")()
var camera = require("game-shell-orbit-camera")(shell)
var createTileMap = require("gl-tile-map")
var createBuffer = require("gl-buffer")
var createVAO = require("gl-vao")
var ndarray = require("ndarray")
var fill = require("ndarray-fill")
var ops = require("ndarray-ops")
var terrain = require("isabella-texture-pack")
var createAOMesh = require("ao-mesher")
//Initialize array
var array = new Array(1024)
for(var i=0; i<array.length; ++i) {
array[i] = []
}
//Indexing...
function get(key) {
var list = array[key % array.length]
@mikolalysenko
mikolalysenko / gist:6025734
Last active December 19, 2015 22:09
Generated ambient occlusion code for ao-mesher
var s0 = SS[0]
, s1 = SS[1]
, s2 = SS[2]
, q0 = t3[2] | 0
, q1 = 2 * t3[2] | 0
, q2 = t3[1] | 0
, q3 = t3[1] + t3[2] | 0
, q4 = t3[1] + 2 * t3[2] | 0
, q5 = 2 * t3[1] | 0
, q6 = 2 * t3[1] + t3[2] | 0
@mikolalysenko
mikolalysenko / index.js
Created August 6, 2013 02:38
requirebin sketch
var raf = require("raf")
var canvas = document.createElement("canvas")
canvas.width = 500
canvas.height = 500
document.body.appendChild(canvas)
var context = canvas.getContext("2d")
var zoom = 10
@mikolalysenko
mikolalysenko / index.js
Created August 6, 2013 02:41
requirebin sketch
var raf = require("raf")
var canvas = document.createElement("canvas")
canvas.width = 500
canvas.height = 500
document.body.appendChild(canvas)
var context = canvas.getContext("2d")
var zoom = 10
uniform vec2 worldSize;
uniform vec2 tileScale;
uniform sampler2D tileIds; //This is the map you update every frame
uniform sampler2D tileSheet; //This has the texture data
varying vec3 worldCoord;
void main() {
vec2 worldUV = worldCoord.xy / worldCoord.z;
vec2 tileCoord = tileScale * (floor(255.0 * texture2D(tileIds, floor(worldUV) / worldSize).ra) + fract(worldUV));
gl_FragColor = texture2D(tileSheet, tileCoord);