Hi,
Nate, thanks for your quick response. I am packing only 54 images, please have a look at my .atlas file( See gameAtlas.txt attached ) so that you can see the amount of files that I am packing as well as their respective sizes
Unfortunately the suggested changes dont make things too much better, only a tiny little bit. I am using PowerShell instead of regular ms-dos so that I can use "Measure-Command" to time the executions
1)
Old texture pack options( See texturePack.old.json attached )
PS > Measure-Command{ Spine -i data -o output -n game -p ../../../../../utils/texturePack.old.json }
Dec 07, 2018 4:06:42 PM java.util.prefs.WindowsPreferences openKey
WARNING: Could not open windows registry node Software\JavaSoft\Prefs\com\esotericsoftware\spine\editor\launcher at root 0x80000002. Windows RegOpenKey(...) returned error code 5.
java.lang.SecurityException: Could not open windows registry node Software\JavaSoft\Prefs\com\esotericsoftware\spine\editor\launcher at root 0x80000002: Access denied
at java.util.prefs.WindowsPreferences.openKey(WindowsPreferences.java:513)
at java.util.prefs.WindowsPreferences.openKey(WindowsPreferences.java:480)
at java.util.prefs.WindowsPreferences.openKey(WindowsPreferences.java:466)
at java.util.prefs.WindowsPreferences.putSpi(WindowsPreferences.java:612)
at java.util.prefs.AbstractPreferences.put(AbstractPreferences.java:251)
at tzax.V.a(SourceFile:161)
at tzax.V.a(SourceFile:143)
at tzax.s.run(SourceFile:1032)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:312)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:745)
at java.awt.EventQueue.access$300(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:706)
at java.awt.EventQueue$3.run(EventQueue.java:704)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:715)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Days : 0
Hours : 0
Minutes : 0
Seconds : 12
Milliseconds : 44
Ticks : 120445851
TotalDays : 0.000139404920138889
TotalHours : 0.00334571808333333
TotalMinutes : 0.200743085
TotalSeconds : 12.0445851
TotalMilliseconds : 12044.5851
2)
New texture pack options with all the recommended changes( See texturePack.json attached )
PS > Measure-Command{ Spine -i data -o output -n game -p ../../../../../utils/texturePack.json }
Dec 07, 2018 4:10:58 PM java.util.prefs.WindowsPreferences openKey
WARNING: Could not open windows registry node Software\JavaSoft\Prefs\com\esotericsoftware\spine\editor\launcher at root 0x80000002. Windows RegOpenKey(...) returned error code 5.
java.lang.SecurityException: Could not open windows registry node Software\JavaSoft\Prefs\com\esotericsoftware\spine\editor\launcher at root 0x80000002: Access denied
at java.util.prefs.WindowsPreferences.openKey(WindowsPreferences.java:513)
at java.util.prefs.WindowsPreferences.openKey(WindowsPreferences.java:480)
at java.util.prefs.WindowsPreferences.openKey(WindowsPreferences.java:466)
at java.util.prefs.WindowsPreferences.putSpi(WindowsPreferences.java:612)
at java.util.prefs.AbstractPreferences.put(AbstractPreferences.java:251)
at tzax.V.a(SourceFile:161)
at tzax.V.a(SourceFile:143)
at tzax.s.run(SourceFile:1032)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:312)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:745)
at java.awt.EventQueue.access$300(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:706)
at java.awt.EventQueue$3.run(EventQueue.java:704)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:715)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Days : 0
Hours : 0
Minutes : 0
Seconds : 10
Milliseconds : 669
Ticks : 106691842
TotalDays : 0.000123485928240741
TotalHours : 0.00296366227777778
TotalMinutes : 0.177819736666667
TotalSeconds : 10.6691842
TotalMilliseconds : 10669.1842
( By the way, ignore the warnings, both commands execute successfully, and I read in a Java forum that they can be safely ignored )
As you can see the saving are not great... I remember using a very naïve algorithm to pack textures that took about 2 seconds tops, I wonder if this one takes so long because Spine needs to boot up fully, authenticate, check for updates etc etc and that is causing the delay?
Is it possible to run Spine as a service so that I can connect to a port and send e.g. "-i data -o output -n game -p ../../../../../utils/texturePack.json" in order to save time?
Alternatively, do you guys have an API like Maja so that we can create a custom exporter for Spine? Provide access to the Scene elements and images etc etc?
Cheers,
Javier