Uses for BlitzMax

BlitzMax Forums/BlitzMax Programming/Uses for BlitzMax

I'm currently programming a private texture generator in BMax, textures and modifiers include seamless and non-seamless effects. All functionality is event-triggerend from the core instance, the actual texgen functions are normal functions, not part of any class and listen to a specific eventnumber that accounts for them. This means I can just create another function, addhook it, and it automagically works. Help-description is also done IN those functions, so these texgen functions are really stand-alone. Ofcourse they do have access to the texgen core so they can access the image buffers (which are only mem, not really an imagebuffer like a pixmap) and some core functionality like drawing boxes, rects, bresenham lines, individual pixels, etc. (note that it can draw these things over the edges, it's all wrap-around)

current textures include:

Clear
Filled Box
Pixel
Horizontal line
Vertical line
Bresenham Line
Bezier line
Openbox
Draw VectorGFX (wireframe style, based on a given definition)
Horizontal lightrays

and modifiers include:

Diffuse
TopLeftRelief
SetChannels
Invert
Intensitymove
Dither
Bittrunc
ChannelCopy
Blur
ChannelShift
Block
Tile
Sinedistort
SinedistortRGB


On the todo:
Perlin noise
Anti-aliased line
Vertical lightrays
Image copy
Indexed color
Exporters for non-bitmap formats

Whatever comes up in my mind -it will never bloat the code, as each function works on its own-

The whole (ascii-)script is compact, can be stored as a string in your code, so in the end one can create images without the need to incbin media. The script allows textrues to be performed multiple times with changing parameters. (It takes one such repetition statement and 1 plot texture to create a starfield)