Sprite Font Generator - v3

Discussion of tools and resources for game developers

Post » Sat Apr 22, 2017 6:19 am

@esgame Unfortunately I can't fix that in the latest version. You can try v1.12 - look further down in the original post.
ImageImageImage
B
71
S
21
G
204
Posts: 3,586
Reputation: 115,576

Post » Sat Apr 22, 2017 7:40 am

Very good generator but can we generate many font colors at the same time or load them in C2 directly ? (embedded white to color C2 effect maybe ?)
Image
B
6
S
2
Posts: 42
Reputation: 538

Post » Sat Apr 22, 2017 11:30 am

@blackhornet , i check old version and i think this is font render problem. See image from 1.12 version. No standart symbols not blured/ UTF render?? Maybe you can make check/selector for change (blur on/off) ?? ))) ;) :)
Image
B
18
S
7
G
1
Posts: 37
Reputation: 1,561

Post » Sat Apr 22, 2017 1:44 pm

@iyenal222
You can apply the Tint effect to a white spritefont and get any colour you want.

@esgame
If turning off anti-aliasing doesn't help, then it's the font itself. Nothing I can do.
ImageImageImage
B
71
S
21
G
204
Posts: 3,586
Reputation: 115,576

Post » Sat Apr 22, 2017 4:01 pm

Good idea @blackhornet thanks.
Image
B
6
S
2
Posts: 42
Reputation: 538

Post » Wed May 31, 2017 7:13 pm

Absolutely lovely, thank you!
B
3
Posts: 1
Reputation: 177

Post » Mon Jun 19, 2017 12:53 pm

Is it possible to avoid generation of SF in 512x512 and 1024x1024?
If i have a SF with 50x60 characters, 8 chars in width and 6 in height.. shouldn't the size be 400x300 ?
I am trying to avoid big images so as to have a lighter game...
B
22
S
8
Posts: 16
Reputation: 1,400

Post » Mon Jun 19, 2017 3:06 pm

The power-of-two sizes are an optimization. You can read about this here:
https://www.scirra.com/manual/166/sprite-font
https://www.scirra.com/blog/ashley/30/y ... -sizes-now

You can always crop the image manually, if you want. You'll need to test if this causes any issues.
Last edited by blackhornet on Tue Jun 20, 2017 5:04 am, edited 1 time in total.
ImageImageImage
B
71
S
21
G
204
Posts: 3,586
Reputation: 115,576

Post » Tue Jun 20, 2017 5:00 am

@blackhornet
I think your answer was meant to me? :)
Because of WEBGL2, you don't need POT spritefonts anymore. I guess it works with spritefonts too (?!)

Anyway, simply doing the maths and resize the spritefont, align top-left worked for me. Without changing the char spacing and the code you provide on SF generation.

Thank you for the tool. Works perfectly.
B
22
S
8
Posts: 16
Reputation: 1,400

Post » Sat Jun 24, 2017 4:02 pm

For some reason I can only get version 1.12 to work for me - anything above immediately crashes and leaves an error in the event logs. Someone on one of the earlier pages of this thread had the same problem as me but got it fixed by upgrading to a higher version but it seems I have to downgrade to get it to work.

Here's my event viewer logs.
Code: Select all
Application: GYFM3.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.Runtime.InteropServices.COMException
   at MS.Win32.Penimc.UnsafeNativeMethods.CoCreateInstance(System.Guid ByRef, System.Object, Int32, System.Guid ByRef)
   at MS.Win32.Penimc.UnsafeNativeMethods.CreatePimcManager()
   at MS.Win32.Penimc.UnsafeNativeMethods..cctor()

Exception Info: System.TypeInitializationException
   at MS.Win32.Penimc.UnsafeNativeMethods.CreateResetEvent(IntPtr ByRef)
   at System.Windows.Input.PenThreadWorker..ctor()
   at System.Windows.Input.PenThreadPool.GetPenThreadForPenContextHelper(System.Windows.Input.PenContext)
   at System.Windows.Input.StylusWisp.WispTabletDeviceCollection.UpdateTabletsImpl()
   at System.Windows.Input.StylusWisp.WispTabletDeviceCollection.UpdateTablets()
   at System.Windows.Input.StylusWisp.WispTabletDeviceCollection..ctor()
   at System.Windows.Input.StylusWisp.WispLogic.get_WispTabletDevices()
   at System.Windows.Input.StylusWisp.WispLogic.RegisterHwndForInput(System.Windows.Input.InputManager, System.Windows.PresentationSource)
   at System.Windows.Interop.HwndStylusInputProvider..ctor(System.Windows.Interop.HwndSource)
   at System.Windows.Interop.HwndSource.Initialize(System.Windows.Interop.HwndSourceParameters)
   at System.Windows.Window.CreateSourceWindow(Boolean)
   at System.Windows.Window.ShowHelper(System.Object)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
   at System.Windows.Threading.DispatcherOperation.InvokeImpl()
   at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
   at MS.Internal.CulturePreservingExecutionContext.Run(MS.Internal.CulturePreservingExecutionContext, System.Threading.ContextCallback, System.Object)
   at System.Windows.Threading.DispatcherOperation.Invoke()
   at System.Windows.Threading.Dispatcher.ProcessQueue()
   at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
   at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)
   at MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame)
   at System.Windows.Application.RunDispatcher(System.Object)
   at System.Windows.Application.RunInternal(System.Windows.Window)
   at GYFM2.App.Main()



Code: Select all
Faulting application name: GYFM3.exe, version: 3.0.0.0, time stamp: 0x58e486a7
Faulting module name: KERNELBASE.dll, version: 6.1.7601.23807, time stamp: 0x5915fe14
Exception code: 0xe0434352
Fault offset: 0x000000000001a06d
Faulting process id: 0x1454
Faulting application start time: 0x01d2ed01e34f0b56
Faulting application path: C:\Users\Me\Desktop\GiveYourFontsMono_v3_0\GYFM3.exe
Faulting module path: C:\Windows\system32\KERNELBASE.dll
Report Id: 2138fde5-58f5-11e7-93d1-fcaa142817c6

Lastly, here's the actual report.wer file:
Code: Select all
Version=1
EventType=CLR20r3
EventTime=131427931516054441
ReportType=2
Consent=1
ReportIdentifier=2138fde6-58f5-11e7-93d1-fcaa142817c6
IntegratorReportIdentifier=2138fde5-58f5-11e7-93d1-fcaa142817c6
Response.type=4
Sig[0].Name=Problem Signature 01
Sig[0].Value=GYFM3.exe
Sig[1].Name=Problem Signature 02
Sig[1].Value=3.0.0.0
Sig[2].Name=Problem Signature 03
Sig[2].Value=58e486a7
Sig[3].Name=Problem Signature 04
Sig[3].Value=PresentationCore
Sig[4].Name=Problem Signature 05
Sig[4].Value=4.7.2053.0
Sig[5].Name=Problem Signature 06
Sig[5].Value=58fa7581
Sig[6].Name=Problem Signature 07
Sig[6].Value=46a2
Sig[7].Name=Problem Signature 08
Sig[7].Value=16
Sig[8].Name=Problem Signature 09
Sig[8].Value=PSZQOADHX1U5ZAHBHOHGHLDGIY4QIXHX
DynamicSig[1].Name=OS Version
DynamicSig[1].Value=6.1.7601.2.1.0.256.1
DynamicSig[2].Name=Locale ID
DynamicSig[2].Value=1033
DynamicSig[22].Name=Additional Information 1
DynamicSig[22].Value=c8a9
DynamicSig[23].Name=Additional Information 2
DynamicSig[23].Value=c8a921356b5dc80c39107be055579326
DynamicSig[24].Name=Additional Information 3
DynamicSig[24].Value=9ed8
DynamicSig[25].Name=Additional Information 4
DynamicSig[25].Value=9ed84c2f930fc23a0593eaf6efed34a4
UI[2]=C:\Users\Me\Desktop\GiveYourFontsMono_v3_0\GYFM3.exe
UI[3]=GiveYourFontsMono has stopped working
UI[4]=Windows can check online for a solution to the problem.
UI[5]=Check online for a solution and close the program
UI[6]=Check online for a solution later and close the program
UI[7]=Close the program
LoadedModule[0]=C:\Users\Me\Desktop\GiveYourFontsMono_v3_0\GYFM3.exe
LoadedModule[1]=C:\Windows\SYSTEM32\ntdll.dll
LoadedModule[2]=C:\Windows\SYSTEM32\MSCOREE.DLL
LoadedModule[3]=C:\Program Files\AVAST Software\Avast\x64\aswhooka.dll
LoadedModule[4]=C:\Windows\system32\KERNEL32.dll
LoadedModule[5]=C:\Windows\system32\KERNELBASE.dll
LoadedModule[6]=C:\Windows\system32\ADVAPI32.dll
LoadedModule[7]=C:\Windows\system32\msvcrt.dll
LoadedModule[8]=C:\Windows\SYSTEM32\sechost.dll
LoadedModule[9]=C:\Windows\system32\RPCRT4.dll
LoadedModule[10]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscoreei.dll
LoadedModule[11]=C:\Windows\system32\SHLWAPI.dll
LoadedModule[12]=C:\Windows\system32\GDI32.dll
LoadedModule[13]=C:\Windows\system32\USER32.dll
LoadedModule[14]=C:\Windows\system32\LPK.dll
LoadedModule[15]=C:\Windows\system32\USP10.dll
LoadedModule[16]=C:\Windows\system32\IMM32.DLL
LoadedModule[17]=C:\Windows\system32\MSCTF.dll
LoadedModule[18]=C:\Windows\system32\VERSION.dll
LoadedModule[19]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
LoadedModule[20]=C:\Windows\system32\MSVCR120_CLR0400.dll
LoadedModule[21]=C:\Windows\assembly\NativeImages_v4.0.30319_64\mscorlib\a45ddc8333a6ec85275f9c44732ffb5d\mscorlib.ni.dll
LoadedModule[22]=C:\Windows\system32\ole32.dll
LoadedModule[23]=C:\Windows\system32\CRYPTBASE.dll
LoadedModule[24]=C:\Windows\system32\uxtheme.dll
LoadedModule[25]=D:\Program Files\Common Files\microsoft shared\ink\tiptsf.dll
LoadedModule[26]=C:\Windows\system32\OLEAUT32.dll
LoadedModule[27]=C:\Windows\assembly\NativeImages_v4.0.30319_64\System\6ada715406970ca9c23b97933fa5882d\System.ni.dll
LoadedModule[28]=C:\Windows\assembly\NativeImages_v4.0.30319_64\System.Core\a472cc54a14423ce444e8c0176bd4437\System.Core.ni.dll
LoadedModule[29]=C:\Windows\assembly\NativeImages_v4.0.30319_64\WindowsBase\362eb0a9213fb4f98ac5e680a1f93f83\WindowsBase.ni.dll
LoadedModule[30]=C:\Windows\system32\CRYPTSP.dll
LoadedModule[31]=C:\Windows\system32\rsaenh.dll
LoadedModule[32]=C:\Windows\assembly\NativeImages_v4.0.30319_64\PresentationCore\b32e3ef201b989d72bcd9171201eee7e\PresentationCore.ni.dll
LoadedModule[33]=C:\Windows\assembly\NativeImages_v4.0.30319_64\Presentatio5ae0f00f#\993779c6c20bddfda695dd492fffb5c6\PresentationFramework.ni.dll
LoadedModule[34]=C:\Windows\assembly\NativeImages_v4.0.30319_64\System.Xaml\554d3abf898812696e72f49c6978d3e8\System.Xaml.ni.dll
LoadedModule[35]=C:\Windows\system32\dwrite.dll
LoadedModule[36]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\WPF\wpfgfx_v0400.dll
LoadedModule[37]=C:\Windows\system32\MSVCP120_CLR0400.dll
LoadedModule[38]=C:\Windows\system32\D3DCOMPILER_47.dll
LoadedModule[39]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\WPF\PresentationNative_v0400.dll
LoadedModule[40]=C:\Windows\system32\api-ms-win-core-xstate-l2-1-0.dll
LoadedModule[41]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clrjit.dll
LoadedModule[42]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\nlssorting.dll
LoadedModule[43]=C:\Windows\assembly\NativeImages_v4.0.30319_64\System.Configuration\dc7f7adbf7c62800a126982c0c2b3c73\System.Configuration.ni.dll
LoadedModule[44]=C:\Windows\assembly\NativeImages_v4.0.30319_64\System.Xml\9a2cca41e593d07a4637cffaad98d37e\System.Xml.ni.dll
LoadedModule[45]=C:\Windows\system32\dwmapi.dll
LoadedModule[46]=C:\Windows\system32\RpcRtRemote.dll
LoadedModule[47]=C:\Windows\system32\d3d9.dll
LoadedModule[48]=C:\Windows\system32\d3d8thk.dll
LoadedModule[49]=C:\Windows\system32\nvd3dumx.dll
LoadedModule[50]=C:\Windows\system32\WINMM.dll
LoadedModule[51]=C:\Windows\system32\Shell32.dll
LoadedModule[52]=C:\Windows\system32\nvspcap64.dll
LoadedModule[53]=C:\Windows\system32\SETUPAPI.dll
LoadedModule[54]=C:\Windows\system32\CFGMGR32.dll
LoadedModule[55]=C:\Windows\system32\DEVOBJ.dll
LoadedModule[56]=C:\Windows\system32\PSAPI.DLL
LoadedModule[57]=C:\Windows\system32\WINHTTP.dll
LoadedModule[58]=C:\Windows\system32\webio.dll
LoadedModule[59]=C:\Windows\system32\WTSAPI32.dll
LoadedModule[60]=C:\Windows\system32\profapi.dll
LoadedModule[61]=C:\Windows\system32\nvapi64.dll
LoadedModule[62]=C:\Windows\system32\igdumdim64.dll
LoadedModule[63]=C:\Windows\assembly\NativeImages_v4.0.30319_64\Presentatio1c9175f8#\0c08bbe87768b9329ad56b23249fcd3e\PresentationFramework.Aero.ni.dll
LoadedModule[64]=C:\Windows\assembly\NativeImages_v4.0.30319_64\System.Drawing\16c33d498603d75f08c958f31ac7feb5\System.Drawing.ni.dll
LoadedModule[65]=C:\Windows\system32\WindowsCodecs.dll
LoadedModule[66]=C:\Windows\system32\WINSTA.dll
LoadedModule[67]=C:\Windows\system32\CLBCatQ.DLL
LoadedModule[68]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\diasymreader.dll
FriendlyEventName=Stopped working
ConsentKey=CLR20r3
AppName=GiveYourFontsMono
AppPath=C:\Users\Me\Desktop\GiveYourFontsMono_v3_0\GYFM3.exe

B
15
S
3
G
1
Posts: 11
Reputation: 1,306

PreviousNext

Return to Tools and Resources

Who is online

Users browsing this forum: No registered users and 2 guests