Forest Kit limit?
by Kevin Mitchell · in Torque 3D Professional · 12/29/2009 (8:48 am) · 13 replies
Is there a limit to how much the forest kit can paint in a mission? All ive added were 30 trees 20 head stones 10 fence and 2 houses and its lagging the game on load.
Or is it the fact there's too many brushes?
Or is it the fact there's too many brushes?
About the author
Riding Solo since 2005. Current Project: Fated World 2005-Present RPG Engine Tool Kit - Now available.
#2
Then there's like a 20-30 second pause where all i get is a frozen screen. Then the loading screen displays and I enter my game normally.
Then when I enter the game I'm not looking at anything the FK Editor placed on the ground buut when I turn to look at the trees the game pauses and dose this:
I don't know if its the engine or if I'm doing something wrong.
12/29/2009 (9:37 am)
When I click play I get this in the console. *** LOADING MISSION: levels/HuntersTown/HuntersTown.mis *** Stage 1 load *** Stage 2 load Executing levels/HuntersTown/HuntersTown.mis. tools/worldEditor/scripts/cameraBookmarks.ed.cs (36): Unable to find object: 'EditorCameraBookmarks' attempting to call function 'addItem' tools/worldEditor/scripts/cameraBookmarks.ed.cs (36): Unable to find object: 'EditorCameraBookmarks' attempting to call function 'addItem'
Then there's like a 20-30 second pause where all i get is a frozen screen. Then the loading screen displays and I enter my game normally.
Then when I enter the game I'm not looking at anything the FK Editor placed on the ground buut when I turn to look at the trees the game pauses and dose this:
Activating DirectInput... Window focus status changed: focus: 1 [MaterialList::mapMaterials] Creating missing material for texture: art/shapes/ST_items/RRGTS_TREE_OLDOAKGRN003.txt/oldoak3 [MaterialList::mapMaterials] Creating missing material for texture: art/shapes/ST_items/RRGTS_TREE_OLDOAK008.txt/tswood29 [MaterialList::mapMaterials] Creating missing material for texture: art/shapes/ST_items/RRGTS_TREE_OLDOAK008.txt/oldoak8 [FileSystemChangeNotifier::internalNotifyDirChanged] : [/shaders/procedural] Material - MD_SMHouse1_SMH1Roof(2767) - Failed to load diffuse map art/shapes/MD_SMHouse1/mhroof_SMHose1.png for stage 0 Material - MD_SMHouse1_SMH1Wall(2766) - Failed to load diffuse map art/shapes/MD_SMHouse1/mhwalls_SMHose1.png for stage 0 Material - MD_SMHouse1_SMH1Door2(2768) - Failed to load diffuse map art/shapes/MD_SMHouse1/mhdoor_SMHose1.png for stage 0 Material - MD_SMHouse1_SMH1Wood(2765) - Failed to load diffuse map art/shapes/MD_SMHouse1/mhwood_SMHose1.png for stage 0 Material - MD_House4_MDH4_ROOF(2741) - Failed to load diffuse map art/shapes/MD_House4/MDH4_RoofDiffuseMap.png for stage 0 Material - MD_House4_MDH4_WALLLOW(2740) - Failed to load diffuse map art/shapes/MD_House4/MDWALLLOWDiffuseMap.png for stage 0 Material - MD_House4_MDH4_WOOD(2737) - Failed to load diffuse map art/shapes/MD_House4/clwoodDiffuseMap.png for stage 0 Material - MD_House4_MDH4_WALLS(2739) - Failed to load diffuse map art/shapes/MD_House4/clwallsDiffuseMap.png for stage 0 Material - MD_House4_MDH4_DOOR(2742) - Failed to load diffuse map art/shapes/MD_House4/MDH4_DoorDiffuseMap.png for stage 0 [FileSystemChangeNotifier::internalNotifyDirChanged] : [/shaders/procedural] Material - MD_House3_roofH3(2732) - Failed to load diffuse map art/shapes/MD_House3/fhroof_MD_House3.png for stage 0 Material - MD_House3_ShootH3(2736) - Failed to load diffuse map art/shapes/MD_House3/Shoot_MD_House3.png for stage 0 Material - MD_House3_windH3(2730) - Failed to load diffuse map art/shapes/MD_House3/fhwndws_MD_House3.png for stage 0 Material - MD_House3_wallH3(2731) - Failed to load diffuse map art/shapes/MD_House3/fhwalls_MD_House3.png for stage 0 Material - MD_House3_doorH3(2733) - Failed to load diffuse map art/shapes/MD_House3/fhdoor_MD_House3.png for stage 0 Material - MD_SMHouse2_MDSMH2Roof(2772) - Failed to load diffuse map art/shapes/MD_SMHouse2/mh2roof_MD_SMHOUSE2.png for stage 0 Material - MD_SMHouse2_MDSMH2Walls(2771) - Failed to load diffuse map art/shapes/MD_SMHouse2/mh2walls_MD_SMHOUSE2.png for stage 0 Material - MD_SMHouse2_MDSMH2Door(2774) - Failed to load diffuse map art/shapes/MD_SMHouse2/mh2door_md_smhouse2.png for stage 0 Material - MD_SMHouse2_MDSMH2Wood(2770) - Failed to load diffuse map art/shapes/MD_SMHouse2/mh2wood_MD_SMHOUSE2.png for stage 0 [FileSystemChangeNotifier::internalNotifyDirChanged] : [/shaders/procedural] [FileSystemChangeNotifier::internalNotifyDirChanged] : [/shaders/procedural]
I don't know if its the engine or if I'm doing something wrong.
#3
Also when in game and you first look at the trees you get a pause, but after that is it running normally?
12/29/2009 (2:50 pm)
Does the 20-30 second pause before the loading screen occur every time and is the same length of time?Also when in game and you first look at the trees you get a pause, but after that is it running normally?
#4
12/29/2009 (3:49 pm)
same length every time. And the second pause looks likes it loading the texture for the forest? Should that happen at this state in time?
#5
My guess its either taking a long time to load all the DTS meshes or building collision for the forest if your using PhysX.
Your best bet is to run it in the debugger and break when it pauses and see what its currently doing. It should most likely give you a good hint as to whats going on.
The pause during gameplay is probably loading of shaders and textures for trees which it does on demand and not during loading. I will add a preloadMaterials option to the Forest so that its done at load time by default.
12/29/2009 (4:43 pm)
Well the pause before the loading screen is probably the server loading... which i think has never been included as part of the loading screen process.My guess its either taking a long time to load all the DTS meshes or building collision for the forest if your using PhysX.
Your best bet is to run it in the debugger and break when it pauses and see what its currently doing. It should most likely give you a good hint as to whats going on.
The pause during gameplay is probably loading of shaders and textures for trees which it does on demand and not during loading. I will add a preloadMaterials option to the Forest so that its done at load time by default.
#6
12/30/2009 (1:00 am)
Why dose the inital start for the server take so long? Is it my mission size? And is there anything I can do to increase the speed?
#7
I´m experiencing quite a loadtime when the terraincollisionmesh i generated (i think).
12/30/2009 (12:21 pm)
You aren´t using the GMK by chance?I´m experiencing quite a loadtime when the terraincollisionmesh i generated (i think).
#8
12/30/2009 (1:37 pm)
nope the only thing I'm using is Art packs from Twiggy and FPS Env.
#9
12/30/2009 (4:29 pm)
I'm using the stock 1.1a kit and I notice after around 100 trees in line of sight I'm seeing constant slight chop. I'm guessing it's the load-on-demand mentioned above - except I only used 4 tree models and they all use the same textures. Unless it's dropping and reloading each object as they pass into and out of sight.
#10
@Richard - No that wouldn't be happening like that.
12/31/2009 (2:24 pm)
@Kevin - Try removing a bunch of the art from the art packs... don't include their TorqueScript files and see if your load time improves. I've found that many create a ton of datablocks that cause alot of resource loading even though the datablocks are not used in your game.@Richard - No that wouldn't be happening like that.
#11
01/12/2010 (3:05 pm)
Didn't think so... maybe it's just time to upgrade the 'ol rig....
#12
The optimal solution is to tie your datablock file exec'ing to the level itself, instead of simply always loading every datablock. That's a common practice we've all gotten used to (because the demos/examples always do this) which is technically very inefficient. I would try to just load my base assets in the datablockExec file (player model, weapons, basically things that could appear in any level depending on player action) and load environment-specific stuff only for the levels that use them.
01/12/2010 (6:08 pm)
The datablocks issue is likely your problem. You can improve the datablock loading speed by increasing the data per packet and packet rates in your server and client prefs.cs, but I believe this only helps in real multiplayer (could be wrong).The optimal solution is to tie your datablock file exec'ing to the level itself, instead of simply always loading every datablock. That's a common practice we've all gotten used to (because the demos/examples always do this) which is technically very inefficient. I would try to just load my base assets in the datablockExec file (player model, weapons, basically things that could appear in any level depending on player action) and load environment-specific stuff only for the levels that use them.
#13
I would recommend looking into fixing the "errors" along the lines of:
01/23/2010 (4:27 am)
When a texture isn't found, the process for searching for the same texture with alternate extensions can add quite a bit of time to loading if it happens a lot.I would recommend looking into fixing the "errors" along the lines of:
Quote:Failed to load diffuse map art/shapes/<Foo>/<bar>.png
Associate Tom Spilman
Sickhead Games
By 'lagging the game on load' do you mean the loading process is slow? Or do you mean you have bad framerate right after loading? Does it continue thru out the game or just after loading?