Skip to content

Latest commit

 

History

History
117 lines (102 loc) · 3.5 KB

LIBRARIES.md

File metadata and controls

117 lines (102 loc) · 3.5 KB

SwitchGDX Library Compatibility

Libraries that don't have native components should work by default, but may require creating entries in the switch.json config file to enable reflection metadata for needed classes (Any types used by GDX Array, for example). Any library that uses native code must have bindings for the Clearwing VM written by hand or by inlining the native code jnigen style (See Clearwing for details).

Known Unsupported

  • Gson
  • Apache Commons
  • OkHttp
  • Jmdns
  • Logback
  • Ktor

GDX Box2D

Fully supported

GDX Freetype

Fully supported

GDX Controllers

Fully supported and used internally

Fully supported and used internally for regex

Fully supported. Requires the following added to switch.json:

{
  "nonOptimized": [
    "com.ray3k.tenpatch.TenPatchDrawable"
  ]
}

Fully supported

Fully supported. Requires the following added to switch.json:

{
  "nonOptimized": [
    "com.artemis.BaseSystem",
    "com.artemis.utils.BitVector",
    "com.artemis.utils.Bag",
    "com.artemis.Aspect.Builder",
    "com.artemis.WildBag",
    "com.artemis.EntityEdit",
    "com.artemis.EntityTransmuter.TransmuteOperation",
    "com.artemis.ComponentRemover",
    "com.artemis.ComponentTypeFactory.ComponentTypeListener",
    "com.artemis.EntitySubscription",
    "com.artemis.Component",
    "com.artemis.Aspect",
    "com.artemis.Entity"
  ]
}

Fully supported. Requires the following added to switch.json in addition to the Artemis-ODB entries:

{
  "nonOptimized": [
    "games.rednblack.hyperrunner.component.*",
    "games.rednblack.hyperrunner.system.*",
    "games.rednblack.hyperrunner.script.*",
    "games.rednblack.editor.renderer.data.*",
    "games.rednblack.editor.renderer.components.**Component",
    "games.rednblack.editor.renderer.components.normal.NormalMapRendering",
    "games.rednblack.editor.renderer.SceneLoader",
    "games.rednblack.editor.renderer.systems.**System",
    "games.rednblack.editor.renderer.box2dLight.LightData",
    "games.rednblack.editor.renderer.systems.render.HyperLap2dRenderer",
    "games.rednblack.editor.renderer.systems.render.logic.*",
    "games.rednblack.editor.renderer.systems.action.logic.*",
    "games.rednblack.editor.renderer.factory.component.*",
    "games.rednblack.editor.renderer.factory.EntityFactory",
    "java.util.HashSet"
  ]
}

Fully supported

Fully supported

Fully supported

Fully supported. Requires the following entry added to switch.json:

{
  "nonOptimized": [
    "com.badlogic.ashley.core.Entity"
  ]
}

Mostly supported. File chooser stuff won't work and will cause compilation errors if used before 1.5.4-SNAPSHOT. Requires the following switch.json entry:

{
  "nonOptimized": [
    "com.kotcrab.vis.ui.**Style"
  ]
}

Not all modules tested but the main concern, Kotlin coroutines, are working for assets-async.