Only if you do it on a very large scale but your talking months of optimization work by quite a few dedicated people who know exactly what they where doing, which right now I'm the only person in the team who can truly optimize all areas of a staticobject and have far too much work on to think about this sort of thingPsyrus wrote:Oh jeez that sounds like a lot of work??: Is (will the) the benefit be worth the work that it entails (on the modelers'/mappers' side)?
[Request] Help us to Optimize PR! (LOD Switching & Cull Distances)
-
Rhino
- Retired PR Developer
- Posts: 47909
- Joined: 2005-12-13 20:00
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
-
Rudd
- Retired PR Developer
- Posts: 21225
- Joined: 2007-08-15 14:32
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
noob question, would this treatment also apply to kit geometries?
-
Rhino
- Retired PR Developer
- Posts: 47909
- Joined: 2005-12-13 20:00
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
the lightmapping part no[R-DEV]Rudd wrote:noob question, would this treatment also apply to kit geometries?
decent LODs, LOD distances and cull distances, defiantly yes and something I've said in the dev forums for ages needs to be looked into
-
AquaticPenguin
- Posts: 846
- Joined: 2008-08-27 19:29
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
I noticed with the 128 player server I began to get reduced frame-rate when a lot of friendlies were around, so I'm guessing this was probably a big contributing factor.[R-DEV]Rhino wrote:the lightmapping part no
decent LODs, LOD distances and cull distances, defiantly yes and something I've said in the dev forums for ages needs to be looked into![]()
-
Rhino
- Retired PR Developer
- Posts: 47909
- Joined: 2005-12-13 20:00
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
That and the handheld weapons as some 3p models for weapons have the same poly count as a MBT, on arrearage the same as an APC so having a squad of 6 guys around you is like having 6 APCs next to you.
-
Wakain
- Posts: 1159
- Joined: 2009-11-23 21:58
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
damn, and you guys maintain that this whole optimization initiative will only be a matter of a slightly better framerate for most computers?[R-DEV]Rhino wrote:That and the handheld weapons as some 3p models for weapons have the same poly count as a MBT, on arrearage the same as an APC so having a squad of 6 guys around you is like having 6 APCs next to you.
-
Rhino
- Retired PR Developer
- Posts: 47909
- Joined: 2005-12-13 20:00
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
Well in my initial testing of improving that aspect I only got 1 fps extra (which may seem small but is actually quite a lot) but I need to do some more work on it and I think I can get more than that, but its a huge amount of work what I did which we tbh, don't really have the man power to do all that work and its very complicated and takes a huge amount of time to do it wellWakain wrote:damn, and you guys maintain that this whole optimization initiative will only be a matter of a slightly better framerate for most computers?![]()
-
Psyrus
- Retired PR Developer
- Posts: 3841
- Joined: 2006-06-19 17:10
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
Code: Select all
[b][u]mec_aav_gopher, ru_aav_gopher[/u][/b]
ObjectTemplate.cullRadiusScale 9.4
GeometryTemplate.setSubGeometryLodDistance 1 0 10
GeometryTemplate.setSubGeometryLodDistance 1 1 50
GeometryTemplate.setSubGeometryLodDistance 1 2 90
GeometryTemplate.setSubGeometryLodDistance 1 3 140
GeometryTemplate.setSubGeometryLodDistance 2 0 20
GeometryTemplate.setSubGeometryLodDistance 2 1 55
GeometryTemplate.setSubGeometryLodDistance 2 2 75
GeometryTemplate.setSubGeometryLodDistance 2 3 110
[b]Issues:[/b]
[list=1]
[*]Geom_2 LOD 0-4: Wheels/Tracks appear to be duplicated?
[*]Geom_2 LOD 4: Final LOD is over limit @ 585 polys
[*]
[*]
[*]
[*]
[*]
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b]
Last edited by Psyrus on 2011-06-06 05:37, edited 3 times in total.
-
Psyrus
- Retired PR Developer
- Posts: 3841
- Joined: 2006-06-19 17:10
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
Code: Select all
[b][u]mec_apc_btr60, ru_apc_btr60[/u][/b]
ObjectTemplate.cullRadiusScale 9.2
GeometryTemplate.setSubGeometryLodDistance 1 0 25
GeometryTemplate.setSubGeometryLodDistance 1 1 65
GeometryTemplate.setSubGeometryLodDistance 1 2 75
GeometryTemplate.setSubGeometryLodDistance 2 0 25
GeometryTemplate.setSubGeometryLodDistance 2 1 45
[b]Issues:[/b]
[list=1]
[*]Geom_1 LOD 3: Final LOD poly count above limit @ [b][color=red]2057[/color][/b]
[*]Geom_2 LOD 2: Final LOD poly count above limit @ [b][color=red]2988[/color][/b]
[*]
[*]
[*]
[*]
[*]
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b] Code: Select all
[b][u]mec_apc_mltb, ru_apc_mltb[/u][/b]
ObjectTemplate.cullRadiusScale 10.1
GeometryTemplate.setSubGeometryLodDistance 1 0 25
GeometryTemplate.setSubGeometryLodDistance 1 1 75
GeometryTemplate.setSubGeometryLodDistance 1 2 135
GeometryTemplate.setSubGeometryLodDistance 1 3 180
GeometryTemplate.setSubGeometryLodDistance 2 0 20
GeometryTemplate.setSubGeometryLodDistance 2 1 50
GeometryTemplate.setSubGeometryLodDistance 2 1 70
GeometryTemplate.setSubGeometryLodDistance 2 1 135
[b]Issues:[/b]
[list=1]
[*]Geom_2 LOD 4: Due to the loss of the track guards, the LOD switch has to be pushed out further than it would have to if the model were a bit 'fatter' from the front profile on the final LOD. Not a huge issue, but noteworthy.
[*]Geom_2 : [i]Again it seems like the wheels are doubled up on all 4 LODs?[/i]
[*]
[*]
[*]
[*]
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b]
Last edited by Psyrus on 2011-06-16 15:05, edited 4 times in total.
-
Psyrus
- Retired PR Developer
- Posts: 3841
- Joined: 2006-06-19 17:10
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
Code: Select all
[b][u]mec_apc_mltb_hmg, ru_apc_mltb_hmg[/u][/b]
ObjectTemplate.cullRadiusScale 9.9
GeometryTemplate.setSubGeometryLodDistance 1 0 20
GeometryTemplate.setSubGeometryLodDistance 1 1 75
GeometryTemplate.setSubGeometryLodDistance 1 2 135
GeometryTemplate.setSubGeometryLodDistance 1 3 210
GeometryTemplate.setSubGeometryLodDistance 2 0 25
GeometryTemplate.setSubGeometryLodDistance 2 1 75
GeometryTemplate.setSubGeometryLodDistance 2 2 125
GeometryTemplate.setSubGeometryLodDistance 2 3 225
[b]Issues:[/b]
[list=1]
[*]Due to the low poly count for the final LOD and fact that it is 2 pixels until over 1100m, I pushed out the cull radius. Feel free to bring it down to my original (7.6) or your own value if you feel that is a better fit.
[*]Geom_2 LOD 4: Due to the loss of the track guards, the LOD switch has to be pushed out further than it would have to if the model were a bit 'fatter' from the front profile on the final LOD.
[*]
[*]
[*]
[*]
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b] -
Psyrus
- Retired PR Developer
- Posts: 3841
- Joined: 2006-06-19 17:10
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
Code: Select all
[b][u]mec_apc_mltb_30mm[/u][/b]
ObjectTemplate.cullRadiusScale 4.7
GeometryTemplate.setSubGeometryLodDistance 1 0 20
GeometryTemplate.setSubGeometryLodDistance 1 1 75
GeometryTemplate.setSubGeometryLodDistance 1 2 140
GeometryTemplate.setSubGeometryLodDistance 1 3 215
GeometryTemplate.setSubGeometryLodDistance 2 0 70
GeometryTemplate.setSubGeometryLodDistance 2 1 90
GeometryTemplate.setSubGeometryLodDistance 2 2 105
GeometryTemplate.setSubGeometryLodDistance 2 3 180
[b]Issues:[/b]
[list=1]
[*]Geom_1 LOD 4: Final LOD is above limit @ 404 polys
[*]Geom_2 LOD 1: A face was seemingly deleted (probably unintentionally) that is not deleted on any of the other LODs, and makes the first LOD switch have to happen at 70m rather than ~20/25m [[url=http://i235.photobucket.com/albums/ee94/psyrus_uraya/LODs/mtlb_30mm_geom2_lod1_face.png]See Image[/url]]
[*]Geom_2 LOD 4: Due to the loss of the track guards, the LOD switch has to be pushed out further than it would have to if the model were a bit 'fatter' from the front profile on the final LOD.
[*]
[*]
[*]
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b]
Last edited by Psyrus on 2011-06-15 15:56, edited 1 time in total.
-
Psyrus
- Retired PR Developer
- Posts: 3841
- Joined: 2006-06-19 17:10
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
Code: Select all
[b][u]mec_ifv_bmp3, rus_ifv_bmp3[/u][/b]
ObjectTemplate.cullRadiusScale 7.9
GeometryTemplate.setSubGeometryLodDistance 1 0 45
GeometryTemplate.setSubGeometryLodDistance 1 1 85
GeometryTemplate.setSubGeometryLodDistance 1 2 155
GeometryTemplate.setSubGeometryLodDistance 2 0 115
GeometryTemplate.setSubGeometryLodDistance 2 1 150
[b]Issues:[/b]
[list=1]
[*]Geom_1 LOD 3: Final LOD poly count is over limit @ 901 polys
[*]Geom_2 LOD 2/3: The deleted wheel faces make for a very stark LOD switch, and IMO would be better gained elsewhere, like the mltb. This pushes the LOD switch [b]way [/b]out to 100m+ [[url=http://i235.photobucket.com/albums/ee94/psyrus_uraya/LODs/bmp3_lod_wheels.png]See Image[/url]]
[*]Geom_2 LOD 3: Final LOD poly count is over limit @ 930 polys
[*]
[*]
[*]
[*]
[*]
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b]
Last edited by Psyrus on 2011-06-15 15:55, edited 1 time in total.
-
Psyrus
- Retired PR Developer
- Posts: 3841
- Joined: 2006-06-19 17:10
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
Code: Select all
[b][u]mec_tnk_t72[/u][/b]
ObjectTemplate.cullRadiusScale 5.4
GeometryTemplate.setSubGeometryLodDistance 1 0 40
GeometryTemplate.setSubGeometryLodDistance 1 1 100
GeometryTemplate.setSubGeometryLodDistance 1 2 115
GeometryTemplate.setSubGeometryLodDistance 2 0 50
GeometryTemplate.setSubGeometryLodDistance 2 1 115
[b]Issues:[/b]
[list=1]
[*]Geom_1 LOD 3: Final LOD poly count way over limit @ [b][color=Red]3028 [/color][/b]polys
[*]Geom_2 LOD 2: Final LOD poly count way over limit @ [b][color=Red]1994 [/color][/b]polys [*]
[*]Geom_2 LOD 0/1/2: Floating wheel thing on RHS of wreck [[url=http://i235.photobucket.com/albums/ee94/psyrus_uraya/LODs/t72_geom2_floating_wheel.png]See Image[/url]]
[*]Geom_2 LOD 1: 2x Floating circle things on LHS air of wreck [[url=http://i235.photobucket.com/albums/ee94/psyrus_uraya/LODs/t72_geom2_floating_circles.png]See Image[/url]]
[*]
[*]
[*]
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b]
Last edited by Psyrus on 2011-06-15 15:55, edited 1 time in total.
-
Psyrus
- Retired PR Developer
- Posts: 3841
- Joined: 2006-06-19 17:10
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
Code: Select all
[b][u]mec_tow_shturm, ru_tow_shturm[/u][/b]
ObjectTemplate.cullRadiusScale 5.4 ([i]check from top, sides fade @ 4.6[/i])
GeometryTemplate.setSubGeometryLodDistance 1 0 25
GeometryTemplate.setSubGeometryLodDistance 1 1 75
GeometryTemplate.setSubGeometryLodDistance 1 2 140
GeometryTemplate.setSubGeometryLodDistance 1 3 210
GeometryTemplate.setSubGeometryLodDistance 2 0 30
GeometryTemplate.setSubGeometryLodDistance 2 1 45
GeometryTemplate.setSubGeometryLodDistance 2 2 90
GeometryTemplate.setSubGeometryLodDistance 2 3 145
[b]Issues:[/b]
[list=1]
[*]Geom_1 LOD 3: Tracks rise on model, pushing out LOD switch a little.
[*]Geom_2 LOD : Wreck appears to have double wheels on all LODs?
[*]
[*]
[*]
[*]
[*]
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b] -
Psyrus
- Retired PR Developer
- Posts: 3841
- Joined: 2006-06-19 17:10
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
Code: Select all
[b][u]mil_tnk_t62[/u][/b]
ObjectTemplate.cullRadiusScale 3.7
GeometryTemplate.setSubGeometryLodDistance 1 0 45
GeometryTemplate.setSubGeometryLodDistance 1 1 75
GeometryTemplate.setSubGeometryLodDistance 1 2 105
GeometryTemplate.setSubGeometryLodDistance 2 0 30
GeometryTemplate.setSubGeometryLodDistance 2 1 55
[b]Issues:[/b]
[list=1]
[*]Geom_1 LOD 3: Final LOD way over poly limit @ [b][color=Red]2800[/color][/b] polys
[*]Geom_2 LOD 2: Final LOD way over poly limit @ [b][color=Red]2717[/color][/b] polys
[*]Geom_1 LOD 0/1: The first LOD(0) has shiny/silver wheels in the tracks, whereas LOD 1/2/3 all have black wheels in the tracks. Makes LOD switching at any kind of angle very obvious. [[url=http://i235.photobucket.com/albums/ee94/psyrus_uraya/LODs/t62_geom1_wheel_colours.png]See Image[/url]]
[*]
[*]
[*]
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b] Code: Select all
[b][u]ru_aav_tunguska[/u][/b]
ObjectTemplate.cullRadiusScale 5.9
GeometryTemplate.setSubGeometryLodDistance 1 0 70
GeometryTemplate.setSubGeometryLodDistance 1 1 130
GeometryTemplate.setSubGeometryLodDistance 1 2 215
GeometryTemplate.setSubGeometryLodDistance 2 0 140
GeometryTemplate.setSubGeometryLodDistance 2 1 170
[b]Issues:[/b]
[list=1]
[*]Geom_2 LOD 0/1: The first LOD(0) has little flaps/wings on the side, whereas none of the other LODs have such a piece of geometry. Forces the LOD switch to occur later than it would have to otherwise. Either remove from LOD0 or add a small bit to LOD1 IMO [[url=http://i235.photobucket.com/albums/ee94/psyrus_uraya/LODs/tunguska_geom2_lod_wings.png]See Image[/url]]
[*]Geom_2 LOD 2: The turret is floating due to the lower geometry being deleted, which results in the LOD switch being very obvious from the front. The LHS of the track geometry is also deleted, which further pushes out the LOD switch. If the wing & floating issue was resolved, LOD switches could probably be halved in distance... roughly. [[url=http://i235.photobucket.com/albums/ee94/psyrus_uraya/LODs/tunguska_geom2_lod2_floating_turret.png]See Image[/url]]
[*]
[*]
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b] Code: Select all
[b][u]ru_apc_btr80, ru_apc_btr80_alt[/u][/b]
ObjectTemplate.cullRadiusScale 6.7
GeometryTemplate.setSubGeometryLodDistance 1 0 45
GeometryTemplate.setSubGeometryLodDistance 1 1 90
GeometryTemplate.setSubGeometryLodDistance 1 2 170
GeometryTemplate.setSubGeometryLodDistance 2 0 30
GeometryTemplate.setSubGeometryLodDistance 2 1 80
[b]Issues:[/b]
[list=1]
[*]Geom_1 LOD 3: Final LOD over poly limit @ [b][color=Black]923[/color][/b] polys
[*]Geom_2 LOD 2: Final LOD way over poly limit @ [b][color=Red]3491[/color][/b] polys
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b] Code: Select all
[b][u]ru_apc_btr80a, ru_apc_btr80a_alt[/u][/b]
ObjectTemplate.cullRadiusScale 7.3 [required for top view, can be 6.8 for sides]
GeometryTemplate.setSubGeometryLodDistance 1 0 40
GeometryTemplate.setSubGeometryLodDistance 1 1 80
GeometryTemplate.setSubGeometryLodDistance 1 2 180
GeometryTemplate.setSubGeometryLodDistance 2 0 35
GeometryTemplate.setSubGeometryLodDistance 2 1 60
[b]Issues:[/b]
[list=1]
[*]Geom_1 LOD 3: Final LOD over poly limit @ [b][color=Black]1404[/color][/b] polys
[*]Geom_2 LOD 2: Final LOD way over poly limit @ [b][color=Red]2931[/color][/b] polys
[*]
[*]
[*]
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b]
Last edited by Psyrus on 2011-06-15 17:10, edited 7 times in total.
Reason: Four's the charm
Reason: Four's the charm
-
Tim270
- PR:BF2 Developer
- Posts: 5166
- Joined: 2009-02-28 20:05
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
None of the image links work Psyrus.
Edit;nvm think photobucket was broken for a bit.
Edit;nvm think photobucket was broken for a bit.
Last edited by Tim270 on 2011-06-15 16:55, edited 1 time in total.
-
sharpie
- Posts: 1434
- Joined: 2009-11-08 03:41
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
Worked for me...great work Psyrus 
"Tom I think you have influenced the combat effectiveness of this team! Everyone has gone full potato."~Foxxyfrost
[DM]P*Funk: its like a funk guitar seminar up in that *****
K_Rivers-"...everything is broken in your country,"
RinWarZip: Your butthurt is like cold september morning by the seashore for me. Refreshing. Pepper mint.
-
Psyrus
- Retired PR Developer
- Posts: 3841
- Joined: 2006-06-19 17:10
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
Oh I moved the pics from my default folder to their own one, had to go through and manually add a /LODs/ thing to each link, so I think that's why they seemed brokenTim270 wrote:None of the image links work Psyrus.
Edit;nvm think photobucket was broken for a bit.
LODs pictures by psyrus_uraya - Photobucket
-
Psyrus
- Retired PR Developer
- Posts: 3841
- Joined: 2006-06-19 17:10
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
Code: Select all
[b][u][color=Red][B]apc_btr90[/b][/color][/u][/B]
ObjectTemplate.cullRadiusScale 7.5
GeometryTemplate.setSubGeometryLodDistance 1 0 85
GeometryTemplate.setSubGeometryLodDistance 1 1 95
GeometryTemplate.setSubGeometryLodDistance 1 2 170
GeometryTemplate.setSubGeometryLodDistance 2 0 40
GeometryTemplate.setSubGeometryLodDistance 2 1 125
GeometryTemplate.setSubGeometryLodDistance 2 2 140
[b]Issues:[/b]
[list=1]
[*]There did not appear to be a ru_apc_btr90, did the regular apc_btr90 (has MEC flag on it)
[*]LOD switches were extremely optimistic, had to revise them up to make them less obvious.
[*]
[*]
[*]
[/list]
[b]Coding:[/b] Psyrus
[b]Checked by:[/b]
[b]Tweaked by:[/b]
[b]Committed to REPO:[/b] -
Rudd
- Retired PR Developer
- Posts: 21225
- Joined: 2007-08-15 14:32
Re: Help us to Optimize PR! (LOD Switching & Cull Distances)
thats the vBF2 one mate which we don't use because iirc it wasn't appropriate


