Explosion Texture Generator

      The Explosion Texture Generator (short ExploTexGen, to keep it in line with my Terrain Texture Generator TerrTexGen) is a tool to create a 2D texture of an animated explosion. Many games do explosions that way, by having them prerendered into a texture (in a grid with each grid cell containing a single animationf rame) and then just putting them onto a texture. This is a well known technique and has been used for many years now and is still used in many games. And although there are several tools for creating animated explosion textures available for free, all of those I tried were lacking flexibilitay and mostly one thing I was in need off, namely exporting the animation into a fileformat containing an alpha channel, so you can creating explosions without using additive blending.

So here is a quick list of the application’s features :

      • Create countless different explosions. Each explosion is randomized and all important parameters can be changed
      • Exports to PNG complete with an alpha channel. No more black backgrounds and additive blending for your explosions anymore. The result texture inlcudes a full alpha channel
      • Different texture sizes (from 256×256 up to 4096×4096, depending on wether your graphics card can manage that)
      • Different grid sizes for setting the number of animation frames on a texture (4×4, 8×8, 16×16)
      • Use your own particle textures. Either use the included ones I made from scratch or create your own particle textures and use them
      • Change the parameters. All parameters used to calculate the explosion animation can be changed to make each animation unique
      • Watch your explosion within the application. After generating a texture, it’s shown in realtime together with a preview of the animation

New in version 1.1 :

      • Select between explosions and fireballs. Fireballs are loopable animations that can used for projectiles.
      • Flip the render order. Use this if you want to use the texture in blender (e.g. for the game engine).
      • Store (and restore) different profiles. Using the file menu you can now export and import your current settings.



  1. Well i would say great job accept the default textures wont load in the program. They keep on causing an infinite error message that reads “Zugriffsverletzung bei Adresse 000000000. Lesen von Adresse 000000000”. So this needs to be fixed for i can give my honest opinion of the program.

    1. No, that’s not the applications fault and nothing I can fix. An access violation at address 000000000 means that you either haven’t installed graphics card drivers with OpenGl support (e.g. the ones that come with Windows) or that your graphics card simply isn’t compatible or doesn’t support an OpenGL extension needed by the application. So if you could post what graphics card you use it may be of help, and also please ensure that you use the latest drivers.

      1. I’m getting this same error, I have an ‘Intel(R) HD Graphics 3000’ card and their site says it supports up to Open GL 3.0. I updated to the latest drivers and still am having this error happen. Advice?

        1. Having the same issue:
          Chip Type: Mobile Intel(R) 4 Series Express Chipset Family
          DAC Type: Internal
          Memory Size: 1024 MB
          Adapter String: Mobile Intel(R) GMA 4500MHD
          Bios Information: Intel Video BIOS

          1. Tried with a high end NVIDIA NVS 5200 M on Win 7 same issue…
            Is your App written to support mobile video cards?

            The video card I am using is widely used so I am curious what Video Card you are using if that is really the issue?


  2. Wow man, you’re a godsend!

    I’m currently programming a 3d space physics game and since I’m not good with artwork I’m getting useful art wherever I can to use as placeholder until my tech demo is done and I can form a devteam so I get an artist onboard. I’ll use your tool for the explosions for weapon impacts etc for now! I’ll make sure to list you in the credits, just send me a mail if you’re interested to see the tech demo which should be coming along the next week.

    If there is ever anything commercial coming out of this I’ll make sure to contact you before hand if I decide to use your explosion stuff.

  3. Oh yes one more thing, it would be nice to have them all exported as separate frames instead of one big texture. I’m using Virtools as engine and it just has it’s “own way” of doing things, and it’s not very advanced when it comes down to sprites, haha.

  4. Another thing:
    It would be truly awesome if a .gif containing the animation (or maybe a video) could be also stored in the output.
    It really sucks to have to put those single pics together to an animation 🙂

    Otherwise: Great job!

    1. That won’t make it into the appliaction. The .GIF file format is very old, and doesn’t even contain real transparency (only 1 bit for transparency, compared to 8 bit for e.g. tga or DDS) and therefore animated GIFs are the worst way to store textures for 3D games.

  5. Pretty neat, I made a big explosion but some of the particles get stuck around the edges of the cell and made the resultant explosion look like its boxed in. I suppose I could erase the bad particles pretty easy though.

  6. Hallo,

    Ich habe versucht Dein Tool auf einem Windows 7 Rechner laufen lassen. Es lief leider nicht, es kam nur die Meldung mit der Zugriffsverletzung bei der Adresse NULL, Der Rechner war ein ASUS Netbook mit einer integrierten Grafikkarte. Wenn Du eine Möglichkeit kennst wie ich das Programm auf meinem Rechner laufen lassen kann, wäre ich sehr dankbar.

    1. Zugriffsverletzung bei Adresse NULL (0x000000…) bedeutet i.d.R. immer dass kein OpenGL-Treiber installiert ist. Installier also mal einen aktuellen OpenGL-fähigen Treiber für die in deinem Netbook verbaute GPU und probiers mal erneut.

  7. Oh wow, 1 min render clouds on photoshop, loaded it in and amazing explosion.

    Your explosion does not do justice to this program.

    I’ll add you to my blog, my game may be commercial though indie let me know if you have any special requirements as to a mention or if this is not allowed.


    1. Well, a long time ago I did a survey on wether I should port my games/tools/apps to linux and actually I didn’t get a single reply, so I didn’t bother with it anymore.

      But the explosion texture generator should work fine in WINE. Tested it myself on another machine where Ubuntu is running and it worked without problems.

      1. I was able to get this to run through wine, but the drawback is that there’s no way to preview your explosions. When you click generate it outputs and then exits the application

  8. How to fix “Zugriffsverletzung bei Adresse 000000000. Lesen von Adresse 000000000”?

    You said “No, that’s not the applications fault and nothing I can fix. An access violation at address 000000000 means that you either haven’t installed graphics card drivers with OpenGl support (e.g. the ones that come with Windows) or that your graphics card simply isn’t compatible or doesn’t support an OpenGL extension needed by the application. So if you could post what graphics card you use it may be of help, and also please ensure that you use the latest drivers.”

    So my graphics card didn’t support openGL?! How to support it? For example i need install something?


    1. What graphics card do you use? If it’s not a very very old card it should support OpenGL. So go to the page of your graphics card vendor, grab the latest drivers and install them. They include an OpenGL ICD and after installing them, it should work.

  9. So I have the same problem as John, and I use an Intel® Graphics Media Accelerator 4500M with 128MB-1759MB
    dynamically allocated shared graphics memory (lol thats straight from the specs page online) any help with this problem?

    1. Do you have drivers from Intel installed that support OpenGL? If that’s the case and it’s still not working then it may be because your graphics card doesn’t support pixel buffers, which the tool needs to generate it’s explosions offscreen.

  10. I make textures and graphical updates to an openGL based game Starsiege: Tribes
    I notice that the files that the animations are loaded from are dds. but there are only two to choose from. I was wondering if there are any different styled/colored animations for this? Or do I just edit them myself in photoshop and make new explosions using the dds files?

    1. What exactly do you mean? Does Starsiege use DDS as a texture format? If that’s the case, just get the photoshop DDS-Plugin from nvidia, install it and then you can save the animated texture to DDS from within Photoshop.

  11. Same “Zugriffsverletzung bei Adresse 000000000. Lesen von Adresse 000000000″
    I have Intel g33/g31 express chipset family, according to docs it supports OpenGl 1.4 + Extensions. CounterStrike 1.6 in OpenGL mode runs fine for me.

  12. Looks promising, but I got the same error as everybody else. So I guess it’s a sign of some sort of fault after all…

  13. I had the same bug listed above when running on the Intel HD3000 chip (i7 sandy bridge cpu), however when I switched to the dedicated Radeon 6850M 1024Mb, the application worked perfectly.

    When I try to run the GL Capture app you suggested earlier (http://www.saschawillems.de/?page_id=771) on the Intel HD3000, I am greeted with an error (wglGetExtensionsStringARB is NIL!). When I try to “Detect Caps”, nothing appears and I’m told about a risk to data corruption. The detected implementation is Microsoft Corperation GDI Generic 1.1.0 (Windows 7).

    When I switch to the Radeon, the GL Capture works fine and I get a good capture. I believe this is my capture… http://delphigl.de/glcapsviewer/generatereport.php?reportID=296

    So, it does seem there is an issue with the mobile Intel chipsets.

  14. Hey! Wollte nur mal nachfragen ob es eine möglichkeit gibt die Bilder einzelln zu exportieren……oder gibt es vielleicht ein programm das mir die Bilder einfach ausschneidet?
    Und nur so nebenbei, nette Software! 😉

    1. Nein, das Programm erzeugt nur eine einzelne Textur. Allerdings liegen die Animationsphasen ja in einem festen Gitter, und es gibt Tools bzw. Plugins für BIldbearbeitungsprogramme mit denen man diese Gitter zerlegen kann, damit müsste das möglich sein.

  15. Do you have a spam problem on this site; I also am
    a blogger, and I was wanting to know your situation; many of
    us have developed some nice methods and we are looking to exchange strategies with other
    folks, be sure to shoot me an e-mail if interested.

  16. This. Is. WONDERFUL. Thanks a lot for this!
    One question, though: Is there any way to export each frame as a sequence of PNGs rather than one big sprite sheet? Barring that, what’s the easiest way to translate a sprite sheet into a PNG sequence?

  17. Oh, I noticed a problem with the sparks: They don’t seem to rotate, no matter what the Rotation Speed is set to.

  18. I can’t be aware that the way I ended up in this article, having said that i believed this specific release once was great. I really don’t understand who you happen to be although surely you will some sort of well-known blog writer if you ever are certainly not presently. Best wishes!

  19. Captain America: The Winter Soldier is a tremendous piece of pop entertainment, smart and engaging and featuring a home run movie star lead performance by Chris Evans.

  20. Great work. I’m working on my first video game, i would like to use textures generated by your application. Is that ok? I will give you the credits.

  21. Tolles Tool!

    Ich habe fast das selbe Problem wie viele hier, allerdings lautet der Fehler bei mir:
    Zugriffsverletzung bei Adresse 0057CE19 in Modul ‘ExploTexGen.exe’.
    Lesen von Adresse 535B8002. [alternativ auch von Adresse 00000002]
    Wenn ich das Programm als Administrator starte, lautet der Fehler meist “Zu wenig Arbeitsspeicher”
    Ich habe einen Intel Core i7-4700MQ mit Intel HD Graphics 4600, OpenGL 4.2
    Wenn ich das Programm mit der NVIDIA GTX 765M starte, funktioniert alles problemlos 🙂

  22. I believe this site contains some real great info for everyone :D. “We rarely think people have good sense unless they agree with us.” by Francois de La Rochefoucauld.

Leave a Reply

Your email address will not be published. Required fields are marked *