mirror of
https://github.com/bkaradzic/bgfx.git
synced 2026-02-18 04:53:06 +01:00
Cleanup.
This commit is contained in:
@@ -150,7 +150,7 @@ public:
|
||||
}
|
||||
|
||||
// Load tile data file
|
||||
auto tileDataFile = new vt::TileDataFile("temp/8k_mars.jpg.vt", m_vti);
|
||||
auto tileDataFile = new vt::TileDataFile("temp/8k_mars.vt", m_vti);
|
||||
tileDataFile->readInfo();
|
||||
|
||||
// Create virtual texture and feedback buffer
|
||||
|
||||
@@ -1133,49 +1133,68 @@ TileGenerator::~TileGenerator()
|
||||
BX_DELETE(VirtualTexture::getAllocator(), m_tileImage);
|
||||
}
|
||||
|
||||
bool TileGenerator::generate(const bx::FilePath& filename)
|
||||
bool TileGenerator::generate(const bx::FilePath& _filename)
|
||||
{
|
||||
// Generate cache filename
|
||||
char tempFilename[256];
|
||||
bx::snprintf(tempFilename, sizeof(tempFilename), "temp/%s.vt", filename.getBaseName().getPtr());
|
||||
bx::FilePath cacheFilename = tempFilename;
|
||||
char tmp[256];
|
||||
bx::snprintf(tmp, sizeof(tmp), "%.*s.vt", _filename.getBaseName().getLength(), _filename.getBaseName().getPtr() );
|
||||
|
||||
bx::FilePath cacheFilename("temp");
|
||||
cacheFilename.join(tmp);
|
||||
|
||||
// Check if tile file already exist
|
||||
{
|
||||
bx::Error error;
|
||||
bx::Error err;
|
||||
bx::FileReader fileReader;
|
||||
fileReader.open(cacheFilename, &error);
|
||||
if (error.isOk())
|
||||
|
||||
if (bx::open(&fileReader, cacheFilename, &err) )
|
||||
{
|
||||
bx::debugPrintf("Tile data file '%s' already exists. Skipping generation.\n", cacheFilename.get());
|
||||
bx::close(&fileReader);
|
||||
|
||||
bx::debugPrintf("Tile data file '%s' already exists. Skipping generation.\n", cacheFilename.get() );
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// Read image
|
||||
{
|
||||
bx::debugPrintf("Reading image '%s'.\n", filename.get());
|
||||
bx::Error error;
|
||||
bx::debugPrintf("Reading image '%s'.\n", _filename.get() );
|
||||
|
||||
bx::Error err;
|
||||
bx::FileReader fileReader;
|
||||
fileReader.open(bx::FilePath(filename.get()), &error);
|
||||
if (!error.isOk())
|
||||
|
||||
if (!bx::open(&fileReader, bx::FilePath(_filename.get() ), &err) )
|
||||
{
|
||||
bx::debugPrintf("Image open failed'%s'.\n", filename.get());
|
||||
bx::debugPrintf("Image open failed'%s'.\n", _filename.get() );
|
||||
return false;
|
||||
}
|
||||
auto size = fileReader.seek(0, bx::Whence::End);
|
||||
fileReader.seek(0, bx::Whence::Begin);
|
||||
auto rawImage = (uint8_t*)BX_ALLOC(VirtualTexture::getAllocator(), size);
|
||||
fileReader.read(rawImage, int32_t(size), &error);
|
||||
fileReader.close();
|
||||
if (!error.isOk())
|
||||
|
||||
int64_t size = bx::getSize(&fileReader);
|
||||
|
||||
if (0 == size)
|
||||
{
|
||||
bx::debugPrintf("Image read failed'%s'.\n", filename.get());
|
||||
bx::debugPrintf("Image '%s' size is 0.\n", _filename.get() );
|
||||
return false;
|
||||
}
|
||||
m_sourceImage = bimg::imageParse(VirtualTexture::getAllocator(), rawImage, uint32_t(size), bimg::TextureFormat::BGRA8, &error);
|
||||
|
||||
uint8_t* rawImage = (uint8_t*)BX_ALLOC(VirtualTexture::getAllocator(), size);
|
||||
|
||||
bx::read(&fileReader, rawImage, int32_t(size), &err);
|
||||
bx::close(&fileReader);
|
||||
|
||||
if (!err.isOk() )
|
||||
{
|
||||
bx::debugPrintf("Image read failed'%s'.\n", _filename.get() );
|
||||
BX_FREE(VirtualTexture::getAllocator(), rawImage);
|
||||
return false;
|
||||
}
|
||||
|
||||
m_sourceImage = bimg::imageParse(VirtualTexture::getAllocator(), rawImage, uint32_t(size), bimg::TextureFormat::BGRA8, &err);
|
||||
BX_FREE(VirtualTexture::getAllocator(), rawImage);
|
||||
if (!error.isOk())
|
||||
|
||||
if (!err.isOk() )
|
||||
{
|
||||
bx::debugPrintf("Image parse failed'%s'.\n", filename.get());
|
||||
bx::debugPrintf("Image parse failed'%s'.\n", _filename.get() );
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -1186,12 +1205,11 @@ bool TileGenerator::generate(const bx::FilePath& filename)
|
||||
|
||||
// Open tile data file
|
||||
m_tileDataFile = BX_NEW(VirtualTexture::getAllocator(), TileDataFile)(cacheFilename, m_info, true);
|
||||
|
||||
m_page1Image = BX_NEW(VirtualTexture::getAllocator(), SimpleImage)(m_pagesize, m_pagesize, s_channelCount, 0xff);
|
||||
m_page2Image = BX_NEW(VirtualTexture::getAllocator(), SimpleImage)(m_pagesize, m_pagesize, s_channelCount, 0xff);
|
||||
m_tileImage = BX_NEW(VirtualTexture::getAllocator(), SimpleImage)(m_tilesize, m_tilesize, s_channelCount, 0xff);
|
||||
m_2xtileImage = BX_NEW(VirtualTexture::getAllocator(), SimpleImage)(m_tilesize * 2, m_tilesize * 2, s_channelCount, 0xff);
|
||||
m_4xtileImage = BX_NEW(VirtualTexture::getAllocator(), SimpleImage)(m_tilesize * 4, m_tilesize * 4, s_channelCount, 0xff);
|
||||
m_page1Image = BX_NEW(VirtualTexture::getAllocator(), SimpleImage)(m_pagesize, m_pagesize, s_channelCount, 0xff);
|
||||
m_page2Image = BX_NEW(VirtualTexture::getAllocator(), SimpleImage)(m_pagesize, m_pagesize, s_channelCount, 0xff);
|
||||
m_tileImage = BX_NEW(VirtualTexture::getAllocator(), SimpleImage)(m_tilesize, m_tilesize, s_channelCount, 0xff);
|
||||
m_2xtileImage = BX_NEW(VirtualTexture::getAllocator(), SimpleImage)(m_tilesize * 2, m_tilesize * 2, s_channelCount, 0xff);
|
||||
m_4xtileImage = BX_NEW(VirtualTexture::getAllocator(), SimpleImage)(m_tilesize * 4, m_tilesize * 4, s_channelCount, 0xff);
|
||||
|
||||
// Generate tiles
|
||||
bx::debugPrintf("Generating tiles\n");
|
||||
|
||||
Reference in New Issue
Block a user