Mark Sachs (ksleet) wrote,
Mark Sachs

  • Mood:
  • Music:

Down with diagonal lines! Smash the air-vent complex! Speak truth to parking!

You know, Starfox 64 doesn't hold up quite as well as I'd hoped after all this time. Damn you, Virtual Console. (Although the "Endless Train" level is still cool.) Anyway...

Here's some improved clouds. I recently added a system to the tessellated spheres in the raytracer where we can tessellate a sphere just once, and therefore need to search it for the triangle a point is in only once, but we can generate multiple "altitude" values for a single point on that sphere during the fractal generation process. In this case, I had the cloud sphere generate two altitude values: one has a very low frequency to indicate whether a general area of the globe is cloudy or clear, and one has a very high frequency to add ripply detail to clouds. We then mix them together in the post-processing function (see next paragraph) to create the final cloud thickness. While the results aren't hugely realistic, they do have a much more plausible amount of detail. I also may use this to add some variation to the "altitude -> temperature" algorithm the Earthlike planet currently uses; a secondary fractal can let me mix up the desert/jungle/wasteland/icecap divisions independently of the altitude of any particular point.

I've also rigged things so that a post-processing function can get run on all the points after the fractal is generated. This can be used to do simple things like exaggerate mountains or create ocean floor areas, but it could also do more interesting things like stamp down details (craters, valleys, specific precreated maps...) onto the generated fractal. These details would then get rendered just as speedily as the rest of the fractal terrain, because they're just part of that terrain. The only downside is that they would be limited to the fractal terrain's resolution. I'm still considering what I might do with this.

You may also have noticed the change in the halo around the planet. I've added the ability to have a halo be illuminated just like the other parts of the planet, so the side facing away from the Sun is lit only by ambient light. What's a little odd is that it seems to now render a layer of the halo in front of the planet's edge, so it gets smoothed out. This was kind of unexpected; I should go back and see if I inadvertently changed the calculated halo distance, although to be honest the effect on this particular style of world is fantastic and just what I wanted.
Tags: games, raytracer
  • Post a new comment


    default userpic

    Your reply will be screened

    Your IP address will be recorded