Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Summary of issues when running examples on Mac OSX #95

Open
jordanslott opened this issue Nov 28, 2020 · 0 comments
Open

Summary of issues when running examples on Mac OSX #95

jordanslott opened this issue Nov 28, 2020 · 0 comments

Comments

@jordanslott
Copy link

I wanted to catalog issues I ran into when running the Ardor3D examples on Mac OSX (2018 Mac Mini, Catalina, Java 11 running from Eclipse), hopefully to help others (and perhaps I'm mistaken on certain points).

  1. The PropertiesDialog never appears. I suspect this is the same lwjgl3 issue that jME saw as well: https://hub.jmonkeyengine.org/t/lwjgl-v2-versus-v3/42125/74. I do not need this dialog for my purposes; I simply use an ardorSettings.properties file instead.

  2. Examples crash with the following error because of this line: new Thread(example).start();. Note that the common suggestion to use VM argument -XstartOnFirstThread did not fix the issue. To workaround I simply call example.run() on the main thread.

[LWJGL] Version: 3.2.3 build 13
[LWJGL] 	 OS: Mac OS X v10.15.7
[LWJGL] 	JRE: 11.0.2 x86_64
[LWJGL] 	JVM: Java HotSpot(TM) 64-Bit Server VM v11.0.2+9-LTS by Oracle Corporation
[LWJGL] Loading JNI library: lwjgl
[LWJGL] 	Module: org.lwjgl
[LWJGL] 	Loaded from org.lwjgl.librarypath: /var/folders/rd/fj31shf90jq1gngpwgpnwy0r0000gn/T/lwjgljslott/3.2.3-build-13/liblwjgl.dylib
[LWJGL] Warning: Failed to instantiate memory allocator: org.lwjgl.system.jemalloc.JEmallocAllocator. Using the system default.
[LWJGL] MemoryUtil allocator: StdlibAllocator
[LWJGL] Loading library: glfw
[LWJGL] 	Module: org.lwjgl.glfw
[LWJGL] 	Loaded from org.lwjgl.librarypath: /var/folders/rd/fj31shf90jq1gngpwgpnwy0r0000gn/T/lwjgljslott/3.2.3-build-13/libglfw.dylib
[LWJGL] Loading library: objc
[LWJGL] 	Module: org.lwjgl
[LWJGL] 	libobjc.dylib not found in org.lwjgl.librarypath=/var/folders/rd/fj31shf90jq1gngpwgpnwy0r0000gn/T/lwjgljslott/3.2.3-build-13
[LWJGL] 	Loaded from system paths: /usr/lib/libobjc.A.dylib
[LWJGL] Loading library: com.apple.AppKit
[LWJGL] 	Success
[LWJGL] GLFW can only be used for offscreen rendering.
2020-11-28 12:16:07.677 java[73623:2726150] *** Assertion failure in +[NSUndoManager _endTopLevelGroupings], /AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/Foundation/Foundation-1677.104/Foundation/Misc.subproj/NSUndoManager.m:363
2020-11-28 12:16:07.677 java[73623:2726150] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '+[NSUndoManager(NSInternal) _endTopLevelGroupings] is only safe to invoke on the main thread.'
*** First throw call stack:
(
	0   CoreFoundation                      0x00007fff2f976b57 __exceptionPreprocess + 250
	1   libobjc.A.dylib                     0x00007fff686295bf objc_exception_throw + 48
	2   CoreFoundation                      0x00007fff2f99fd08 +[NSException raise:format:arguments:] + 88
	3   Foundation                          0x00007fff32091e9d -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 191
	4   Foundation                          0x00007fff31fce5ee +[NSUndoManager(NSPrivate) _endTopLevelGroupings] + 440
	5   AppKit                              0x00007fff2cb5b65c -[NSApplication run] + 864
	6   libglfw.dylib                       0x00000001128d4a85 libglfw.dylib + 68229
	7   libglfw.dylib                       0x00000001128ce416 libglfw.dylib + 42006
	8   ???                                 0x0000000112bce950 0x0 + 4609337680
	9   ???                                 0x0000000112bc8790 0x0 + 4609312656
)
libc++abi.dylib: terminating with uncaught exception of type NSException
  1. Terrain examples (e.g. ArrayTerrainExample) crashes with the following exception. Setting withShowDebugPanels(false) fixed the issue and I suspect the problem is related to that of RenderBucketType use internal map #1 above.
Throwable caught in MainThread - exiting
java.lang.IllegalArgumentException: textureId must != 0
	at com.ardor3d.util.TextureKey.setTextureIdForContext(TextureKey.java:313)
	at com.ardor3d.image.Texture.setTextureIdForContext(Texture.java:361)
	at com.ardor3d.scene.state.lwjgl3.Lwjgl3TextureStateUtil.load(Lwjgl3TextureStateUtil.java:96)
	at com.ardor3d.scene.state.lwjgl3.Lwjgl3TextureStateUtil.apply(Lwjgl3TextureStateUtil.java:475)
	at com.ardor3d.renderer.lwjgl3.Lwjgl3Renderer.doApplyState(Lwjgl3Renderer.java:331)
	at com.ardor3d.renderer.AbstractRenderer.applyState(AbstractRenderer.java:90)
	at com.ardor3d.renderer.material.TechniquePass.applyRenderStates(TechniquePass.java:312)
	at com.ardor3d.renderer.material.TechniquePass.setupForDraw(TechniquePass.java:139)
	at com.ardor3d.scenegraph.Mesh.render(Mesh.java:278)
	at com.ardor3d.scenegraph.Mesh.render(Mesh.java:255)
	at com.ardor3d.renderer.lwjgl3.Lwjgl3Renderer.draw(Lwjgl3Renderer.java:248)
	at com.ardor3d.scenegraph.Mesh.draw(Mesh.java:370)
	at com.ardor3d.renderer.queue.AbstractRenderBucket.render(AbstractRenderBucket.java:82)
	at com.ardor3d.renderer.queue.RenderQueue.renderBuckets(RenderQueue.java:110)
	at com.ardor3d.renderer.lwjgl3.Lwjgl3Renderer.renderBuckets(Lwjgl3Renderer.java:108)
	at com.ardor3d.renderer.lwjgl3.Lwjgl3Renderer.renderBuckets(Lwjgl3Renderer.java:101)
	at com.ardor3d.example.ExampleBase.renderExample(ExampleBase.java:295)
	at com.ardor3d.example.ExampleBase.render(ExampleBase.java:277)
	at com.ardor3d.framework.lwjgl3.Lwjgl3CanvasRenderer.draw(Lwjgl3CanvasRenderer.java:122)
	at com.ardor3d.framework.lwjgl3.GLFWCanvas.draw(GLFWCanvas.java:179)
	at com.ardor3d.framework.FrameHandler.updateFrame(FrameHandler.java:91)
	at com.ardor3d.example.ExampleBase.run(ExampleBase.java:149)
	at com.ardor3d.example.ExampleBase.start(ExampleBase.java:406)
	at com.ardor3d.example.terrain.ArrayTerrainExample.main(ArrayTerrainExample.java:78)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant