MODULE: 3DRain - WiP - soon - Demo available

Started by Khris, Tue 10/07/2007 23:32:10

Previous topic - Next topic

Khris

When I rode home on my bike today it was raining, and suddenly I thought about coding a decent replacement for the snow/rain plugin. Well, at least for the rain part.

It still needs to be polished a bit, plus I have yet to come up with a user-friendly way to set up the 3D parts.

to-do list:
-support for other resolutions than 320
-ability to let things get wet
-user-friendly 3d system

done:
-wind
-hits ground differently depending on material

DOWNLOAD DEMO

Monsieur OUXX

Quote from: KhrisMUC on Tue 10/07/2007 23:32:10
3D Rain

that's cool. Do you think you can make it compatible with the Easy3D module, or will it achieve to vaporize any powerful processor in the atmosphere?
 

Ghost

#2
The demo creates some nice effects. Congrats! I'd suggest some variation in the drops colour; apart from that, it's a worthy alternative to the "established" rain/snow plugin.

BTW- using the "z" axis is a stroke of genius IMO. Are you planning to make objects and walkbehinds respond to this, too- so that, say, a large tree in the middle of the park actually blocks rain?

Khris

Monsieur OUXX:
To be honest, I'm way too lazy to read myself into the Easy3D module's lengthy code. And I've yet to see a game using it either :)

Ghost:
Thanks :)
The drops will be customizable, maybe even two-colored.
And yes, being able to put stuff in the bg that blocks the rain is one of the main reasons why I'm trying myself at this. I'll try to make it as customizable as possible while using only sprites and coordinates hopefully to avoid conflicts with regions & other stuff the game designer might need for something else.
I'm afraid it won't recognize walkbehinds though. Displaying the rain has to be done using RawDraw functions and there's no WalkBehind.GetAtRoomXY unfortunately.

Ghost

No worries, objects should be sufficient. Good luck on you, then, and godspeed  ;)

MrColossal

That's a rather nice effects, I may have to break my "no modules" guideline for my current game to take advantage of this

one question: The rain seems to bunch in the center of the screen. I'm guessing the rain isn't being calculated for outside the bounds of the image?
"This must be a good time to live in, since Eric bothers to stay here at all"-CJ also: ACHTUNG FRANZ!

strazer

Strange, with the v2.72 Linux engine all the drops seem to stay in one place:



I tried something like this once, but I wanted the drops to also be drawn in front of objects and characters, so I had to rawdraw them as well. I also wanted the drops  to stay in place in the room and not move with the screen/viewport in scrolling rooms so I had to calculate (part of) the rest of the room as well. Needless to say, it all got pretty slow pretty quick. :-\
Then again, I used sprites for the raindrops. I'm curious to see how this demo performs in higher resolutions. Looking forward to the module!

Shane 'ProgZmax' Stevens

Strazer brings up an interesting point.  You may need to make the rain emitter width customizable for wide rooms.  I am also curious to see how something like this would affect performance on a graphic intensive game.  Nice work!

Rui 'Trovatore' Pires

Very impressive! Am eagerly awaiting development on this one, bravo.
Reach for the moon. Even if you miss, you'll land among the stars.

Kneel. Now.

Never throw chicken at a Leprechaun.

GarageGothic

Very impressive. I've been working on a 3D-ish rain module myself for a while (sprite based particle system), but haven't so far found a viable way to draw transparent rain in front of characters and objects without slowing the system down massively (and without giving up on lighting and tint effects as you would do if also RawDrawing the characters). I'd be interested in how you'll manage this - for non-transparent rain Overlays would perhaps be the best solution.

Scorpiorus

Nice work with the module indeed :)

The problem with these particle systems (rain, snow, stars, waterfall, falling leaves etc...) is that an external dynamic-link library (DLL) seems to be the only optimal way/form to implement them at the moment -- reasonable performance and providing an object-oriented interface to the script (just like the built-in AGS objects such as Characters, GUIs, DynamicSprites etc.) are a plus here. On the other hand, their role in an adventure game is usually of a secondary importance, to say the least. Sure, a nice-looking particle-based snowfall can add to the feel of immersion for some snow scene but the bad thing with DLLs is that they bind the game to Windows only, which is a shame as there are many people using Linux, for instance. So one downloads a game just to discover it won't work because of some DLL there, although the whole point of the AGS engine to be a virtual machine to run any AGS game on a variety of operating systems, as long as there is a port of the engine available for a certain OS.

I was working on a plugin to generalize all sorts of particle effects (by providing an ability to create and manipulate custom particle systems) but eventually put it on hold as I stumbled upon some technical issues which (among other things) led to slow down in performance speed and thus rendered all the benefits of using a DLL quite useless; as then it can just be simply scripted, retaining cross-platform compatibility.

Vincent

Hi Khris ! The Link About Your 3D Rain Demo Seems To Be Broken...
I Wish I Could See That... How Could I ?

Khris

Haha, wow, another skeleton in my closet has reappeared :)
I fixed the link, try again.

Julius Dangerous

___________________________________________________________

Khris


Slasher

Great potential module Khris...

Please continue (nod)


Julius Dangerous

___________________________________________________________

tobulos1

Any news on this module? Would truly love to use it :)

Dualnames

I'm locking this, it has been 3 years without a share or so, I once actually got the source of it somewhere, I can't remember where.
Worked on Strangeland, Primordia, Hob's Barrow, The Cat Lady, Mage's Initiation, Until I Have You, Downfall, Hunie Pop, and every game in the Wadjet Eye Games catalogue (porting)

SMF spam blocked by CleanTalk