kryptopyr Posted May 9, 2012 Share Posted May 9, 2012 I apologize if this is a really dumb question, but the answer isn't obvious to me, and I haven't been able to find an answer through searching... I'm working on a house, and it's going to have several states: before upgrade, after upgrade, and in a few cases I'd also like to offer choices for different versions of an upgraded room. However, with while only one set of objects would be enabled at a time, the others are still there in the CK but are just disabled in the game. Will these disabled objects affect the performance and frame rates in the cell? Also, what about lighting? If I have multiple states using lights that are enabled at different times of the day, does only the currently active lighting affect performance or does all the lighting whether it's enabled or not? The house is a single cell, so I'm worried that adding all these objects, even if half of them are disabled, will cause a lot of lag while in the house. Link to comment Share on other sites More sharing options...
Arthmoor Posted May 9, 2012 Share Posted May 9, 2012 Correct. Disabled objects have no impact on performance. Link to comment Share on other sites More sharing options...
gasti89 Posted May 9, 2012 Share Posted May 9, 2012 Are you sure Arthmoor? In CKwiki I've read something about disabled objects still loading and thus hitting performance, expecially actors (can't find that sentence anymore, maybe it got deleted). Link to comment Share on other sites More sharing options...
jet4571 Posted May 9, 2012 Share Posted May 9, 2012 the performance hit would be when the cell is loading and the game is deciding which item to render. The items may remain in system and you could get FPS drops from the CPU if there are allot of them but not the GPU but I think the disabled items are discarded until they are enabled which is why you cannot be in the cell when the enable/disable happens. Link to comment Share on other sites More sharing options...
fg109 Posted May 9, 2012 Share Posted May 9, 2012 Like jet4571 says, I think that disabled objects would not affect the GPU at all, and will only affect the CPU if you happen to have a lot of them running scripts at the same time. For example, I just did a test with PlaceAtMe and Delete. I tried creating 5000 coins one at a time but after around 750 it slowed down and my game got really jerky. By 1000, it was only creating about 1 coin per second. Eventually, it froze my game before it got finished. Then I set the parameters for PlaceAtMe so that they spawned initially disabled and it worked, spawning coins at a constant rate the whole time. BTW, my results are that Delete works reliably, all 5000 of the coins got cleaned up. Link to comment Share on other sites More sharing options...
jet4571 Posted May 9, 2012 Share Posted May 9, 2012 (edited) Maybe someone can run a test where entering a cell with 750 coins disabled, mark the FPS, CPU, and GPU load. same cell with the coins enabled. same cell with no coins at all as a baseline. then all 3 states would show a comparison on how much of a load it is. you could also time how long it takes to load the cell in all three states too. *editIf not 750 coins then quite a few high poly and HD items so there is a noticeable FPS drop if they are rendered. any one of the test cells emptied of items and place all of the load screen items would do it. Edited May 9, 2012 by jet4571 Link to comment Share on other sites More sharing options...
kryptopyr Posted May 9, 2012 Author Share Posted May 9, 2012 Thank you so much for all the responses. This is really helpful to me, and it's good information to have in general, I think. ...which is why you cannot be in the cell when the enable/disable happens. Does this mean that if I have an activator in the same cell to switch between the disable/enable states, that the change won't take place until after the player leaves the cell? Link to comment Share on other sites More sharing options...
jet4571 Posted May 9, 2012 Share Posted May 9, 2012 lights and other affects work with an activator. furniture i think requires the cell to load. Though i dont really know and am just guessing because when you buy a house upgrade or use the disable console command it requires a cell load. Ofcourse the disable console command will disable an palecatme item immediately. Link to comment Share on other sites More sharing options...
gasti89 Posted May 10, 2012 Share Posted May 10, 2012 I had a barrel pop up with the enable() script when i was in the same cell (actually i was even looking at it) So i'm sure enabling and disabling works with the player in the cell. That's why i think it could affect performances (even just a bit) cause they are effectively loaded, they don't render and don't have collisions (and don't run some scripts). I think that delete() instead needs the player to be outside the cell (didn't test it anyway), cause the CKwiki talks about "sets this object to ready for deleting, and will be deleted soon". Link to comment Share on other sites More sharing options...
kryptopyr Posted May 10, 2012 Author Share Posted May 10, 2012 How do room bounds affect object loading/rendering? If I understand correctly from the wiki description, only rooms that the player is in (and adjoining rooms linked by a portal) are rendered. So if my house is divided by room bounds, then only part of the house will be rendered at a time. Is this correct? However, it seems like this would also mean that you could place more than 4 shadow casting lights in a single cell, so long as no more than 4 were in adjoining rooms? This doesn't seem to be the case, though, so I assume I'm misunderstanding something or else it just doesn't work with lights. Link to comment Share on other sites More sharing options...
Recommended Posts