Skip to content

Instantly share code, notes, and snippets.

View ikeryou's full-sized avatar

ikeryou ikeryou

View GitHub Profile
@ikeryou
ikeryou / InlineMovie.coffee
Created April 13, 2017 11:43
スマホでの動画インライン再生 for WebGL
# 画面いっぱいに動画をWebGLでインライン再生させる
class InlineMovie
constructor: ->
# video要素
@_video
@ikeryou
ikeryou / acceleration.js
Created September 8, 2016 06:57
スマホの加速度取得
window.ondevicemotion = _eDevicemotion;
function _eDevicemotion(e) {
var accelX = e.acceleration.x;
var accelY = e.acceleration.y;
}
@ikeryou
ikeryou / collision.coffee
Last active September 8, 2016 06:45
衝突判定
class Ball
constructor: ->
@radius = 0
@x = 0
@y = 0
@vx = 0
@vy = 0
@mass = 1
@ikeryou
ikeryou / resizeBufferGeometry.js
Created September 8, 2016 00:28
three.js BufferGeometryのサイズ設定
geo = new THREE.BufferGeometry();
geo.setIndex(new THREE.BufferAttribute(new Uint16Array(3 * 2), 1));
geo.addAttribute('position', new THREE.BufferAttribute(new Float32Array(3 * 4), 3));
geo.addAttribute('uv', new THREE.BufferAttribute(new Float32Array(2 * 4), 2));
// サイズ
w = 1000;
h = 1000;
// 頂点インデックス
@ikeryou
ikeryou / initThree2.js
Created September 8, 2016 00:23
three.js初期化 主に2D系
// カメラ
var camera = new THREE.OrthographicCamera();
// レンダラー
// id=mainのcanvasタグ指定
var renderer = new THREE.WebGLRenderer({
antialias: false,
canvas: document.getElementById('main')
});
renderer.setPixelRatio(window.devicePixelRatio || 1);
@ikeryou
ikeryou / meshDispose.js
Created September 6, 2016 05:30
three.jsでのMeshの破棄
scene.remove(mesh);
mesh.material.dispose();
mesh.geometry.dispose();
// テクスチャもう使わない場合は手動で破棄
tex.dispose(); // or mesh.material.map.dispose();
@ikeryou
ikeryou / pixel.js
Last active July 23, 2018 06:39
3Dでのピクセル等倍
// カメラ座標
var cameraPos = new Vector3();
// ステージ高さ
var stageHeight = 900;
// 度単位でのカメラの視野
var fieldOfView = 45;
// ピクセル等倍になるカメラZ値
@ikeryou
ikeryou / spring.js
Created September 1, 2016 06:40
バネ
var spring = 0.5;
var friction = 0.5;
var v = 0;
var t = 100; // 目標値
var val = 0; // 現在値
function update() {
v += (t - val) * spring;
val += (v *= friction);
}
@ikeryou
ikeryou / easeOut.js
Last active September 1, 2016 06:38
イージングアウト
// 目標値
var t = 100;
// 現在値
var val = 0;
function update() {
val += (t - val) * 0.5;
if(Math.abs(t - val) < 0.5) {
val = t;
@ikeryou
ikeryou / trigonometric.js
Created September 1, 2016 06:34
三角関数
// x = 底辺
// y = 対辺
// r = 斜辺
// radian = 底辺、斜辺間の角度(ラジアン)
var x = r * Math.cos(radian);
var y = r * Math.sin(radian);
var r = x / Math.cos(radian);
var r = y / Math.sin(radian);