From d8dd88c6a75623f32c05095e77c790f633612a5f Mon Sep 17 00:00:00 2001 From: minjaesong Date: Sun, 16 Sep 2018 18:51:11 +0900 Subject: [PATCH] aggressive cacheing (ShittyGlyphLayout) --- .idea/workspace.xml | 24 +++--- FontTestGDX/lib/TerrarumSansBitmap.jar | Bin 63849 -> 67058 bytes .../terrarumsansbitmap/gdx/GameFontBase.kt | 71 +++++++++++++++--- 3 files changed, 72 insertions(+), 23 deletions(-) diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 43c4a58..3e635bd 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -32,8 +32,8 @@ - - + + @@ -89,8 +89,8 @@ - - + + @@ -163,11 +163,6 @@ - lastNonDiacriticChar - c.toInt() - har.toInt() - println - !! ArrayList<Int> appConfig.height textBuffer @@ -193,6 +188,11 @@ getWidth getWidthOfCharSeq makeShadow + fun draw + glyphWidthBuffer + oldCharSequence + charSeq.toCodeP + resetH .141 @@ -507,7 +507,7 @@ - + @@ -932,8 +932,8 @@ - - + + diff --git a/FontTestGDX/lib/TerrarumSansBitmap.jar b/FontTestGDX/lib/TerrarumSansBitmap.jar index 608f546fac9db25e92cd8c8ace1a76ceafd92124..a67b15c1e2b5eb842aef2dfd1e87176af2c8f2b6 100644 GIT binary patch delta 47455 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 @@ -280,6 +282,10 @@ class GameFontBase(fontDir: String, val noShadow: Boolean = false, val flipY: Bo private fun Int.isLowHeight() = this.and(0xFFFF).toChar() in lowHeightLetters + private data class ShittyGlyphLayout(val textBuffer: CodepointSequence, val posXbuffer: IntArray, val posYbuffer: IntArray) + private val textCache = HashMap() + + private fun getColour(codePoint: Int): Color { // input: 0x10ARGB, out: RGBA8888 if (colourBuffer.containsKey(codePoint)) return colourBuffer[codePoint]!! @@ -531,12 +537,9 @@ class GameFontBase(fontDir: String, val noShadow: Boolean = false, val flipY: Bo private var firstRun = true private var textBuffer = CodepointSequence(256) - private var oldCharSequence = "" - //private lateinit var textTexture: FrameBuffer - //private val textTexCamera = OrthographicCamera() + //private var oldCharSequence = "" private var posXbuffer = intArrayOf() // absolute posX of glyphs from print-origin private var posYbuffer = intArrayOf() // absolute posY of glyphs from print-origin - private var glyphWidthBuffer = intArrayOf() // width of each glyph private lateinit var originalColour: Color @@ -555,8 +558,11 @@ class GameFontBase(fontDir: String, val noShadow: Boolean = false, val flipY: Bo if (charSeq.isNotBlank()) { - if (oldCharSequence != charSeq || firstRun) { + + + if (!textCache.containsKey(charSeq) || firstRun) { textBuffer = charSeq.toCodePoints() + //val texWidth = widths.sum() //if (!firstRun) textTexture.dispose() @@ -569,7 +575,24 @@ class GameFontBase(fontDir: String, val noShadow: Boolean = false, val flipY: Bo //print("[TerrarumSansBitmap] widthTable for $textBuffer: ") //posXbuffer.forEach { print("$it ") }; println() + + textCache[charSeq] = ShittyGlyphLayout( + textBuffer, + posXbuffer, + posYbuffer + ) + + firstRun = false + + //println("text not in buffer: $charSeq") + } + else { + val bufferObj = textCache[charSeq] + + textBuffer = bufferObj!!.textBuffer + posXbuffer = bufferObj!!.posXbuffer + posYbuffer = bufferObj!!.posYbuffer } @@ -589,7 +612,7 @@ class GameFontBase(fontDir: String, val noShadow: Boolean = false, val flipY: Bo //println() - resetHash() + resetHash(charSeq, x, y) var index = 0 while (index <= textBuffer.lastIndex) { val c = textBuffer[index] @@ -597,7 +620,7 @@ class GameFontBase(fontDir: String, val noShadow: Boolean = false, val flipY: Bo val (sheetX, sheetY) = if (index == 0) getSheetwisePosition(0, c) else getSheetwisePosition(textBuffer[index - 1], c) - val hash = getHash(c) + val hash = getHash(c) // to be used with Bad Transmission Modifier if (isColourCode(c)) { if (c == 0x100000) { @@ -642,7 +665,6 @@ class GameFontBase(fontDir: String, val noShadow: Boolean = false, val flipY: Bo } else { try { - val posY = y + posYbuffer[index].flipY() + if (sheetID == SHEET_UNIHAN) // evil exceptions offsetUnihan @@ -1049,8 +1071,6 @@ class GameFontBase(fontDir: String, val noShadow: Boolean = false, val flipY: Bo val str = textBuffer val widths = getWidthOfCharSeq(str) - glyphWidthBuffer = widths - posXbuffer = IntArray(str.size, { 0 }) posYbuffer = IntArray(str.size, { 0 }) @@ -1338,12 +1358,41 @@ class GameFontBase(fontDir: String, val noShadow: Boolean = false, val flipY: Bo hashAccumulator *= hashPrime return hashAccumulator } - fun resetHash() { + fun resetHash(charSeq: CharSequence, x: Float, y: Float) { hashAccumulator = hashBasis + + getHash(charSeq.crc32()) + getHash(x.toRawBits()) + getHash(y.toRawBits()) } private fun Int.toHex() = "U+${this.toString(16).padStart(4, '0').toUpperCase()}" + private fun CharSequence.sha256(): ByteArray { + val digest = MessageDigest.getInstance("SHA-256") + this.forEach { + val it = it.toInt() + val b1 = it.shl(8).and(255).toByte() + val b2 = it.and(255).toByte() + digest.update(b1) + digest.update(b2) + } + + return digest.digest() + } + private fun CharSequence.crc32(): Int { + val crc = CRC32() + this.forEach { + val it = it.toInt() + val b1 = it.shl(8).and(255) + val b2 = it.and(255) + crc.update(b1) + crc.update(b2) + } + + return crc.value.toInt() + } + companion object { internal val JUNG_COUNT = 21 internal val JONG_COUNT = 28