( Hi Stacey! )
I just uploaded a new version of the Accidental heightmap editor. This release adds a few minor UI tweaks and a little feedback.
* Add a cross-hair to the center of the brush cursor for more precise targeting.
* Add some UI feedback on cursor position and map dimensions, via an overlay.
* Add support for 3 new libnoise extension modules: TurbMask (which applies turbulence to a module source, maskable via a secondary control module), Fault (which partitions the input coordinate space with a specifiable plane, and returns 1 of 2 specifiable values based on what side of the plane the input point lies) and Buffer (which acts as a proxy for a CFloatArray2D object, mapping a 2D float array buffer to a libnoise-style module source).
* Add the capability to save and load individual float buffers to file: dumpBufferToFile(buffer, filename) and loadBufferFromFile(buffer, filename)
* Implement an iterative smoothing filter for quicker erosion blurring than Gaussian blur provides, for quick and dirty terrain erosion: filterFloatArray(buffer, filter, iterations)
* Implement quick inversion of a buffer scaled to the range [0,1]: invertBuffer(buffer)
* Implement sub-array operations for combining 2 CFloatArray2D buffers together, extensions to the CArray2D<> template class itself:
** copyFromSub(buffer, x, y)-- Copy the contents of buffer into the current array at the (x,y) coordinate location
** addArraySub(buffer, x, y)-- Add the contents of buffer into the current array at (x,y)
** subtractArraySub(buffer, x, y)-- Subtract the contents of buffer from the current array at (x,y)
** multiplyArraySub(buffer, x, y)-- Multily the contents of the buffer with the current array at (x,y)
These extensions allow easier manipulation of smaller buffers as pieces of a larger map, and replace some much slower Lua code to perform the same. These operations could be performed using the general-case rasterization operations, and with greater flexibility, however the setup for a rasterization operation is slightly more complex so these extensions add some simplicity.
This release also includes a few older Lua scripts as part of my road building code, described in detail here and in the journal entry preceding that one. I'm re-working all of that old road stuff to integrate it with the new interface and CFloatArray2D class, and to make it a more integral part of the foundation code for the editor, to parameterize any kind of road and generate the road as simply as possible.
Pickup the latest build here.
Advertisement
Latest Entries
Mechanics of Flow in Gold Rush.
7024 views
Gold Rush
5514 views
DungeonBot3000: Inventory and Items Display
5812 views
DungeonBot3000: Postmortem
5728 views
DungeonBot3000: Boss Fight Scripting
5129 views
DungeonBot3000: Friggin Laser Beams
5714 views
DungeonBot3000: Video
4850 views
DungeonBot3000: Stats, Combat, and Items
6911 views
DungeonBot3000
5056 views
Diablo:Immortal
13973 views
Advertisement
Advertisement