"drunk" effects

Started by
8 comments, last by moore52 21 years, 8 months ago
Im have problem with something like underwater caustic in Quake 1 Im trying to make some screen-mess effects in my fpp engine, but i dont know how. I tryed with gluPerspective, but i doesnt work. If somebody can help me solve this problem please mail me moore52@skrzynka.pl
Advertisement
What i did before, is just mess up with the camera. It will only move your camera in wierd positions though, but it maybe helps a bit.
why don''t you set up your view matrix manually ?

you could set the matrix vectors to ''unnormal'' values, so the whole projection will be distorted... if you manipulate the vectors maybe by a sinus, or whatever, you''ll get some cool underwater effect... (i think. never tried it before !)
Maybe you could pre-render the scene to an off-screen buffer, and render that as a texture to the primary screen as a bunch of quads that you distort the shape of over time?
It's not what you're taught, it's what you learn.
you could use the Q3 Engine effect, it changes x and y FOV (afaik)
when you are underwater
I hate signatures !!!
The last three variables in gluLookAt() control the camera angle... play with those with variables that constantly change.

Thats what I did, and its really cool being able to walk drunk

~ Jesse

PS In C++, you CAN drink and derive.

The gl2D Project
----------[Development Journal]
The last three variables in gluLookAt() control the camera angle... play with those with variables that constantly change.

Thats what I did, and its really cool being able to walk drunk

~ Jesse

PS In C++, you CAN drink and derive.

The gl2D Project
----------[Development Journal]
the underwater effect you describe is not caustics. caustics deals with light passing through the water making patterns on the floor/walls (ie shadow/light areas due to waves and refraction). the wavy effect is totally unrealistic though many games add it since it looks "cool", and help display that you are underwater.

the best way to mess up the screen is to render to a texture then take that texture and map it to a bunch of quads in which you either play with the texture coordinates (ie dont go linearly across) or move the actual vertices. think procedural texture mapping onto a piece of grid paper and you change how the image lines up with the grid or actually move the grid points around.

you could also play around with transformation matrices and the perspective matrix to make things wierd as well. however i think the render to texture will give the most flexiblity especially if you use alpha blending and dont clear the backbuffer. thus now you have feedback and will get a blurring effect as things move.
you could also go one step further and apply the rendered texture to a gluNurbs patch. Then you can use fade the control points in and out. It might end up being more computationly expensive (depending on the quality you want it to have, but it should look pretty neat.
You can also mess around with the texture matrix some. That might produce more of a "high on mushrooms" type effect though.

I would say the best drunk thing you can do would be to play with the camera up vector a little, as previously suggested.

Also (this would be pretty cool in conjunction with the camera) you can render the scene twice with blending to get a seeing-double type thing going. You could make both passes move in and out of each other (in and out of focus, so to speak).

In addition to the graphics, you could also have other things going on... characters speaking to you and in mid-sentence they could go in and out of Sims-style babbling. You know how when your drunk things make sense one minute and then you have no idea what someone just said...

This topic is closed to new replies.

Advertisement