Create an account


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Suggestions on reforming func_rain and func_snow

#1
Lightbulb 
I made a map a while ago, where I needed to add some falling snow. I used a func_snow brush for that purpose, and took a look at how func_rain and func_snow work like. I found a few things that I disagree with however, so I thought to post my ideas on how I believe these entities could be improved.

One issue is that I don't see why snow and rain need to be separate entities. Why not make a single func_weather instead, and allow the mapper to setup weather properties via entity keys? Mappers could also make their own weather that way, such as falling sand in desert areas. Or better off, we could put the weather effects in effectinfo.txt, and make them selectable with the mdl key (like in func_pointparticles).

The second problem I noticed is a functionality issue on how they work, which IMO is incorrect and unoptimized for weather. The func_rain and func_snow entities spawn particles inside the whole brush. But when used in larger amounts, this easily makes performance unplayable, due to the number of particles rendered. For that reason, weather is almost impossible to use on any medium-sized map (I can confirm this from experience).

The fix for this is using a common technique in many games with weather; Spawning the particles client-side, and inside a limited radius around the camera position. That way, fewer particles are used, and weather can be more intense with much lower performance loss. So if possible, I would suggest making our func_weather detect if a player is touching the brush, and spawn particles around their view origin if so.

I don't know when I can look into this, which is why I wanted to point out these ideas first... if someone else wishes to look into it sooner. Shouldn't be hard to make both changes, if everyone agrees they would be better this way. We should probably create the func_weather entity first, using the new spawning system I mentioned. Then let func_rain and func_snow deprecated, but still functional for existing maps that used them.
<spackObot> Congratulations to Samual and Taoki, your lovescore is 98.463%!
Samual (~dioteckte@...) quit #xonotic.pickup (gonna kill myself now)
Reply

#2
the problem with detecting if the player is touching the brush is that the effects aren't only rendered if the player isin it. for example, of the player is inside looking out at the rain.

however, I agree that the current system could be improved.
Master of mysterious geometries

Imgur Gallery
Reply

#3
Could be reformed with foliage I think? Or simple view-radius limiting, that'd do just fine.
(08-10-2012, 02:37 AM)Mr. Bougo Wrote: Cloud is the new Web 2.0. It makes no damn sense to me.
Reply



Possibly Related Threads...
Thread Author Replies Views Last Post
  More Engine Suggestions - Different Lighting Handling master[mind] 13 10,319 04-04-2011, 09:36 AM
Last Post: Morphed
  Newtonian Nightmare - Playtest and suggestions thread CuBe0wL 35 30,050 01-17-2011, 05:10 PM
Last Post: FraNcoTirAdoR
  Xonotic build suggestions? hellmind 10 9,325 06-10-2010, 02:39 PM
Last Post: Beefeater

Forum Jump:


Users browsing this thread:
1 Guest(s)

Forum software by © MyBB original theme © iAndrew 2016, remixed by -z-