mirror of
https://git.do.srb2.org/STJr/UltimateZoneBuilder.git
synced 2025-02-17 01:22:18 +00:00
Visual mode: fixed a crash when trying to render a thing after resetting D3D device.
This commit is contained in:
parent
3eb05509af
commit
44496c32be
2 changed files with 6 additions and 11 deletions
|
@ -224,12 +224,6 @@ namespace CodeImp.DoomBuilder.VisualModes
|
||||||
geobuffers = null;
|
geobuffers = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(textures != null) //mxd
|
|
||||||
{
|
|
||||||
foreach(ImageData texture in textures) texture.Dispose();
|
|
||||||
textures = null;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(cagebuffer != null) cagebuffer.Dispose(); //mxd
|
if(cagebuffer != null) cagebuffer.Dispose(); //mxd
|
||||||
cagebuffer = null; //mxd
|
cagebuffer = null; //mxd
|
||||||
updategeo = true;
|
updategeo = true;
|
||||||
|
|
|
@ -276,14 +276,14 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
||||||
//mxd. Create verts for all sprite angles
|
//mxd. Create verts for all sprite angles
|
||||||
WorldVertex[][] allverts = new WorldVertex[info.SpriteFrame.Length][];
|
WorldVertex[][] allverts = new WorldVertex[info.SpriteFrame.Length][];
|
||||||
base.textures = new ImageData[info.SpriteFrame.Length];
|
base.textures = new ImageData[info.SpriteFrame.Length];
|
||||||
|
isloaded = true;
|
||||||
|
|
||||||
for(int i = 0; i < sprites.Length; i++)
|
for(int i = 0; i < sprites.Length; i++)
|
||||||
{
|
{
|
||||||
// Check if the texture is loaded
|
// Check if the texture is loaded
|
||||||
ImageData sprite = sprites[i];
|
ImageData sprite = sprites[i];
|
||||||
sprite.LoadImage();
|
sprite.LoadImage();
|
||||||
isloaded = sprite.IsImageLoaded;
|
if(sprite.IsImageLoaded)
|
||||||
if(isloaded)
|
|
||||||
{
|
{
|
||||||
float offsetx = 0.0f;
|
float offsetx = 0.0f;
|
||||||
float offsety = 0.0f;
|
float offsety = 0.0f;
|
||||||
|
@ -337,6 +337,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
isloaded = false;
|
||||||
base.textures[i] = General.Map.Data.Hourglass3D;
|
base.textures[i] = General.Map.Data.Hourglass3D;
|
||||||
|
|
||||||
// Determine sprite size
|
// Determine sprite size
|
||||||
|
@ -493,17 +494,17 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
||||||
if(!isloaded)
|
if(!isloaded)
|
||||||
{
|
{
|
||||||
//mxd. Rebuild sprite geometry when all sprites are loaded
|
//mxd. Rebuild sprite geometry when all sprites are loaded
|
||||||
bool allloaded = true;
|
isloaded = true;
|
||||||
foreach(ImageData sprite in sprites)
|
foreach(ImageData sprite in sprites)
|
||||||
{
|
{
|
||||||
if(!sprite.IsImageLoaded)
|
if(!sprite.IsImageLoaded)
|
||||||
{
|
{
|
||||||
allloaded = false;
|
isloaded = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(allloaded) Setup();
|
if(isloaded) Setup();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Let the base update
|
// Let the base update
|
||||||
|
|
Loading…
Reference in a new issue