Tags / Graphics
Caustics Simulation in Unity
- Part 4 in a series about creating a realistic water simulation and rendering
Caustics are ripples of light projected onto surfaces behind the refracting surface when light shines through. Caustics have the effect of concentrating light in very distinctive bands because when the refracting surface deforms it acts like a complex lens dynamically bending and focusing the light. Like the refraction, caustics are relatively straightforward to implement in ray-tracing though very computationally expensive. I could find no implementations of real caustics in Unity. The approaches I found use some kind of animation with static baked caustic textures that are warped in a wave-like fashion.
Published Feb 11, 2021
3 min read
unity
·
simulation
·
graphics
Refracting Water Surface in Unity
- Part 3 in a series about creating a realistic water simulation and rendering
Refraction is the physical phenomena that distorts views through the boundary between two transparent materials that have differing refractive indices. Common examples are looking into water or through a lens. This is very easy to achieve with ray-tracing because it closely simulates the physical process of light moving around a scene. Today (2021) ray-tracing can only be done offline or with limited complexity scenes on the latest hardware. Most games today use a technique called rasterization which is much faster but has many limitations.
Published Feb 11, 2021
3 min read
unity
·
simulation
·
graphics
Creating the Physics of Water Movement
- Part 2 in a series about creating a realistic water simulation and rendering
In this section we are going to look at simulating the movement of the water surface. We model the surface as a 2D grid of particles. These particles then form the basis of a mesh by rendering triangles between them. A particle is modelled as a point in space with a mass and velocity vector. Each particle is connected to each of its immediate eight neighbours. That is four to the left, right, in-front, and behind, then the diagonals.
Published Feb 11, 2021
3 min read
unity
·
simulation
·
graphics
Physical Simulation of Water
- creating a realistic simulation of water with refraction and caustics in Unity
Simulating water has been a nerdy hobby of mine for a long time now. My first attempts were on the game Downstream Danger back in 1985. There were a few pre-defined animations for waterfalls and streams. In 1999 I got into DirectX and 3D games development on Windows. I started a game with the working title of Microcosm, but unfortunately I never got it completed. It had landscapes comprised of fractal mountains with simulated erosion.
Published Feb 11, 2021
3 min read
unity
·
simulation
·
graphics
On The Beach
I’ve had a horrible ray traced pebbly beach scene framed on my wall for a long time now that I really wanted to redo. I’ve used a bit of free time at Christmas along with a major new release of Cheetah3d to do that. Here are a few of the things I created.
Published Dec 29, 2017
1 min read
graphics
Building a Pi Zero Photo Frame
- a self contained photo frame connecting to an RSS feed
This project builds a self-contained photo frame using a Raspberry Pi Zero and an old monitor. (Old monitors are better as the 4:3 ratio suits a mix of vertical and horizontal oriented photos better than a 16:9 ratio.) Figure 1: Finished Frame on wall Hardware Parts List Raspberry Pi Zero with micro SD containing Raspbian Power supply for Pi (see below) USB WIFI dongle VGA computer monitor VESA wall mount Custom made photo frame to fit monitor HDMI to VGA adaptor I had a photo frame made by a framing shop with the inner dimensions of the monitor.
Published Jan 25, 2017
4 min read
internet of things
·
graphics
Sand Ripple Patterns
This, perhaps surprisingly, is a subject that I now know far too much about. As part of a side project to recreate an old rendering of a beach scene I wanted a heightmap of some typical sand ripples - you know the ones you always see on every beach and desert. They look mostly like period waves but have interesting joins and branches kind of like magnetic domains. Anyway, even the power of Google couldn’t find anything at all.
Published Mar 4, 2013
2 min read
fun
·
simulation
·
graphics