|
![](/i/fill.gif) |
This sounds like a very good idea...
then one could use procedural textures for a hf... Very interesting...
//Spider
The Crazy Mule wrote:
>
> I had this idea, it's not particularly inspired (seemed fairly logical to me),
> and i was just wondering what other ppl thought of it...
>
> Currently, to create a decently size landscape, even a regular repeating one,
> you have to make a really big heightfield or make copies, translated, of a
> smaller one and bear the glitches running along the edges of each section - And
> even then you have to make heaps of copies. Anyway, it seems to me that by
> making the bounding volume the intersection of two planes (ie, an infinite
> "slab"), using modulus arithmetic, you could implement infinitely tiling
> heightfields quite simply.
>
> I shall refer to the bounding volume as the bounding slab, and the single
> repeating heightfield unit as a tile...
>
> If we say a function RayHits finds out where, if anywhere, the ray hits on a
> single hf tile, then we can use the following recursive wrapper function to
> extend functionality to infinitely tiled:
>
> Function RayHitsHF(Ray) {
> Modulus the ray origin or entry point to find where on a single tile it
> enters/starts
> If (RayHits) then return hitpoint
> else {
> If(Ray Exits Top or bottom) then return no intersection
> Else RayHitsHF(ray_exitpoint translated to the opposite edge of the
tile
> bounding box)
> }
> }
>
> Some method of preventing endless loops would also probably be needeed
>
> What do you think?
> --
> Sam Minnee
> mailto:smi### [at] paradise net nz
> http://www.geocities.com/SiliconValley/Horizon/4152/
>
> Ignorance is bliss - And don't you go telling me otherwise!
Post a reply to this message
|
![](/i/fill.gif) |