Playing Around With A 2D Wave Algorithm

If anyone reading this is prone to epileptic seizures, you may not want to watch the embedded videos. The other day I was thinking about the old Hugo Elias 2D Water article and decided to play around with it. He writes about a 2D water effect that handles an arbitrary number of ripples without using …

Streaming Microphone Audio To Unity WebGL

This is going to cover the steps I used to get the microphone working for the granulation demo.The GitHub repo for that demo can be found here. NOTE: Before reading further, please note that this only covers recording the microphone from the browser’s Unity WebGL app. It does NOT cover streaming audio playback or internet …

Notes on Audio Granulation

Retiming audio with granulation – and a simple sample in a Unity WebGL example. If we had data for an audio clip and asked someone how to change the playback speed, we’d get a common answer for both, “change the rate we process and play the audio” or “resample the audio data to go through …

Calculating an Even Width For a Line Strip

The operation goes by several names: expanding, dilating, inflating, etc. Basically, given a series of ordered points, how do we calculate a path that’s the line strip, but with an even width? A caveat, this is not going to be an optimized solution, but given the basic intuition I hope to bring, and the resulting …

Font Viewer

A Unity WebGL tool to browse the internals of font files. It supports OTF and TTF files. Either hit the “Load” button or drag and drop a file into the Unity player. Fullscreen The font parsing library and path boolean library are still a work in progress so there are quite a few edge cases …

Multiple Unity Inspectors

Sometimes there are occasions where I need multiple inspectors open to compare items or analyze an item while keeping my place viewing another item that I’m editing. On the top right of each docked pane of Unity, there is a hamburger icon. In the Add Tab section, there is the option for another Inspector. This …

Viewing Debug Log Messages In a Unity WebGL App

TL;DR When debugging Unity WebGL apps, use the web browser’s developer tools. For Chrome browsers press the F12 key – for other browsers see below in the browser section. Unity Debug.Log*() calls redirect to the browser’s dev tools console. With that being said, if you have the spare time and want a more elaborate deep-dive …

Completely Suspending Unity WebGL Apps

I’ve previously posted about pausing an application in Unity. What if we want to pause it completely? Unfortunately, I haven’t been able to find an official way – and the fact that there’s a pause function that doesn’t actually pause (it throttles) leads me to assume there might not actually be an official way to …

Throttling a Unity WebGL App

Sometimes, you may find that a WebGL app is taking up a lot of processing. While you’re browser may not show you exactly how much processing it’s talking, you’ll notice in the task manager that the process is taking up a lot more of the processor’s utilization when looking at your site and web app …

Delaying Unity WebGL Apps With Image Placeholders

When you build a WebGL app from Unity and use the test HTML sample code to embed the page, it starts immediately. If you want your app for an event before launching the app, here’s an example of hosting the app with a stand-in placeholder image – where the user must click the image before …