art, freeware, software

JWildfire-Povray Exporter Published!

3d fractal flower from JWildfire rendered in PovrayAs the saying goes: “Full-scale, please.”

Last night, I uploaded my most recent project: a Povray-file exporter for JWildfire. Now I can export fractals from JWildfire and render them in Povray! There are more details on…

Official topic on the JWildfire boards:

There, you’ll find the source code (for JWildfire 1.20), information for developers, and the user’s manual.

The biggest irony of all of this? Andreas Maschke, the creator of JWildfire, is about to change JWildfire to version 2 and will probably be making some changes that will conflict with what I’ve done. That being the case, I’ll probably hang onto the old-version code for anyone unwilling to upgrade who still wants it. lol.

The rest of this post is about the finer, unmentioned details on the forum… and pictures from the rendering in Povray.

Okay, so the first thing you must know is that it isn’t as grand as it sounds. Povray is a fast ray tracer, but there’s a limit to the number of points it can output. JWildfire, on the other hand, may be moderately in speed when it comes to rendering fractals, but it has to render millions of points for a good quality render. Oh, and of course, none of the points from JWildfire are lined up in a grid, so forget about getting a perfect arrangement. I suppose I could force them onto a grid, but that would distort various fractals and result in a blocky appearance that benefits some fractals and harms others. Anyways… When you need to render millions of points for good quality, rendering only a few spheres, albeit pretty ones, it’s going to create a well-defined quality. To compensate, I just made the output points bigger so the shape is more solid.

JWildfire flower rendered in PovrayAs you can see in the image (if it shows up), it’s kinda ragged. Part of that is the fact that most of the garbage points are usually hidden in a JWildfire render because their opacity isn’t high enough for them to be very noticeable. However, in my Povray render, they stick out like sore thumbs. Yes, my flower has many thumbs. (What am I saying??!)

The cool part about rendering in Povray is that I get perfect shading. 😀 I can’t get that in JWildfire. Furthermore, I also get better anti-aliasing. Thus, in these two ways, I get better renderings from Povray than JWildfire.

One thing I did notice, though, is that Povray has a fairly easy time rendering small points. You might think I could output millions of points, but the trouble there is JWildfire – and Java. Try making a string (string of characters) that long. It uses an enormous amount of memory for a variable (well heck, I am writing a file), but the result is that my only attempt to write 1 million points resulted in JWildfire getting tied up trying to write the string to file. lol. I may try it again and let it sit longer, but somehow I doubt the result will be much different. But before that…

I intend to make Povray rendering have a similar character as JWildfire rendering. I’ve already figured out how to get Povray to draw things transparently (just add “filter 0.0” to the color – go figure it isn’t “alpha”).

blue flower from JWildfire rendered with PovrayThe next step is to make point transparency an “additive” thing – that is, every point that is placed at a certain vicinity adds to the opacity and mixes with the color of the point there.

How my system currently works is that every point that is processed is compared with all of the existing points in the local vicinity. If the point is within a certain radius of another point there, it gets booted. This limits the size of the list of points that are exported from JWildfire. I mean seriously – I don’t need to export a million points… or maybe I do… hm…

My next challenge is to create 3D models. Actually, what I’d rather do is get a good, clean, smooth render, and preferably do it without burning up my PC. You may have already seen my post where I complain about compare JWildfire rendering with Chaotica. While Gimp’s selective blurring may help for some fractals, it doesn’t work for all. While I could try to improve anti-aliasing in JWildfire, the last time I did, I ended up breaking things and making the renders look worse. I believe JWildfire does something analogous to Poisson Disc supersampling for its anti-aliasing. I don’t recall if I left that in for the Povray exporter (since in functionality, it is very much like the other renderers), but it wouldn’t noticeably effect the output in 3D.

The next step for me is to stay coordinated with Andreas Maschke (the creator of JWildfire) so that we can bring the Povray exporter to the next version of JWildfire. At the same time, I have a few more tests I want to run. Now that I’m in beta, it’s time to push this thing to its limits!

Enter the space and time of my little world... Welcome Earthling.

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s