Hot Gas Shader

Posted By: WolfCoder

Hot Gas Shader - 04/25/08 15:17

I have no idea what kind of shader is needed to do this but,

You know how you can see the air look funny when it's really hot? I'm not sure what kind of technique it's called for blurring and distorting something behind itself so it looks like hot gas.
Posted By: BoH_Havoc

Re: Hot Gas Shader - 04/25/08 15:25

It's called a heat haze shader \:\)
You can either wait for slin to release his shaderpack or write your own based on olivers refraction shader, it's not that hard.
Posted By: WolfCoder

Re: Hot Gas Shader - 04/29/08 14:58

The problem is the refraction shaders don't work since they render views on the surface of entities (mirror) is not supported in commercial edition, I just need something that blurs on top of what was already drawn.

For a global screen effect, I just have another view on top of the normal view which jiggles slightly and is transparent (which for some reason says only for professional edition but works in mine anyway). I'll still use it as fallback/low sys-reqs but I'll want to make a version which blurs the distance a bit and has fire/explosions cause this effect as well.
Posted By: lostclimate

Re: Hot Gas Shader - 04/30/08 16:14

its not possiblew without rtt(render to texture), those are all post processing effects. and of course it says it only works in pro, its a pro only feature! you can get chrisb's dll which allows rtt on any license.
Posted By: Quad

Re: Hot Gas Shader - 04/30/08 16:29

a7 comm. suports rtt natively. The restricton that lostclimate talking about is for a6 i think.(so does the rtt plugin.)
Posted By: lostclimate

Re: Hot Gas Shader - 04/30/08 16:52

well by the sounds of it, his restrictions are for a6.
Posted By: WolfCoder

Re: Hot Gas Shader - 05/06/08 17:32

I don't want a render to texture, i just need it to blur stuff that was already drawn to the view. I don't need it to realistically bend the light behind it using the render to texture since a simple jiggly blur is fine as long as it appears in the correct place.

Also, if you reference files (such as chrisb's dll) please actually provide me a link to them, otherwise I have no idea what you're talking about since I can't find 75% of the stuff people talk about using search.

But I don't actually want a refraction method at all, I want something that blurs what was already drawn (sorted like how transparent entities are sorted since you can see through it), kind of like how on vista the stuff behind title bars are blurred, only it jiggles a little.

It's a pretty cheap effect but I don't want full blown refraction unless I want to do something else.
Posted By: adoado

Re: Hot Gas Shader - 05/07/08 01:50

Hello ^^

 Quote:
..i just need it to blur stuff that was already drawn to the view.


That requires render to texture. Its when you render the view's output into a texture so you can manipulate it, etc. You cannot manipulate (blur, etc) a view directly.

If you do not want to use render to texture, AFAIK the effect is not possible.

Here is the link to ChrisB's DLL
http://www.coniserver.net/ubb7/ubbthreads.php?ubb=showflat&Number=151863&fpart=1

 Quote:
But I don't actually want a refraction method at all, I want something that blurs what was already drawn (sorted like how transparent entities are sorted since you can see through it), kind of like how on vista the stuff behind title bars are blurred, only it jiggles a little.


If you want heat haze like this:
http://www.mayavisionint.com/Productions/Myths_Heroes/contimg/sheba/22-emptyqtr.jpg

you will need a refraction shader. You simply use a normal map which simulates refraction of the image behind it (you render it to a texture so the shader knows what is behind it).

If you even want to blur something, you still need render to texture ;\)

Thanks ;\)
Adoado
Posted By: WolfCoder

Re: Hot Gas Shader - 05/14/08 19:39

No, I know it's possible without render to texture because transparent entities are sorted like 2D images (because problems occur when two transparent entities are drawn together). This means they're drawn sorted like layers. I need something that, right when an entity is about to be drawn, to distort the pixels behind it.

Nothing in computer programming is impossible, it's just knowing how to do it. I doubt such an amazing engine as Acknex would have no support for drawing on top of already-rendered pictures.

However it's starting to sound more like a DirectX .dll plugin than a regular shader. >_<

Something that draws circles of blur like a facing sprite would be great since my need is for simplicity and speed over realistic stuff (refraction has to render another view which costs alot more than a copy and paste blitter).
Posted By: JibbSmart

Re: Hot Gas Shader - 05/14/08 23:17

rendering another view isn't that bad. probably every refraction shader you've seen uses another view.

here's a quick idea, though: first view renders the scene normally. second view renders the scene with no textures applied, just grey for everything (no texture look-ups, single-line shaders... it's looking quick already!!), and you could even use lower LoD levels or a shorter draw distance if you are really pinickity. but it doesn't render everything grey. there are sprites that are basically "refraction maps" that say how much to offset each pixel.

the third view (don't panic! it doesn't even render the scene again, it's just a post-processing stage) takes in both those images (the rendered scene, and refraction-offset scene) and offsets pixels from the nice render based on the colours it gets from the second view.

but i can't do any examples because i have way too much work to do atm.

and i only just realised you still have A6, so forget about easy post-processing. i highly recommend you get A7.

julz
Posted By: Foxfire

Re: Hot Gas Shader - 05/16/08 14:36

if you don't want to use render_to_target + a refraction shader, you could just create a few transparent sprites and place them where the heat is.
Make a sprite of gaussian-blurred noise, then program the sprite(s) to be overlay + transparent and to shift in random directions. This won't be AS good, but it makes it look half-foggy and half-heat-haze without the fuss.

If you really wan't to make a go for it, program the sprites to be generated by a source and move away, becoming larger and more transparent before deletion, while moving a little in random directions. Just make sure you have more than one overlapping so that different pixels are dynamically changing their transparency.

Cheap... but effective
Posted By: lostclimate

Re: Hot Gas Shader - 05/17/08 04:37

Quote:
No, I know it's possible without render to texture because transparent entities are sorted like 2D images (because problems occur when two transparent entities are drawn together). This means they're drawn sorted like layers. I need something that, right when an entity is about to be drawn, to distort the pixels behind it.

Nothing in computer programming is impossible, it's just knowing how to do it. I doubt such an amazing engine as Acknex would have no support for drawing on top of already-rendered pictures.

However it's starting to sound more like a DirectX .dll plugin than a regular shader. >_<

Something that draws circles of blur like a facing sprite would be great since my need is for simplicity and speed over realistic stuff (refraction has to render another view which costs alot more than a copy and paste blitter).


again its a rtt function, thats just the way dx works, not the way acknex does it. its called a post process shader, it takes a screen shot, and then blurs it. and blits that to the screen.
© 2024 lite-C Forums