This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var renderer = new PIXI.WebGLRenderer(1600, 1200, { | |
antialias: false, | |
transparent: true, | |
resolution: 2, | |
powerPreference: "high-performance" | |
}); | |
renderer.autoResize = true; | |
document.body.appendChild(renderer.view); | |
var stage = new PIXI.Container(); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const publicPath = 'public'; | |
// Node os module | |
// The os module provides a number of operating system-related utility methods. | |
// It can be accessed using: | |
const os = require('os'); | |
// Using a single monolithic configuration file impacts comprehension and | |
// removes any potential for reusability. | |
// As the needs of your project grow, you have to figure out the means to manage | |
// webpack configuration more effectively. |
A non-exhaustive list of WebGL and WebGPU frameworks and libraries. It is mostly for learning purposes as some of the libraries listed are wip/outdated/not maintained anymore.
Name | Stars | Last Commit | Description |
---|---|---|---|
three.js | ![GitHub |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const glslify = require('glslify'); | |
const path = require('path'); | |
const assign = require('object-assign'); | |
const defined = require('defined'); | |
// This is the original source, we will copy + paste it for our own GLSL | |
// const vertexShader = THREE.ShaderChunk.meshphysical_vert; | |
// const fragmentShader = THREE.ShaderChunk.meshphysical_frag; | |
// Our custom shaders |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const glslify = require('glslify'); | |
const path = require('path'); | |
// This is the original source, we will copy + paste it for our own GLSL | |
// const vertexShader = THREE.ShaderChunk.meshphysical_vert; | |
// const fragmentShader = THREE.ShaderChunk.meshphysical_frag; | |
// Our custom shaders | |
const fragmentShader = glslify(path.resolve(__dirname, 'standard.frag')); | |
const vertexShader = glslify(path.resolve(__dirname, 'standard.vert')); |
Code is clean if it can be understood easily – by everyone on the team. Clean code can be read and enhanced by a developer other than its original author. With understandability comes readability, changeability, extensibility and maintainability.
- Follow standard conventions.
- Keep it simple stupid. Simpler is always better. Reduce complexity as much as possible.
- Boy scout rule. Leave the campground cleaner than you found it.
- Always find root cause. Always look for the root cause of a problem.
This is my prefered way to create GIF animations for demos and whatnot.
- QuickTime » File » New Screen Recording
- Select area to record » Start recording your thing
- File » Export » Select max resolution available » Save
- Photoshop » Import » Video Frames to Layers (no need to follow step
2
if not on retina screen)