diff --git a/examples/common/cube_atlas.cpp b/examples/common/cube_atlas.cpp index f7db2f41..dcd7be19 100644 --- a/examples/common/cube_atlas.cpp +++ b/examples/common/cube_atlas.cpp @@ -8,7 +8,6 @@ #include // INT_MAX #include // memset - #include #include "cube_atlas.h" @@ -175,12 +174,10 @@ float RectanglePacker::getUsageRatio() uint32_t total = m_width * m_height; if (total > 0) { - return (float) m_usedSpace / (float) total; - } - else - { - return 0.0f; + return (float)m_usedSpace / (float)total; } + + return 0.0f; } void RectanglePacker::clear() @@ -441,11 +438,11 @@ void Atlas::packUV(const AtlasRegion& _region, uint8_t* _vertexBuffer, uint32_t static const int16_t maxVal = INT16_MAX; float texMult = (float)(maxVal - minVal) / ( (float)(m_textureSize) ); - int16_t x0 = (int16_t)( ((float)_region.x * texMult) - float(INT16_MAX) ); - int16_t y0 = (int16_t)( ((float)_region.y * texMult) - float(INT16_MAX) ); - int16_t x1 = (int16_t)( (((float)_region.x + _region.width) * texMult) - float(INT16_MAX) ); - int16_t y1 = (int16_t)( (((float)_region.y + _region.height) * texMult) - float(INT16_MAX) ); - int16_t w = (int16_t)( (float(INT16_MAX) / 4.0f) * (float) _region.getComponentIndex() ); + int16_t x0 = (int16_t)( ( (float)_region.x * texMult) - float(INT16_MAX) ); + int16_t y0 = (int16_t)( ( (float)_region.y * texMult) - float(INT16_MAX) ); + int16_t x1 = (int16_t)( ( ( (float)_region.x + _region.width) * texMult) - float(INT16_MAX) ); + int16_t y1 = (int16_t)( ( ( (float)_region.y + _region.height) * texMult) - float(INT16_MAX) ); + int16_t ww = (int16_t)( (float(INT16_MAX) / 4.0f) * (float) _region.getComponentIndex() ); _vertexBuffer += _offset; switch (_region.getFaceIndex() ) @@ -455,44 +452,44 @@ void Atlas::packUV(const AtlasRegion& _region, uint8_t* _vertexBuffer, uint32_t x1 = -x1; y0 = -y0; y1 = -y1; - writeUV(_vertexBuffer, maxVal, y0, x0, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, maxVal, y1, x0, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, maxVal, y1, x1, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, maxVal, y0, x1, w); _vertexBuffer += _stride; + writeUV(_vertexBuffer, maxVal, y0, x0, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, maxVal, y1, x0, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, maxVal, y1, x1, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, maxVal, y0, x1, ww); _vertexBuffer += _stride; break; case 1: // -X y0 = -y0; y1 = -y1; - writeUV(_vertexBuffer, minVal, y0, x0, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, minVal, y1, x0, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, minVal, y1, x1, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, minVal, y0, x1, w); _vertexBuffer += _stride; + writeUV(_vertexBuffer, minVal, y0, x0, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, minVal, y1, x0, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, minVal, y1, x1, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, minVal, y0, x1, ww); _vertexBuffer += _stride; break; case 2: // +Y - writeUV(_vertexBuffer, x0, maxVal, y0, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, x0, maxVal, y1, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, x1, maxVal, y1, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, x1, maxVal, y0, w); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x0, maxVal, y0, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x0, maxVal, y1, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x1, maxVal, y1, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x1, maxVal, y0, ww); _vertexBuffer += _stride; break; case 3: // -Y y0 = -y0; y1 = -y1; - writeUV(_vertexBuffer, x0, minVal, y0, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, x0, minVal, y1, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, x1, minVal, y1, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, x1, minVal, y0, w); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x0, minVal, y0, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x0, minVal, y1, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x1, minVal, y1, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x1, minVal, y0, ww); _vertexBuffer += _stride; break; case 4: // +Z y0 = -y0; y1 = -y1; - writeUV(_vertexBuffer, x0, y0, maxVal, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, x0, y1, maxVal, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, x1, y1, maxVal, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, x1, y0, maxVal, w); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x0, y0, maxVal, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x0, y1, maxVal, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x1, y1, maxVal, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x1, y0, maxVal, ww); _vertexBuffer += _stride; break; case 5: // -Z @@ -500,10 +497,10 @@ void Atlas::packUV(const AtlasRegion& _region, uint8_t* _vertexBuffer, uint32_t x1 = -x1; y0 = -y0; y1 = -y1; - writeUV(_vertexBuffer, x0, y0, minVal, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, x0, y1, minVal, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, x1, y1, minVal, w); _vertexBuffer += _stride; - writeUV(_vertexBuffer, x1, y0, minVal, w); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x0, y0, minVal, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x0, y1, minVal, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x1, y1, minVal, ww); _vertexBuffer += _stride; + writeUV(_vertexBuffer, x1, y0, minVal, ww); _vertexBuffer += _stride; break; } } diff --git a/examples/common/font/font_manager.cpp b/examples/common/font/font_manager.cpp index 8838f115..7e7413cd 100644 --- a/examples/common/font/font_manager.cpp +++ b/examples/common/font/font_manager.cpp @@ -16,22 +16,12 @@ #if BGFX_CONFIG_USE_TINYSTL namespace tinystl { - //struct bgfx_allocator - //{ - //static void* static_allocate(size_t _bytes); - //static void static_deallocate(void* _ptr, size_t /*_bytes*/); - //}; } // namespace tinystl -//# define TINYSTL_ALLOCATOR tinystl::bgfx_allocator -# include -//# include +# include namespace stl = tinystl; #else # include -namespace std -{ namespace tr1 -{} -} +namespace std { namespace tr1 {} } namespace stl { using namespace std; @@ -201,25 +191,25 @@ bool TrueTypeFont::bakeGlyphAlpha(CodePoint _codePoint, GlyphInfo& _glyphInfo, u FT_BitmapGlyph bitmap = (FT_BitmapGlyph)glyph; - int32_t x = bitmap->left; - int32_t y = -bitmap->top; - int32_t w = bitmap->bitmap.width; - int32_t h = bitmap->bitmap.rows; + int32_t xx = bitmap->left; + int32_t yy = -bitmap->top; + int32_t ww = bitmap->bitmap.width; + int32_t hh = bitmap->bitmap.rows; - _glyphInfo.offset_x = (float) x; - _glyphInfo.offset_y = (float) y; - _glyphInfo.width = (float) w; - _glyphInfo.height = (float) h; + _glyphInfo.offset_x = (float)xx; + _glyphInfo.offset_y = (float)yy; + _glyphInfo.width = (float)ww; + _glyphInfo.height = (float)hh; _glyphInfo.advance_x = (float)slot->advance.x / 64.0f; _glyphInfo.advance_y = (float)slot->advance.y / 64.0f; int32_t charsize = 1; int32_t depth = 1; int32_t stride = bitmap->bitmap.pitch; - for (int32_t ii = 0; ii < h; ++ii) + for (int32_t ii = 0; ii < hh; ++ii) { - memcpy(_outBuffer + (ii * w) * charsize * depth, - bitmap->bitmap.buffer + (ii * stride) * charsize, w * charsize * depth); + memcpy(_outBuffer + (ii * ww) * charsize * depth, + bitmap->bitmap.buffer + (ii * stride) * charsize, ww * charsize * depth); } FT_Done_Glyph(glyph); @@ -270,8 +260,10 @@ bool TrueTypeFont::bakeGlyphSubpixel(CodePoint _codePoint, GlyphInfo& _glyphInfo int32_t stride = bitmap->bitmap.pitch; for (int32_t ii = 0; ii < h; ++ii) { - memcpy(_outBuffer + (ii * w) * charsize * depth, - bitmap->bitmap.buffer + (ii * stride) * charsize, w * charsize * depth); + memcpy(_outBuffer + (ii * w) * charsize * depth + , bitmap->bitmap.buffer + (ii * stride) * charsize + , w * charsize * depth + ); } FT_Done_Glyph(glyph); @@ -472,9 +464,11 @@ typedef stl::unordered_map GlyphHashMap; struct FontManager::CachedFont { CachedFont() + : trueTypeFont(NULL) { - trueTypeFont = NULL; masterFontHandle.idx = -1; + masterFontHandle.idx = bx::HandleAlloc::invalid; } + FontInfo fontInfo; GlyphHashMap cachedGlyphs; TrueTypeFont* trueTypeFont; @@ -568,7 +562,7 @@ FontHandle FontManager::createFontByPixelSize(TrueTypeHandle _tt_handle, uint32_ if (!ttf->init(m_cachedFiles[_tt_handle.idx].buffer, m_cachedFiles[_tt_handle.idx].bufferSize, _typefaceIndex, _pixelSize) ) { delete ttf; - FontHandle invalid = BGFX_INVALID_HANDLE; + FontHandle invalid = { bx::HandleAlloc::invalid }; return invalid; } @@ -580,7 +574,7 @@ FontHandle FontManager::createFontByPixelSize(TrueTypeHandle _tt_handle, uint32_ m_cachedFonts[fontIdx].fontInfo.fontType = _fontType; m_cachedFonts[fontIdx].fontInfo.pixelSize = _pixelSize; m_cachedFonts[fontIdx].cachedGlyphs.clear(); - m_cachedFonts[fontIdx].masterFontHandle.idx = -1; + m_cachedFonts[fontIdx].masterFontHandle.idx = bx::HandleAlloc::invalid; FontHandle ret = {fontIdx}; return ret; }