Softwares needed: Apophysis and Chaotica.
Prerequisites: you will need some previous knowledge on how to use Apo and Chaotica. If you have any doubts, please check those out:
Plugins used: square.
Start from blank, and add 1 transform with square = 1. You should have something like:
The square above is 1x1 units, and its centered on 0,0.
Now, go to the transform tab, set it to polar and change the X angle from 0 to 30.
This rhombus is still centered on (0,0). The length of the sides is still 1, but since it is skewed, the horizontal width is equal to sin(60) = 0.866025. Take a look at the detailed dimensions and angles below:
Just move your post transforms by 0.25 vertically and by 0.433012 horizontally till they fit into the pattern
Of course understanding it could make it easier, but using the rule of the thumb above is pretty much enough to create really complicated and crazy patterns.
Making a simple cube
Now that we have the basic element and its dimensions, making a "cube" shall be easy.
Supposing this is the right face of the cube, lets now make the left face.
Duplicate transform 1.
Since the left face is a "mirrored" copy of the right one, you will need to flip the post transform.
You see both elements will overlap: you need now to move the second one to the left, so its right edge connects with the left edge of the first element. Since the width of one rhombus is cos(60), all you need to do is to move the post transform of second transform 0.866025 left (or first transform 0.866025 right).
You should have something like this now:
First element First and second elements
And the last part, the top face.
Again, duplicate transform 1.
The top face of our cube has same shape as its right face, but rotated 60 degrees clockwise. So rotate the post_transform 60 degrees.
It is also shifted: you can see on the picture below its center is above and to the left from the center of the right face. So shift its post transform 0.433013 left and 0.75 up.
And the cube is ready. You can either use the logic above to create more intrincated patterns, or just use the cube as an element for tiles and other frameworks.
About transform number
Apophysis unfortunately handles fractals with many transforms very badly, slowing down and lagging until it is almost unusable.
And, for elaborate isometric designs, you will need to use quite a lot of transforms, easily going over 30-50. Keep this in mind while designing your fractal. Some of the tips below will help you with keeping the number of transform relatively low without sacrificing a fancy design.
Tip 1 - Chaotica
Use Chaotica to render it. Makes all the difference for a pretty solid and smooth look.
In Chaotica, high gamma settings work really well with this design:
An extra trick, set Anti-aliasing mode to Smooth.
Tip 2 - Bigger Elements
Re-scale the post transforms to get bigger elements instead of using several transforms.
For example, lets make a block with dimensions 1x1x2 from the cube we created above.
First, move the top face 0.5 up.
Now, go to the first transform, and change Y axis length from 1 to 2, as shown below to stretch it vertically.
And do the same for the transform 2.
You will also need to balance the weights out, since the elements are not the same size anymore. The area of the right face is now two times the area of the base element, so the weight should be multiplied by 2: since i used default weights for the base element, the new weight will be 0.5*2=1.
After stretching transforms 1 and 2, you should have something like this:
Tip 3 - Using background
For huge patterns, filling all the plane may become challenging, or just take a lot of time.
So you can just use background color to filll in the "empty" areas. I strongly recommend a Chaotica render for this, because it's the only software where this trick actually works 100% (in Apophysis, the difference between background and the tiles is visible).
Lets see, below, the same patterns with different background colors:
The area that changes color was not filled with tile elements, and its color is given by the background.