Page 1 of 1

Muzzle Flash Textures

Posted: Sun Feb 24, 2008 7:18 am
by heftig
Since descent2.de is down, I'm just gonna repost this here. I really want some comments.

http://wc3banlist.de/muzls.rar

These are my textures for the muzzle flashes. They were created by some Photoshop work on the original textures.

Diedel asked me for versions with more frames (9). However, I'm not that skilled yet. I'll try working on it nonetheless... making it expand outward will be tough.

Maybe someone else can create smoothly animated versions. The PSD file is included. You'll find I'm fond of non-destructive editing.

Posted: Sun Feb 24, 2008 2:02 pm
by MetalBeast
Looks very good, however the last frame is a little bit too dark, but anyway good job!

Btw. can any admin rename my account to MetalBeast please?
thx.

MB.

Posted: Mon Feb 25, 2008 1:59 am
by Diedel
heftig,

very nice flashes. Just rename them to muzl0X#0.tga (X=2,3,5,...), and muzl4 needs to be muzl05.

Posted: Mon Feb 25, 2008 8:42 am
by heftig
Thanks, I appreciate your comments. :)

Updated archive uploaded:
  • Brightened blue flash
  • Brightened last frame
  • Renamed files

Posted: Mon Feb 25, 2008 8:43 am
by MetalBeast
Link doesn't work...

Posted: Mon Feb 25, 2008 8:44 am
by heftig
Yeah, sorry. :P

I uploaded the archive with a lower-case name. I was *about* to change the link.

Posted: Mon Feb 25, 2008 8:48 am
by Diedel
Your muzzle flashes are very nice. :)

Re:

Posted: Mon Feb 25, 2008 8:51 am
by MetalBeast
Diedel wrote:Your muzzle flashes are very nice. :)
Yes, they look great :D

We still have many high-res textures to be done ;)
So, it would be nice, if you can help us.
It seems, you are good with texture making. :D

Posted: Mon Feb 25, 2008 8:57 am
by Diedel
X4!

Posted: Mon Feb 25, 2008 9:01 am
by heftig
Hmm, so it seems. Thanks for the invitation, I just can't draw for ★■◆●. :P

I let Photoshop do some arithmetic while keeping my cursor off those blasted drawing tools as much as possible. :)

Posted: Mon Feb 25, 2008 9:20 am
by MetalBeast
I also can't really draw. Maybe a little bit.
But I found a way for making good textures without drawing them.

Especially for D2x-xl you can make good textures with resize the old ones and using spezial filters and other techniques for improving them, so they look like new. ;)

If our forum is back, I will show you all my tricks :D

Posted: Mon Feb 25, 2008 9:45 am
by Diedel
An easy way to add frames is to split one animation into its 3 frames.

Then create frame 0-1 by computing the average of frames 0 and 1 and increase both brightness and contrast by 60 %.

Create frame 1-2 by multiplying frames 1 and 2, using a division factor of 18. Apply some gentle smoothing (remove image static) and then high pass sharpening again.

Finally combine all frames in the sequence 0, 0-1, 1, 1-2, 2. Adding an alpha channel is not a bad idea to avoid problems that can be caused by turning off explosion transparency in D2X-XL.

Worked pretty well here.

More than 5 frames do not make sense anyway, given how fast the flash has to appear and disappear.

Posted: Mon Feb 25, 2008 10:02 am
by heftig
I'll try adding more frames.

I noticed the flashes are off-center. Should I center them so the center of the flash is in the center of the texture?

Posted: Mon Feb 25, 2008 10:08 am
by Diedel
Good that you are asking. Yes, please center them. That's what I did with the 5 frame flashes I created.

Posted: Mon Feb 25, 2008 11:39 am
by heftig
I'm done uploading an improved version.

6 frames. The only thing I'm not happy with is how quickly the sparks fade.

It was all done by additively blending the original frames together at different sizes, adjusting the brightness here and there.

Image

Posted: Mon Feb 25, 2008 12:31 pm
by MetalBeast
WOW!, looks great!

Posted: Tue Feb 26, 2008 3:51 am
by heftig
Thanks! :)

Next step will be adding an alpha channel.

Posted: Tue Feb 26, 2008 3:54 am
by Diedel
That should be simple. I don't have photoshop, but maybe the procedure is similar to Paintshop Pro:

Copy the entire image to a new image (mask)
Turn the mask into grayscales
Added the mask as new mask layer to the original image
Store the layer in an alpha channel
delete the layer (deny to merge it with the image)

That's it.

Posted: Tue Feb 26, 2008 4:25 am
by Aus-RED-5
That is one awesome muzzle flash! :D

Re:

Posted: Tue Feb 26, 2008 6:52 am
by heftig
Diedel wrote:That should be simple. I don't have photoshop, but maybe the procedure is similar to Paintshop Pro:

Copy the entire image to a new image (mask)
Turn the mask into grayscales
Added the mask as new mask layer to the original image
Store the layer in an alpha channel
delete the layer (deny to merge it with the image)

That's it.
The problem with this approach is that the image gains a dark fringe, and it doesn't look good on bright backgrounds.

I'll work something out. Maybe I'll make it mostly opaque. If the explosions are not transparent, this will fit in better IMO.

edit:

How's this? Pretty much Diedel's approach, but with an extreme decrease in alpha gamma (:lol:).

Image

The black fringe looks like a shadow.

Some questions:

D2X-XL does either normal or additive blending, yes?
I guess the alpha channel is taken into account with additive blending as well?

A suggestion:

Have you considered implementing screen blending as a third blending style alongside additive blending? It's not nearly as prone to oversaturation as additive blending is.

Posted: Tue Feb 26, 2008 7:47 am
by Diedel
What is screen blending - GL_ONE, GL_ONE_MINUS_DST_COLOR?

You could multiplay the mask with itself before using it als alpha channel.

Posted: Tue Feb 26, 2008 9:00 am
by heftig
I don't think OpenGL provides screen blending. You'd have do it with shaders.

Additive blending simply adds the color values together:

Code: Select all

result = a + b
The result is then capped to the range 0..1 .

Screen blending (or \"negatively multiply\", as the german Photoshop calls it) first inverts the source and destination, multiplies them, then finally inverts the result.

Code: Select all

result = 1 - (1 - a)*(1 - b)
The result will never leave the range 0..1 (no capping needed).

Maybe screen blending will be useful for the lighting, as well.

Posted: Tue Feb 26, 2008 9:11 am
by Diedel
That would be glBlendFunc (GL_ONE_MINUS_DST_COLOR, GL_ONE_MINUS_SRC_COLOR), which is available in OpenGL.

Btw, re your 6 frame flash: The sparks fading quickly is np - the effect comes and goes extremely fast when starting or ceasing to fire.

Posted: Wed Feb 27, 2008 7:04 am
by heftig
Uploaded alpha channel versions. :)

Comments? Suggestions?

Posted: Wed Feb 27, 2008 7:47 am
by Diedel
New version under the above link?

Posted: Wed Feb 27, 2008 7:55 am
by heftig
As always. ;)

So, I'm really interested in how these look ingame.