1 | # README
|
---|
2 |
|
---|
3 | A plugin which provides lwjgl libraries for plugins.
|
---|
4 | The plugin source code is under the GPL v2 or later.
|
---|
5 |
|
---|
6 | It is "split" into platform-specific plugins:
|
---|
7 | * Each platform has its own "native" jar (if a
|
---|
8 | platform supports more than one architecture,
|
---|
9 | all architectures are in the jar file)
|
---|
10 |
|
---|
11 | ## Adding additional LWJGL libraries
|
---|
12 | Open a ticket on [JOSM Trac](https://josm.openstreetmap.de/newticket?cc=taylor.smock&keywords=lwjgl&component=Plugin)
|
---|
13 | with a request for the LWJGL library (note: to be eligible for this plugin, it
|
---|
14 | must be something recommended by LWJGL).
|
---|
15 |
|
---|
16 | While not necessary, it would be nice to have a use case for the LWJGL that is
|
---|
17 | being added.
|
---|
18 |
|
---|
19 | ## Debugging
|
---|
20 | Depending upon what needs to be debugged, you can either start JOSM with the `--debug` flag _or_ you can start JOSM
|
---|
21 | with the VM argument `-javaagent:lwjglx-debug-1.0.0.jar` (see [lwjglx-debug](https://github.com/LWJGLX/debug)),
|
---|
22 | assuming you've customized the JOSM build process to include the `lwjgl` core module, like so:
|
---|
23 | ```xml
|
---|
24 | <dependency conf="api->default" org="org.lwjgl" name="lwjgl" rev="${lwjgl.version}">
|
---|
25 | <artifact name="lwjgl" type="jar"/>
|
---|
26 | </dependency>
|
---|
27 | ```
|
---|
28 | Replace `${lwjgl.version}` with the version in ivy\_settings.xml. This is due to the javaagent requiring
|
---|
29 | `org.lwjgl.system.Configuration` to be available immediately, which it is not until JOSM loads the `lwjgl` plugin.
|
---|
30 |
|
---|
31 |
|
---|
32 | You will most likely encounter issues where the application fails due to
|
---|
33 | `No OpenGL context has been made current through recognized API methods (glfwMakeContextCurrent).`
|
---|
34 |
|
---|
35 | See [LWJGLX debug #29](https://github.com/LWJGLX/debug/issues/29#issuecomment-985176717) for a workaround.
|
---|
36 | It pretty much comes down to manually setting the context.
|
---|