Jamie White

Co-founder @ Piing

How to use Nodemon with a custom node.js version

How to use a specific version of Node.js (using NVM) inside of Nodemon, so your application auto-reloads after code changes, but overrides the default node version. 1. Get Nodemon and NVM; then run the NVM command to install the version of node you need for your project. 2. Create an .nvmrc file in your project […]

AWS : Inspect Redis Elasticache Cluster on Local Machine

Launch amazin-linux ec2 server and create a security group on same VPC as your elasticache cluster. Expost port 22 / shh inbound. Assuming you have your AWS credentials prepped, run the following to create a tunnel to your redis server on port 9999 of your local machine: ssh -i ~/.ssh/{creds}.pem -L 9999:{remote-redis-host}:{remote-redis-port} ec2-user@{ec2-public-dns-name} You can […]

Convert Equirectangular HDRI to Face List

Here is a fast workflow to get an equirectangular HDR image into a format suitable for an hdr environment map in Three.js. We will be using a piece of open source software called cmftStudio (cube map filtering tool). So head over there and download & install the correct binary. Next grab yourself an equirectangular HDR […]

Firefox Chromeless Fullscreen

This is a solution to get Firefox (Quantum) working chromeless in fullscreen from startup. This would be useful for setting up a browser for a kiosk. Create a userChrome.css file: https://www.howtogeek.com/334716/how-to-customize-firefoxs-user-interface-with-userchrome.css/ Paste this in to the css file: Useful to have installed for any other tweaks to the browser style… https://developer.mozilla.org/en-US/docs/Tools/Browser_Toolbox Add this extension to […]

Multi-touch on MacOS in the Browser

I am faced, yet again, with making multi-touch work in the browser on MacOS. This has always been a tricky one to solve. There have been working solutions in the past but the ones I can find are broken in one way or another and have become dusty and forgotten. Probably because most people decide […]

MSAA (Anti-aliasing) on FBO’s in Cinder

Framebuffer objects in Cinder (by default) have no anti-aliasing which leaves your edges jagged. The solution is to create a Framebuffer format and specify the number of samples to use. More info on FBO’s and anti-aliasing

Hundreds of Thousands of Particles at 60 fps

Recently been getting to grips with Cinder, OpenGL and GLSL for a project. I managed to get close to a million particles drawing at around 60fps Here’s what I did to achieve this: Firstly I created a VBO mesh that contained randomly positioned vertices (each vertex represented a root particle position). Using VBO meshes mean […]

Over The Air AdHoc Distribution with Xcode 4.6

At developer.apple.com 1. Create App ID (this may be wildcard, so you can use it for multiple apps with the same bundle prefix. e.g. com.wehaverhythm.* for all internal apps.) 2. Create an AdHoc provisioning profile using the above App ID. (More devices can be added later, but must be added before distribution export). In Xcode […]