Nifty-GUI and JME2

Home Forum Troubleshooting GUI Nifty-GUI and JME2

This topic contains 10 replies, has 3 voices, and was last updated by  Tumaini 2 years, 10 months ago.

Viewing 11 posts - 1 through 11 (of 11 total)
  • Author
    Posts
  • #23470

    Tumaini
    84p
    Member

    I recently returned to development on a JME2-based game, in the process of converting from BUI to Nifty-GUI.
    After a number of problems, I found the repository for Nifty-GUI had moved to git, so I found it and built some snapshots.
    I couldn’t find the JME-renderer however, so I kept the old version of that from the SVN repo.
    Unfortunately, some things had changed in Nifty, so there were a few errors that needed fixing (mostly related to ResourceLoader being removed).

    After some searching, I found out the JME2 is no longer supported by Nifty, so I was put before a choice:
    * switch to the LWJGL renderer, figuring out how to do that
    * stick with the old JME2 renderer and figure out how to fix the errors
    * switch to JME3
    * switch to another GUI library (again)

    The best option would probably be to switch to JME3, but last I checked it was entirely based on shaders and so wouldn’t work on computers with OpenGL < 2, which we feel is an important thing, as we don't care that much about fancy graphics, but want to reach out to as many people as possible and also on energy-efficient hardware.

    So, the question this post asks really, would probably be if JME3 still only supports OpenGL >= 2 and if Nifty-GUI with the LWJGL renderer works well with JME2?

    #161802

    Normen Hansen
    2792p
    Keymaster

    You can enable OpenGL1 for jme3 applications too.

    #161803

    Tumaini
    84p
    Member

    Thanks, that’s great news, much more than I hoped for!
    Does it work well so far? If so, I’ll definitely switch to JME3 at once!
    How do you set the application to only use OpenGL 1 functionality?

    Edit: Well, I got the SVN source but stumbled onto some problems.
    Does JME3 required Java 1.5? It seems ZipEntry.CENSIG (found in com.jme3.asset.plugins.HttpZipLocator) et al are not present in Java 1.6 and Java 1.7.
    How come JME3 is using such an old Java version?
    Perhaps the HttpZipLocator isn’t required for most applications (I’m not sure what it’s for)?
    The other problem was that the SVN repository contains both bullet and jbullet src-folders, so those classes are defined twice (easy to fix by removing one from the build path in Eclipse).

    #161804

    Momoko_Fan
    574p
    Keymaster
    #161805

    Tumaini
    84p
    Member

    Yes, thanks, I found those references as well, so I’m confounded at why my libraries doesn’t seem to contain it.
    It’s no fault of JME’s anyway, so I’ll look elsewhere for that.

    About setting JME3 up to support OpenGL 1, is there a guide or any hints towards that?

    #161806

    Normen Hansen
    2792p
    Keymaster

    Java 1.5 is the baseline version for jME3. In professional contexts even 1.4 is used in areas still, so having compatibility levels as low as possible is always desired..

    #161807

    Tumaini
    84p
    Member

    Yes, definitely, however Java 1.5 is not in the Ubuntu repositories, so I would rather use 1.6 or 1.7.
    Well, I found the problem! Eclipse was checking the files against android.jar instead of the project JRE (for some strange reason). Once I removed android.jar from the build path, Eclipse found the correct files.

    Now, about setting JME3 up to support OpenGL 1, is there a guide or any hints towards that?

    #161808

    Normen Hansen
    2792p
    Keymaster

    Yes there are

    #161809

    Tumaini
    84p
    Member

    Great!
    Would you mind pointing me to them? ;)
    I know I can use renderer.getCaps() to get the general capabilities of the card, but can I just “shut off” OpenGL 2 features in a simple way or do I have to go through the engine to see what parts use what features and what features are supported by OpenGL 1 or not?

    #161810

    Normen Hansen
    2792p
    Keymaster

    OpenGL1 just supports textured lit models really. I’d have to do the wiki search for “OpenGL1″ myself to fish out the link for you, why don’t you just do it ;)

    #161811

    Tumaini
    84p
    Member

    Thanks, I found it (I needed to search without a space between “opengl” and “1”)!
    That’s a great and easy way to do it, so I’ll just get right to it.
    For anyone who’s wondering, the information on setting OpenGL 1 compatibility mode is here.

Viewing 11 posts - 1 through 11 (of 11 total)

You must be logged in to reply to this topic.