Not logged in, Join Here! or Log In Below:  
News Articles Search    

Submitted by Manuel Astudillo, posted on December 28, 2000

Image Description, by Manuel Astudillo

this is a screen shoot of my upcoming texture generator called Syntextic Studio. Its based on an own scripting language, very easy to use, which is compiled and then executed to create the textures. My idea is to release this as freeware, and put some kind of texture database where you can submit your own textures created with the program.

For now the program supports a lot of functions, like noises, stars, twirls, etc.but a lot more functions can be added as plugins, I will release some dll specifications for this issue too. Besides the textures the program can be very usefull to create highmaps for landscapes, just mixing some noise textures you can get very good highmaps.

Ok, thats all for now. I will try to release as soon as posible but I have to add a couple of features first, the problem is that I dont have visual studio right now, I will try to get it today or tomorrow and finish the first version of the program.

Manuel Astudillo.

Image of the Day Gallery


Message Center / Reader Comments: ( To Participate in the Discussion, Join the Community )
Archive Notice: This thread is old and no longer active. It is here for reference purposes. This thread was created on an older version of the flipcode forums, before the site closed in 2005. Please keep that in mind as you view this thread, as many of the topics and opinions may be outdated.

December 28, 2000, 03:02 AM

Looks great, and a nice interface to boot. Something I wouldn't mind using when I've got no textures available for a test.

Here are a few cool things I can think of off that top of my head for something like this -

Low bandwidth game content is my first thought - A small readily compressable script is very cool. Not to mention the fact you can generate various mip levels fairly easy from a script.

How about really simple vector art? Something like the ability to render say a road texture with the stripe down the road, with noise over the top based on a small script would be really cool - and really low bandwidth.

OpenIL ( is a great image library with support for an ass loads of image formats loaded in a transparent way - And a util library with cool imaging functions. Maybe you could use this to add other functions and a stack of file formats to your stuff.

There is plenty more. This is just really cool shit. Full of possibilities.


December 28, 2000, 03:11 AM

Cool image! I like the thing that looks like a spiral galaxy.

Mmm, DirtyPunk? I thought OpenIL was only good for ilAlienify()'ing my half-nekkid pictures of Caprice Bourret. Oh well, you learn something new every day.

Another thing I think would be cool is something that I do when I'm hard pressed for new textures. I take an old texture (say of brickwork), and I use it as a mask for another texture, say of grey-brown rock. So you can combine such masks, or detail-maps, and low-detail textures on the fly, in any combination.

Anyways, my two cents.

- Betelgeuse


December 28, 2000, 04:30 AM

This looks like it may become very useful :)

Another cool idea (which DirtyPunk hinted at) would be to make the 'core' texture generator (without the UI) available as a library. You could then just load up a texture script and the library would generate the stuff for you. That way your UI could be used to design scripts... I think that would be cool. Something you should definetely take a look at is different kinds of filtering (blurring, emboss, etc...) and combining/blending multiple images (like the original texture with an embossed version).

Keep it up,


David Olsson

December 28, 2000, 07:04 AM

Something I think would be cool would be a realtime library version of your texture engine, that one could use in a game for example.
So when you zoom in stuff you get more and more detail. But I don't know at all how fast the generation is, so this might not be possible at all.



December 28, 2000, 08:18 AM

Whether it can be used in realtime depends on the algorithm being used for texture generation. A true perlin-noise thingy would certainly be too slow. But some blurred noise at different resolutions (for patterns, details, etc..) blended(HW) in realtime might give nice performance and cool-looking textures. Though you would sacrifice some flexibility(not too bad imho).


December 28, 2000, 10:22 AM

Very cool. I could definately put something like this to good use. I'm definately better at writing scripts then drawing textures! :-) Is there a URL we can find this at when it's done?

Robert Hayes

December 28, 2000, 01:00 PM

Great idea for a useful app. Does it have built in functionality for tiling? Ie: it adjusts the edges so that the texture isn't interrupted when it's next to itself?

I'm just at a stage in my heightmap landscape app where I'm deciding how to do my textures. This app would be great to have.


December 28, 2000, 01:16 PM

I have question which is more related to interface. Do you use MFC in your program ? I ask this question because I plan to create my own map/texture/models editor and not decided yet which way would be preferable.

Manuel Astudillo

December 28, 2000, 01:45 PM


thanks for the positive comments.
Well, actually my idea is to release the script executor as a DLL which can be linked in your applications.
The scripts are compiled into an own vitual machine code, so after compiling the scripts with the you could easily export them to your own program, but still the generation is slow. the executor is not optimized at all, but I dont think it will help too much. Using Perlin noises in real time is a very hard thing (and combining diferent noises with other effects, etc, is definitively imposible in real time today).

The UI support a basic tiling function, but its very basic, I just mirrow the texture up and down, and left and right. I havent figured out how to do better tiling. If someone knows how to do it I would greatly appreciate his help.

I will release this thing very soon. Progrably in this URL:

And answering the last question, the UI is done in MFC and the parsing and compiling engine was coded with the help of flex and bison.

Manuel Astudillo.

Sebastian Sylvan

December 28, 2000, 03:23 PM

You could offset the texture 50% in both directions and then apply some filtering down the center and across the center. That way you'll have no seams.. Sort of what you do in Photoshop when you create textures by hand...

Then again, I have no idea how your filters work so It might not work for you, probably won't I should say =)

The Wolf

December 28, 2000, 05:12 PM

very nice, very very nice, very very very nice.....


December 28, 2000, 08:31 PM

I am surrounded by incompetence.....

This shot is cool.



December 28, 2000, 09:47 PM

How about having it interoperate with GIMP and script-fu? It'd be useful if this could talk with script-fu in order to combine GIMP's plugins with this guy's scripts, perhaps by just making a GIMP plugin which links in this texture generator's external DLL or whatnot.

Stefan Karlsson

December 29, 2000, 02:50 AM

Well.. What can i say... we have the same system in our texgen..
Its working.. Etc.. so who cares?


December 29, 2000, 10:27 AM

This looks like a very useful program. Great idea! Looking forward to playing around with it.


December 29, 2000, 11:53 AM

Looks cool!

Coincidentally, I worked on a very similar project as a final project last semester. My program, Evolver, generates
the textures using genetic algorithms to breed different textures. Procedural generation is definitely the way to go
for animated textures too: I have non-repeating, infinite resolution water textures that take only a few bytes to

My project is at: Over
Christmas I added neat motion blur effects (e.g. not clearing the screen between frames) that give more
WinAMP-visualization style effects.

IOTD coming soon...


- Hargle -

January 04, 2001, 12:49 PM

David: your comment about increasing/decreasing detail level with distance sounds like some form of mip-mapping...but maybe you mean for a much higher number (infinite) of levels that are not pregenerated but realtime generated and appended to the texture object (in openGL anyway, dunno about d3d)?...then you also have the problem of the speed cost in changing the texture...

This thread contains 17 messages.
Hosting by Solid Eight Studios, maker of PhotoTangler Collage Maker.