Browse Source

Merge pull request #1845 from nockawa/PosEngineFinal

Canvas2D: Text rendering improvements
Loïc Baumann 8 years ago
parent
commit
56eb0bab45

+ 1 - 1
Tools/Gulp/config.json

@@ -525,7 +525,7 @@
                 "files": [
                     "../../canvas2D/src/Tools/babylon.math2D.ts",
                     "../../canvas2D/src/Tools/babylon.iPropertyChanged.ts",
-                    "../../canvas2D/src/Tools/babylon.babylon.c2dlogging.ts",
+                    "../../canvas2D/src/Tools/babylon.c2dlogging.ts",
                     "../../canvas2D/src/Tools/babylon.observableArray.ts",
                     "../../canvas2D/src/Tools/babylon.observableStringDictionary.ts",
                     "../../canvas2D/src/Engine/babylon.fontTexture.ts",

+ 3 - 3
canvas2D/src/Engine/babylon.fontTexture.ts

@@ -361,17 +361,17 @@
             return true;
         }
 
-        public static GetCachedFontTexture(scene: Scene, fontName: string, supersample: boolean = false, signedDistanceField: boolean = false): FontTexture {
+        public static GetCachedFontTexture(scene: Scene, fontName: string, supersample: boolean = false, signedDistanceField: boolean = false, bilinearFiltering: boolean=false): FontTexture {
             let dic = scene.getOrAddExternalDataWithFactory("FontTextureCache", () => new StringDictionary<FontTexture>());
 
-            let lfn = fontName.toLocaleLowerCase() + (supersample ? "_+SS" : "_-SS") + (signedDistanceField ? "_+SDF" : "_-SDF");
+            let lfn = fontName.toLocaleLowerCase() + (supersample ? "_+SS" : "_-SS") + (signedDistanceField ? "_+SDF" : "_-SDF") + (bilinearFiltering ? "_+BF" : "_-BF");
             let ft = dic.get(lfn);
             if (ft) {
                 ++ft._usedCounter;
                 return ft;
             }
 
-            ft = new FontTexture(null, fontName, scene, supersample ? 100 : 200, signedDistanceField ? Texture.BILINEAR_SAMPLINGMODE : Texture.NEAREST_SAMPLINGMODE, supersample, signedDistanceField);
+            ft = new FontTexture(null, fontName, scene, supersample ? 100 : 200, (signedDistanceField || bilinearFiltering) ? Texture.BILINEAR_SAMPLINGMODE : Texture.NEAREST_SAMPLINGMODE, supersample, signedDistanceField);
             ft._cachedFontId = lfn;
             dic.add(lfn, ft);
 

File diff suppressed because it is too large
+ 7 - 2
canvas2D/src/Engine/babylon.text2d.ts


File diff suppressed because it is too large
+ 13 - 10
dist/preview release/canvas2D/babylon.canvas2d.d.ts


File diff suppressed because it is too large
+ 81 - 75
dist/preview release/canvas2D/babylon.canvas2d.js


File diff suppressed because it is too large
+ 12 - 12
dist/preview release/canvas2D/babylon.canvas2d.min.js