Naturally I produced these images without any real photography or light. The software to produce images of this quality or better are readily available today. Mine renders a three-dimensional model in the form of data using ray tracing. And the models owe a great deal of their detail to fractal noises that we can also customise with much verstatility. This artwork was largely produced using Bryce, which is now sold by DAZ-3D. It was first created by a group named MetaCreations, and later bought by Corel, before becoming Eovia capital. I don't think it can be downloaded on-line, but can be ordered shipped as a CD-ROM.

I believe that perhaps I didn't add enough detail of my own, or enough invention to the images. They are simple in concept, yet the software allows more explicit features to be specified, which would make the images less desolate. But some people also like desolate. Each of these images is pure concept.

To view the occasional (non-essential) animations on a browser that has ActiveX controls, you need Windows Media Player 7 (or higher). Accross the platforms now, you'll need the H.264 codec for .MP4 Files. To view the single 3D game applet, you need the Flash 11 plug-in, with OpenGL. High-speed Internet may not presently help you much, as these pages are being uploaded via my own DSL. I've observed that by now, even non-Windows browsers will have trouble playing .avi Files directly from the Web site, maybe because aside from Windows Media Player modern servers even discourage it. So I've phased out the use of .AVI Files on my Web site, as well as of .WMV Files. And to the best of my abilities, the video clips run on Quicktime now.

This application requires Flash Player 11 (for MoleHill/Stage3D support). Android Users May Tap This link to install the above Animation. |

I recently made a segway into mazes, after discovering that such old-fashioned puzzles can still be a hit with friends. Thus, I'd like to share with you, two, 3-dimensional mazes I made myself, using a C++ program I wrote. I know that there are many sites which offer variations on 2-dimensional mazes, but thought that the 3D variety could best be found here. Note: I did nothing within my algorithm, to make these very difficult, since simply being in 3D might be enough of a challenge to some people. (Many mazes today are not truly random, since randomness gives mediocre diufficulty levels for 2D.)

One maze is a 6x6x6, just to let people get the hang of it, while the second is a 15x15x15. Here are the unsolved mazes. You need to visualize each one as if it was a (6-story or 15-story) building or cube. Each cell is like a room, which may either have a stairway leading __down__, or a normal floor that stops travel to the next storey down. And then, each of the walls are like in 'normal mazes', i.e. walls with doors in them, or solid ones with no openings.

BTW, The name "Richard" ocurrs in their labelling, because I initially printed these two out for a friend of mine named Richard. Together with the random-number seed and size mentioned in the labels, those will always allow me to find the correct maze again...

The realization has struck me, that in dealing with 2D mazes, the main feat is to make them challenging, even though classical random ones might not be so to most people, unless we ramp up the size. So I've given this subject some thought, and have come up with a system to produce decent ones. Yet, these might still not be as good as certain others you'll find on the Web.

So we see here, that it's also possible to have a maze, which respects all the rules of maze-making, but in which we'd need to visit *every cell* in order to complete the maze. The 4th one above would be an example of that. Yet, the type I've given here is also so easy to solve, because at no point does anything branch off our quest, to give a dead end.

SVG Diagram

I just have to prove, that I can, after all, produce standard, random, 2D mazes. The previous exercise was just an attempt to make small, 2D mazes more difficult, than these purely random ones would be.

If you connect the cells randomly-within-general-rules, something sets in which is known as Statistics. Plainly put, if you just toss a bunch of coins in the air and let them land, the patterns of 'up' versus 'down' don't tend to confuse our brains that much, because our brains are already optimized to solve problems as problems come... And in the case of mazes, one tool we have *visually* (thanks for giving me a clue about his, Richard), is the ability to follow a straight line - straight until we hit a wall. So some people will solve mazes "more visually than logically". I think that just by reducing short-range order, we can slow puzzle-solvers down, even though the amount of long-range order is still very high.

In the case of "Tessy" above, there are actually very few permutations at the (d=2) and (d=3), higher levels, with a lot of randomness at (d=1), the lowest level. Yet, if I force the puzzle-solver to look at the problem using logic every time, it will take him ~an unknown number of seconds longer~ to solve a puzzle of a given size.

At least, *I say so.*

Another little segway I decided to add just now, concerns the question of how, analytically, it's possible to approximate curves, of which a finite number of points and/or derivatives are known, using a polynomial, of an arguably high degree.

Admittdely, when doing so, there will be two obvious technical problems.

1: Outside their intended domain (range of parameter values), polynomials rapidly become unstable, due to their high-order terms taking over, and

2: Actually computing polynomials of a high degree, let's say of the 8th degree, starts to cause round-off errors, as high-order terms become large but are supposed to cancel each other out partailly, so that accurate results remain *within* the intended domain.

Here is a little set of notes I typeset on this issue, which completely ignore the two technical problems just mentioned:

Mathematically typeset document, in PDF format.

It turns out that the approach above demonstrates that it's possible to satisfy the goal of a set of values, plus a set of derivatives, __exactly__, as long as at least 1 value is stipulated, and as long as the number of values plus the number of derivatives equals the degree of the polynomial + 1 . My above example uses only one parameter. However, advanced work has been done and documented elsewhere on the Internet, on how to find a polynomial for systems that are "overdetermined", which means that the numbers of values and derivatives exceed the degree, using Polynomial Regression, belonging to Statistics. Hence, in overdetermined examples, the resulting polynomial is an approximation, which may not even satisfy one point exactly. When I discovered the existence of this, I did not incorporate it into my page here, because I cannot prove it.

Further, instead of working in the 2D realm with the single parameter (u), it's possible to invent a second parameter (v) such that (v = 1 - u). And instead of working in the 3D realm wih the parameters (u, v) , it's posible to invent a third parameter (w) such that (w = 1 - u -v). I have learned that this approach is often taken in practical computing, because it gives simplicity to the cubic interpolation specifically.

The segway which I had already published above, into Shaders, records some of my observations into this practical pproach to cubic splines and surfaces, because they get used in Dx 11 Shaders, that have Hardware Tessellators:

My own Shader does not involve any Tessellators.

Dirk Mittler

Phone: (514)685-8343

e-mail: mdirk@sympatico.ca