Recent Blogs Posts

  1. Shadertoy demo

    Long time no see! I've been busy working on the next 10 Lego movies. But hey, here is my first shadertoy contribution.

    Updated 09-07-2015 at 11:58 PM by Artur

  2. Real world sky dome

    Another WebGL experiment with Three.js Real world sky dome lighting and shading:
    Not really finished (nothing ever is) but working features so far are:
    • Physically Based Atmosphere shader
    • Irradiance bake (using three.js IcosahedronGeometry for sampling directions)
    • Blurry reflections
    • Real world sun positioning with Google Maps
    • Cloud cover from Google Maps Weather Layer
    • ...

    And things I'm hoping to add
    • Google Maps WebGL buildings (possible?)
    • Moon and accurate stars
    • Fog, Rain, Snow from Google Weather
    • Cloud animation from Google Weather wind direction
    • Cloud lighting
    • Proper irradiance sampling
    • Sun directional light hack needs proper sampling too
    • Upload source code somewhere useful but currently can be sourced from

    • Bug in Three.js. When normal maps in use, cube reflection map coordinates are wrong. World normals are replaced with view normals and thats incorrect.
    • Only works in Chrome for some reason

    Libraries and source codes used:
    Three.js, Atmosphere Shader, snoise, SunCalc, dat.gui, Google Maps, jQuery, Raphaël

    Updated 05-07-2014 at 01:06 PM by Artur

  3. Escher's Eye reAnimation

    Another WebGL demo based on previous eye shader project. Might be a bit of an overkill for this 2D/3D hybrid. Also has some seriously lazy way of displacing the eyelids. Should be passing eyeball rotational vector for positioning the displacement instead of approx mouse location.

    Credits to M.C. Escher and my brother for helping out with few textures.

    Built using Three.js libraries.
  4. GLSL shading in WebGL

    My first attempt at WebGL using Three.js libraries. Check it:

    Eye shader main features:
    • Texture raytracing to simulate cornea refractions
    • Loads of parameters to customize the eye
    • Cornea vertex displacement
    • Normal maps
    • Reflections
    • Simple image based 'lighting'

    There is still some room for optimization in fragment shader. I feel like, I'm doing too many space transformations at the end. Also, I couldn't figure out how to access gl_ModelViewMatrixInverse in vertex shader so modelViewMatrix gets inverted in the vertex shader. Recalculating normals of displaced vertices is also questionable. I'm planning to add cat eye shape and caustics.

    Environments from and
    Eye textures from and Lukas Hajka

    Images processed with Photoshop and Crazybump

    Updated 02-24-2014 at 10:36 PM by Artur

  5. Available for work

    Currently available for work. Preferably in Sydney area.
    My online portfolio and resume
    Or download directly:
    email: artur.vill @

    Updated 02-20-2014 at 10:49 PM by Artur

Page 1 of 4 1 2 3 ... LastLast