Final Online Test - dm_plaza17

Dario D.

Spy
Joined
Nov 30, 2004
Messages
710
Reaction score
0
This is the final release candidate, fully compiled (unlike the previous tests which were "fast" compiles), and I REALLY need it tested online this time, so I can release it.

I shaved off about 80 physics and ammo items, so netplay should be back down to about Lockdown level.

Please test (online), and PLEASE provide feedback, especially pertaining to online performance this time.

Download Here:
"By downloading this beta map, you agree to not violate this map in any way, or go against the will of Dario D., which is quite obviously to not have this map released or altered in any way, shape or form, except by him." Now that that's out of the way, click here and enjoy the test. (needs fairly higher specs than HL2, for obvious reasons)

Further info can be found here:
http://www.deefrag.com/maps.htm

And here's what it looks like:
02.jpg


01.jpg


12.jpg
 
I've been offline at home for some months now (but I'm back online on Monday). This has got me very excited about playing DM again. It looks excellent; just the sort of map I've been looking for for some time.

Nice.
 
Looks like crap.

Lol just kidding, looks like one of the finer designed maps of HL2DM :thumbs:
 
Glad to see that it's nearing release.

Ok, disclaimer: I'm not a mapper, and I've never used any of the techniques I'm going to recommend, and I didn't know what vis did or what hint brushes did until about two hours ago... yeah. So I apologize in advance if you know this stuff already, or if what I'm saying is inaccurate.

I did some research online about map optimization, spent some more time in your map, and discovered some things that might help. A lot. I mean, A TON. I think most of the issues can be fixed in a couple hours.

***I you're not already using them in your map optimization process, you really should learn how to use:

- mat_wireframe (cvar - set to 1 to render everything the engine is rendering in wireframe. Allows you to see exactly what's being rendered that shouldn't be)
- mat_leafvis (cvar - set to 1 to show the visleaf you're standing in)
- Hint brushes (a piece of geometry that forces splitting of visleafs)

Here are some web resources/tutorials that talk about map optimization:

http://www.*************/wiki/index.php/Optimization_(Geometry)#GLVIEW
http://www.valve-erc.com/srcsdk/Levels/performance_and_visibility.html
http://www.student.kun.nl/rvanhoorn/Optimization.htm

(the ***'s are h l 2 w o r l d . com)

In a nutshell, vis divides your level into these volumetric regions called visleafs. If there's a line of sight from your visleaf to another visleaf, that visleaf will get rendered. So, if you're in one visleaf on one side of a wall and stuff on the other side is getting rendered, that means that there's somehow a line of sight from your leaf to the other leaf.

I see you've done some work with occluders. Remember, those only work on entities; you'll have to use func_areaportal to occlude geometry.

In most outside areas, I'd recommend adding a horizontal hint brush at about the one story level. The visleafs are sometimes as much as two stories high, so vis thinks you can see a lot more from the ground than you actually can.

As for specific advice... this part of the map is the most problematic, performance-wise...
dm_plaza17_beta0003.JPG


because the vis is somehow "leaking" (that is, vis thinks you can see into the plaza area from here) through this hallway (on the left):
dm_plaza17_beta0004.JPG


If you seal this up, and make sure none of the visleafs are too high using hint brushes (some of the visleafs to the player's left here go right to the top of the wall, and so the wall doesn't block their line of sight into the plaza), all the performance problems with this part of the map will disappear. Period. Now, I'm not sure why the vis is leaking, but you could try moving or shrinking the blasted-out entrance to the building from the plaza. Also, remember that func_details don't block vis, so be sure you're not trusting those to block vis in that hallway.

Also, the stairs area could be made significantly faster by turning some stuff into func_detail. There are even a few faces that are being rendered that aren't visible at all; use the nodraw texture on these. Use mat_wireframe to see where faces are being split and they shouldn't be.

Also, consider this line of sight:
dm_plaza17_beta0008.JPG


You're shooting yourself in the foot performance-wise when you allow the player to look all the way through the building here. Consider either reworking the doorways so you can't see through it, or putting open func_areaportals in the two building entrances.

Finally, the balcony out front:
dm_plaza17_beta0011.JPG


I think much of this could be a func_detail, or maybe even the entire thing. There's just a lot of brush splitting going on that doesn't need to.

I hope this helped. It might take a little while longer to patch the perf issues (and I know you're ready to be done with this map), but I think the skills you acquire in the process will help with your next map. You will be making more maps, right? :)
 
Hey Physicles, thanks for going in-depth.

[answer to last question:] Yeah, I'm not through makign maps, but I'm done with HL2 (Im not a big CS fan, and there's nothing else worthwhile for me right now).

I'm going through the map right now with that advice in mind, and I did realize by turning off all entities and detail brushes in the editor, that the game CAN see through the apartment building in some places that I didn't think it could.

I also noticed that the most important Hint brush in the whole level was raised too high by about 4 units, making the entire lower Plaza become visible when you looked over the walls into the upper Plaza.

I'll post again with the results when I'm done with this... :cheers:
 
Alright, I completely sealed off the visibility through the apartment building (and turned off all vis groups except Solids, so I could make certain), and adjusted the Hint brushes to what I thought would be much better sealing positions, but the engine is still sees right through it and draws everything on the other side.

Very strange, but I think my understanding of the Source engine was correct, and that if you can see into ANY part of a major zone (even over a high wall), then everything in it is rendered.

I'm not certain, and would like someone to confirm this, but that's what my expectation was (from using Unreal Engine), and I think Source does this the same way, at least for the most part.

The good news: the apartment building now has some catchy minor additions on the first floor :)
 
Have you tried using mat_leafvis to make sure it's creating visleafs where you think it's creating visleafs? And if you want, I could take a look at your preliminary version and try to find where the leaks are. I'll have some free time tonight.

You are running a full vis, right?
 
Back
Top