Editor: jMonkeyBuilder

Sorry I do not, I can try looking for one

Is it enough for you?

1 Like

Awesome!

http://glslsandbox.com

Hmm, when working with panda3d, this resource helped me. Maybe jme3 it will be useful.

I’ve tried running on MacOS:

java -XstartOnFirstThread -jar jme3-spaceshift-editor.jar

then nothing happens. I’ve already bypassed security to allow the application to run. When I ran it without the start on first thread I got this:

INFO 17:46:20:787 ClassPathScanner: scanned for 780 classes and 203 resources.
Jun 26, 2017 5:46:21 PM com.jme3.app.LegacyApplication handleError
SEVERE: Uncaught exception thrown in Thread[LWJGL Render,5,LWJGL]
java.lang.ExceptionInInitializerError
	at org.lwjgl.glfw.GLFW.glfwPollEvents(GLFW.java:2519)
	at com.jme3.system.lwjgl.LwjglWindow.runLoop(LwjglWindow.java:570)
	at com.jme3.system.lwjgl.LwjglWindow.run(LwjglWindow.java:607)
	at com.jme3.system.lwjgl.LwjglWindow.create(LwjglWindow.java:445)
	at com.jme3x.jfx.injfx.JmeOffscreenSurfaceContext.create(JmeOffscreenSurfaceContext.java:211)
	at com.jme3.app.LegacyApplication.start(LegacyApplication.java:463)
	at com.jme3.app.LegacyApplication.start(LegacyApplication.java:424)
	at com.jme3.app.SimpleApplication.start(SimpleApplication.java:125)
	at com.ss.editor.Editor.start(Unknown Source)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalStateException: Please run the JVM with -XstartOnFirstThread and make sure a window toolkit other than GLFW (e.g. AWT or JavaFX) is not initialized.
	at org.lwjgl.glfw.EventLoop$OnScreen.<clinit>(EventLoop.java:63)
	... 10 more

Is there a specific way to run the editor straight from the jar?

I don’t support macos becauseI don’t have it to test the editor :frowning:

If you want, we can work on this problem together, you can ping me in Google Hangouts :wink:

Hi, @javasabr! It’s a nice editor you’ve made. Unfortunately I’m going through a problem trying to make it work on Ubuntu (17.04 Zesty Zapus) . It opens normally, but when I try to open an asset folder it freezes and closes.

This is the terminal output:

INFO 17:26:03:104 Editor: OS: Ubuntu 17.04 (zesty)
INFO 17:26:03:129 ExecutorManager: initialized.
INFO 17:26:03:249 ClassPathScanner: scanning /home/fba/Projects/jME3-SpaceShift-Editor/build/dist/libs/jME/jme3-core-3.2.0.jar
INFO 17:26:03:536 ClassPathScanner: scanning /home/fba/Projects/jME3-SpaceShift-Editor/build/dist/libs/jME/jme3-effects-3.2.0.jar
INFO 17:26:03:559 ClassPathScanner: scanned for 780 classes and 203 resources.
log4j:WARN No appenders could be found for logger (org.apache.http.impl.conn.PoolingHttpClientConnectionManager).
log4j:WARN Please initialize the log4j system properly.
jun 27, 2017 5:26:07 PM com.jme3.material.Material checkSetParam
ADVERTÊNCIA: Material parameter being set: Texture with type Texture2D doesn't match definition types TextureCubeMap
jun 27, 2017 5:26:07 PM com.jme3.material.Material setTextureParam
WARNING: The texture graphics/textures/sky/studio.hdr has linear color space, but the material parameter Texture specifies no color space requirement, this may lead to unexpected behavior.
Check if the image was not set to another material parameter with a linear color space, or that you did not set the ColorSpace to Linear using texture.getImage.setColorSpace().
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007fd3019f9e90, pid=5125, tid=0x00007fd2a0689700
#
# JRE version: OpenJDK Runtime Environment (8.0_131-b11) (build 1.8.0_131-8u131-b11-0ubuntu1.17.04.1-b11)
# Java VM: OpenJDK 64-Bit Server VM (25.131-b11 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  [libpthread.so.0+0x9e90]  pthread_mutex_lock+0x0
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/fba/Projects/jME3-SpaceShift-Editor/build/dist/hs_err_pid5125.log
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

It was built with OpenJDK version 1.8.0_131, OpenJFX 8.0.111 and Ant 1.9.8.
Any ideas of what is going on here?

Do you build it yourself? I work on ubuntu 17.04 and I use only oracle JDK from the PPA:

but from time to time I have the error as well :frowning:
by the way: https://bitbucket.org/JavaSabr/jme3-spaceshift-editor/issues/130/doesnt-work

That was me with the doesn’t work issue. I haven’t had a chance to test it with the manually created file you suggested yet.

Mithrin

Yes, I built it myself using ant on the build-native.xml file. I tried some debugging and found that the error occurs on the following line of the class OpenAssetAction:

54        final File folder = chooser.showDialog(scene.getWindow());

Unfortunately I can’t say why it happens since scene.getWindow() does not return null.

It works with the changes on the prefs.xml file though. Thank you!

It’s a bug on JVM side, I created a bug report to Oracle, but they could’nt reproduce :frowning:

ver. 0.9.9
-Implemented integration with built-in of jME3 particle system.
-Added to send anonymous google analytics only about start/close application events if a user disable analytics.
-Added an action to create a new material definition with a fragment and a vertex shader.
-Updated UI.
-Added handling shader errors to avoid application crashes, so now a user can edit shaders without worrying about an application crash.
-Implemented autorefrsh opened material in the Material Editor when a user change a material defintion in the MD Editor or shaders in the GLSL editor.
-Updated all dialogs.
-Fixed some bugs.

2 Likes

I need help with testing the build on MacOS :slight_smile:
https://yadi.sk/d/itHS2viy3Ka29Z

I hope it’s not too much to ask, but would it be possible to add maybe some kind of code completion for j3md or shader files?

I write glsl code in intellij idea with a glsl plugin. :slight_smile:

1 Like

Shortly tested on my MacBook and it seems to work. Did also import an asset and played a bit with your editor. Seems this could be my missing link :wink:

1 Like

Cool. thanks :slight_smile:

Quick questions regarding custom classes, so the classpath folder that contains the libraries means the path where the custom classes (in form of java files) are located right?
If so, I seem to be getting an error stating that the class could not be found:

WARNING 20:29:43:051 CreateCustomControlDialog: java.lang.RuntimeException: Can't create a control of the class menuGrassControl
	at com.ss.editor.ui.control.model.tree.dialog.CreateCustomControlDialog.processOk(Unknown Source)
	at com.ss.editor.ui.dialog.AbstractSimpleEditorDialog.safeProcessOk(Unknown Source)
	at com.ss.editor.ui.dialog.AbstractSimpleEditorDialog.lambda$createActions$0(Unknown Source)
	at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86)
	at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238)
	at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191)
	at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
	at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:49)
	at javafx.event.Event.fireEvent(Event.java:198)
	at javafx.scene.Node.fireEvent(Node.java:8413)
	at javafx.scene.control.Button.fire(Button.java:185)
	at com.sun.javafx.scene.control.behavior.ButtonBehavior.mouseReleased(ButtonBehavior.java:182)
	at com.sun.javafx.scene.control.skin.BehaviorSkinBase$1.handle(BehaviorSkinBase.java:96)
	at com.sun.javafx.scene.control.skin.BehaviorSkinBase$1.handle(BehaviorSkinBase.java:89)
	at com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(CompositeEventHandler.java:218)
	at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:80)
	at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238)
	at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191)
	at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
	at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54)
	at javafx.event.Event.fireEvent(Event.java:198)
	at javafx.scene.Scene$MouseHandler.process(Scene.java:3757)
	at javafx.scene.Scene$MouseHandler.access$1500(Scene.java:3485)
	at javafx.scene.Scene.impl_processMouseEvent(Scene.java:1762)
	at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:2494)
	at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:380)
	at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:294)
	at java.security.AccessController.doPrivileged(Native Method)
	at com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$354(GlassViewEventHandler.java:416)
	at com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(QuantumToolkit.java:389)
	at com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(GlassViewEventHandler.java:415)
	at com.sun.glass.ui.View.handleMouseEvent(View.java:555)
	at com.sun.glass.ui.View.notifyMouse(View.java:937)
	at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
	at com.sun.glass.ui.win.WinApplication.lambda$null$148(WinApplication.java:191)
	at java.lang.Thread.run(Thread.java:745)

I have Spaceshift editor classpath pointing to the path where my custom java files are located.