Go Back   Steam Users' Forums > Steam Tool Discussions > Source Level Design

Reply
 
Thread Tools Display Modes
Old 03-25-2012, 10:14 AM   #1
HL2Titanic
 
Join Date: Feb 2012
Reputation: 0
Posts: 17
Question Too many unique verts, max = 65536 (map has too much brush geometry)

Hey guys,

Im running into this error when attempting to compile. I've Googled around a lot and the only answers that seem to come up, which arent overly great, are: "you have too much detail in your map".

Im recreating the Titanic to scale, and thus far its all in one map.

I've had previously successful compiles before, with upwards of 7800+ brushes, without error. Although now, with more of the ship added, which adds brushes, but also much of the brush work also converted to models using Propper, Im running into the error with a brush count of (currently) 7700.

It seems that if I block out certain sections of the map, the error disappears and Im instead presented with this error:

Too many t-junctions to fix up! (3150 prims, max 32768 :: 65541 indices, max 65536

Which best I can tell means too many func_detail brushes are touching world brushes.

If I block out about half the map (the lower decks of the ship) then the compile is fine, even on full VVIS.

I know at some point I'll probably have to split the map into multiple levels, but Im sure there's something that can be done in the interim to resolve this.

You can see more info about the map in the last two pages of this thread: http://www.snarkpit.net/index.php?s=...&tp=120#215307

The latest successful compile log is (with D Deck and bellow blocked off):

Code:
materialPath: i:\steam\steamapps\*\half-life 2\hl2\materials
Loading C:\Users\*\Desktop\Titanic\maps\Titanic.vmf
ConVarRef mat_reduceparticles doesn't point to an existing ConVar
Could not locate 'GameData' key in i:\steam\steamapps\*\half-life 2\hl2\gameinfo.txt
fixing up env_cubemap materials on brush sides...
0...1...2...3...4...5...6...7...8...9...100...1...2...3...4...5...6...7...8...9...10Processing areas...done (0)
Building Faces...done (0)
Chop Details...done (0)
Find Visible Detail Sides...
Merged 224 detail faces...done (0)
Merging details...done (0)
FixTjuncs...
PruneNodes...
WriteBSP...
done (4)
writing C:\Users\*\Desktop\Titanic\maps\Titanic.prt...Building visibility clusters...
done (0)
Creating default LDR cubemaps for env_cubemap using skybox materials:
   skybox/sky_day01_01*.vmt
 ! Run buildcubemaps in the engine to get the correct cube maps.
Creating default HDR cubemaps for env_cubemap using skybox materials:
   skybox/sky_day01_01*.vmt
 ! Run buildcubemaps in the engine to get the correct cube maps.
Finding displacement neighbors...
Finding lightmap sample positions...
Displacement Alpha : 0...1...2...3...4...5...6...7...8...9...10
Building Physics collision data...
done (1) (1410950 bytes)
Static prop models/props/staircase_thirdclassopenspace1.mdl outside the map (5311.00, -317.00, -615.00)
Static prop models/props/staircase_thirdclassopenspace2.mdl outside the map (5326.00, -317.00, -458.00)
Static prop models/props/staircase_thirdclassopenspace2.mdl outside the map (5326.00, 310.00, -458.00)
Static prop models/props/staircase_thirdclassopenspace1.mdl outside the map (4531.00, 323.00, -615.00)
Static prop models/props/staircase_thirdclassopenspace1.mdl outside the map (4531.00, -330.00, -615.00)
Static prop models/props/staircase_crewddeck1.mdl outside the map (5488.00, -9.78, -458.00)
Static prop models/props/staircase_crewedeck1.mdl outside the map (5548.00, -26.00, -619.21)
Static prop models/props/staircase_crewddeck2.mdl outside the map (5645.00, 231.00, -457.75)
Static prop models/props/staircase_crewddeck2.mdl outside the map (5645.00, -238.00, -457.75)
Static prop models/props/staircase_thirdclassentranceedeck1.mdl outside the map (-5555.07, -4.00, -630.68)
Static prop models/props/staircase_thirdclassentranceddeck1.mdl outside the map (-5555.14, -4.00, -458.29)
Static prop models/props/staircase_thirdclassentrancefdeck1.mdl outside the map (-5539.74, -30.00, -763.58)
Static prop models/props/staircase_thirdclassentrancegdeck1.mdl outside the map (-5534.82, -2.00, -898.65)
Static prop models/props/boiler_single1.mdl outside the map (-896.00, -4.14, -1228.00)
Static prop models/props/boiler_single1.mdl outside the map (-896.00, 284.00, -1228.00)
Static prop models/props/boiler_single1.mdl outside the map (-896.00, 572.00, -1228.00)
Static prop models/props/boiler_single1.mdl outside the map (-896.00, -580.00, -1228.00)
Static prop models/props/boiler_single1.mdl outside the map (-896.00, -292.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (3622.00, -436.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (3622.00, -148.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (3622.00, 141.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (3622.00, 429.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (-38.00, 572.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (-38.00, 284.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (-38.00, -3.87, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (-38.00, -292.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (-38.00, -580.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (921.00, 572.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (921.00, 284.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (921.00, -580.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (921.00, -3.87, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (921.00, -292.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (1832.00, 572.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (1832.00, 284.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (1832.00, -580.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (2759.00, -580.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (2759.00, 572.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (2759.00, 284.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (1832.00, -292.00, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (1832.00, -3.87, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (2759.00, -3.87, -1228.00)
Static prop models/props/boiler_double1.mdl outside the map (2759.00, -292.00, -1228.00)
Placing detail props : 0...1...2...3...4...5...6...7...8...9...10
Compacting texture/material tables...
Reduced 14083 texinfos to 3365
Reduced 30 texdatas to 26 (683 bytes to 547)
Writing C:\Users\*\Desktop\Titanic\maps\Titanic.bsp
10 seconds elapsed



6 threads
reading c:\users\*\desktop\titanic\maps\Titanic.bsp
reading c:\users\*\desktop\titanic\maps\Titanic.prt
2082 portalclusters
4668 numportals
0...1...2...3...4...5...6...7...8...9...100...1...2...3...4...5...6...7...8...9...10Optimized: 3934 visible clusters (0.00%)
Total clusters visible: 416356
Average clusters visible: 199
Building PAS...
Average clusters audible: 1354
visdatasize:706733  compressed from 1099296
writing c:\users\*\desktop\titanic\maps\Titanic.bsp
3 minutes, 16 seconds elapsed



[Reading texlights from 'lights.rad']
[45 texlights parsed from 'lights.rad']

Loading c:\users\*\desktop\titanic\maps\Titanic.bsp
39055 faces
2 degenerate faces
1248021 square feet [179715056.00 square inches]
0 Displacements
0 Square Feet [0.00 Square Inches]
39053 patches before subdivision
The latest failed log (not brush blocking):

Code:
** Executing...
** Command: "i:\steam\steamapps\*\sourcesdk\bin\source2009\bin\vbsp.exe"
** Parameters: -game "i:\steam\steamapps\*\half-life 2\hl2" "C:\Users\*\Desktop\Titanic\maps\Titanic.vmf"

Valve Software - vbsp.exe (Sep 15 2011)
6 threads
materialPath: i:\steam\steamapps\*\half-life 2\hl2\materials
Loading C:\Users\*\Desktop\Titanic\maps\Titanic.vmf
ConVarRef mat_reduceparticles doesn't point to an existing ConVar
Could not locate 'GameData' key in i:\steam\steamapps\*\half-life 2\hl2\gameinfo.txt
fixing up env_cubemap materials on brush sides...
ProcessBlock_Thread: 0...1...2...3...4...5...6...7...8...9...10 (2)
ProcessBlock_Thread: 0...1...2...3...4...5...6...7...8...9...10 (2)
Processing areas...done (0)
Building Faces...done (0)
Chop Details...done (0)
Find Visible Detail Sides...
Merged 224 detail faces...done (1)
Merging details...done (0)
FixTjuncs...
Too many unique verts, max = 65536 (map has too much brush geometry)


** Executing...
** Command: "i:\steam\steamapps\*\sourcesdk\bin\source2009\bin\vvis.exe"
** Parameters: -game "i:\steam\steamapps\*\half-life 2\hl2" "C:\Users\*\Desktop\Titanic\maps\Titanic"

Valve Software - vvis.exe (Sep 15 2011)
6 threads
reading c:\users\*\desktop\titanic\maps\Titanic.bsp
reading c:\users\*\desktop\titanic\maps\Titanic.prt
LoadPortals: couldn't read c:\users\*\desktop\titanic\maps\Titanic.prt


** Executing...
** Command: "i:\steam\steamapps\*\sourcesdk\bin\source2009\bin\vrad.exe"
** Parameters:  -game "i:\steam\steamapps\*\half-life 2\hl2" "C:\Users\*\Desktop\Titanic\maps\Titanic"

Valve Software - vrad.exe SSE (Sep 15 2011)

      Valve Radiosity Simulator     
6 threads
[Reading texlights from 'lights.rad']
[45 texlights parsed from 'lights.rad']

Loading c:\users\*\desktop\titanic\maps\Titanic.bsp
Setting up ray-trace acceleration structure... Done (3.68 seconds)
39055 faces
2 degenerate faces
1248021 square feet [179715056.00 square inches]
0 Displacements
0 Square Feet [0.00 Square Inches]
39053 patches before subdivision

** Executing...
** Command: Copy File
** Parameters: "C:\Users\*\Desktop\Titanic\maps\Titanic.bsp" "i:\steam\steamapps\*\half-life 2\hl2\maps\Titanic.bsp"
Any help greatly appreciated. Im kinda stalled at the moment.
HL2Titanic is offline  
Reply With Quote
Old 03-25-2012, 10:55 AM   #2
zombie@computer
 
Join Date: Aug 2008
Reputation: 416
Posts: 908
i dont understand your problem...

Your last failed log mentiones:

Too many unique verts, max = 65536 (map has too much brush geometry)

Which is hammer-language for 'your ed'.

ofcourse blocking parts is going to fix that problem, but you'll have to face it sooner or later so might as well fix it while you are ahead. You already know how to, there is no magic fix. Source maps are extremely limited in size and you should consider another engine if you want to gain more freedom from them.

The t-junction error when blocking off parts of the map is likely caused by the numerous 'props outside the map', unabling vbsp to cull the outside of your map.
zombie@computer is offline   Reply With Quote
Old 03-25-2012, 05:51 PM   #3
HL2Titanic
 
Join Date: Feb 2012
Reputation: 0
Posts: 17
So just to be clear, really the only viable option is to split the level. No (sane) amount of func_detail or modelling or displacements will help eh?
HL2Titanic is offline   Reply With Quote
Old 03-25-2012, 08:21 PM   #4
xKameronx
 
Join Date: Dec 2009
Reputation: 0
Posts: 57
Wait just a second sir!
You may want to try area portals. Its a tool in the source engine that basically hides things that can't be seen.
Here is a link to the Developer Wiki: https://developer.valvesoftware.com/...ortal_tutorial

I hope this helps out!
xKameronx is offline   Reply With Quote
Old 03-25-2012, 09:14 PM   #5
Punishment
 
Join Date: Feb 2008
Reputation: 355
Posts: 4,549
Areaportals won't reduce the number of brush faces in a map. A possible solution is to use Propper to turn brushes (like intricate detail brushes) into models. This should also help with the "Too many T-juncs" error message, if those brushes are func_detail.

The "static prop... outside the map" error indicates that your map is leaking. Try loading a pointfile and see if that helps find the leaks.
Punishment is offline   Reply With Quote
Old 03-26-2012, 04:07 PM   #6
HL2Titanic
 
Join Date: Feb 2012
Reputation: 0
Posts: 17
yea the static prop error is fine, since its only because I had boxed out half my map which included many prop models.

I've turned a fair bit to models, but most of whats left is actual architecture which cant really be modelled.
HL2Titanic is offline   Reply With Quote
Old 03-26-2012, 05:43 PM   #7
stevethepocket
 
Join Date: Apr 2008
Reputation: 267
Posts: 1,974
When you say you're "recreating the Titanic to scale", do you mean literally the entire ship? Or are there large empty blocked-off sections? Because either way... yikes. Can't say I'm exactly surprised you're bumping into limits.
stevethepocket is offline   Reply With Quote
Old 03-26-2012, 09:29 PM   #8
IcarusNine
 
Join Date: Jun 2005
Reputation: 5474
Posts: 2,572
You could recode the compile programs so they support more verts, but one wonder what the consequences would be.
IcarusNine is online now   Reply With Quote
Old 03-27-2012, 04:49 AM   #9
HL2Titanic
 
Join Date: Feb 2012
Reputation: 0
Posts: 17
Yup, the whole ship. But from the inside, so Im not worried what it looks like on the outside except for the player accessible areas (ie: the sides of the ship are non-existent)

One guy I know tried to recompile the BSP compiler to a higher brush limit, but it wouldnt run at all and I havent heard back from him.
HL2Titanic is offline   Reply With Quote
Old 05-04-2012, 08:49 PM   #10
HL2Titanic
 
Join Date: Feb 2012
Reputation: 0
Posts: 17
Hey guys (and any future Google'ers)

I just wanted to let you all know I found a solution of sorts for this error. I've googled plenty and no one's ever really had a solution, but I found that by modifying all my corners into 45 degree angles between brushes reduced vertices enough to resolve the issue for me. See this topic: http://forums.steampowered.com/forum...8#post30528888
HL2Titanic is offline   Reply With Quote
Old 05-05-2012, 02:52 AM   #11
Varsity
 
Join Date: Jun 2004
Reputation: 489
Posts: 17,359
That's only a temporary fix. You'll hit the error again as you add more detail.

You're just going to have to bite the bullet and split the ship into multiple maps.

(One potential alternative is building your brushes as a simple "skeleton" that only exists to block visibility, then building a detailed version of the ship in a proper modelling package and compiling it into lots of separate Source models to make a detailed "skin". Whatever option you go for, you're doing something that few if any game engines are designed to support.)
Varsity is offline   Reply With Quote
Old 05-05-2012, 08:26 AM   #12
HL2Titanic
 
Join Date: Feb 2012
Reputation: 0
Posts: 17
Its hard to tell. Im no expert but the compile log now only shows about 38,000 verts which is nice:

http://www.snarkpit.net/index.php?s=...74&tp=140&no=0

I am considering proppering alot of the current brushwork though
HL2Titanic is offline   Reply With Quote
Old 05-05-2012, 11:45 PM   #13
SiPlus.c
 
 
 
Join Date: May 2009
Reputation: 270
Posts: 1,558
You may try launching VBSP with -notjunc argument, but it's a hack. Just remove some brushes (each parallelepiped has 8 vertices, 8000 cubes = 64000 vertices).
SiPlus.c is offline   Reply With Quote
Old 05-06-2012, 09:42 AM   #14
Keldorn
 
 
 
Join Date: Feb 2010
Reputation: 304
Posts: 3,555
Sure you can make those brushes into models, but then your not getting the lightmap per pixel lighting (big problem so looks like crap) and also its slow and too much a pain getting the models into the hammer editor.

Last edited by Keldorn: 08-01-2012 at 10:11 AM.
Keldorn is offline   Reply With Quote
Old 05-06-2012, 10:04 AM   #15
Karlos_Modder
 
 
 
Join Date: May 2007
Reputation: 28
Posts: 819
Its not the engine that has the Vertex limitation, its the BSP. The BSP indexes every object that is compiled. There is an adress limit to the number of Vertices.
One good example is placing prop_physics in Hammer. There is a limit of i think 1024 or 2048 prop_physic entites (Which is shared with game entites like logic_relays, math_counter etc.. Prop_static have they own Lump which has a limit of 4096). Theres physically no room in the index on the BSP to store more. However once in game your able to spawn about 4096 before the engine runs out of memory allocation. The detail can be handel by the engine no question about it, in fact the source engine can support textures upto 4096x4096 easy.
What they need to do is get rid of the BSP and go for somthing more modern.
Karlos_Modder is offline   Reply With Quote
Reply

Go Back   Steam Users' Forums > Steam Tool Discussions > Source Level Design


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



All times are GMT -7. The time now is 11:39 PM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2014, vBulletin Solutions, Inc.
Site Content Copyright Valve Corporation 1998-2012, All Rights Reserved.