・fillmember.net

Selected Shader Works

Some early WebGL adventures

#GLSL #C#

Reaction Diffusion Web Toy

GitHub: github.com/fillmember/rdtoy

Project active from 2014 to 2017

I found myself captivated by computer graphics that required intensive calculations, and I delved into exploring the creation of shaders in GLSL for the WebGL platform. This project is where I started to learn how to organize things as textures and write programs that are suitable for running in parallel.

The Ancient Stack

  • The UI was made with jQuery
  • The code was written in CoffeeScript
  • The WebGL framework was Three.js 0.77.0
beautiful user interface code in CoffeeScript
Charming CoffeeScript syntax

Reaction Diffusion Unity Camera Effect

GitHub: github.com/fillmember/ReactiveDiffusionEffects

I modified the shader in the web toy version and tried to make it run in Unity. The shader is packaged as an effect that can be applied to the active camera, smearing the view and adding delays to it. It works best with high contrast, semi-realistic renderings.


Some Useful Unity Scripts

GitHub: github.com/fillmember/UnityUtilities

Year: 2018

Some utility MonoBehaviours I wrote while working on VR projects at Artificial Rome.

Bonus

I found this ancient DIY project (2017) that exports a Cinema4D (designer's choice of 3D software) scene to a Three.js compatible format, before glTF and Blender 2.8 came to the rescue.


Unity Bridge

GitHub: github.com/fillmember/unity-bridge

During the lockdown (2021), I wrote this minimal framework that facilitates communication between the Unity WebGL target and the JavaScript side in the browser. This is useful, for example, for creating a responsive UI in the browser, or for taking advantage of real-time protocols like WebSocket, whose permissions are easier to manage in the browser.

I was helping a friend with their project, and I somehow actually wrote end-to-end tests in Cypress for it. I even drew this diagram to sell the idea to my peers: