The jMonkeyEngine3 Software Development Kit based on Netbeans

MeFisto94 3c0e0194d4 Readme: fix small formatting issue 8 лет назад
BasicGameTemplate 531ce0a59a Fix source version 9 лет назад
JME3TestsTemplate 73b5b002a9 sdk platform: update build-impl from the netbeans harness 10 лет назад
JME3TestsTemplateAndroid 1c3359d453 sdk: change javac source / target to 1.6 10 лет назад
ant-jme 1c3359d453 sdk: change javac source / target to 1.6 10 лет назад
ant-lib 001396958a - fix wiki download ant scripts 10 лет назад
branding 6e3f045f43 Prepare the SDK for alpha5. 9 лет назад
debscripts fbeb17e033 move sdk to trunk 14 лет назад
docs 6c5f39bdad Setup nbm signing by providing a new keystore. 9 лет назад
gradle d659e7b787 Adding a small Digest Library providing easy access to MD5, SHA1 and SHA256 Hashes 9 лет назад
harness-override da770aab5b Minor spelling/explaining and formatting fixes 9 лет назад
jdks 8d243a45d7 Fixes #109 - Adopt Windows x64 JDK extraction to the new installer 8 лет назад
jme3-android 03998b0b34 Updating the SDK to use Netbeans 8.1, I recommend a complete re-cloning or at least delete netbeans/ and nbproject/private/ 9 лет назад
jme3-angelfont 03998b0b34 Updating the SDK to use Netbeans 8.1, I recommend a complete re-cloning or at least delete netbeans/ and nbproject/private/ 9 лет назад
jme3-assetpack-support ea6fd29b50 Fixed some Deprecation Warnings by moving from `ProgressHandleFactory` to `ProgressHandle`. 9 лет назад
jme3-blender 18c4bff0e0 Implemented rudimentary XBuf Support. 9 лет назад
jme3-cinematics 03998b0b34 Updating the SDK to use Netbeans 8.1, I recommend a complete re-cloning or at least delete netbeans/ and nbproject/private/ 9 лет назад
jme3-code-check 2b2b7d16c9 Moved last strings to bundle.properties 9 лет назад
jme3-codepalette 03998b0b34 Updating the SDK to use Netbeans 8.1, I recommend a complete re-cloning or at least delete netbeans/ and nbproject/private/ 9 лет назад
jme3-core b8769e6ebe Update ExternalChangeScanner.java 8 лет назад
jme3-core-baselibs 5476a5124b Stop tracking generated files 9 лет назад
jme3-core-libraries 5476a5124b Stop tracking generated files 9 лет назад
jme3-core-updatecenters ab11f06301 Travis/ANT: Be more silent 9 лет назад
jme3-dark-laf 6bff07199e Fixes #75 - DarkMonkey: We can now change the Diff-Colors and the User can adjust them manually using the Fonts & Colors Dialog. Also see 1e92c2f 9 лет назад
jme3-desktop-executables ddf0d5c279 Fixes #40 (Allows to specify a JRE Version in case of trouble). Also added a 3-times retry system to JreDownloader in case of a weak Internet Connection 9 лет назад
jme3-documentation ae44951cac Update local.html 8 лет назад
jme3-gui 49c1288857 Fix nifty schema location 9 лет назад
jme3-ios 285f3857de iOS: Set openGL Context in AppDelegate to prevent Crashes. 9 лет назад
jme3-lwjgl-applet 03998b0b34 Updating the SDK to use Netbeans 8.1, I recommend a complete re-cloning or at least delete netbeans/ and nbproject/private/ 9 лет назад
jme3-materialeditor 4582e4b0fe Small fix for when a MatDef file is faulty: Prevent a NPE 9 лет назад
jme3-model-importer 67b1531131 Fixed some warnings, added @Overrides, removed unused imports and such 9 лет назад
jme3-navmesh-gen 67b1531131 Fixed some warnings, added @Overrides, removed unused imports and such 9 лет назад
jme3-obfuscate 0f584dbb3a Fixes #87 - Update to Proguard 5.2.1 9 лет назад
jme3-ogretools f2c6840eb6 Updated the Blender2Ogre Script from 0.5.8 to 0.6.0 (most recent) so it works with Blender 2.77 9 лет назад
jme3-ogrexml 03998b0b34 Updating the SDK to use Netbeans 8.1, I recommend a complete re-cloning or at least delete netbeans/ and nbproject/private/ 9 лет назад
jme3-project-baselibs 5476a5124b Stop tracking generated files 9 лет назад
jme3-project-libraries e1a590e6f8 sdk plugins: fix link to jME3 website 10 лет назад
jme3-project-testdata e1a590e6f8 sdk plugins: fix link to jME3 website 10 лет назад
jme3-scenecomposer abc76ca018 Fixes #66 - When the Selected Node wasn't the rootNode, it didn't get updated in SceneExplorer. TODO: Fix jmeRootNode's Recursiveness.. 9 лет назад
jme3-templates 970463a0d8 Fixes #31 - Changing the Template from jbullet to bullet-native, stripping off Nifty GUI and Blender libs (Blender is commonly misused). 9 лет назад
jme3-terrain-editor db97b8a16a terrain : fix #64, level tool not working when the terrain isn't centered at (0,0,0) 9 лет назад
jme3-tests-template 03998b0b34 Updating the SDK to use Netbeans 8.1, I recommend a complete re-cloning or at least delete netbeans/ and nbproject/private/ 9 лет назад
jme3-texture-editor 6e0419b60c texture editor : removed warnings 9 лет назад
jme3-vehicle-creator ea6fd29b50 Fixed some Deprecation Warnings by moving from `ProgressHandleFactory` to `ProgressHandle`. 9 лет назад
jme3-wavefront 03998b0b34 Updating the SDK to use Netbeans 8.1, I recommend a complete re-cloning or at least delete netbeans/ and nbproject/private/ 9 лет назад
jme3-welcome-screen ae68d1831c Partially Fixed the Welcome Screen, It might fail depending on your SSL Cert Configuration. 9 лет назад
lib 4b08593f66 Fixes #61, Maybe Fixes #53 and others: Re-Added Missing JBullet Runtime Dependencies 9 лет назад
nbi 80f2257763 Blender: Update sub folder to adopt to blender foundation's packaging changes for Mac OS X 8 лет назад
nbproject d972420635 travis: add www-updater key 9 лет назад
resources 10b58811a4 Changed the About Screen to use less Scrollbars and added change instructions to resources/ 9 лет назад
.gitignore a7d0563956 iOS: Added a way to simplify the depedency-download in order to build avian and also patch the jvm to work around build errors. i386 is commented out since it doesn't compile on Xcode 6 and is only used for the iOS Simulator on which you could also use x86_64. 9 лет назад
.travis.yml ca9ab2621c Travis: Fix Errors due to wrong quoting. 8 лет назад
build.gradle 7b814fb81e Update SDK Engine Version to v3.1.0-stable 8 лет назад
build.xml ede73f46b5 Build: Separated Mac OSX and Platform Independant into a third build to reduce the build time of the x64 build. 8 лет назад
build_engine.sh 7b814fb81e Update SDK Engine Version to v3.1.0-stable 8 лет назад
gradle.properties bfd2ed031f Update to Netbeans 8.2 final 8 лет назад
gradlew bdd171c694 Upgrading from Gradle 2.2-1 to 2.11 9 лет назад
gradlew.bat bdd171c694 Upgrading from Gradle 2.2-1 to 2.11 9 лет назад
jmonkeyplatform.icns 99bae6200e - update SDK OSX icon 10 лет назад
jmonkeyplatform.png 522fd1ed8b sdk: use a high resolution icon 10 лет назад
license-jme.txt 970c31b207 Updating License File 9 лет назад
licenses-sdk.txt 0aa4dc7c9b Fixes #55 Old Installer License Year. 9 лет назад
readme.md 3c0e0194d4 Readme: fix small formatting issue 8 лет назад
version.gradle 43aeb32bfc Try to fix stable builds: They also carry the nbmVersion as opposed to our design to enable comparison by netbeans 9 лет назад

readme.md

jMonkeyEngine Software Development Kit (SDK) Build Status

Welcome to the repository of the jMonkeyEngine Software Development Kit (SDK). Our SDK (or jmonkeyplatform) is based on the Netbeans IDE but includes additional features like:

  • A Scene Editor (SceneExplorer: Preview your scene, adjust all positions, add Controls and AppStates (WYSIWYG) and then just save the scene)
  • A Material Editor
  • A Filter Editor (combine multiple filters and just load them in-game)
  • Bundled JDK for each platform (so you don't need to install java first)
  • Bundled Blender (so you can start 3d modelling and also use it's import capabilities) and many more!

It is important to know that the SDK is not coupled with the engine itself, so if you have issues which are unrelated to the IDE, report them here. This however also means, that the SDK can have a different pace than the engine (at the time of writing, the SDK is on 3.1.0-stable whereas the engine team is already working on 3.2) but you can nonetheless work on a different engine version than the one which is bundled.

Getting Started / Downloading the SDK

Just have a look at our releases section. There you can download the version you desire. The SDK will generally follow the convention that it's version number is lined up with the matching engine version plus some suffixes for different SDK releases on the same engine version.

There are multiple files from which you can choose:
You can take the platform agnostic jmonkeyplatform.zip which contains the full SDK able to be run on "any" (X86/x86_64) platform (Windows, Mac OS, Linux) however it lacks the jdk as well as blender.
Thus the prefered download is jmonkeyplatform-windows-x64.exe which essentially is jmonkeyplatform.zip and the correct version of the JDK and Blender (hence the ~250MiB size increase).
If you don't know whether your system is 64 bits (x64) or 32 bits (x86), you can type uname -i on Linux or look into the system informations (right click on Computer->Properties) on Windows.

Building the SDK

Building the SDK is an easy process basically, but it depends on what kind of distribution you want to build. You also have to know that the build process changes from time to time, so have a look at the .travis.yml file, or related, you will see how we build our releases then.

Note: Currently, the SDK has to build the engine on it's own, because not all needed dependencies are in mavenCentral/jCenter. Thus you have to call build_engine.sh first on a Linux System, Inside your Windows-Git-Shell or you can manually checkout the jMonkeyEngine repository and then invoke gradlew.bat install. This will add all jMonkeyEngine Libraries into your local maven "server".

Technically the gradle task buildSdk is the main task which builds the sdk (Invoking ./gradlew buildSdk or gradlew.bat buildSdk on Windows).

If you just want to run the SDK on your machine:

call `./gradlew run` (`gradlew.bat run`), which internally calls `buildSdk` and then uses `ant` to run the SDK.

If you want to build the platform agnostic zip:

call `./gradlew buildSdk` and then you have the file in `dist/jmonkeyplatform.zip`  

If you want to build the platform installers (like we do):

call `./gradlew buildSdk` and then `ant build-installers`
You have to install ant for this to work (for linux consult the internet, for mac os look into homebrew)

If you want to build the platform installers (On Windows -> without having ant):

See above. You can bypass ant by declaring a gradle task, just like it has been done for run. There, the gradle included ant will be used).
Alternatively you can launch netbeans in `netbeans/`, open the SDK as Netbeans Project Collection and select __package as__:
![Package as...](http://i.imgur.com/5V2uBHf.png)

If you want to debug the SDK inside an IDE:

See above. You want to open the SDK as Netbeans Project from within Netbeans (you can use the nb in `netbeans/`) and you can then treat it as regular project with the difference that there are several subproject.

A note about the netbeans/ folder: To save bandwidth buildSdk downloads netbeans once to said folder and uses it over and over again. Even when the download URL is changed (i.e. when you update the netbeans version), you have to delete the netbeans folder and remove it from any cache (Travis!), so it can be reloaded.

Developing/Contributing

First of all, I suggest you to take a look at docs/. Those docs are a loose collection of things I came across during development, but they prevent you from re-doing the same experiences. Other than that, Netbeans Platform is your google keyword for any NB related issues. Basically the only tricky thing is how we handle custom entries in the SceneExplorer. This is called the Netbeans Nodes API and is somewhat unintuitive. Just take a look at the Motion Event Pull Request, which should've been added around March 2016, there you can see what was needed to add MotionEvents to the SDK.

Other than that, we are more than happy to help, even if your addition is incomplete. Make sure you use the Netbeans formatting, obvious variable naming and commented and especially documented code, though. Before you open an issue, make sure that it is not an engine bug, but a real sdk bug. If you are uncertain whether it is a real bug or misuse, you can either open an issue or ask on the hub using the Troubleshooting | jmonkeyplatform category.

Issues when building

Could not find jme3.1.0-stable :

When you occur this issue, you have to go back to the engine build step and see how the engine is called. Technically the engine version is collected out from git tags, or called SNAPSHOT. Then there are cases where this recognition fails. For example when the SDK has a tag but the engine is snapshot. Then take a look at `build.gradle` in the sdk repo. It contains a field called `ext.jmeVersion` or something, where you can specify the version.

Could not find jme3-jbullet :

jBullet is not part of jCenter, which means you forgot to build the engine first. See above.