Posts published by: elfnor

Shape Shifting Creatures

rendered dog

The animal body can be visualized as a three-dimensional jigsaw puzzle, made up of distinct, interlocking pieces. These pieces all have very specific volumes that begin and end at very specific places.1

I'm teaching myself a little more animal anatomy to help with creating digital creatures. I've ...

Sugar-Free Fermented Marmalade

feremented marmalade

After making preserved lemons I saw a comment somewhere that marmalade was once made by lacto-fermentation rather than with heaps of sugar like jam. I prefer a low sugar, low glycemic index diet so I made up the concoction below. Later I searched on-line for recipes and found most of ...

Preserved Lemons

preserved lemons

Without my own lemon tree, supermarket lemons are expensive so I go to the Farmers' market and get a large bag and make preserved lemons. When I first made these I didn't realize they were supposed to ferment and was a bit worried by the bubbling. When I use ...

Fermented Chili and Garlic sauce

chili sauce

Many cultures (Louisiana, Thai, Hunan, Korea, Indonesia, Portugal) make a fermented chili sauce. This is my goto recipe and there's always a jar of this in the fridge. I'm not into fuzzy things like straining it after fermenting preferring the chunky taste surprise. I don't add extra ...

Sverchok Tree Generator


I tend toward making more abstract than realistic images with Blender. A while back I played with the Ivy Generator addon and so got interested in the underlying procedural algorithms for producing tree and plant structures. A lot of these techiques use L-systems and could maybe be implemented using the ...

First Milky Way photo

scopius over remarkables

Last month I went to a talk at our local library by Mark Gee on astrophotography, and I got hooked inspired.

For my real job I work on really expensive optics for some of the big telescopes. I also did a few astronomy papers way back. Both of these made ...

Blender 3D Maze Generator

red maze blue maze

The same backtracking algorithm that produces 2D mazes can be used to produce three dimensional mazes. All that's needed is to set up the cells in the grid with an extra dimension and define the neighbors to include cells on the layers above and below the cell.

Here I ...

Blender 2D Maze Generator

game wide shot

The game levels that can be produced by the Generative Art Sverchok node in Blender are lots of fun to explore but there's nothing to stop them producing overlapping paths like this:

overlaps in Steely Taws

This is because the alogrithim behind the node is based on L-systems and knows nothing about where ...

Hyperbolic Tiling in 3D

plane, sphere and hyperbolic footbal

In a previous post I explained the shape of planes, spheres, and hyperbolic planes in terms of hexagons arranged around either another hexagon (plane), a pentagon (sphere) or a heptagon (hyperbolic plane). I used a photo of a hyperbolic plane someone else had made out of paper, as the 3D ...

Reading the World - 100 Online Stories

online story map

[Stories read by gender and genre.
Purple - female author speculative, Green - male author speculative, Red - female author, Blue - male author]

One of my early posts on this blogs was about reading lists and my plan to make a list of (and read) online stories from as many countries as possible ...

Blender Progress Animations

walkways still

A nice side effect of using the auto save add-on is that if you render often you effortlessly have a record of the progress of your scene towards the final image. These saved images can be collected up into an animation.

I'm going to describe how to do it ...

Blender Auto Save add-on

radiolaria version 31

(This image is unrelated to the post other than it was the 31st image rendered from the same basic geometry.)

My normal work flow in Blender is to create a blend file and use it to render and save an image often at low resolution and quality for speed. Then ...

A Git Horror Story

git workflow

While working on porting Structure Synth to Blender I came across SCIgen which generates random computer science papers using methods that are similar to the way Structure Synth generates geometry. Some of these papers have been accepted at conferences or in journals. This led to automatic text generators such as ...

Blender Ivy Gen Abstracts


Here are a quick couple of experiments with the Blender Ivy Gen addon. Its included with Blender and only has to be activated from the User Preferences dialog.

I was interested (as always) in doing something more abstract and less realistic with the Ivy Gen addon. The addon is based ...

Blender Adventures with Hyperbolic Planes

hyperbolic coral

Hyperbolic Planes

If you cut out a large number of paper hexagons, you can arrange 6 hexagons around a central hexagon and form a honeycomb tiling of the plane. The plane has zero curvature. Its flat. Any triangle you draw on this plane has angles that add up to 180 ...

Arduino Bread Details

arduino bread

As mentioned in a previous post I've been working on a project to replace the "brain" of a bread-maker with an Arduino.

The aim is to separate out the different stages in the breadmaker's cycle so I can make good sourdough bread. In general the sourdough takes longer ...

Simple Sverchok 04 - Apply Matrix

3D T Square Fractal

This is part four of my introduction to Sverchok the parametric node geometry add-on for Blender. This post I'm sticking to my theme of copying one object to the structure (either the vertices or polygons) or another mesh. There is an awful lot more than just copying that can ...

Simple Sverchok 03 - Slope Dependent Trees

landscape with slope dependent trees

The first two posts (01, 02 ) in this gentle introduction to Sverchok covered copying objects to the centers of polygons and scaling the copied objects according to some pattern.

In this post we'll look at applying what we've learnt to planting trees across a landscape. We'll make ...

Simple Sverchok 01 - Centers Polygons

final render sverchok centres polygon demo

Sverchok is an add-on for Blender. It allows you to generate geometry in Blender in a parametric way by wiring visual nodes together rather than programming in Blender python.

This is the first of hopefully a series on very simple examples of using Sverchok. I'm learning this as I ...

Arduino Bread

I'm working on a project to replace the "brain" of a bread-maker with an Arduino.

My partner makes all the household's bread from a sourdough starter. He uses the current bread-maker to knead the bread and sometimes to bake the bread but a bread-maker with its fixed cycle ...

Notes to Father Christmas re 3D Printer Filament

I was doing some research to help Father Christmas fill my request for "some interesting printer filament" in my Christmas stocking. I thought I'd share that research here in case its useful to anyone else. Feel free to include or modify it for your own Christmas letter to Santa ...

Translate cache descriptions and logs

I recently did a European cycle trip and as described here I made some gpx files of geocaches along my intended route.

The trouble is most of the cache descriptions were in German and my German is practically non-existent. I wanted to do all my caching offline so I wrote ...

A novel use for a 3D heated printer bed.

My partner came home from his run on Saturday with a box full of baby ducklings he'd rescued from certain death by cat. The mother duck was nowhere to be found. After ringing partner's mother and googling duckling care (the two best sources of information) the ducklings were ...

Copy 2 add-on for blender

After forgetting about it for a few years I found my old "copy 2" blender python script. (there's an old thread here).

I've completely rewritten it into a proper add-on with a panel interface. It now works in Blender 2.71. It can be downloaded from my github ...

Parametric Surfaces in Blender

The Blender 3D modeling and rendering package has an add-on for mathematically defined surfaces. It is enabled via the Extra Objects add-on under File > User Preferences> Addons.

The XYZ Math Surface can be used to construct meshes for parametric surfaces. The parametric surface is defined by three functions of two ...

Symmetry Tile with non-rectangular cells

With the Symmetry Tile plug-in the user selects an area using the rectangle select tool, before running the plug-in. The plug-in then derives a cell to use to form the user's choice of symmetry pattern. For many of the symmetries that derived cell is the same as the selected ...

Pelican and markdown styling cheat-sheet

A Pelican blog consists of:

  • markdown text files containing content
  • jinga2 html template files defining the pages layout
  • CSS style file that determine how the page elements look

These elements are processed by the Pelican python software to produce the static html pages that make up this blog.

Lots of ...

Material Cats

I had a friend who after some self-reflection decided his primary hobby wasn't wood work but was collecting wood working tools. This left him feeling much less guilty about the number of wood working planes he had in his shed.

If I was honest my major hobby or interest ...

The almost invisible kite

Polythene sheeting, the type you buy at a garden shop that's about 125 μm thick, is great for kite making. It comes in black and clear, the black is boring but the clear can be a bit hard to photograph against the sky.

Reading Lists

I love to read and reading lists fascinate me.

I bought a Kindle ereader in 2011 and its resulted in some large changes in my reading habits. I own a lot of paper books, there's 1300+ in the house according to our Readerware database (databases are even fancier lists ...