mirror of
https://github.com/GTAmodding/re3.git
synced 2024-11-26 06:13:43 +00:00
streaming fixes
This commit is contained in:
parent
2ce925caba
commit
225b8953fd
3 changed files with 27 additions and 17 deletions
|
@ -1151,12 +1151,9 @@ CStreaming::RemoveModel(int32 id)
|
||||||
void
|
void
|
||||||
CStreaming::RemoveUnusedBuildings(eLevelName level)
|
CStreaming::RemoveUnusedBuildings(eLevelName level)
|
||||||
{
|
{
|
||||||
if(level != LEVEL_INDUSTRIAL)
|
for(int i = LEVEL_INDUSTRIAL; i < NUM_LEVELS; i++)
|
||||||
RemoveBuildings(LEVEL_INDUSTRIAL);
|
if(level != i)
|
||||||
if(level != LEVEL_COMMERCIAL)
|
RemoveBuildings((eLevelName)i);
|
||||||
RemoveBuildings(LEVEL_COMMERCIAL);
|
|
||||||
if(level != LEVEL_SUBURBAN)
|
|
||||||
RemoveBuildings(LEVEL_SUBURBAN);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1279,12 +1276,9 @@ CStreaming::RemoveUnusedBigBuildings(eLevelName level)
|
||||||
{
|
{
|
||||||
ISLAND_LOADING_IS(LOW)
|
ISLAND_LOADING_IS(LOW)
|
||||||
{
|
{
|
||||||
if(level != LEVEL_INDUSTRIAL)
|
for(int i = LEVEL_INDUSTRIAL; i < NUM_LEVELS; i++)
|
||||||
RemoveBigBuildings(LEVEL_INDUSTRIAL);
|
if(level != i)
|
||||||
if(level != LEVEL_COMMERCIAL)
|
RemoveBuildings((eLevelName)i);
|
||||||
RemoveBigBuildings(LEVEL_COMMERCIAL);
|
|
||||||
if(level != LEVEL_SUBURBAN)
|
|
||||||
RemoveBigBuildings(LEVEL_SUBURBAN);
|
|
||||||
}
|
}
|
||||||
RemoveIslandsNotUsed(level);
|
RemoveIslandsNotUsed(level);
|
||||||
}
|
}
|
||||||
|
@ -1324,8 +1318,11 @@ CStreaming::RemoveIslandsNotUsed(eLevelName level)
|
||||||
}
|
}
|
||||||
#ifdef NO_ISLAND_LOADING
|
#ifdef NO_ISLAND_LOADING
|
||||||
if(FrontEndMenuManager.m_PrefsIslandLoading == CMenuManager::ISLAND_LOADING_HIGH) {
|
if(FrontEndMenuManager.m_PrefsIslandLoading == CMenuManager::ISLAND_LOADING_HIGH) {
|
||||||
DeleteIsland(pIslandLODmainlandEntity);
|
DeleteIsland(pIslandLODindustEntity);
|
||||||
DeleteIsland(pIslandLODbeachEntity);
|
DeleteIsland(pIslandLODcomIndEntity);
|
||||||
|
DeleteIsland(pIslandLODcomSubEntity);
|
||||||
|
DeleteIsland(pIslandLODsubIndEntity);
|
||||||
|
DeleteIsland(pIslandLODsubComEntity);
|
||||||
} else
|
} else
|
||||||
#endif
|
#endif
|
||||||
switch(level){
|
switch(level){
|
||||||
|
|
|
@ -213,3 +213,10 @@ public:
|
||||||
|
|
||||||
static void PrintStreamingBufferState();
|
static void PrintStreamingBufferState();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// LCS(TODO): put them into CStreaming::mspInst
|
||||||
|
extern int32 islandLODindust;
|
||||||
|
extern int32 islandLODcomInd;
|
||||||
|
extern int32 islandLODcomSub;
|
||||||
|
extern int32 islandLODsubInd;
|
||||||
|
extern int32 islandLODsubCom;
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
#include "RwHelper.h"
|
#include "RwHelper.h"
|
||||||
#include "ModelIndices.h"
|
#include "ModelIndices.h"
|
||||||
#include "Timer.h"
|
#include "Timer.h"
|
||||||
|
#include "Streaming.h"
|
||||||
#include "Entity.h"
|
#include "Entity.h"
|
||||||
#include "Object.h"
|
#include "Object.h"
|
||||||
#include "World.h"
|
#include "World.h"
|
||||||
|
@ -623,10 +624,15 @@ CEntity::SetupBigBuilding(void)
|
||||||
m_level = CTheZones::GetLevelFromPosition(&GetPosition());
|
m_level = CTheZones::GetLevelFromPosition(&GetPosition());
|
||||||
if(mi->m_lodDistances[0] <= 2000.0f)
|
if(mi->m_lodDistances[0] <= 2000.0f)
|
||||||
bStreamBIGBuilding = true;
|
bStreamBIGBuilding = true;
|
||||||
if(mi->m_lodDistances[0] > 2500.0f || mi->m_ignoreDrawDist)
|
if(m_modelIndex == islandLODindust ||
|
||||||
|
m_modelIndex == islandLODcomInd ||
|
||||||
|
m_modelIndex == islandLODcomSub ||
|
||||||
|
m_modelIndex == islandLODsubInd ||
|
||||||
|
m_modelIndex == islandLODsubCom ||
|
||||||
|
mi->m_lodDistances[0] > 5000.0f || mi->m_ignoreDrawDist)
|
||||||
m_level = LEVEL_GENERIC;
|
m_level = LEVEL_GENERIC;
|
||||||
else if(m_level == LEVEL_GENERIC)
|
// else if(m_level == LEVEL_GENERIC)
|
||||||
printf("%s isn't in a level\n", mi->GetModelName());
|
// printf("%s isn't in a level\n", mi->GetModelName());
|
||||||
}
|
}
|
||||||
|
|
||||||
float WindTabel[] = {
|
float WindTabel[] = {
|
||||||
|
|
Loading…
Reference in a new issue