diff --git a/build.gradle b/build.gradle new file mode 100644 index 000000000..50365e8b0 --- /dev/null +++ b/build.gradle @@ -0,0 +1,89 @@ +import org.gradle.api.artifacts.* + +apply plugin: 'base' // To add "clean" task to the root project. +//apply plugin: 'java-library-distribution' + +// This is applied to all sub projects +subprojects { + // Don't add to native builds + // if(!project.name.endsWith('native')){ + apply from: rootProject.file('common.gradle') + // } +} + +task(run, dependsOn: ':jme3-examples:build', type: JavaExec) { + main = 'jme3test.TestChooser' + classpath = files(subprojects.collect {project -> + project.sourceSets*.compileClasspath}) +// classpath = sourceSets.main.runtimeClasspath +// args 'mrhaki' +// systemProperty 'simple.message', 'Hello ' +} + +defaultTasks 'run' + +task libDist(dependsOn: subprojects.build) << { +// description 'Builds and copies the engine binaries, sources and javadoc to build/libDist' + File libFolder = mkdir("$buildDir/libDist/lib") + File sourceFolder = mkdir("$buildDir/libDist/sources") + File javadocFolder = mkdir("$buildDir/libDist/javadoc") + subprojects.each {project -> + if(project.ext.mainClass == ''){ + project.tasks.withType(Jar).each {archiveTask -> + if(archiveTask.classifier == "sources"){ + copy { + from archiveTask.archivePath + into sourceFolder + } + } else if(archiveTask.classifier == "javadoc"){ + copy { + from archiveTask.archivePath + into javadocFolder + } + } else{ + copy { + from archiveTask.archivePath + into libFolder + } + } + } + } + } +} + +task copyLibs(type: Copy){ +// description 'Copies the engine dependencies to build/libDist' + from { + subprojects*.configurations*.compile*.copyRecursive({ !(it instanceof ProjectDependency); })*.resolve() + } + + into "$buildDir/libDist/lib-ext" //buildDir.path + '/' + libsDirName + '/lib' +} + +task dist{ + description 'Creates a distribution of all jme3 binaries, sources, javadoc and external libraries under build/libDist' +} +dist.dependsOn libDist +dist.dependsOn copyLibs + +task mergedJavadoc(type: Javadoc, description: 'Creates Javadoc from all the projects.') { + title = 'All modules' + destinationDir = new File(project.buildDir, 'merged-javadoc') + + // Note: The closures below are executed lazily. + source subprojects.collect {project -> + project.sourceSets*.allJava + } + classpath = files(subprojects.collect {project -> + project.sourceSets*.compileClasspath}) + // source { + // subprojects*.sourceSets*.main*.allSource + // } + // classpath.from { + // subprojects*.configurations*.compile*.copyRecursive({ !(it instanceof ProjectDependency); })*.resolve() + // } +} + +task wrapper(type: Wrapper, description: 'Creates and deploys the Gradle wrapper to the current directory.') { + gradleVersion = '1.10' +} diff --git a/build.xml b/build.xml deleted file mode 100644 index fa027898c..000000000 --- a/build.xml +++ /dev/null @@ -1,147 +0,0 @@ - - - - Builds, tests, and runs the jMonkeyEngine3 SDK. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/common.gradle b/common.gradle new file mode 100644 index 000000000..2f1a81247 --- /dev/null +++ b/common.gradle @@ -0,0 +1,84 @@ +// +// This file is to be applied to every subproject. +// + +apply plugin: 'java' +apply plugin: 'maven' + +//String jmeVersion = '3.0.10' +//String jmeVersion = rootProject.version; + +String mavenGroupId = 'com.jme3' +String mavenVersion = jmeVersion + '-SNAPSHOT' + +sourceCompatibility = '1.5' +[compileJava, compileTestJava]*.options*.encoding = 'UTF-8' + +repositories { + mavenCentral(); + maven{ + url "http://nifty-gui.sourceforge.net/nifty-maven-repo" + } + // You may define additional repositories, or even remove "mavenCentral()". + // Read more about repositories here: + // http://www.gradle.org/docs/current/userguide/dependency_management.html#sec:repositories +} + +dependencies { + // Adding dependencies here will add the dependencies to each subproject. + testCompile group: 'junit', name: 'junit', version: '4.10' +} + +String mavenArtifactId = name + +group = mavenGroupId +version = mavenVersion + +//jar.doFirst{ +// manifest { +// attributes('Manifest-Version' : '1.0', +// 'Created-By' : vendor, +// 'Specification-Title' : appName, +// 'Specification-Version' : version, +// 'Specification-Vendor' : vendor, +// 'Implementation-Title' : appName, +// 'Implementation-Version' : version, +// 'Implementation-Vendor' : vendor, +// 'Main-Class' : getProperty('mainClass'), +// 'Class-Path' : configurations.compile.collect { 'lib/' + it.getName() }.join(' ') +// ) +// } +//} + +task sourcesJar(type: Jar, dependsOn: classes, description: 'Creates a jar from the source files.') { + classifier = 'sources' + from sourceSets*.allSource +} + +task javadocJar(type: Jar, dependsOn: javadoc, description: 'Creates a jar from the javadoc files.') { + classifier = 'javadoc' + from javadoc.destinationDir +} + +artifacts { + archives jar + archives sourcesJar +// archives javadocJar +} + +configure(install.repositories.mavenInstaller) { + pom.project { + groupId = mavenGroupId + artifactId = mavenArtifactId + version = mavenVersion + } +} + +task createFolders(description: 'Creates the source folders if they do not exist.') doLast { +// sourceSets*.allSource*.srcDirs*.each { File srcDir -> +// if (!srcDir.isDirectory()) { +// println "Creating source folder: ${srcDir}" +// srcDir.mkdirs() +// } +// } +} diff --git a/engine/MANIFEST.MF b/engine/MANIFEST.MF deleted file mode 100644 index f6d6f5653..000000000 --- a/engine/MANIFEST.MF +++ /dev/null @@ -1 +0,0 @@ -X-Comment: jMonkeyEngine 3.0 \ No newline at end of file diff --git a/engine/TestChooser.exe b/engine/TestChooser.exe deleted file mode 100644 index 00f0161d1..000000000 Binary files a/engine/TestChooser.exe and /dev/null differ diff --git a/engine/build.xml b/engine/build.xml deleted file mode 100644 index ca0388c8b..000000000 --- a/engine/build.xml +++ /dev/null @@ -1,669 +0,0 @@ - - - - Builds, tests, and runs the jMonkeyEngine3 core engine. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Compile Core - - - - - - - - - Compile Effects - - - - - - Compile Networking - - - - - - Compile Plugins - - - - - - - Compile Jogg - - - - - - Compile Desktop - - - - - - Compile Blender Loader - - - - - - Compile Terrain - - - - - - Compile jBullet - - - - - - - Compile Bullet - - - - - - - Compile Nifty - - - - - - Compile Lwjgl - - - - - - Compile JOGL - - - - - - Compile Android - - - - - - Compile iOS - - - - - - Compile Tests - - - - - - - - Building Engine JAR files.. - - - - - - - - - - - - - - - - - Building TestData JAR file.. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Moving optional packages - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Clearing old files - - - - - - - - Copying jMonkeyPlatform jME3 libs - - - - - - - Copying jMonkeyPlatform external libraries - - - - - Copying Project jME3 libs - - - - - - Copying Project external libraries - - - - - - - Copying Test Project Data - - - - - Copying Javadoc - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Copying Test Examples - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/engine/bullet-native-build.txt b/engine/bullet-native-build.txt deleted file mode 100644 index 2112ec36f..000000000 --- a/engine/bullet-native-build.txt +++ /dev/null @@ -1,180 +0,0 @@ -*********************************** -* Build info for bulletjme * -* (c) 2011 Normen Hansen * -*********************************** - -This document outlines the process of building bullet-jme on different platforms. -Since bulletjme is a native java library and bullet gets included statically, -building requires downloading and building the bullet sources. - -Note that you do need to have CMake and a GCC compiler installed as well as -the Android NDK in case you want to build for android too. - ------------------------------------ -Requirements ------------------------------------ -ALL PLATFORMS -- Java SDK 1.5+: http://java.sun.com -- Apache ANT: http://ant.apache.org (included in most Java IDEs) -- Android NDK (optional): http://developer.android.com/sdk/ndk/index.html - -WINDOWS -- Install mingw-w64 GNU C++ Compiler: http://mingw-w64.sourceforge.net/ -- Install CMake: http://www.cmake.org/ - -Mac OSX -- Install XCode: http://developer.apple.com/ (or via the App Store) -- Install the "Command Line Tools" from inside XCode -- Install http://www.macports.org -- Install cmake via macports, in the Terminal type: -> sudo port install cmake - -LINUX -- Install cmake (and gcc if not available) via your package manager of choice, e.g. -> sudo apt-get install cmake - ------------------------------------ -Building ------------------------------------ -The build script in this directory does everything needed to download and compile -bullet and the jme-bullet library, you only need to call the appropriate ant target, -via your IDE or command line: - -> ant build-bullet-natives - -..and all of the steps below are executed automatically, including the download. - -You can alter options in the "nbproject/bullet.properties" file, such as the used -bullet version, native compilation options (see below), path to Android NDK etc. - ------------------------------------ -Running ------------------------------------ -The resulting jMonkeyEngine3.jar containing the tests will automatically use the -jME3-jbullet.jar or jME3-bullet.jar, depending on which is available in the libs directory. - -A convenience target exists to run the engine tests using the native bullet library: - -> ant run-bullet-native - ------------------------------------ -Altering the native build process ------------------------------------ -bullet-jme uses cpptasks to compile native code as well as the Android NDK. - -If you get compilation errors, try setting "native.java.include" in the build.properties file to your -JDK include directory, e.g. /opt/java/include or "c:\Program Files\Java\jdk1.6.0_20\include". - -To change the used compiler, edit the "native.platform.compiler" entry in the -"build.properties" file. The following c++ compilers work with cpptasks: - -gcc GCC C++ compiler -g++ GCC C++ compiler -c++ GCC C++ compiler -msvc Microsoft Visual C++ -bcc Borland C++ Compiler -icl Intel C++ compiler for Windows (IA-32) -ecl Intel C++ compiler for Windows (IA-64) -icc Intel C++ compiler for Linux (IA-32) -ecc Intel C++ compiler for Linux (IA-64) -CC Sun ONE C++ compiler -aCC HP aC++ C++ Compiler -wcl OpenWatcom C/C++ compiler - -In the "nbproject" folder you can find "build-native-platform.xml" files containing the commands -to compile bullet-jme on different platforms. If you want to alter the process, -you can copy and modify one of the files and import it in the "build.xml" file instead -of the old one. - ------------------------------------ -Netbeans Project ------------------------------------ -The engine NetBeans project also includes the native sources and a build configuration -entry to build the binary and run the tests with it. - -To have correct syntax highlighting in .cpp/.h files: - -- in Netbeans Settings -> C/C++ -> Code Assistance -> C++ - - add bullet-2.79/src as include directories for C++ - - add JAVA_HOME/include as include directories for C - - - -*********************************** -* Building bullet (optional) * -*********************************** - ------------------------------------ -General info ------------------------------------ -Note that the compilation of bullet should not produce dll / so / dylib files -but static *.a libraries which can later be compiled into the binary of bullet-jme. - ------------------------------------ -Downloading and extracting bullet ------------------------------------ -Requirements: -- Bullet source: http://bullet.googlecode.com/ - -Extract bullet source and build bullet (see below) - ------------------------------------ -Building on Mac OSX ------------------------------------ -Requirements: -- Apple Developer tools: http://developer.apple.com/ -- CMake: http://www.cmake.org/ (or via http://www.macports.org) - -Commands: -> cd bullet-trunk -> cmake -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON \ - -DCMAKE_OSX_ARCHITECTURES='ppc;i386;x86_64' \ - -DBUILD_EXTRAS=off -DBUILD_DEMOS=off -DCMAKE_BUILD_TYPE=Release -> make - ------------------------------------ -Building on WINDOWS (MinGW/GCC, Recommended) ------------------------------------ -Requirements: -- GNU C++ Compiler: http://mingw-w64.sourceforge.net/ - http://sourceforge.net/projects/mingwbuilds/ -- CMake: http://www.cmake.org/ - -NOTE: At this time compiling with GCC 4.8.1 fails with a segmentation fault. -You must use an older GCC version like 4.7.3. -The second link above (mingwbuilds) offers snapshots of MinGW for GCC 4.7.3. - -Commands: -> cd bullet-trunk -> cmake . -DBUILD_SHARED_LIBS=OFF -DBUILD_DEMOS:BOOL=OFF -DBUILD_EXTRAS:BOOL=OFF -DCMAKE_BUILD_TYPE=Release . -G "MinGW Makefiles" -> mingw32-make - ------------------------------------ -Building on WINDOWS (VisualStudio, untested) ------------------------------------ -Requirements: -- Microsoft Visual Studio http://msdn.microsoft.com/ - -Bullet comes with autogenerated Project Files for Microsoft Visual Studio 6, 7, 7.1 and 8. -The main Workspace/Solution is located in Bullet/msvc/8/wksbullet.sln (replace 8 with your version). - -Build the project to create static libraries. - - ------------------------------------ -Building bullet on LINUX ------------------------------------ -Requirements: -- Gnu C++ Compiler: http://gcc.gnu.org/ -- CMake: http://www.cmake.org/ (or via your package manager of choice) - -Commands: -> cd bullet-trunk -> cmake -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON -DCMAKE_C_FLAGS="-fPIC" -DCMAKE_CXX_FLAGS="-fPIC"\ - -DBUILD_EXTRAS=off -DBUILD_DEMOS=off -DCMAKE_BUILD_TYPE=Release -> make - ------------------------------------ -More info on building bullet ------------------------------------ -http://www.bulletphysics.org/mediawiki-1.5.8/index.php?title=Installation diff --git a/engine/lib/CopyLibs-2/org-netbeans-modules-java-j2seproject-copylibstask.jar b/engine/lib/CopyLibs-2/org-netbeans-modules-java-j2seproject-copylibstask.jar deleted file mode 100644 index 38246fd27..000000000 Binary files a/engine/lib/CopyLibs-2/org-netbeans-modules-java-j2seproject-copylibstask.jar and /dev/null differ diff --git a/engine/lib/EasyMock/cglib-docs-2.2.3.jar b/engine/lib/EasyMock/cglib-docs-2.2.3.jar deleted file mode 100644 index a5925b4b5..000000000 Binary files a/engine/lib/EasyMock/cglib-docs-2.2.3.jar and /dev/null differ diff --git a/engine/lib/EasyMock/cglib-nodep-2.2.3.jar b/engine/lib/EasyMock/cglib-nodep-2.2.3.jar deleted file mode 100644 index 35d6d7c3a..000000000 Binary files a/engine/lib/EasyMock/cglib-nodep-2.2.3.jar and /dev/null differ diff --git a/engine/lib/EasyMock/cglib-src-2.2.3.jar b/engine/lib/EasyMock/cglib-src-2.2.3.jar deleted file mode 100644 index 4c5e62ac2..000000000 Binary files a/engine/lib/EasyMock/cglib-src-2.2.3.jar and /dev/null differ diff --git a/engine/lib/EasyMock/easymock-3.1-javadoc.jar b/engine/lib/EasyMock/easymock-3.1-javadoc.jar deleted file mode 100644 index c0df6e164..000000000 Binary files a/engine/lib/EasyMock/easymock-3.1-javadoc.jar and /dev/null differ diff --git a/engine/lib/EasyMock/easymock-3.1-sources.jar b/engine/lib/EasyMock/easymock-3.1-sources.jar deleted file mode 100644 index 002b20c78..000000000 Binary files a/engine/lib/EasyMock/easymock-3.1-sources.jar and /dev/null differ diff --git a/engine/lib/EasyMock/easymock-3.1.jar b/engine/lib/EasyMock/easymock-3.1.jar deleted file mode 100644 index f56f07ace..000000000 Binary files a/engine/lib/EasyMock/easymock-3.1.jar and /dev/null differ diff --git a/engine/lib/EasyMock/objenesis-1.3-javadoc.jar b/engine/lib/EasyMock/objenesis-1.3-javadoc.jar deleted file mode 100644 index 66d661e7f..000000000 Binary files a/engine/lib/EasyMock/objenesis-1.3-javadoc.jar and /dev/null differ diff --git a/engine/lib/EasyMock/objenesis-1.3-sources.jar b/engine/lib/EasyMock/objenesis-1.3-sources.jar deleted file mode 100644 index 5b9414c7c..000000000 Binary files a/engine/lib/EasyMock/objenesis-1.3-sources.jar and /dev/null differ diff --git a/engine/lib/EasyMock/objenesis-1.3.jar b/engine/lib/EasyMock/objenesis-1.3.jar deleted file mode 100644 index d56dc2b5c..000000000 Binary files a/engine/lib/EasyMock/objenesis-1.3.jar and /dev/null differ diff --git a/engine/lib/JWSAntTasks/org-netbeans-modules-javawebstart-anttasks.jar b/engine/lib/JWSAntTasks/org-netbeans-modules-javawebstart-anttasks.jar deleted file mode 100644 index 292c9ed28..000000000 Binary files a/engine/lib/JWSAntTasks/org-netbeans-modules-javawebstart-anttasks.jar and /dev/null differ diff --git a/engine/lib/android/android.jar b/engine/lib/android/android.jar deleted file mode 100644 index b9d655e8e..000000000 Binary files a/engine/lib/android/android.jar and /dev/null differ diff --git a/engine/lib/antlibs/cpptasks.jar b/engine/lib/antlibs/cpptasks.jar deleted file mode 100644 index 537a9f323..000000000 Binary files a/engine/lib/antlibs/cpptasks.jar and /dev/null differ diff --git a/engine/lib/antlibs/depfinder/classes/dependencyfindertasks.properties b/engine/lib/antlibs/depfinder/classes/dependencyfindertasks.properties deleted file mode 100644 index cc9f2d17d..000000000 --- a/engine/lib/antlibs/depfinder/classes/dependencyfindertasks.properties +++ /dev/null @@ -1,11 +0,0 @@ -classmetrics=com.jeantessier.dependencyfinder.ant.ClassMetrics -dependencycycles=com.jeantessier.dependencyfinder.ant.DependencyCycles -dependencyclosure=com.jeantessier.dependencyfinder.ant.DependencyClosure -dependencyextractor=com.jeantessier.dependencyfinder.ant.DependencyExtractor -dependencymetrics=com.jeantessier.dependencyfinder.ant.DependencyMetrics -dependencyreporter=com.jeantessier.dependencyfinder.ant.DependencyReporter -jarjardiff=com.jeantessier.dependencyfinder.ant.JarJarDiff -listdeprecatedelements=com.jeantessier.dependencyfinder.ant.ListDeprecatedElements -listdiff=com.jeantessier.dependencyfinder.ant.ListDiff -listsymbols=com.jeantessier.dependencyfinder.ant.ListSymbols -oometrics=com.jeantessier.dependencyfinder.ant.OOMetrics diff --git a/engine/lib/antlibs/depfinder/classes/log4j.properties b/engine/lib/antlibs/depfinder/classes/log4j.properties deleted file mode 100644 index b7973b968..000000000 --- a/engine/lib/antlibs/depfinder/classes/log4j.properties +++ /dev/null @@ -1,20 +0,0 @@ -# Default logging settings for Dependency Finder applications -log4j.rootLogger=ERROR, CONSOLE - -# log4j.logger.com.jeantessier.dependency=DEBUG, CHAINSAW -# log4j.logger.com.jeantessier.dependency.PackageNode=DEBUG, CHAINSAW -# log4j.logger.com.jeantessier.metrics.MetricsGatherer=DEBUG, CHAINSAW - -log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender -log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout -log4j.appender.CONSOLE.layout.ConversionPattern=[%d{yyyy/MM/dd HH:mm:ss.SSS}] %c{2} %m%n - -log4j.appender.FILE=org.apache.log4j.FileAppender -log4j.appender.FILE.File=C:\\language\\Java\\myprojects\\DependencyFinder\\logs\\default.log -log4j.appender.FILE.layout=org.apache.log4j.PatternLayout -log4j.appender.FILE.layout.ConversionPattern=[%d{yyyy/MM/dd HH:mm:ss.SSS}] %c{2} %m%n - -log4j.appender.CHAINSAW=org.apache.log4j.net.SocketAppender -log4j.appender.CHAINSAW.RemoteHost=localhost -log4j.appender.CHAINSAW.Port=4445 -log4j.appender.CHAINSAW.LocationInfo=true diff --git a/engine/lib/antlibs/depfinder/etc/DiffToHTML.xsl b/engine/lib/antlibs/depfinder/etc/DiffToHTML.xsl deleted file mode 100644 index 092361c46..000000000 --- a/engine/lib/antlibs/depfinder/etc/DiffToHTML.xsl +++ /dev/null @@ -1,304 +0,0 @@ - - - - - - - - - - - - - <xsl:if test="name/text()"><xsl:value-of select="name"/> - </xsl:if>API Change History - - - - -

- API Change History

- - - -
- - -

to

- - - -
- - - - -
- - - - -

Removed Packages:

-
    - -
-
- - -

Removed Interfaces:

-
    - -
-
- - -

Removed Classes:

-
    - -
-
- - -

Newly Deprecated Interfaces:

-
    - -
-
- - -

Newly Deprecated Classes:

-
    - -
-
- - -

Modified Interfaces:

-
- -
-
- - -

Modified Classes:

-
- -
-
- - -

Formerly Deprecated Interfaces:

-
    - -
-
- - -

Formerly Deprecated Classes:

-
    - -
-
- - -

New Packages:

-
    - -
-
- - -

New Interfaces:

-
    - -
-
- - -

New Classes:

-
    - -
-
- - -

-
- -
-
- - -
Removed Fields:
-
    - -
-
- - -
Removed Constructors:
-
    - -
-
- - -
Removed Methods:
-
    - -
-
- - -
Newly Deprecated Fields:
-
    - -
-
- - -
Newly Deprecated Constructors:
-
    - -
-
- - -
Newly Deprecated Methods:
-
    - -
-
- - -
Field Declaration Changes:
- -
- - -
Constructor Changes:
- -
- - -
Method Changes:
- -
- - -
-

- -

-
-
- - - code: - - - - old: - [deprecated] -
- new: - [deprecated] -
-
- - -
Formerly Deprecated Fields:
-
    - -
-
- - -
Formerly Deprecated Constructors:
-
    - -
-
- - -
Formerly Deprecated Methods:
-
    - -
-
- - -
New Fields:
-
    - -
-
- - -
New Constructors:
-
    - -
-
- - -
New Methods:
-
    - -
-
- - - - -
Declaration Changes:
-
-

- old: - [deprecated] -
- new: - [deprecated] -

-
-
- - -
  • [deprecated]
  • -
    - - -
  • -
    - -
    diff --git a/engine/lib/antlibs/depfinder/lib/DependencyFinder.jar b/engine/lib/antlibs/depfinder/lib/DependencyFinder.jar deleted file mode 100644 index 33b3c5d83..000000000 Binary files a/engine/lib/antlibs/depfinder/lib/DependencyFinder.jar and /dev/null differ diff --git a/engine/lib/antlibs/depfinder/lib/guava.jar b/engine/lib/antlibs/depfinder/lib/guava.jar deleted file mode 100644 index 8ff3a8174..000000000 Binary files a/engine/lib/antlibs/depfinder/lib/guava.jar and /dev/null differ diff --git a/engine/lib/antlibs/depfinder/lib/guava.lic b/engine/lib/antlibs/depfinder/lib/guava.lic deleted file mode 100644 index d64569567..000000000 --- a/engine/lib/antlibs/depfinder/lib/guava.lic +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/engine/lib/antlibs/depfinder/lib/jakarta-oro.jar b/engine/lib/antlibs/depfinder/lib/jakarta-oro.jar deleted file mode 100644 index 23488d260..000000000 Binary files a/engine/lib/antlibs/depfinder/lib/jakarta-oro.jar and /dev/null differ diff --git a/engine/lib/antlibs/depfinder/lib/jakarta-oro.lic b/engine/lib/antlibs/depfinder/lib/jakarta-oro.lic deleted file mode 100644 index f571b1b6d..000000000 --- a/engine/lib/antlibs/depfinder/lib/jakarta-oro.lic +++ /dev/null @@ -1,53 +0,0 @@ -/* ==================================================================== - * The Apache Software License, Version 1.1 - * - * Copyright (c) 2000-2002 The Apache Software Foundation. All rights - * reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. The end-user documentation included with the redistribution, - * if any, must include the following acknowledgment: - * "This product includes software developed by the - * Apache Software Foundation (http://www.apache.org/)." - * Alternately, this acknowledgment may appear in the software itself, - * if and wherever such third-party acknowledgments normally appear. - * - * 4. The names "Apache" and "Apache Software Foundation", "Jakarta-Oro" - * must not be used to endorse or promote products derived from this - * software without prior written permission. For written - * permission, please contact apache@apache.org. - * - * 5. Products derived from this software may not be called "Apache" - * or "Jakarta-Oro", nor may "Apache" or "Jakarta-Oro" appear in their - * name, without prior written permission of the Apache Software Foundation. - * - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED - * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF - * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * ==================================================================== - * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Software Foundation. For more - * information on the Apache Software Foundation, please see - * . - */ diff --git a/engine/lib/antlibs/depfinder/lib/log4j.jar b/engine/lib/antlibs/depfinder/lib/log4j.jar deleted file mode 100644 index c930a6ab4..000000000 Binary files a/engine/lib/antlibs/depfinder/lib/log4j.jar and /dev/null differ diff --git a/engine/lib/antlibs/depfinder/lib/log4j.lic b/engine/lib/antlibs/depfinder/lib/log4j.lic deleted file mode 100644 index 6279e5206..000000000 --- a/engine/lib/antlibs/depfinder/lib/log4j.lic +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright 1999-2005 The Apache Software Foundation - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/engine/lib/antlibs/depfinder/license.txt b/engine/lib/antlibs/depfinder/license.txt deleted file mode 100644 index e2a47d5da..000000000 --- a/engine/lib/antlibs/depfinder/license.txt +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2001-2009, Jean Tessier - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of Jean Tessier nor the names of his contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ diff --git a/engine/lib/antlibs/depfinder/readme.txt b/engine/lib/antlibs/depfinder/readme.txt deleted file mode 100644 index 6164b3ca0..000000000 --- a/engine/lib/antlibs/depfinder/readme.txt +++ /dev/null @@ -1,28 +0,0 @@ -Content -------- - -This is the Dependency Finder toolkit. It contains a number of -tools for exploring relationships in (compiled) Java code. - -Licensing ---------- - -This software is licensed under the terms of BSD-like license. -A copy of the licensing terms is in the file license.txt. You -can get the original BSD License template at opensource.org. - -This product includes software developed by the Apache Software -Foundation (http://www.apache.org/). The terms of the Apache -Software License are reproduced in the lib/ directory next to -the relevant binary .jar files. - -Installation and Tools ----------------------- - -Installation instructions are included in docs/Manual.html. - -A list of the tools and their usage is in docs/Tools.html. - -These documents are also available online at: - - http://depfind.sourceforge.net/ diff --git a/engine/lib/antlibs/jsch-0.1.42.jar b/engine/lib/antlibs/jsch-0.1.42.jar deleted file mode 100644 index c65eff095..000000000 Binary files a/engine/lib/antlibs/jsch-0.1.42.jar and /dev/null differ diff --git a/engine/lib/bullet/android/armeabi-v7a/libbulletjme.so b/engine/lib/bullet/android/armeabi-v7a/libbulletjme.so deleted file mode 100644 index c439df81b..000000000 Binary files a/engine/lib/bullet/android/armeabi-v7a/libbulletjme.so and /dev/null differ diff --git a/engine/lib/bullet/android/armeabi/libbulletjme.so b/engine/lib/bullet/android/armeabi/libbulletjme.so deleted file mode 100644 index beac5352d..000000000 Binary files a/engine/lib/bullet/android/armeabi/libbulletjme.so and /dev/null differ diff --git a/engine/lib/bullet/android/mips/libbulletjme.so b/engine/lib/bullet/android/mips/libbulletjme.so deleted file mode 100644 index 6bccfee63..000000000 Binary files a/engine/lib/bullet/android/mips/libbulletjme.so and /dev/null differ diff --git a/engine/lib/bullet/android/x86/libbulletjme.so b/engine/lib/bullet/android/x86/libbulletjme.so deleted file mode 100644 index ff61f31ee..000000000 Binary files a/engine/lib/bullet/android/x86/libbulletjme.so and /dev/null differ diff --git a/engine/lib/bullet/jME3-bullet-natives-android.jar b/engine/lib/bullet/jME3-bullet-natives-android.jar deleted file mode 100644 index 9017630a7..000000000 Binary files a/engine/lib/bullet/jME3-bullet-natives-android.jar and /dev/null differ diff --git a/engine/lib/bullet/jME3-bullet-natives.jar b/engine/lib/bullet/jME3-bullet-natives.jar deleted file mode 100644 index 920bb9339..000000000 Binary files a/engine/lib/bullet/jME3-bullet-natives.jar and /dev/null differ diff --git a/engine/lib/bullet/jarcontent/native/linux/libbulletjme.so b/engine/lib/bullet/jarcontent/native/linux/libbulletjme.so deleted file mode 100755 index 7c6cbb49e..000000000 Binary files a/engine/lib/bullet/jarcontent/native/linux/libbulletjme.so and /dev/null differ diff --git a/engine/lib/bullet/jarcontent/native/linux/libbulletjme64.so b/engine/lib/bullet/jarcontent/native/linux/libbulletjme64.so deleted file mode 100755 index e85db9728..000000000 Binary files a/engine/lib/bullet/jarcontent/native/linux/libbulletjme64.so and /dev/null differ diff --git a/engine/lib/bullet/jarcontent/native/macosx/libbulletjme.jnilib b/engine/lib/bullet/jarcontent/native/macosx/libbulletjme.jnilib deleted file mode 100755 index 7eaba6767..000000000 Binary files a/engine/lib/bullet/jarcontent/native/macosx/libbulletjme.jnilib and /dev/null differ diff --git a/engine/lib/bullet/jarcontent/native/windows/bulletjme.dll b/engine/lib/bullet/jarcontent/native/windows/bulletjme.dll deleted file mode 100644 index 281ecfeb8..000000000 Binary files a/engine/lib/bullet/jarcontent/native/windows/bulletjme.dll and /dev/null differ diff --git a/engine/lib/bullet/jarcontent/native/windows/bulletjme64.dll b/engine/lib/bullet/jarcontent/native/windows/bulletjme64.dll deleted file mode 100755 index abfdd0353..000000000 Binary files a/engine/lib/bullet/jarcontent/native/windows/bulletjme64.dll and /dev/null differ diff --git a/engine/lib/jbullet/asm-all-3.1.jar b/engine/lib/jbullet/asm-all-3.1.jar deleted file mode 100644 index 5f37af522..000000000 Binary files a/engine/lib/jbullet/asm-all-3.1.jar and /dev/null differ diff --git a/engine/lib/jbullet/vecmath.jar b/engine/lib/jbullet/vecmath.jar deleted file mode 100644 index ddfd73bdb..000000000 Binary files a/engine/lib/jbullet/vecmath.jar and /dev/null differ diff --git a/engine/lib/jogl/gluegen-rt-natives-linux-amd64.jar b/engine/lib/jogl/gluegen-rt-natives-linux-amd64.jar deleted file mode 100644 index 19aeac86c..000000000 Binary files a/engine/lib/jogl/gluegen-rt-natives-linux-amd64.jar and /dev/null differ diff --git a/engine/lib/jogl/gluegen-rt-natives-linux-armv6.jar b/engine/lib/jogl/gluegen-rt-natives-linux-armv6.jar deleted file mode 100644 index 8ecfc2221..000000000 Binary files a/engine/lib/jogl/gluegen-rt-natives-linux-armv6.jar and /dev/null differ diff --git a/engine/lib/jogl/gluegen-rt-natives-linux-armv6hf.jar b/engine/lib/jogl/gluegen-rt-natives-linux-armv6hf.jar deleted file mode 100644 index 7008d487c..000000000 Binary files a/engine/lib/jogl/gluegen-rt-natives-linux-armv6hf.jar and /dev/null differ diff --git a/engine/lib/jogl/gluegen-rt-natives-linux-i586.jar b/engine/lib/jogl/gluegen-rt-natives-linux-i586.jar deleted file mode 100644 index 17a4ed4ed..000000000 Binary files a/engine/lib/jogl/gluegen-rt-natives-linux-i586.jar and /dev/null differ diff --git a/engine/lib/jogl/gluegen-rt-natives-macosx-universal.jar b/engine/lib/jogl/gluegen-rt-natives-macosx-universal.jar deleted file mode 100644 index e173a81a0..000000000 Binary files a/engine/lib/jogl/gluegen-rt-natives-macosx-universal.jar and /dev/null differ diff --git a/engine/lib/jogl/gluegen-rt-natives-solaris-amd64.jar b/engine/lib/jogl/gluegen-rt-natives-solaris-amd64.jar deleted file mode 100644 index 3782a84c8..000000000 Binary files a/engine/lib/jogl/gluegen-rt-natives-solaris-amd64.jar and /dev/null differ diff --git a/engine/lib/jogl/gluegen-rt-natives-solaris-i586.jar b/engine/lib/jogl/gluegen-rt-natives-solaris-i586.jar deleted file mode 100644 index ddfc27586..000000000 Binary files a/engine/lib/jogl/gluegen-rt-natives-solaris-i586.jar and /dev/null differ diff --git a/engine/lib/jogl/gluegen-rt-natives-windows-amd64.jar b/engine/lib/jogl/gluegen-rt-natives-windows-amd64.jar deleted file mode 100644 index 97c9f7508..000000000 Binary files a/engine/lib/jogl/gluegen-rt-natives-windows-amd64.jar and /dev/null differ diff --git a/engine/lib/jogl/gluegen-rt-natives-windows-i586.jar b/engine/lib/jogl/gluegen-rt-natives-windows-i586.jar deleted file mode 100644 index ce80bd1f3..000000000 Binary files a/engine/lib/jogl/gluegen-rt-natives-windows-i586.jar and /dev/null differ diff --git a/engine/lib/jogl/gluegen-rt.jar b/engine/lib/jogl/gluegen-rt.jar deleted file mode 100644 index 9e93106df..000000000 Binary files a/engine/lib/jogl/gluegen-rt.jar and /dev/null differ diff --git a/engine/lib/jogl/joal-natives-linux-amd64.jar b/engine/lib/jogl/joal-natives-linux-amd64.jar deleted file mode 100644 index 210a936a7..000000000 Binary files a/engine/lib/jogl/joal-natives-linux-amd64.jar and /dev/null differ diff --git a/engine/lib/jogl/joal-natives-linux-armv6.jar b/engine/lib/jogl/joal-natives-linux-armv6.jar deleted file mode 100644 index ba7d9c7fd..000000000 Binary files a/engine/lib/jogl/joal-natives-linux-armv6.jar and /dev/null differ diff --git a/engine/lib/jogl/joal-natives-linux-armv6hf.jar b/engine/lib/jogl/joal-natives-linux-armv6hf.jar deleted file mode 100644 index b47616896..000000000 Binary files a/engine/lib/jogl/joal-natives-linux-armv6hf.jar and /dev/null differ diff --git a/engine/lib/jogl/joal-natives-linux-i586.jar b/engine/lib/jogl/joal-natives-linux-i586.jar deleted file mode 100644 index d40f92c43..000000000 Binary files a/engine/lib/jogl/joal-natives-linux-i586.jar and /dev/null differ diff --git a/engine/lib/jogl/joal-natives-macosx-universal.jar b/engine/lib/jogl/joal-natives-macosx-universal.jar deleted file mode 100644 index b07b62b70..000000000 Binary files a/engine/lib/jogl/joal-natives-macosx-universal.jar and /dev/null differ diff --git a/engine/lib/jogl/joal-natives-solaris-amd64.jar b/engine/lib/jogl/joal-natives-solaris-amd64.jar deleted file mode 100644 index ead86840d..000000000 Binary files a/engine/lib/jogl/joal-natives-solaris-amd64.jar and /dev/null differ diff --git a/engine/lib/jogl/joal-natives-solaris-i586.jar b/engine/lib/jogl/joal-natives-solaris-i586.jar deleted file mode 100644 index ed03f9bb3..000000000 Binary files a/engine/lib/jogl/joal-natives-solaris-i586.jar and /dev/null differ diff --git a/engine/lib/jogl/joal-natives-windows-amd64.jar b/engine/lib/jogl/joal-natives-windows-amd64.jar deleted file mode 100644 index 660b388f9..000000000 Binary files a/engine/lib/jogl/joal-natives-windows-amd64.jar and /dev/null differ diff --git a/engine/lib/jogl/joal-natives-windows-i586.jar b/engine/lib/jogl/joal-natives-windows-i586.jar deleted file mode 100644 index 8a0843c6e..000000000 Binary files a/engine/lib/jogl/joal-natives-windows-i586.jar and /dev/null differ diff --git a/engine/lib/jogl/joal.jar b/engine/lib/jogl/joal.jar deleted file mode 100644 index f73fa6320..000000000 Binary files a/engine/lib/jogl/joal.jar and /dev/null differ diff --git a/engine/lib/jogl/jogl-all-natives-linux-amd64.jar b/engine/lib/jogl/jogl-all-natives-linux-amd64.jar deleted file mode 100644 index 50e1ad87a..000000000 Binary files a/engine/lib/jogl/jogl-all-natives-linux-amd64.jar and /dev/null differ diff --git a/engine/lib/jogl/jogl-all-natives-linux-armv6.jar b/engine/lib/jogl/jogl-all-natives-linux-armv6.jar deleted file mode 100644 index cd33591e1..000000000 Binary files a/engine/lib/jogl/jogl-all-natives-linux-armv6.jar and /dev/null differ diff --git a/engine/lib/jogl/jogl-all-natives-linux-armv6hf.jar b/engine/lib/jogl/jogl-all-natives-linux-armv6hf.jar deleted file mode 100644 index 8e44a5c5a..000000000 Binary files a/engine/lib/jogl/jogl-all-natives-linux-armv6hf.jar and /dev/null differ diff --git a/engine/lib/jogl/jogl-all-natives-linux-i586.jar b/engine/lib/jogl/jogl-all-natives-linux-i586.jar deleted file mode 100644 index 92427a384..000000000 Binary files a/engine/lib/jogl/jogl-all-natives-linux-i586.jar and /dev/null differ diff --git a/engine/lib/jogl/jogl-all-natives-macosx-universal.jar b/engine/lib/jogl/jogl-all-natives-macosx-universal.jar deleted file mode 100644 index d5e90f3a6..000000000 Binary files a/engine/lib/jogl/jogl-all-natives-macosx-universal.jar and /dev/null differ diff --git a/engine/lib/jogl/jogl-all-natives-solaris-amd64.jar b/engine/lib/jogl/jogl-all-natives-solaris-amd64.jar deleted file mode 100644 index b05341bac..000000000 Binary files a/engine/lib/jogl/jogl-all-natives-solaris-amd64.jar and /dev/null differ diff --git a/engine/lib/jogl/jogl-all-natives-solaris-i586.jar b/engine/lib/jogl/jogl-all-natives-solaris-i586.jar deleted file mode 100644 index 35b95bf2a..000000000 Binary files a/engine/lib/jogl/jogl-all-natives-solaris-i586.jar and /dev/null differ diff --git a/engine/lib/jogl/jogl-all-natives-windows-amd64.jar b/engine/lib/jogl/jogl-all-natives-windows-amd64.jar deleted file mode 100644 index 6dc444850..000000000 Binary files a/engine/lib/jogl/jogl-all-natives-windows-amd64.jar and /dev/null differ diff --git a/engine/lib/jogl/jogl-all-natives-windows-i586.jar b/engine/lib/jogl/jogl-all-natives-windows-i586.jar deleted file mode 100644 index 6f0103efa..000000000 Binary files a/engine/lib/jogl/jogl-all-natives-windows-i586.jar and /dev/null differ diff --git a/engine/lib/jogl/jogl-all.jar b/engine/lib/jogl/jogl-all.jar deleted file mode 100644 index 922fe3f5f..000000000 Binary files a/engine/lib/jogl/jogl-all.jar and /dev/null differ diff --git a/engine/lib/junit_4/junit-4.5-api.zip b/engine/lib/junit_4/junit-4.5-api.zip deleted file mode 100644 index 5748c444d..000000000 Binary files a/engine/lib/junit_4/junit-4.5-api.zip and /dev/null differ diff --git a/engine/lib/junit_4/junit-4.5-src.jar b/engine/lib/junit_4/junit-4.5-src.jar deleted file mode 100644 index 18774a573..000000000 Binary files a/engine/lib/junit_4/junit-4.5-src.jar and /dev/null differ diff --git a/engine/lib/junit_4/junit-4.5.jar b/engine/lib/junit_4/junit-4.5.jar deleted file mode 100644 index 83f8bc793..000000000 Binary files a/engine/lib/junit_4/junit-4.5.jar and /dev/null differ diff --git a/engine/lib/lwjgl/3rdparty/jinput_license.txt b/engine/lib/lwjgl/3rdparty/jinput_license.txt deleted file mode 100644 index cee4669ba..000000000 --- a/engine/lib/lwjgl/3rdparty/jinput_license.txt +++ /dev/null @@ -1,32 +0,0 @@ -/***************************************************************************** - * Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * - Redistribution of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * - * - Redistribution in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materails provided with the distribution. - * - * Neither the name Sun Microsystems, Inc. or the names of the contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * This software is provided "AS IS," without a warranty of any kind. - * ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING - * ANY IMPLIED WARRANT OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR - * NON-INFRINGEMEN, ARE HEREBY EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND - * ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS - * A RESULT OF USING, MODIFYING OR DESTRIBUTING THIS SOFTWARE OR ITS - * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST - * REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, - * INCIDENTAL OR PUNITIVE DAMAGES. HOWEVER CAUSED AND REGARDLESS OF THE THEORY - * OF LIABILITY, ARISING OUT OF THE USE OF OUR INABILITY TO USE THIS SOFTWARE, - * EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - * - * You acknowledge that this software is not designed or intended for us in - * the design, construction, operation or maintenance of any nuclear facility - * - *****************************************************************************/ \ No newline at end of file diff --git a/engine/lib/lwjgl/3rdparty/jogl_license.txt b/engine/lib/lwjgl/3rdparty/jogl_license.txt deleted file mode 100644 index db9b93374..000000000 --- a/engine/lib/lwjgl/3rdparty/jogl_license.txt +++ /dev/null @@ -1,152 +0,0 @@ -JOGL is released under the BSD license. The full license terms follow: - - Copyright (c) 2003-2009 Sun Microsystems, Inc. All Rights Reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - - Redistribution of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - - Redistribution in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - Neither the name of Sun Microsystems, Inc. or the names of - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - - This software is provided "AS IS," without a warranty of any kind. ALL - EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, - INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A - PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN - MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL NOT BE LIABLE FOR - ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR - DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR - ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR - DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE - DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, - ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE, EVEN IF - SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - - You acknowledge that this software is not designed or intended for use - in the design, construction, operation or maintenance of any nuclear - facility. - -The JOGL source tree contains code ported from the OpenGL sample -implementation by Silicon Graphics, Inc. This code is licensed under -the SGI Free Software License B (Sun is redistributing the modified code -under a slightly modified, alternative license, which is described two -paragraphs below after "NOTE:"): - - License Applicability. Except to the extent portions of this file are - made subject to an alternative license as permitted in the SGI Free - Software License B, Version 1.1 (the "License"), the contents of this - file are subject only to the provisions of the License. You may not use - this file except in compliance with the License. You may obtain a copy - of the License at Silicon Graphics, Inc., attn: Legal Services, 1600 - Amphitheatre Parkway, Mountain View, CA 94043-1351, or at: - - http://oss.sgi.com/projects/FreeB - - Note that, as provided in the License, the Software is distributed on an - "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS - DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND - CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A - PARTICULAR PURPOSE, AND NON-INFRINGEMENT. - - NOTE: The Original Code (as defined below) has been licensed to Sun - Microsystems, Inc. ("Sun") under the SGI Free Software License B - (Version 1.1), shown above ("SGI License"). Pursuant to Section - 3.2(3) of the SGI License, Sun is distributing the Covered Code to - you under an alternative license ("Alternative License"). This - Alternative License includes all of the provisions of the SGI License - except that Section 2.2 and 11 are omitted. Any differences between - the Alternative License and the SGI License are offered solely by Sun - and not by SGI. - - Original Code. The Original Code is: OpenGL Sample Implementation, - Version 1.2.1, released January 26, 2000, developed by Silicon Graphics, - Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc. - Copyright in any portions created by third parties is as indicated - elsewhere herein. All Rights Reserved. - - Additional Notice Provisions: The application programming interfaces - established by SGI in conjunction with the Original Code are The - OpenGL(R) Graphics System: A Specification (Version 1.2.1), released - April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version - 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X - Window System(R) (Version 1.3), released October 19, 1998. This software - was created using the OpenGL(R) version 1.2.1 Sample Implementation - published by SGI, but has not been independently verified as being - compliant with the OpenGL(R) version 1.2.1 Specification. - - -The JOGL source tree contains code from the LWJGL project which is -similarly covered by the BSD license: - - Copyright (c) 2002-2004 LWJGL Project - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of 'LWJGL' nor the names of - its contributors may be used to endorse or promote products derived - from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -The JOGL source tree also contains a Java port of Brian Paul's Tile -Rendering library, used with permission of the author under the BSD -license instead of the original LGPL: - - Copyright (c) 1997-2005 Brian Paul. All Rights Reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - - Redistribution of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - - Redistribution in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - Neither the name of Brian Paul or the names of contributors may be - used to endorse or promote products derived from this software - without specific prior written permission. - - This software is provided "AS IS," without a warranty of any - kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND - WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY - EXCLUDED. THE COPYRIGHT HOLDERS AND CONTRIBUTORS SHALL NOT BE - LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, - MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. IN NO - EVENT WILL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY - LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, - CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND - REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR - INABILITY TO USE THIS SOFTWARE, EVEN IF THE COPYRIGHT HOLDERS OR - CONTRIBUTORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. diff --git a/engine/lib/lwjgl/3rdparty/lzma_license.txt b/engine/lib/lwjgl/3rdparty/lzma_license.txt deleted file mode 100644 index d82521961..000000000 --- a/engine/lib/lwjgl/3rdparty/lzma_license.txt +++ /dev/null @@ -1,15 +0,0 @@ -LZMA# SDK is licensed under two licenses: - -1) GNU Lesser General Public License (GNU LGPL) -2) Common Public License (CPL) - -It means that you can select one of these two licenses and -follow rules of that license. - -SPECIAL EXCEPTION -Igor Pavlov, as the author of this code, expressly permits you -to statically or dynamically link your code (or bind by name) -to the files from LZMA# SDK without subjecting your linked -code to the terms of the CPL or GNU LGPL. -Any modifications or additions to files from LZMA# SDK, however, -are subject to the GNU LGPL or CPL terms. \ No newline at end of file diff --git a/engine/lib/lwjgl/3rdparty/openal_license.txt b/engine/lib/lwjgl/3rdparty/openal_license.txt deleted file mode 100644 index 339560d0d..000000000 --- a/engine/lib/lwjgl/3rdparty/openal_license.txt +++ /dev/null @@ -1,437 +0,0 @@ - GNU LIBRARY GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the library GPL. It is - numbered 2 because it goes with version 2 of the ordinary GPL.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Library General Public License, applies to some -specially designated Free Software Foundation software, and to any -other libraries whose authors decide to use it. You can use it for -your libraries, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if -you distribute copies of the library, or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link a program with the library, you must provide -complete object files to the recipients so that they can relink them -with the library, after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - Our method of protecting your rights has two steps: (1) copyright -the library, and (2) offer you this license which gives you legal -permission to copy, distribute and/or modify the library. - - Also, for each distributor's protection, we want to make certain -that everyone understands that there is no warranty for this free -library. If the library is modified by someone else and passed on, we -want its recipients to know that what they have is not the original -version, so that any problems introduced by others will not reflect on -the original authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that companies distributing free -software will individually obtain patent licenses, thus in effect -transforming the program into proprietary software. To prevent this, -we have made it clear that any patent must be licensed for everyone's -free use or not licensed at all. - - Most GNU software, including some libraries, is covered by the ordinary -GNU General Public License, which was designed for utility programs. This -license, the GNU Library General Public License, applies to certain -designated libraries. This license is quite different from the ordinary -one; be sure to read it in full, and don't assume that anything in it is -the same as in the ordinary license. - - The reason we have a separate public license for some libraries is that -they blur the distinction we usually make between modifying or adding to a -program and simply using it. Linking a program with a library, without -changing the library, is in some sense simply using the library, and is -analogous to running a utility program or application program. However, in -a textual and legal sense, the linked executable is a combined work, a -derivative of the original library, and the ordinary General Public License -treats it as such. - - Because of this blurred distinction, using the ordinary General -Public License for libraries did not effectively promote software -sharing, because most developers did not use the libraries. We -concluded that weaker conditions might promote sharing better. - - However, unrestricted linking of non-free programs would deprive the -users of those programs of all benefit from the free status of the -libraries themselves. This Library General Public License is intended to -permit developers of non-free programs to use free libraries, while -preserving your freedom as a user of such programs to change the free -libraries that are incorporated in them. (We have not seen how to achieve -this as regards changes in header files, but we have achieved it as regards -changes in the actual functions of the Library.) The hope is that this -will lead to faster development of free libraries. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, while the latter only -works together with the library. - - Note that it is possible for a library to be covered by the ordinary -General Public License rather than by this special one. - - GNU LIBRARY GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library which -contains a notice placed by the copyright holder or other authorized -party saying it may be distributed under the terms of this Library -General Public License (also called "this License"). Each licensee is -addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also compile or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - c) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - d) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the source code distributed need not include anything that is normally -distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Library General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS diff --git a/engine/lib/lwjgl/CREDITS b/engine/lib/lwjgl/CREDITS deleted file mode 100644 index d03bbf510..000000000 --- a/engine/lib/lwjgl/CREDITS +++ /dev/null @@ -1,38 +0,0 @@ -The following people have helped to make this project what it is today: - - Caspian Rychlik-Prince - - Brian Matzon - - Elias Naur - - Ioannis Tsakpinis - - Niels J�rgensen - - Tristan Campbell - - Gregory Pierce - - Luke Holden - - Mark Bernard - - Erik Duijs - - Jos Hirth - - Kevin Glass - - Atsuya Takagi - - kappaOne - - Simon Felix - - Ryan McNally - - Ciardhubh - - Jens von Pilgrim - - Ruben Garat - - Pelle Johnsen - - Jae Kwon - -additional credits goes to: - - Joseph I. Valenzuela [OpenAL stuff] - - Lev Povalahev [OpenGL Extensions] - - Endolf [Nightly builds and JInput] - -The LWJGL project includes files from or depends on the following projects: - - OpenGL, SGI - http://opengl.org/ - - OpenAL, Creative Labs - http://openal.org/ - - jinput, Sun - https://jinput.dev.java.net/ - - lzma, p7zip - http://p7zip.sourceforge.net/ - - JOGL, Sun - http://kenai.com/projects/jogl/pages/Home - -Please see the /doc/3rdparty/ directory for licenses. - -All trademarks and registered trademarks are the property of their respective owners. diff --git a/engine/lib/lwjgl/LICENSE b/engine/lib/lwjgl/LICENSE deleted file mode 100644 index d277220e1..000000000 --- a/engine/lib/lwjgl/LICENSE +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2002-2008 Lightweight Java Game Library Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'Light Weight Java Game Library' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ \ No newline at end of file diff --git a/engine/lib/lwjgl/README b/engine/lib/lwjgl/README deleted file mode 100644 index 977ae0214..000000000 --- a/engine/lib/lwjgl/README +++ /dev/null @@ -1,50 +0,0 @@ -This is the official readme file for lwjgl. - -Unless otherwise stated, all files distributed or in SVN are covered by -the license as stated in the LICENSE file. If you have not received this -file, please download it from the cvs server. - -To run some of the included tests: - Extract the archive, and cd into directory - (please substitute ; and \ according to platform) - - java -cp .;res;jar\lwjgl.jar;jar\lwjgl_test.jar;jar\lwjgl_util.jar;jar\jinput.jar; -Djava.library.path=native\ TEST - (this specifies that the jvm should locate the lwjgl native libs in 'native' directory) - - where TEST is some of the following: - - org.lwjgl.test.WindowCreationTest - org.lwjgl.test.SysTest - org.lwjgl.test.DisplayTest - - org.lwjgl.test.input.MouseCreationTest - org.lwjgl.test.input.MouseTest - org.lwjgl.test.input.HWCursorTest - org.lwjgl.test.input.KeyboardTest - org.lwjgl.test.input.TestControllers - - org.lwjgl.test.openal.ALCTest - org.lwjgl.test.openal.OpenALCreationTest - org.lwjgl.test.openal.MovingSoundTest - org.lwjgl.test.openal.PlayTest - org.lwjgl.test.openal.PlayTestMemory - org.lwjgl.test.openal.SourceLimitTest - org.lwjgl.test.openal.PositionTest - org.lwjgl.test.openal.StressTest - org.lwjgl.test.openal.SourceLimitTest - - org.lwjgl.test.opengl.FullScreenWindowedTest - org.lwjgl.test.opengl.PbufferTest - org.lwjgl.test.opengl.VBOIndexTest - org.lwjgl.test.opengl.VBOTest - - org.lwjgl.test.opengl.pbuffers.PbufferTest - - org.lwjgl.test.opengl.shaders.ShadersTest - -You may also run the Space invaders demo by executing: - java -cp .;res;jar\lwjgl.jar;jar\lwjgl_test.jar;jar\lwjgl_util.jar; -Djava.library.path=native\ org.lwjgl.examples.spaceinvaders.Game - -Project Webpage: www.lwjgl.org -Project Forum: forum.lwjgl.org -Project SVN: https://java-game-lib.svn.sourceforge.net/svnroot/java-game-lib diff --git a/engine/lib/lwjgl/jME3-lwjgl-natives.jar b/engine/lib/lwjgl/jME3-lwjgl-natives.jar deleted file mode 100644 index 6a60c7256..000000000 Binary files a/engine/lib/lwjgl/jME3-lwjgl-natives.jar and /dev/null differ diff --git a/engine/lib/lwjgl/jinput.jar b/engine/lib/lwjgl/jinput.jar deleted file mode 100644 index 7c2b6b06f..000000000 Binary files a/engine/lib/lwjgl/jinput.jar and /dev/null differ diff --git a/engine/lib/lwjgl/lwjgl-debug.jar b/engine/lib/lwjgl/lwjgl-debug.jar deleted file mode 100644 index 4625bffd0..000000000 Binary files a/engine/lib/lwjgl/lwjgl-debug.jar and /dev/null differ diff --git a/engine/lib/lwjgl/lwjgl.jar b/engine/lib/lwjgl/lwjgl.jar deleted file mode 100644 index 4cb7cda86..000000000 Binary files a/engine/lib/lwjgl/lwjgl.jar and /dev/null differ diff --git a/engine/lib/lwjgl/lwjgl_hidden_switches.text b/engine/lib/lwjgl/lwjgl_hidden_switches.text deleted file mode 100644 index 6efed5e7b..000000000 --- a/engine/lib/lwjgl/lwjgl_hidden_switches.text +++ /dev/null @@ -1,25 +0,0 @@ -LWJGL "Hidden" switches: - -org.lwjgl.opengl.Display.noinput -Do not initialize any controls when creating the display - -org.lwjgl.opengl.Display.nomouse -Do not create the mouse when creating the display - -org.lwjgl.opengl.Display.nokeyboard -Do not create the keyboard when creating the display - -org.lwjgl.util.Debug -Whether to output debug info - -org.lwjgl.util.NoChecks -Whether to disable runtime function/buffer checks and state tracking. - -org.lwjgl.opengl.Display.allowSoftwareOpenGL -Whether to allow creation of a software only opengl context - -org.lwjgl.opengl.Window.undecorated -Whether to create an undecorated window (no title bar) - -org.lwjgl.input.Mouse.allowNegativeMouseCoords -Usually mouse is clamped to 0,0 - setting this to true will cause you to get negative values if dragging outside and below or left of window \ No newline at end of file diff --git a/engine/lib/nblibraries.properties b/engine/lib/nblibraries.properties deleted file mode 100644 index a05b75cbf..000000000 --- a/engine/lib/nblibraries.properties +++ /dev/null @@ -1,75 +0,0 @@ -libs.android.classpath=\ - ${base}/android/android.jar -libs.bullet.classpath=\ - ${base}/bullet/jME3-bullet-natives.jar -libs.CopyLibs.classpath=\ - ${base}/CopyLibs-2/org-netbeans-modules-java-j2seproject-copylibstask.jar -libs.CopyLibs.displayName=CopyLibs Task -libs.CopyLibs.prop-version=1.0 -libs.EasyMock.classpath=\ - ${base}/EasyMock/easymock-3.1.jar:\ - ${base}/EasyMock/objenesis-1.3.jar:\ - ${base}/EasyMock/cglib-nodep-2.2.3.jar -libs.EasyMock.displayName=EasyMock -libs.EasyMock.javadoc=\ - ${base}/EasyMock/easymock-3.1-javadoc.jar!//:\ - ${base}/EasyMock/objenesis-1.3-javadoc.jar!// -libs.EasyMock.src=\ - ${base}/EasyMock/easymock-3.1-sources.jar!//:\ - ${base}/EasyMock/objenesis-1.3-sources.jar!//:\ - ${base}/EasyMock/cglib-src-2.2.3.jar!/src/test/ -libs.jbullet.classpath=\ - ${base}/jbullet/jbullet.jar:\ - ${base}/jbullet/stack-alloc.jar:\ - ${base}/jbullet/vecmath.jar -libs.jheora.classpath=\ - ${base}/jheora/jheora-jst-debug-0.6.0.jar -libs.jme3-test-data.classpath=\ - ${base}/../test-data/ -libs.jogg.classpath=\ - ${base}/jogg/j-ogg-oggd.jar:\ - ${base}/jogg/j-ogg-vorbisd.jar -libs.jogl.classpath=\ - ${base}/jogl/gluegen-rt.jar:\ - ${base}/jogl/jME3-jogl-natives.jar:\ - ${base}/jogl/jogl.jar -libs.jogl2.classpath=\ - ${base}/jogl/gluegen-rt.jar:\ - ${base}/jogl/joal.jar:\ - ${base}/jogl/jogl-all.jar -libs.junit_4.classpath=\ - ${base}/junit_4/junit-4.5.jar -libs.junit_4.javadoc=\ - ${base}/junit_4/junit-4.5-api.zip -libs.junit_4.src=\ - ${base}/junit_4/junit-4.5-src.jar -libs.JWSAntTasks.classpath=\ - ${base}/JWSAntTasks/org-netbeans-modules-javawebstart-anttasks.jar -libs.lwjgl.classpath=\ - ${base}/lwjgl/lwjgl.jar;\ - ${base}/lwjgl/jME3-lwjgl-natives.jar;\ - ${base}/lwjgl/jinput.jar -libs.lwjgl.src=\ - ${base}/../../Libraries/LWJGL2.7.1/src/ -libs.niftygui1.3.classpath=\ - ${base}/niftygui/eventbus.jar;\ - ${base}/niftygui/nifty-default-controls.jar;\ - ${base}/niftygui/nifty-examples.jar;\ - ${base}/niftygui/nifty-style-black.jar;\ - ${base}/niftygui/nifty.jar;\ - ${base}/niftygui/jglfont-core.jar;\ - ${base}/niftygui/xmlpull-xpp3.jar -libs.niftygui1.3.javadoc=\ - ${base}/niftygui/nifty-default-controls-javadoc.jar!//;\ - ${base}/niftygui/nifty-examples-javadoc.jar!// -libs.openalsoft.classpath=\ - ${base}/openal-soft/jME3-openal-soft-natives-android.jar -libs.swing-layout.classpath=\ - ${base}/swing-layout/swing-layout-1.0.4.jar -libs.swing-layout.javadoc=\ - ${base}/swing-layout/swing-layout-1.0.4-doc.zip -libs.swing-layout.src=\ - ${base}/swing-layout/swing-layout-1.0.4-src.zip -libs.noise.classpath=\ - ${base}/noise/noise-0.0.1-SNAPSHOT.jar - diff --git a/engine/lib/niftygui/VERSION.txt b/engine/lib/niftygui/VERSION.txt deleted file mode 100644 index 5c5df1cd2..000000000 --- a/engine/lib/niftygui/VERSION.txt +++ /dev/null @@ -1,9 +0,0 @@ -Last Updated 22/6/2013 - -Component Version ---------------------------------------------------------------------- -nifty 1.3.3 (2013-06-20 23:54:54) -nifty-default-controls 1.3.3 (2013-06-20 23:54:54) -nifty-style-black 1.3.3 (2013-06-20 23:54:54) -nifty-examples 1.3.3 (2013-06-20 23:54:54) -jglfont-core 1.3 diff --git a/engine/lib/niftygui/eventbus.jar b/engine/lib/niftygui/eventbus.jar deleted file mode 100644 index a02006f95..000000000 Binary files a/engine/lib/niftygui/eventbus.jar and /dev/null differ diff --git a/engine/lib/niftygui/jglfont-core-javadoc.jar b/engine/lib/niftygui/jglfont-core-javadoc.jar deleted file mode 100644 index 9d0bd705f..000000000 Binary files a/engine/lib/niftygui/jglfont-core-javadoc.jar and /dev/null differ diff --git a/engine/lib/niftygui/jglfont-core.jar b/engine/lib/niftygui/jglfont-core.jar deleted file mode 100644 index 66e3f984d..000000000 Binary files a/engine/lib/niftygui/jglfont-core.jar and /dev/null differ diff --git a/engine/lib/niftygui/nifty-default-controls-javadoc.jar b/engine/lib/niftygui/nifty-default-controls-javadoc.jar deleted file mode 100644 index 9351afcf9..000000000 Binary files a/engine/lib/niftygui/nifty-default-controls-javadoc.jar and /dev/null differ diff --git a/engine/lib/niftygui/nifty-default-controls.jar b/engine/lib/niftygui/nifty-default-controls.jar deleted file mode 100644 index 868028349..000000000 Binary files a/engine/lib/niftygui/nifty-default-controls.jar and /dev/null differ diff --git a/engine/lib/niftygui/nifty-examples-javadoc.jar b/engine/lib/niftygui/nifty-examples-javadoc.jar deleted file mode 100644 index 821abf7db..000000000 Binary files a/engine/lib/niftygui/nifty-examples-javadoc.jar and /dev/null differ diff --git a/engine/lib/niftygui/nifty-examples.jar b/engine/lib/niftygui/nifty-examples.jar deleted file mode 100644 index 5e1052beb..000000000 Binary files a/engine/lib/niftygui/nifty-examples.jar and /dev/null differ diff --git a/engine/lib/niftygui/nifty-javadoc.jar b/engine/lib/niftygui/nifty-javadoc.jar deleted file mode 100644 index b972da8a4..000000000 Binary files a/engine/lib/niftygui/nifty-javadoc.jar and /dev/null differ diff --git a/engine/lib/niftygui/nifty-style-black.jar b/engine/lib/niftygui/nifty-style-black.jar deleted file mode 100644 index 31e9b7305..000000000 Binary files a/engine/lib/niftygui/nifty-style-black.jar and /dev/null differ diff --git a/engine/lib/niftygui/nifty.jar b/engine/lib/niftygui/nifty.jar deleted file mode 100644 index 5c9a83a67..000000000 Binary files a/engine/lib/niftygui/nifty.jar and /dev/null differ diff --git a/engine/lib/niftygui/xmlpull-xpp3.jar b/engine/lib/niftygui/xmlpull-xpp3.jar deleted file mode 100644 index 99b7aeabb..000000000 Binary files a/engine/lib/niftygui/xmlpull-xpp3.jar and /dev/null differ diff --git a/engine/lib/noise/noise-0.0.1-SNAPSHOT.jar b/engine/lib/noise/noise-0.0.1-SNAPSHOT.jar deleted file mode 100644 index 62dc1f17d..000000000 Binary files a/engine/lib/noise/noise-0.0.1-SNAPSHOT.jar and /dev/null differ diff --git a/engine/lib/openal-soft/jME3-openal-soft-natives-android.jar b/engine/lib/openal-soft/jME3-openal-soft-natives-android.jar deleted file mode 100644 index ee4dec907..000000000 Binary files a/engine/lib/openal-soft/jME3-openal-soft-natives-android.jar and /dev/null differ diff --git a/engine/lib/openal-soft/jarcontent/armeabi-v7a/libopenalsoftjme.so b/engine/lib/openal-soft/jarcontent/armeabi-v7a/libopenalsoftjme.so deleted file mode 100644 index 431d53ed0..000000000 Binary files a/engine/lib/openal-soft/jarcontent/armeabi-v7a/libopenalsoftjme.so and /dev/null differ diff --git a/engine/lib/openal-soft/jarcontent/armeabi/libopenalsoftjme.so b/engine/lib/openal-soft/jarcontent/armeabi/libopenalsoftjme.so deleted file mode 100644 index 498e6c2b2..000000000 Binary files a/engine/lib/openal-soft/jarcontent/armeabi/libopenalsoftjme.so and /dev/null differ diff --git a/engine/lib/openal-soft/jarcontent/x86/libopenalsoftjme.so b/engine/lib/openal-soft/jarcontent/x86/libopenalsoftjme.so deleted file mode 100644 index 5dfdba193..000000000 Binary files a/engine/lib/openal-soft/jarcontent/x86/libopenalsoftjme.so and /dev/null differ diff --git a/engine/lib/swing-layout/swing-layout-1.0.4-doc.zip b/engine/lib/swing-layout/swing-layout-1.0.4-doc.zip deleted file mode 100644 index 6ea4f2b37..000000000 Binary files a/engine/lib/swing-layout/swing-layout-1.0.4-doc.zip and /dev/null differ diff --git a/engine/lib/swing-layout/swing-layout-1.0.4-src.zip b/engine/lib/swing-layout/swing-layout-1.0.4-src.zip deleted file mode 100644 index ec9836ee0..000000000 Binary files a/engine/lib/swing-layout/swing-layout-1.0.4-src.zip and /dev/null differ diff --git a/engine/lib/swing-layout/swing-layout-1.0.4.jar b/engine/lib/swing-layout/swing-layout-1.0.4.jar deleted file mode 100644 index 46fe3a2ee..000000000 Binary files a/engine/lib/swing-layout/swing-layout-1.0.4.jar and /dev/null differ diff --git a/engine/lib/swingext/swing-layout-1.0.3.jar b/engine/lib/swingext/swing-layout-1.0.3.jar deleted file mode 100644 index 6e1b43b36..000000000 Binary files a/engine/lib/swingext/swing-layout-1.0.3.jar and /dev/null differ diff --git a/engine/master-application.jnlp b/engine/master-application.jnlp deleted file mode 100644 index 8316c8763..000000000 --- a/engine/master-application.jnlp +++ /dev/null @@ -1,27 +0,0 @@ - - - ${APPLICATION.TITLE} - ${APPLICATION.VENDOR} - - ${APPLICATION.DESC} - ${APPLICATION.DESC.SHORT} - - - - - - - - - - - - - - - - - - - - diff --git a/engine/mountains.zip b/engine/mountains.zip deleted file mode 100644 index 59b7ce0a3..000000000 Binary files a/engine/mountains.zip and /dev/null differ diff --git a/engine/nbproject/build-bullet-natives.xml b/engine/nbproject/build-bullet-natives.xml deleted file mode 100644 index ae0af118a..000000000 --- a/engine/nbproject/build-bullet-natives.xml +++ /dev/null @@ -1,745 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Downloading bullet source.. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/engine/nbproject/build-impl.xml b/engine/nbproject/build-impl.xml deleted file mode 100644 index 563bd4dde..000000000 --- a/engine/nbproject/build-impl.xml +++ /dev/null @@ -1,1624 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must set src.core.dir - Must set src.core-data.dir - Must set src.core-effects.dir - Must set src.core-plugins.dir - Must set src.desktop.dir - Must set src.terrain.dir - Must set src.jbullet.dir - Must set src.bullet.dir - Must set src.bullet-native.dir - Must set src.bullet-common.dir - Must set src.networking.dir - Must set src.niftygui.dir - Must set src.jogg.dir - Must set src.ogre.dir - Must set src.blender.dir - Must set src.xml.dir - Must set src.tools.dir - Must set src.test.dir - Must set src.lwjgl.dir - Must set src.jogl.dir - Must set src.android.dir - Must set src.openal-soft-native.dir - Must set src.ios.dir - Must set test.test.dir - Must set build.dir - Must set dist.dir - Must set build.classes.dir - Must set dist.javadoc.dir - Must set build.test.classes.dir - Must set build.test.results.dir - Must set build.classes.excludes - Must set dist.jar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must set javac.includes - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - No tests executed. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must set JVM to use for profiling in profiler.info.jvm - Must set profiler agent JVM arguments in profiler.info.jvmargs.agent - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must select some files in the IDE or set javac.includes - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - To run this application from the command line without Ant, try: - - - - - - - java -cp "${run.classpath.with.dist.jar}" ${main.class} - - - - - - - - - - - - - - - - - - - - - - - - - To run this application from the command line without Ant, try: - - java -jar "${dist.jar.resolved}" - - - - - - - - - - - - - - - - - - - - - - - - - Must select one file in the IDE or set run.class - - - - Must select one file in the IDE or set run.class - - - - - - - - - - - - - - - - - - - - - - - Must select one file in the IDE or set debug.class - - - - - Must select one file in the IDE or set debug.class - - - - - Must set fix.includes - - - - - - - - - - This target only works when run from inside the NetBeans IDE. - - - - - - - - - Must select one file in the IDE or set profile.class - This target only works when run from inside the NetBeans IDE. - - - - - - - - - This target only works when run from inside the NetBeans IDE. - - - - - - - - - - - - - This target only works when run from inside the NetBeans IDE. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must select one file in the IDE or set run.class - - - - - - Must select some files in the IDE or set test.includes - - - - - Must select one file in the IDE or set run.class - - - - - Must select one file in the IDE or set applet.url - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must select some files in the IDE or set javac.includes - - - - - - - - - - - - - - - - - - - - Some tests failed; see details above. - - - - - - - - - Must select some files in the IDE or set test.includes - - - - Some tests failed; see details above. - - - - Must select some files in the IDE or set test.class - Must select some method in the IDE or set test.method - - - - Some tests failed; see details above. - - - - - Must select one file in the IDE or set test.class - - - - Must select one file in the IDE or set test.class - Must select some method in the IDE or set test.method - - - - - - - - - - - - - - Must select one file in the IDE or set applet.url - - - - - - - - - Must select one file in the IDE or set applet.url - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/engine/nbproject/build-openal-soft-natives.xml b/engine/nbproject/build-openal-soft-natives.xml deleted file mode 100644 index 573e6057c..000000000 --- a/engine/nbproject/build-openal-soft-natives.xml +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Copying OpenAL Soft source files to build directory from ${openal-soft.include} - - - - - - - - - - - - Copying Android Make and JNI files for OpenAL Soft to build directory from ${openal-soft.source.dir} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/engine/nbproject/bullet-native.properties b/engine/nbproject/bullet-native.properties deleted file mode 100644 index d5220a06d..000000000 --- a/engine/nbproject/bullet-native.properties +++ /dev/null @@ -1,52 +0,0 @@ -##################################################### -# these are the ant build properties for bullet-jme # -##################################################### -bullet.library.name=bulletjme -bullet.library.version=0.9 - -# location of Android NDK if available -ndk.dir=/Users/normenhansen/Documents/Code-Import/android-ndk-r7 - -# change if bullet version changes -bullet.folder=../bullet-2.82-r2704 -bullet.download=http://bullet.googlecode.com/files/bullet-2.82-r2704.zip - -# compile options -bullet.compile.debug=false -# native library compilation options -bullet.osx.compiler=g++ -bullet.osx.syslibroot=/Applications/XCode/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk -#/Developer/SDKs/MacOSX10.6.sdk -# change this to msvc for MS Visual Studio compiler -bullet.windows.compiler=g++ -bullet.linux.compiler=g++ -bullet.solaris.compiler=g++ - -#cross compilation options, disable if just developing / testing on linux -cross.compile=true -cross.compile.target=i686-w64-mingw32 -cross.compile.target64=x86_64-w64-mingw32 -bullet.linux.crosscompiler=g++-cross - -# exec command for cmake and make for different platforms, -# needed to compile bullet before compiling the jme bullet libraries -cmake.windows=cmake -make.windows=mingw32-make -cmake.linux=cmake -make.linux=make -cmake.osx=/opt/local/bin/cmake -make.osx=make - -# native header include directories -bullet.java.include=${java.home}/../include -# OSX has no JRE, only JDK -bullet.osx.java.include=/System/Library/Frameworks/JavaVM.framework/Headers - -# dont change these.. -bullet.bullet.include=${bullet.folder}/src -bullet.build.dir=build/bullet/ -bullet.source.dir=src/bullet-native -bullet.output.base=lib/bullet -bullet.output.dir=${bullet.output.base}/jarcontent/native -bullet.jme.dir=dist -bullet.lib.dir=dist/lib diff --git a/engine/nbproject/configs/JWS_generated.properties b/engine/nbproject/configs/JWS_generated.properties deleted file mode 100644 index 7a873bf68..000000000 --- a/engine/nbproject/configs/JWS_generated.properties +++ /dev/null @@ -1,4 +0,0 @@ -$label=Web Start -$target.debug=jws-debug -$target.run=jws-run -compile.on.save.unsupported.javawebstart=true diff --git a/engine/nbproject/configs/Native_Bullet.properties b/engine/nbproject/configs/Native_Bullet.properties deleted file mode 100644 index 0f00a5c33..000000000 --- a/engine/nbproject/configs/Native_Bullet.properties +++ /dev/null @@ -1,3 +0,0 @@ -$label=Native Bullet -$target.run=run-bullet-native -$target.build=build-bullet-natives diff --git a/engine/nbproject/configs/Native_OpenAL_Soft.properties b/engine/nbproject/configs/Native_OpenAL_Soft.properties deleted file mode 100644 index 30a49da59..000000000 --- a/engine/nbproject/configs/Native_OpenAL_Soft.properties +++ /dev/null @@ -1,2 +0,0 @@ -$label=Native OpenAL Soft -$target.build=build-openal-soft-natives diff --git a/engine/nbproject/genfiles.properties b/engine/nbproject/genfiles.properties deleted file mode 100644 index 0e2da7367..000000000 --- a/engine/nbproject/genfiles.properties +++ /dev/null @@ -1,11 +0,0 @@ -build.xml.data.CRC32=52f8cb9e -build.xml.script.CRC32=34d4c2f2 -build.xml.stylesheet.CRC32=958a1d3e -# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. -# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. -nbproject/build-impl.xml.data.CRC32=4445e182 -nbproject/build-impl.xml.script.CRC32=9284d9f7 -nbproject/build-impl.xml.stylesheet.CRC32=6ddba6b6@1.53.1.46 -nbproject/profiler-build-impl.xml.data.CRC32=aff514c1 -nbproject/profiler-build-impl.xml.script.CRC32=abda56ed -nbproject/profiler-build-impl.xml.stylesheet.CRC32=f10cf54c@1.11.1 diff --git a/engine/nbproject/jnlp-impl.xml b/engine/nbproject/jnlp-impl.xml deleted file mode 100644 index f180fdd71..000000000 --- a/engine/nbproject/jnlp-impl.xml +++ /dev/null @@ -1,414 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - To run this application from the command line without Ant, try: - - javaws "${jnlp.file.resolved}" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/engine/nbproject/openal-soft-native.properties b/engine/nbproject/openal-soft-native.properties deleted file mode 100644 index 7d26e36d1..000000000 --- a/engine/nbproject/openal-soft-native.properties +++ /dev/null @@ -1,23 +0,0 @@ -########################################################## -# these are the ant build properties for openal-soft-jme # -########################################################## -# location of Android NDK if available -ndk.dir=D:/android/android-ndk-r7 - -# directory of OpenAL Soft download -openal-soft.folder=../openalsoft_1_15_1/openal-soft - -# compile options -openal-soft.compile.debug=false - -# native header include directories -openal-soft.java.include=${java.home}/../include - -# dont change these.. -openal-soft.include=${openal-soft.folder} -openal-soft.source.dir=src/openal-soft-native/android -openal-soft.build.dir=build/openal-soft/ -openal-soft.output.base=lib/openal-soft -openal-soft.output.dir=${openal-soft.output.base}/jarcontent -openal-soft.jme.dir=dist -openal-soft.lib.dir=dist/lib diff --git a/engine/nbproject/project.properties b/engine/nbproject/project.properties deleted file mode 100644 index 2064c9974..000000000 --- a/engine/nbproject/project.properties +++ /dev/null @@ -1,169 +0,0 @@ -annotation.processing.enabled=false -annotation.processing.enabled.in.editor=false -annotation.processing.processors.list= -annotation.processing.run.all.processors=true -ant.customtasks.libs=JWSAntTasks -application.homepage=http://www.jmonkeyengine.com/ -application.title=jMonkeyEngine 3.0 -application.vendor=jMonkeyEngine -build.classes.dir=${build.dir}/classes -build.classes.excludes=**/*.java,**/*.form,**/*.m -# This directory is removed when the project is cleaned: -build.dir=build -build.generated.dir=${build.dir}/generated -build.generated.sources.dir=${build.dir}/generated-sources -# Only compile against the classpath explicitly listed here: -build.sysclasspath=ignore -build.test.classes.dir=${build.dir}/test/classes -build.test.results.dir=${build.dir}/test/results -# Uncomment to specify the preferred debugger connection transport: -#debug.transport=dt_socket -debug.classpath=\ - ${run.classpath} -debug.test.classpath=\ - ${run.test.classpath} -# This directory is removed when the project is cleaned: -dist.dir=dist -dist.jar=${dist.dir}/jMonkeyEngine3.jar -dist.javadoc.dir=${dist.dir}/javadoc -endorsed.classpath= -excludes= -file.reference.build-android=build/android -file.reference.build-blender=build/blender -file.reference.build-bullet=build/bullet -file.reference.build-classes=build/classes -file.reference.build-core=build/core -file.reference.build-desktop=build/desktop -file.reference.build-effects=build/effects -file.reference.build-empty=build/empty -file.reference.build-ios=build/ios -file.reference.build-jbullet=build/jbullet -file.reference.build-jogg=build/jogg -file.reference.build-jogl=build/jogl -file.reference.build-lwjgl=build/lwjgl -file.reference.build-networking=build/networking -file.reference.build-niftygui=build/niftygui -file.reference.build-plugins=build/plugins -file.reference.build-terrain=build/terrain -file.reference.src-test-data=src/test-data -includes=** -jar.archive.disabled=${jnlp.enabled} -jar.compress=true -jar.index=${jnlp.enabled} -javac.classpath=\ - ${libs.jogg.classpath}:\ - ${libs.jbullet.classpath}:\ - ${libs.lwjgl.classpath}:\ - ${libs.niftygui1.3.classpath}:\ - ${libs.jme3-test-data.classpath}:\ - ${libs.android.classpath}:\ - ${libs.bullet.classpath}:\ - ${libs.jogl2.classpath}:\ - ${libs.openalsoft.classpath} -# Space-separated list of extra javac options -javac.compilerargs= -javac.deprecation=false -javac.processorpath=\ - ${javac.classpath} -javac.source=1.5 -javac.target=1.5 -javac.test.classpath=\ - ${libs.junit_4.classpath}:\ - ${libs.EasyMock.classpath}:\ - ${javac.classpath}:\ - ${file.reference.build-android}:\ - ${file.reference.build-blender}:\ - ${file.reference.build-bullet}:\ - ${file.reference.build-classes}:\ - ${file.reference.build-core}:\ - ${file.reference.build-desktop}:\ - ${file.reference.build-effects}:\ - ${file.reference.build-empty}:\ - ${file.reference.build-ios}:\ - ${file.reference.build-jbullet}:\ - ${file.reference.build-jogg}:\ - ${file.reference.build-jogl}:\ - ${file.reference.build-lwjgl}:\ - ${file.reference.build-networking}:\ - ${file.reference.build-niftygui}:\ - ${file.reference.build-plugins}:\ - ${file.reference.build-terrain}:\ - ${build.classes.dir} -javadoc.additionalparam=-protected -javadoc.author=false -javadoc.encoding=${source.encoding} -javadoc.noindex=false -javadoc.nonavbar=false -javadoc.notree=false -javadoc.private=false -javadoc.splitindex=true -javadoc.use=true -javadoc.version=false -javadoc.windowtitle=jMonkeyEngine3 -jaxbwiz.endorsed.dirs="${netbeans.home}/../ide12/modules/ext/jaxb/api" -jnlp.applet.class=jme3test.awt.AppHarness -jnlp.applet.height=300 -jnlp.applet.width=300 -jnlp.codebase.type=user -jnlp.codebase.user=http://jmonkeyengine.com/javawebstart/ -jnlp.descriptor=application -jnlp.enabled=false -jnlp.icon=/Users/normenhansen/Pictures/jme/icons/jme-logo48.png -jnlp.mixed.code=default -jnlp.offline-allowed=true -jnlp.signed=true -jnlp.signing=generated -jnlp.signing.alias=engine -jnlp.signing.keystore= -main.class=jme3test.TestChooser -manifest.file=MANIFEST.MF -meta.inf.dir=${src.dir}/META-INF -mkdist.disabled=false -platform.active=default_platform -run.classpath=\ - ${javac.classpath}:\ - ${build.classes.dir}:\ - ${build.dir}/core:\ - ${build.dir}/effects:\ - ${build.dir}/networking:\ - ${build.dir}/plugins:\ - ${build.dir}/jogg:\ - ${build.dir}/desktop:\ - ${build.dir}/blender:\ - ${build.dir}/terrain:\ - ${build.dir}/jbullet:\ - ${build.dir}/bullet:\ - ${build.dir}/niftygui:\ - ${build.dir}/lwjgl:\ - ${build.dir}/jogl:\ - ${build.dir}/android:\ - ${build.dir}/ios -run.jvmargs=-Xms128m -Xmx128m -XX:MaxDirectMemorySize=256M -run.test.classpath=\ - ${javac.test.classpath}:\ - ${build.test.classes.dir} -source.encoding=UTF-8 -src.android.dir=src/android -src.blender.dir=src/blender -src.bullet-common.dir=src/bullet-common -src.bullet-native.dir=src/bullet-native -src.bullet.dir=src/bullet -src.core-data.dir=src/core-data -src.core-effects.dir=src/core-effects -src.core-plugins.dir=src/core-plugins -src.core.dir=src/core -src.desktop.dir=src/desktop -src.ios.dir=src/ios -src.jbullet.dir=src/jbullet -src.jogg.dir=src/jogg -src.jogl.dir=src/jogl -src.lwjgl.dir=src/lwjgl -src.networking.dir=src/networking -src.niftygui.dir=src/niftygui -src.ogre.dir=src/ogre -src.openal-soft-native.dir=src\\openal-soft-native -src.terrain.dir=src/terrain -src.test.dir=src/test -src.tools.dir=src/tools -src.xml.dir=src/xml -test.test.dir=test diff --git a/engine/nbproject/project.xml b/engine/nbproject/project.xml deleted file mode 100644 index ec06dd238..000000000 --- a/engine/nbproject/project.xml +++ /dev/null @@ -1,46 +0,0 @@ - - - org.netbeans.modules.java.j2seproject - - - - - - - - jMonkeyEngine3 - 1.6.5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ./lib/nblibraries.properties - - - diff --git a/engine/preview-application.html b/engine/preview-application.html deleted file mode 100644 index 4834dd87b..000000000 --- a/engine/preview-application.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - Test page for launching the application via JNLP - - -

    Test page for launching the application via JNLP

    - - - - - - diff --git a/engine/quake3level.zip b/engine/quake3level.zip deleted file mode 100644 index 291ff1182..000000000 Binary files a/engine/quake3level.zip and /dev/null differ diff --git a/engine/src/bullet-native/android/Android.mk b/engine/src/bullet-native/android/Android.mk deleted file mode 100644 index 45258d04b..000000000 --- a/engine/src/bullet-native/android/Android.mk +++ /dev/null @@ -1,260 +0,0 @@ -# /* -# Bullet Continuous Collision Detection and Physics Library for Android NDK -# Copyright (c) 2006-2009 Noritsuna Imamura
    http://www.siprop.org/ -# -# This software is provided 'as-is', without any express or implied warranty. -# In no event will the authors be held liable for any damages arising from the use of this software. -# Permission is granted to anyone to use this software for any purpose, -# including commercial applications, and to alter it and redistribute it freely, -# subject to the following restrictions: -# -# 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. -# 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. -# 3. This notice may not be removed or altered from any source distribution. -# */ -LOCAL_PATH:= $(call my-dir) -JME3_PATH:= -BULLET_PATH:= - -include $(CLEAR_VARS) - -LOCAL_MODULE := bulletjme -LOCAL_C_INCLUDES := $(BULLET_PATH)/\ - $(BULLET_PATH)/BulletCollision/BroadphaseCollision\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch\ - $(BULLET_PATH)/BulletCollision/CollisionShapes\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver\ - $(BULLET_PATH)/BulletDynamics/Dynamics\ - $(BULLET_PATH)/BulletDynamics/Vehicle\ - $(BULLET_PATH)/LinearMath\ - $(BULLET_PATH)/BulletCollision\ - $(BULLET_PATH)/BulletDynamics\ - $(BULLET_PATH)/BulletMultiThreaded\ - $(BULLET_PATH)/BulletSoftBody\ - $(BULLET_PATH)/ibmsdk\ - $(BULLET_PATH)/LinearMath\ - $(BULLET_PATH)/MiniCL\ - $(BULLET_PATH)/vectormath\ - $(BULLET_PATH)/BulletCollision/BroadphaseCollision\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch\ - $(BULLET_PATH)/BulletCollision/CollisionShapes\ - $(BULLET_PATH)/BulletCollision/Gimpact\ - $(BULLET_PATH)/BulletCollision/ibmsdk\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision\ - $(BULLET_PATH)/BulletDynamics/Character\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver\ - $(BULLET_PATH)/BulletDynamics/Dynamics\ - $(BULLET_PATH)/BulletDynamics/ibmsdk\ - $(BULLET_PATH)/BulletDynamics/Vehicle\ - $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers\ - $(BULLET_PATH)/BulletMultiThreaded/out\ - $(BULLET_PATH)/BulletMultiThreaded/SpuNarrowPhaseCollisionTask\ - $(BULLET_PATH)/BulletMultiThreaded/SpuSampleTask\ - $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/CPU\ - $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/DX11\ - $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL\ - $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/DX11/HLSL\ - $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/AMD\ - $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/Apple\ - $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL\ - $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/NVidia\ - $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC\ - $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10\ - $(BULLET_PATH)/LinearMath/ibmsdk\ - $(BULLET_PATH)/MiniCL/MiniCLTask\ - $(BULLET_PATH)/vectormath/scalar\ - $(BULLET_PATH)/vectormath/sse - -LOCAL_CFLAGS := $(LOCAL_C_INCLUDES:%=-I%) -LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -ldl -lm -llog - -LOCAL_SRC_FILES := $(JME3_PATH)/com_jme3_bullet_collision_PhysicsCollisionEvent.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_PhysicsCollisionObject.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_BoxCollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_CapsuleCollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_CollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_CompoundCollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_ConeCollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_CylinderCollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_GImpactCollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_HeightfieldCollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_HullCollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_MeshCollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_PlaneCollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_SimplexCollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_collision_shapes_SphereCollisionShape.cpp\ - $(JME3_PATH)/com_jme3_bullet_joints_ConeJoint.cpp\ - $(JME3_PATH)/com_jme3_bullet_joints_HingeJoint.cpp\ - $(JME3_PATH)/com_jme3_bullet_joints_motors_RotationalLimitMotor.cpp\ - $(JME3_PATH)/com_jme3_bullet_joints_motors_TranslationalLimitMotor.cpp\ - $(JME3_PATH)/com_jme3_bullet_joints_PhysicsJoint.cpp\ - $(JME3_PATH)/com_jme3_bullet_joints_Point2PointJoint.cpp\ - $(JME3_PATH)/com_jme3_bullet_joints_SixDofJoint.cpp\ - $(JME3_PATH)/com_jme3_bullet_joints_SixDofSpringJoint.cpp\ - $(JME3_PATH)/com_jme3_bullet_joints_SliderJoint.cpp\ - $(JME3_PATH)/com_jme3_bullet_objects_infos_RigidBodyMotionState.cpp\ - $(JME3_PATH)/com_jme3_bullet_objects_PhysicsCharacter.cpp\ - $(JME3_PATH)/com_jme3_bullet_objects_PhysicsGhostObject.cpp\ - $(JME3_PATH)/com_jme3_bullet_objects_PhysicsRigidBody.cpp\ - $(JME3_PATH)/com_jme3_bullet_objects_PhysicsVehicle.cpp\ - $(JME3_PATH)/com_jme3_bullet_objects_VehicleWheel.cpp\ - $(JME3_PATH)/com_jme3_bullet_PhysicsSpace.cpp\ - $(JME3_PATH)/com_jme3_bullet_util_DebugShapeFactory.cpp\ - $(JME3_PATH)/com_jme3_bullet_util_NativeMeshUtil.cpp\ - $(JME3_PATH)/jmeBulletUtil.cpp\ - $(JME3_PATH)/jmeClasses.cpp\ - $(JME3_PATH)/jmeMotionState.cpp\ - $(JME3_PATH)/jmePhysicsSpace.cpp\ - $(BULLET_PATH)/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp\ - $(BULLET_PATH)/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp\ - $(BULLET_PATH)/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/BroadphaseCollision/btDbvt.cpp\ - $(BULLET_PATH)/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp\ - $(BULLET_PATH)/BulletCollision/BroadphaseCollision/btDispatcher.cpp\ - $(BULLET_PATH)/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp\ - $(BULLET_PATH)/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp\ - $(BULLET_PATH)/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp\ - $(BULLET_PATH)/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btCollisionObject.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btCollisionWorld.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btGhostObject.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btManifoldResult.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/btUnionFind.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btBox2dShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btBoxShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btCapsuleShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btCollisionShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btCompoundShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btConcaveShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btConeShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btConvex2dShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btConvexHullShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btConvexInternalShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btConvexShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btCylinderShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btEmptyShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btMultiSphereShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btOptimizedBvh.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btShapeHull.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btSphereShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btTetrahedronShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btTriangleBuffer.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btTriangleCallback.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btTriangleMesh.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp\ - $(BULLET_PATH)/BulletCollision/CollisionShapes/btUniformScalingShape.cpp\ - $(BULLET_PATH)/BulletCollision/Gimpact/btContactProcessing.cpp\ - $(BULLET_PATH)/BulletCollision/Gimpact/btGenericPoolAllocator.cpp\ - $(BULLET_PATH)/BulletCollision/Gimpact/btGImpactBvh.cpp\ - $(BULLET_PATH)/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp\ - $(BULLET_PATH)/BulletCollision/Gimpact/btGImpactShape.cpp\ - $(BULLET_PATH)/BulletCollision/Gimpact/btTriangleShapeEx.cpp\ - $(BULLET_PATH)/BulletCollision/Gimpact/gim_box_set.cpp\ - $(BULLET_PATH)/BulletCollision/Gimpact/gim_contact.cpp\ - $(BULLET_PATH)/BulletCollision/Gimpact/gim_memory.cpp\ - $(BULLET_PATH)/BulletCollision/Gimpact/gim_tri_collision.cpp\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp\ - $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp\ - $(BULLET_PATH)/BulletDynamics/Character/btKinematicCharacterController.cpp\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver/btContactConstraint.cpp\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp\ - $(BULLET_PATH)/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp\ - $(BULLET_PATH)/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp\ - $(BULLET_PATH)/BulletDynamics/Dynamics/btRigidBody.cpp\ - $(BULLET_PATH)/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp\ - $(BULLET_PATH)/BulletDynamics/Dynamics/Bullet-C-API.cpp\ - $(BULLET_PATH)/BulletDynamics/Vehicle/btRaycastVehicle.cpp\ - $(BULLET_PATH)/BulletDynamics/Vehicle/btWheelInfo.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/btGpu3DGridBroadphase.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/btParallelConstraintSolver.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/btThreadSupportInterface.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/PosixThreadSupport.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SequentialThreadSupport.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuCollisionObjectWrapper.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuCollisionTaskProcess.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuFakeDma.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuLibspe2Support.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuSampleTaskProcess.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/Win32ThreadSupport.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp\ - $(BULLET_PATH)/BulletMultiThreaded/SpuSampleTask/SpuSampleTask.cpp\ - $(BULLET_PATH)/BulletSoftBody/btDefaultSoftBodySolver.cpp\ - $(BULLET_PATH)/BulletSoftBody/btSoftBody.cpp\ - $(BULLET_PATH)/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletSoftBody/btSoftBodyHelpers.cpp\ - $(BULLET_PATH)/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp\ - $(BULLET_PATH)/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp\ - $(BULLET_PATH)/BulletSoftBody/btSoftRigidDynamicsWorld.cpp\ - $(BULLET_PATH)/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp\ - $(BULLET_PATH)/LinearMath/btAlignedAllocator.cpp\ - $(BULLET_PATH)/LinearMath/btConvexHull.cpp\ - $(BULLET_PATH)/LinearMath/btConvexHullComputer.cpp\ - $(BULLET_PATH)/LinearMath/btGeometryUtil.cpp\ - $(BULLET_PATH)/LinearMath/btQuickprof.cpp\ - $(BULLET_PATH)/LinearMath/btSerializer.cpp\ - $(BULLET_PATH)/LinearMath/btPolarDecomposition.cpp\ - $(BULLET_PATH)/MiniCL/MiniCL.cpp\ - $(BULLET_PATH)/MiniCL/MiniCLTaskScheduler.cpp\ - $(BULLET_PATH)/MiniCL/MiniCLTask/MiniCLTask.cpp -# $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/CPU/btSoftBodySolver_CPU.cpp\ -# $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/MiniCLTaskWrap.cpp\ - -include $(BUILD_SHARED_LIBRARY) diff --git a/engine/src/ios/com/jme3/audio/android/AL.java b/engine/src/ios/com/jme3/audio/android/AL.java deleted file mode 100644 index d8fea3933..000000000 --- a/engine/src/ios/com/jme3/audio/android/AL.java +++ /dev/null @@ -1,1054 +0,0 @@ -package com.jme3.audio.android; - -/** - * - * @author iwgeric - */ -public class AL { - - - - /* ********** */ - /* FROM ALC.h */ - /* ********** */ - -// typedef struct ALCdevice_struct ALCdevice; -// typedef struct ALCcontext_struct ALCcontext; - - - /** - * No error - */ - static final int ALC_NO_ERROR = 0; - - /** - * No device - */ - static final int ALC_INVALID_DEVICE = 0xA001; - - /** - * invalid context ID - */ - static final int ALC_INVALID_CONTEXT = 0xA002; - - /** - * bad enum - */ - static final int ALC_INVALID_ENUM = 0xA003; - - /** - * bad value - */ - static final int ALC_INVALID_VALUE = 0xA004; - - /** - * Out of memory. - */ - static final int ALC_OUT_OF_MEMORY = 0xA005; - - - /** - * The Specifier string for default device - */ - static final int ALC_DEFAULT_DEVICE_SPECIFIER = 0x1004; - static final int ALC_DEVICE_SPECIFIER = 0x1005; - static final int ALC_EXTENSIONS = 0x1006; - - static final int ALC_MAJOR_VERSION = 0x1000; - static final int ALC_MINOR_VERSION = 0x1001; - - static final int ALC_ATTRIBUTES_SIZE = 0x1002; - static final int ALC_ALL_ATTRIBUTES = 0x1003; - - - /** - * Capture extension - */ - static final int ALC_EXT_CAPTURE = 1; - static final int ALC_CAPTURE_DEVICE_SPECIFIER = 0x310; - static final int ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER = 0x311; - static final int ALC_CAPTURE_SAMPLES = 0x312; - - - /** - * ALC_ENUMERATE_ALL_EXT enums - */ - static final int ALC_ENUMERATE_ALL_EXT = 1; - static final int ALC_DEFAULT_ALL_DEVICES_SPECIFIER = 0x1012; - static final int ALC_ALL_DEVICES_SPECIFIER = 0x1013; - - - /* ********** */ - /* FROM AL.h */ - /* ********** */ - -/** Boolean False. */ - static final int AL_FALSE = 0; - -/** Boolean True. */ - static final int AL_TRUE = 1; - -/* "no distance model" or "no buffer" */ - static final int AL_NONE = 0; - -/** Indicate Source has relative coordinates. */ - static final int AL_SOURCE_RELATIVE = 0x202; - - - -/** - * Directional source, inner cone angle, in degrees. - * Range: [0-360] - * Default: 360 - */ - static final int AL_CONE_INNER_ANGLE = 0x1001; - -/** - * Directional source, outer cone angle, in degrees. - * Range: [0-360] - * Default: 360 - */ - static final int AL_CONE_OUTER_ANGLE = 0x1002; - -/** - * Specify the pitch to be applied at source. - * Range: [0.5-2.0] - * Default: 1.0 - */ - static final int AL_PITCH = 0x1003; - -/** - * Specify the current location in three dimensional space. - * OpenAL, like OpenGL, uses a right handed coordinate system, - * where in a frontal default view X (thumb) points right, - * Y points up (index finger), and Z points towards the - * viewer/camera (middle finger). - * To switch from a left handed coordinate system, flip the - * sign on the Z coordinate. - * Listener position is always in the world coordinate system. - */ - static final int AL_POSITION = 0x1004; - -/** Specify the current direction. */ - static final int AL_DIRECTION = 0x1005; - -/** Specify the current velocity in three dimensional space. */ - static final int AL_VELOCITY = 0x1006; - -/** - * Indicate whether source is looping. - * Type: ALboolean? - * Range: [AL_TRUE, AL_FALSE] - * Default: FALSE. - */ - static final int AL_LOOPING = 0x1007; - -/** - * Indicate the buffer to provide sound samples. - * Type: ALuint. - * Range: any valid Buffer id. - */ - static final int AL_BUFFER = 0x1009; - -/** - * Indicate the gain (volume amplification) applied. - * Type: ALfloat. - * Range: ]0.0- ] - * A value of 1.0 means un-attenuated/unchanged. - * Each division by 2 equals an attenuation of -6dB. - * Each multiplicaton with 2 equals an amplification of +6dB. - * A value of 0.0 is meaningless with respect to a logarithmic - * scale; it is interpreted as zero volume - the channel - * is effectively disabled. - */ - static final int AL_GAIN = 0x100A; - -/* - * Indicate minimum source attenuation - * Type: ALfloat - * Range: [0.0 - 1.0] - * - * Logarthmic - */ - static final int AL_MIN_GAIN = 0x100D; - -/** - * Indicate maximum source attenuation - * Type: ALfloat - * Range: [0.0 - 1.0] - * - * Logarthmic - */ - static final int AL_MAX_GAIN = 0x100E; - -/** - * Indicate listener orientation. - * - * at/up - */ - static final int AL_ORIENTATION = 0x100F; - -/** - * Source state information. - */ - static final int AL_SOURCE_STATE = 0x1010; - static final int AL_INITIAL = 0x1011; - static final int AL_PLAYING = 0x1012; - static final int AL_PAUSED = 0x1013; - static final int AL_STOPPED = 0x1014; - -/** - * Buffer Queue params - */ - static final int AL_BUFFERS_QUEUED = 0x1015; - static final int AL_BUFFERS_PROCESSED = 0x1016; - -/** - * Source buffer position information - */ - static final int AL_SEC_OFFSET = 0x1024; - static final int AL_SAMPLE_OFFSET = 0x1025; - static final int AL_BYTE_OFFSET = 0x1026; - -/* - * Source type (Static, Streaming or undetermined) - * Source is Static if a Buffer has been attached using AL_BUFFER - * Source is Streaming if one or more Buffers have been attached using alSourceQueueBuffers - * Source is undetermined when it has the NULL buffer attached - */ - static final int AL_SOURCE_TYPE = 0x1027; - static final int AL_STATIC = 0x1028; - static final int AL_STREAMING = 0x1029; - static final int AL_UNDETERMINED = 0x1030; - -/** Sound samples: format specifier. */ - static final int AL_FORMAT_MONO8 = 0x1100; - static final int AL_FORMAT_MONO16 = 0x1101; - static final int AL_FORMAT_STEREO8 = 0x1102; - static final int AL_FORMAT_STEREO16 = 0x1103; - -/** - * source specific reference distance - * Type: ALfloat - * Range: 0.0 - +inf - * - * At 0.0, no distance attenuation occurs. Default is - * 1.0. - */ - static final int AL_REFERENCE_DISTANCE = 0x1020; - -/** - * source specific rolloff factor - * Type: ALfloat - * Range: 0.0 - +inf - * - */ - static final int AL_ROLLOFF_FACTOR = 0x1021; - -/** - * Directional source, outer cone gain. - * - * Default: 0.0 - * Range: [0.0 - 1.0] - * Logarithmic - */ - static final int AL_CONE_OUTER_GAIN = 0x1022; - -/** - * Indicate distance above which sources are not - * attenuated using the inverse clamped distance model. - * - * Default: +inf - * Type: ALfloat - * Range: 0.0 - +inf - */ - static final int AL_MAX_DISTANCE = 0x1023; - -/** - * Sound samples: frequency, in units of Hertz [Hz]. - * This is the number of samples per second. Half of the - * sample frequency marks the maximum significant - * frequency component. - */ - static final int AL_FREQUENCY = 0x2001; - static final int AL_BITS = 0x2002; - static final int AL_CHANNELS = 0x2003; - static final int AL_SIZE = 0x2004; - -/** - * Buffer state. - * - * Not supported for public use (yet). - */ - static final int AL_UNUSED = 0x2010; - static final int AL_PENDING = 0x2011; - static final int AL_PROCESSED = 0x2012; - - -/** Errors: No Error. */ - static final int AL_NO_ERROR = 0; - -/** - * Invalid Name paramater passed to AL call. - */ - static final int AL_INVALID_NAME = 0xA001; - -/** - * Invalid parameter passed to AL call. - */ - static final int AL_INVALID_ENUM = 0xA002; - -/** - * Invalid enum parameter value. - */ - static final int AL_INVALID_VALUE = 0xA003; - -/** - * Illegal call. - */ - static final int AL_INVALID_OPERATION = 0xA004; - - -/** - * No mojo. - */ - static final int AL_OUT_OF_MEMORY = 0xA005; - - -/** Context strings: Vendor Name. */ - static final int AL_VENDOR = 0xB001; - static final int AL_VERSION = 0xB002; - static final int AL_RENDERER = 0xB003; - static final int AL_EXTENSIONS = 0xB004; - -/** Global tweakage. */ - -/** - * Doppler scale. Default 1.0 - */ - static final int AL_DOPPLER_FACTOR = 0xC000; - -/** - * Tweaks speed of propagation. - */ - static final int AL_DOPPLER_VELOCITY = 0xC001; - -/** - * Speed of Sound in units per second - */ - static final int AL_SPEED_OF_SOUND = 0xC003; - -/** - * Distance models - * - * used in conjunction with DistanceModel - * - * implicit: NONE, which disances distance attenuation. - */ - static final int AL_DISTANCE_MODEL = 0xD000; - static final int AL_INVERSE_DISTANCE = 0xD001; - static final int AL_INVERSE_DISTANCE_CLAMPED = 0xD002; - static final int AL_LINEAR_DISTANCE = 0xD003; - static final int AL_LINEAR_DISTANCE_CLAMPED = 0xD004; - static final int AL_EXPONENT_DISTANCE = 0xD005; - static final int AL_EXPONENT_DISTANCE_CLAMPED = 0xD006; - - /* ********** */ - /* FROM efx.h */ - /* ********** */ - - static final String ALC_EXT_EFX_NAME = "ALC_EXT_EFX"; - - static final int ALC_EFX_MAJOR_VERSION = 0x20001; - static final int ALC_EFX_MINOR_VERSION = 0x20002; - static final int ALC_MAX_AUXILIARY_SENDS = 0x20003; - - -///* Listener properties. */ -//#define AL_METERS_PER_UNIT 0x20004 -// -///* Source properties. */ - static final int AL_DIRECT_FILTER = 0x20005; - static final int AL_AUXILIARY_SEND_FILTER = 0x20006; -//#define AL_AIR_ABSORPTION_FACTOR 0x20007 -//#define AL_ROOM_ROLLOFF_FACTOR 0x20008 -//#define AL_CONE_OUTER_GAINHF 0x20009 - static final int AL_DIRECT_FILTER_GAINHF_AUTO = 0x2000A; -//#define AL_AUXILIARY_SEND_FILTER_GAIN_AUTO 0x2000B -//#define AL_AUXILIARY_SEND_FILTER_GAINHF_AUTO 0x2000C -// -// -///* Effect properties. */ -// -///* Reverb effect parameters */ - static final int AL_REVERB_DENSITY = 0x0001; - static final int AL_REVERB_DIFFUSION = 0x0002; - static final int AL_REVERB_GAIN = 0x0003; - static final int AL_REVERB_GAINHF = 0x0004; - static final int AL_REVERB_DECAY_TIME = 0x0005; - static final int AL_REVERB_DECAY_HFRATIO = 0x0006; - static final int AL_REVERB_REFLECTIONS_GAIN = 0x0007; - static final int AL_REVERB_REFLECTIONS_DELAY = 0x0008; - static final int AL_REVERB_LATE_REVERB_GAIN = 0x0009; - static final int AL_REVERB_LATE_REVERB_DELAY = 0x000A; - static final int AL_REVERB_AIR_ABSORPTION_GAINHF = 0x000B; - static final int AL_REVERB_ROOM_ROLLOFF_FACTOR = 0x000C; - static final int AL_REVERB_DECAY_HFLIMIT = 0x000D; - -///* EAX Reverb effect parameters */ -//#define AL_EAXREVERB_DENSITY 0x0001 -//#define AL_EAXREVERB_DIFFUSION 0x0002 -//#define AL_EAXREVERB_GAIN 0x0003 -//#define AL_EAXREVERB_GAINHF 0x0004 -//#define AL_EAXREVERB_GAINLF 0x0005 -//#define AL_EAXREVERB_DECAY_TIME 0x0006 -//#define AL_EAXREVERB_DECAY_HFRATIO 0x0007 -//#define AL_EAXREVERB_DECAY_LFRATIO 0x0008 -//#define AL_EAXREVERB_REFLECTIONS_GAIN 0x0009 -//#define AL_EAXREVERB_REFLECTIONS_DELAY 0x000A -//#define AL_EAXREVERB_REFLECTIONS_PAN 0x000B -//#define AL_EAXREVERB_LATE_REVERB_GAIN 0x000C -//#define AL_EAXREVERB_LATE_REVERB_DELAY 0x000D -//#define AL_EAXREVERB_LATE_REVERB_PAN 0x000E -//#define AL_EAXREVERB_ECHO_TIME 0x000F -//#define AL_EAXREVERB_ECHO_DEPTH 0x0010 -//#define AL_EAXREVERB_MODULATION_TIME 0x0011 -//#define AL_EAXREVERB_MODULATION_DEPTH 0x0012 -//#define AL_EAXREVERB_AIR_ABSORPTION_GAINHF 0x0013 -//#define AL_EAXREVERB_HFREFERENCE 0x0014 -//#define AL_EAXREVERB_LFREFERENCE 0x0015 -//#define AL_EAXREVERB_ROOM_ROLLOFF_FACTOR 0x0016 -//#define AL_EAXREVERB_DECAY_HFLIMIT 0x0017 -// -///* Chorus effect parameters */ -//#define AL_CHORUS_WAVEFORM 0x0001 -//#define AL_CHORUS_PHASE 0x0002 -//#define AL_CHORUS_RATE 0x0003 -//#define AL_CHORUS_DEPTH 0x0004 -//#define AL_CHORUS_FEEDBACK 0x0005 -//#define AL_CHORUS_DELAY 0x0006 -// -///* Distortion effect parameters */ -//#define AL_DISTORTION_EDGE 0x0001 -//#define AL_DISTORTION_GAIN 0x0002 -//#define AL_DISTORTION_LOWPASS_CUTOFF 0x0003 -//#define AL_DISTORTION_EQCENTER 0x0004 -//#define AL_DISTORTION_EQBANDWIDTH 0x0005 -// -///* Echo effect parameters */ -//#define AL_ECHO_DELAY 0x0001 -//#define AL_ECHO_LRDELAY 0x0002 -//#define AL_ECHO_DAMPING 0x0003 -//#define AL_ECHO_FEEDBACK 0x0004 -//#define AL_ECHO_SPREAD 0x0005 -// -///* Flanger effect parameters */ -//#define AL_FLANGER_WAVEFORM 0x0001 -//#define AL_FLANGER_PHASE 0x0002 -//#define AL_FLANGER_RATE 0x0003 -//#define AL_FLANGER_DEPTH 0x0004 -//#define AL_FLANGER_FEEDBACK 0x0005 -//#define AL_FLANGER_DELAY 0x0006 -// -///* Frequency shifter effect parameters */ -//#define AL_FREQUENCY_SHIFTER_FREQUENCY 0x0001 -//#define AL_FREQUENCY_SHIFTER_LEFT_DIRECTION 0x0002 -//#define AL_FREQUENCY_SHIFTER_RIGHT_DIRECTION 0x0003 -// -///* Vocal morpher effect parameters */ -//#define AL_VOCAL_MORPHER_PHONEMEA 0x0001 -//#define AL_VOCAL_MORPHER_PHONEMEA_COARSE_TUNING 0x0002 -//#define AL_VOCAL_MORPHER_PHONEMEB 0x0003 -//#define AL_VOCAL_MORPHER_PHONEMEB_COARSE_TUNING 0x0004 -//#define AL_VOCAL_MORPHER_WAVEFORM 0x0005 -//#define AL_VOCAL_MORPHER_RATE 0x0006 -// -///* Pitchshifter effect parameters */ -//#define AL_PITCH_SHIFTER_COARSE_TUNE 0x0001 -//#define AL_PITCH_SHIFTER_FINE_TUNE 0x0002 -// -///* Ringmodulator effect parameters */ -//#define AL_RING_MODULATOR_FREQUENCY 0x0001 -//#define AL_RING_MODULATOR_HIGHPASS_CUTOFF 0x0002 -//#define AL_RING_MODULATOR_WAVEFORM 0x0003 -// -///* Autowah effect parameters */ -//#define AL_AUTOWAH_ATTACK_TIME 0x0001 -//#define AL_AUTOWAH_RELEASE_TIME 0x0002 -//#define AL_AUTOWAH_RESONANCE 0x0003 -//#define AL_AUTOWAH_PEAK_GAIN 0x0004 -// -///* Compressor effect parameters */ -//#define AL_COMPRESSOR_ONOFF 0x0001 -// -///* Equalizer effect parameters */ -//#define AL_EQUALIZER_LOW_GAIN 0x0001 -//#define AL_EQUALIZER_LOW_CUTOFF 0x0002 -//#define AL_EQUALIZER_MID1_GAIN 0x0003 -//#define AL_EQUALIZER_MID1_CENTER 0x0004 -//#define AL_EQUALIZER_MID1_WIDTH 0x0005 -//#define AL_EQUALIZER_MID2_GAIN 0x0006 -//#define AL_EQUALIZER_MID2_CENTER 0x0007 -//#define AL_EQUALIZER_MID2_WIDTH 0x0008 -//#define AL_EQUALIZER_HIGH_GAIN 0x0009 -//#define AL_EQUALIZER_HIGH_CUTOFF 0x000A -// -///* Effect type */ -//#define AL_EFFECT_FIRST_PARAMETER 0x0000 -//#define AL_EFFECT_LAST_PARAMETER 0x8000 - static final int AL_EFFECT_TYPE = 0x8001; -// -///* Effect types, used with the AL_EFFECT_TYPE property */ -//#define AL_EFFECT_NULL 0x0000 - static final int AL_EFFECT_REVERB = 0x0001; -//#define AL_EFFECT_CHORUS 0x0002 -//#define AL_EFFECT_DISTORTION 0x0003 -//#define AL_EFFECT_ECHO 0x0004 -//#define AL_EFFECT_FLANGER 0x0005 -//#define AL_EFFECT_FREQUENCY_SHIFTER 0x0006 -//#define AL_EFFECT_VOCAL_MORPHER 0x0007 -//#define AL_EFFECT_PITCH_SHIFTER 0x0008 -//#define AL_EFFECT_RING_MODULATOR 0x0009 -//#define AL_EFFECT_AUTOWAH 0x000A -//#define AL_EFFECT_COMPRESSOR 0x000B -//#define AL_EFFECT_EQUALIZER 0x000C -//#define AL_EFFECT_EAXREVERB 0x8000 -// -///* Auxiliary Effect Slot properties. */ - static final int AL_EFFECTSLOT_EFFECT = 0x0001; -//#define AL_EFFECTSLOT_GAIN 0x0002 -//#define AL_EFFECTSLOT_AUXILIARY_SEND_AUTO 0x0003 -// -///* NULL Auxiliary Slot ID to disable a source send. */ -//#define AL_EFFECTSLOT_NULL 0x0000 -// -// -///* Filter properties. */ -// -///* Lowpass filter parameters */ - static final int AL_LOWPASS_GAIN = 0x0001; - static final int AL_LOWPASS_GAINHF = 0x0002; -// -///* Highpass filter parameters */ -//#define AL_HIGHPASS_GAIN 0x0001 -//#define AL_HIGHPASS_GAINLF 0x0002 -// -///* Bandpass filter parameters */ -//#define AL_BANDPASS_GAIN 0x0001 -//#define AL_BANDPASS_GAINLF 0x0002 -//#define AL_BANDPASS_GAINHF 0x0003 -// -///* Filter type */ -//#define AL_FILTER_FIRST_PARAMETER 0x0000 -//#define AL_FILTER_LAST_PARAMETER 0x8000 - static final int AL_FILTER_TYPE = 0x8001; -// -///* Filter types, used with the AL_FILTER_TYPE property */ - static final int AL_FILTER_NULL = 0x0000; - static final int AL_FILTER_LOWPASS = 0x0001; - static final int AL_FILTER_HIGHPASS = 0x0002; -//#define AL_FILTER_BANDPASS 0x0003 -// -///* Filter ranges and defaults. */ -// -///* Lowpass filter */ -//#define AL_LOWPASS_MIN_GAIN (0.0f) -//#define AL_LOWPASS_MAX_GAIN (1.0f) -//#define AL_LOWPASS_DEFAULT_GAIN (1.0f) -// -//#define AL_LOWPASS_MIN_GAINHF (0.0f) -//#define AL_LOWPASS_MAX_GAINHF (1.0f) -//#define AL_LOWPASS_DEFAULT_GAINHF (1.0f) -// -///* Highpass filter */ -//#define AL_HIGHPASS_MIN_GAIN (0.0f) -//#define AL_HIGHPASS_MAX_GAIN (1.0f) -//#define AL_HIGHPASS_DEFAULT_GAIN (1.0f) -// -//#define AL_HIGHPASS_MIN_GAINLF (0.0f) -//#define AL_HIGHPASS_MAX_GAINLF (1.0f) -//#define AL_HIGHPASS_DEFAULT_GAINLF (1.0f) -// -///* Bandpass filter */ -//#define AL_BANDPASS_MIN_GAIN (0.0f) -//#define AL_BANDPASS_MAX_GAIN (1.0f) -//#define AL_BANDPASS_DEFAULT_GAIN (1.0f) -// -//#define AL_BANDPASS_MIN_GAINHF (0.0f) -//#define AL_BANDPASS_MAX_GAINHF (1.0f) -//#define AL_BANDPASS_DEFAULT_GAINHF (1.0f) -// -//#define AL_BANDPASS_MIN_GAINLF (0.0f) -//#define AL_BANDPASS_MAX_GAINLF (1.0f) -//#define AL_BANDPASS_DEFAULT_GAINLF (1.0f) -// -// -///* Effect parameter ranges and defaults. */ -// -///* Standard reverb effect */ -//#define AL_REVERB_MIN_DENSITY (0.0f) -//#define AL_REVERB_MAX_DENSITY (1.0f) -//#define AL_REVERB_DEFAULT_DENSITY (1.0f) -// -//#define AL_REVERB_MIN_DIFFUSION (0.0f) -//#define AL_REVERB_MAX_DIFFUSION (1.0f) -//#define AL_REVERB_DEFAULT_DIFFUSION (1.0f) -// -//#define AL_REVERB_MIN_GAIN (0.0f) -//#define AL_REVERB_MAX_GAIN (1.0f) -//#define AL_REVERB_DEFAULT_GAIN (0.32f) -// -//#define AL_REVERB_MIN_GAINHF (0.0f) -//#define AL_REVERB_MAX_GAINHF (1.0f) -//#define AL_REVERB_DEFAULT_GAINHF (0.89f) -// -//#define AL_REVERB_MIN_DECAY_TIME (0.1f) -//#define AL_REVERB_MAX_DECAY_TIME (20.0f) -//#define AL_REVERB_DEFAULT_DECAY_TIME (1.49f) -// -//#define AL_REVERB_MIN_DECAY_HFRATIO (0.1f) -//#define AL_REVERB_MAX_DECAY_HFRATIO (2.0f) -//#define AL_REVERB_DEFAULT_DECAY_HFRATIO (0.83f) -// -//#define AL_REVERB_MIN_REFLECTIONS_GAIN (0.0f) -//#define AL_REVERB_MAX_REFLECTIONS_GAIN (3.16f) -//#define AL_REVERB_DEFAULT_REFLECTIONS_GAIN (0.05f) -// -//#define AL_REVERB_MIN_REFLECTIONS_DELAY (0.0f) -//#define AL_REVERB_MAX_REFLECTIONS_DELAY (0.3f) -//#define AL_REVERB_DEFAULT_REFLECTIONS_DELAY (0.007f) -// -//#define AL_REVERB_MIN_LATE_REVERB_GAIN (0.0f) -//#define AL_REVERB_MAX_LATE_REVERB_GAIN (10.0f) -//#define AL_REVERB_DEFAULT_LATE_REVERB_GAIN (1.26f) -// -//#define AL_REVERB_MIN_LATE_REVERB_DELAY (0.0f) -//#define AL_REVERB_MAX_LATE_REVERB_DELAY (0.1f) -//#define AL_REVERB_DEFAULT_LATE_REVERB_DELAY (0.011f) -// -//#define AL_REVERB_MIN_AIR_ABSORPTION_GAINHF (0.892f) -//#define AL_REVERB_MAX_AIR_ABSORPTION_GAINHF (1.0f) -//#define AL_REVERB_DEFAULT_AIR_ABSORPTION_GAINHF (0.994f) -// -//#define AL_REVERB_MIN_ROOM_ROLLOFF_FACTOR (0.0f) -//#define AL_REVERB_MAX_ROOM_ROLLOFF_FACTOR (10.0f) -//#define AL_REVERB_DEFAULT_ROOM_ROLLOFF_FACTOR (0.0f) -// -//#define AL_REVERB_MIN_DECAY_HFLIMIT AL_FALSE -//#define AL_REVERB_MAX_DECAY_HFLIMIT AL_TRUE -//#define AL_REVERB_DEFAULT_DECAY_HFLIMIT AL_TRUE -// -///* EAX reverb effect */ -//#define AL_EAXREVERB_MIN_DENSITY (0.0f) -//#define AL_EAXREVERB_MAX_DENSITY (1.0f) -//#define AL_EAXREVERB_DEFAULT_DENSITY (1.0f) -// -//#define AL_EAXREVERB_MIN_DIFFUSION (0.0f) -//#define AL_EAXREVERB_MAX_DIFFUSION (1.0f) -//#define AL_EAXREVERB_DEFAULT_DIFFUSION (1.0f) -// -//#define AL_EAXREVERB_MIN_GAIN (0.0f) -//#define AL_EAXREVERB_MAX_GAIN (1.0f) -//#define AL_EAXREVERB_DEFAULT_GAIN (0.32f) -// -//#define AL_EAXREVERB_MIN_GAINHF (0.0f) -//#define AL_EAXREVERB_MAX_GAINHF (1.0f) -//#define AL_EAXREVERB_DEFAULT_GAINHF (0.89f) -// -//#define AL_EAXREVERB_MIN_GAINLF (0.0f) -//#define AL_EAXREVERB_MAX_GAINLF (1.0f) -//#define AL_EAXREVERB_DEFAULT_GAINLF (1.0f) -// -//#define AL_EAXREVERB_MIN_DECAY_TIME (0.1f) -//#define AL_EAXREVERB_MAX_DECAY_TIME (20.0f) -//#define AL_EAXREVERB_DEFAULT_DECAY_TIME (1.49f) -// -//#define AL_EAXREVERB_MIN_DECAY_HFRATIO (0.1f) -//#define AL_EAXREVERB_MAX_DECAY_HFRATIO (2.0f) -//#define AL_EAXREVERB_DEFAULT_DECAY_HFRATIO (0.83f) -// -//#define AL_EAXREVERB_MIN_DECAY_LFRATIO (0.1f) -//#define AL_EAXREVERB_MAX_DECAY_LFRATIO (2.0f) -//#define AL_EAXREVERB_DEFAULT_DECAY_LFRATIO (1.0f) -// -//#define AL_EAXREVERB_MIN_REFLECTIONS_GAIN (0.0f) -//#define AL_EAXREVERB_MAX_REFLECTIONS_GAIN (3.16f) -//#define AL_EAXREVERB_DEFAULT_REFLECTIONS_GAIN (0.05f) -// -//#define AL_EAXREVERB_MIN_REFLECTIONS_DELAY (0.0f) -//#define AL_EAXREVERB_MAX_REFLECTIONS_DELAY (0.3f) -//#define AL_EAXREVERB_DEFAULT_REFLECTIONS_DELAY (0.007f) -// -//#define AL_EAXREVERB_DEFAULT_REFLECTIONS_PAN_XYZ (0.0f) -// -//#define AL_EAXREVERB_MIN_LATE_REVERB_GAIN (0.0f) -//#define AL_EAXREVERB_MAX_LATE_REVERB_GAIN (10.0f) -//#define AL_EAXREVERB_DEFAULT_LATE_REVERB_GAIN (1.26f) -// -//#define AL_EAXREVERB_MIN_LATE_REVERB_DELAY (0.0f) -//#define AL_EAXREVERB_MAX_LATE_REVERB_DELAY (0.1f) -//#define AL_EAXREVERB_DEFAULT_LATE_REVERB_DELAY (0.011f) -// -//#define AL_EAXREVERB_DEFAULT_LATE_REVERB_PAN_XYZ (0.0f) -// -//#define AL_EAXREVERB_MIN_ECHO_TIME (0.075f) -//#define AL_EAXREVERB_MAX_ECHO_TIME (0.25f) -//#define AL_EAXREVERB_DEFAULT_ECHO_TIME (0.25f) -// -//#define AL_EAXREVERB_MIN_ECHO_DEPTH (0.0f) -//#define AL_EAXREVERB_MAX_ECHO_DEPTH (1.0f) -//#define AL_EAXREVERB_DEFAULT_ECHO_DEPTH (0.0f) -// -//#define AL_EAXREVERB_MIN_MODULATION_TIME (0.04f) -//#define AL_EAXREVERB_MAX_MODULATION_TIME (4.0f) -//#define AL_EAXREVERB_DEFAULT_MODULATION_TIME (0.25f) -// -//#define AL_EAXREVERB_MIN_MODULATION_DEPTH (0.0f) -//#define AL_EAXREVERB_MAX_MODULATION_DEPTH (1.0f) -//#define AL_EAXREVERB_DEFAULT_MODULATION_DEPTH (0.0f) -// -//#define AL_EAXREVERB_MIN_AIR_ABSORPTION_GAINHF (0.892f) -//#define AL_EAXREVERB_MAX_AIR_ABSORPTION_GAINHF (1.0f) -//#define AL_EAXREVERB_DEFAULT_AIR_ABSORPTION_GAINHF (0.994f) -// -//#define AL_EAXREVERB_MIN_HFREFERENCE (1000.0f) -//#define AL_EAXREVERB_MAX_HFREFERENCE (20000.0f) -//#define AL_EAXREVERB_DEFAULT_HFREFERENCE (5000.0f) -// -//#define AL_EAXREVERB_MIN_LFREFERENCE (20.0f) -//#define AL_EAXREVERB_MAX_LFREFERENCE (1000.0f) -//#define AL_EAXREVERB_DEFAULT_LFREFERENCE (250.0f) -// -//#define AL_EAXREVERB_MIN_ROOM_ROLLOFF_FACTOR (0.0f) -//#define AL_EAXREVERB_MAX_ROOM_ROLLOFF_FACTOR (10.0f) -//#define AL_EAXREVERB_DEFAULT_ROOM_ROLLOFF_FACTOR (0.0f) -// -//#define AL_EAXREVERB_MIN_DECAY_HFLIMIT AL_FALSE -//#define AL_EAXREVERB_MAX_DECAY_HFLIMIT AL_TRUE -//#define AL_EAXREVERB_DEFAULT_DECAY_HFLIMIT AL_TRUE -// -///* Chorus effect */ -//#define AL_CHORUS_WAVEFORM_SINUSOID (0) -//#define AL_CHORUS_WAVEFORM_TRIANGLE (1) -// -//#define AL_CHORUS_MIN_WAVEFORM (0) -//#define AL_CHORUS_MAX_WAVEFORM (1) -//#define AL_CHORUS_DEFAULT_WAVEFORM (1) -// -//#define AL_CHORUS_MIN_PHASE (-180) -//#define AL_CHORUS_MAX_PHASE (180) -//#define AL_CHORUS_DEFAULT_PHASE (90) -// -//#define AL_CHORUS_MIN_RATE (0.0f) -//#define AL_CHORUS_MAX_RATE (10.0f) -//#define AL_CHORUS_DEFAULT_RATE (1.1f) -// -//#define AL_CHORUS_MIN_DEPTH (0.0f) -//#define AL_CHORUS_MAX_DEPTH (1.0f) -//#define AL_CHORUS_DEFAULT_DEPTH (0.1f) -// -//#define AL_CHORUS_MIN_FEEDBACK (-1.0f) -//#define AL_CHORUS_MAX_FEEDBACK (1.0f) -//#define AL_CHORUS_DEFAULT_FEEDBACK (0.25f) -// -//#define AL_CHORUS_MIN_DELAY (0.0f) -//#define AL_CHORUS_MAX_DELAY (0.016f) -//#define AL_CHORUS_DEFAULT_DELAY (0.016f) -// -///* Distortion effect */ -//#define AL_DISTORTION_MIN_EDGE (0.0f) -//#define AL_DISTORTION_MAX_EDGE (1.0f) -//#define AL_DISTORTION_DEFAULT_EDGE (0.2f) -// -//#define AL_DISTORTION_MIN_GAIN (0.01f) -//#define AL_DISTORTION_MAX_GAIN (1.0f) -//#define AL_DISTORTION_DEFAULT_GAIN (0.05f) -// -//#define AL_DISTORTION_MIN_LOWPASS_CUTOFF (80.0f) -//#define AL_DISTORTION_MAX_LOWPASS_CUTOFF (24000.0f) -//#define AL_DISTORTION_DEFAULT_LOWPASS_CUTOFF (8000.0f) -// -//#define AL_DISTORTION_MIN_EQCENTER (80.0f) -//#define AL_DISTORTION_MAX_EQCENTER (24000.0f) -//#define AL_DISTORTION_DEFAULT_EQCENTER (3600.0f) -// -//#define AL_DISTORTION_MIN_EQBANDWIDTH (80.0f) -//#define AL_DISTORTION_MAX_EQBANDWIDTH (24000.0f) -//#define AL_DISTORTION_DEFAULT_EQBANDWIDTH (3600.0f) -// -///* Echo effect */ -//#define AL_ECHO_MIN_DELAY (0.0f) -//#define AL_ECHO_MAX_DELAY (0.207f) -//#define AL_ECHO_DEFAULT_DELAY (0.1f) -// -//#define AL_ECHO_MIN_LRDELAY (0.0f) -//#define AL_ECHO_MAX_LRDELAY (0.404f) -//#define AL_ECHO_DEFAULT_LRDELAY (0.1f) -// -//#define AL_ECHO_MIN_DAMPING (0.0f) -//#define AL_ECHO_MAX_DAMPING (0.99f) -//#define AL_ECHO_DEFAULT_DAMPING (0.5f) -// -//#define AL_ECHO_MIN_FEEDBACK (0.0f) -//#define AL_ECHO_MAX_FEEDBACK (1.0f) -//#define AL_ECHO_DEFAULT_FEEDBACK (0.5f) -// -//#define AL_ECHO_MIN_SPREAD (-1.0f) -//#define AL_ECHO_MAX_SPREAD (1.0f) -//#define AL_ECHO_DEFAULT_SPREAD (-1.0f) -// -///* Flanger effect */ -//#define AL_FLANGER_WAVEFORM_SINUSOID (0) -//#define AL_FLANGER_WAVEFORM_TRIANGLE (1) -// -//#define AL_FLANGER_MIN_WAVEFORM (0) -//#define AL_FLANGER_MAX_WAVEFORM (1) -//#define AL_FLANGER_DEFAULT_WAVEFORM (1) -// -//#define AL_FLANGER_MIN_PHASE (-180) -//#define AL_FLANGER_MAX_PHASE (180) -//#define AL_FLANGER_DEFAULT_PHASE (0) -// -//#define AL_FLANGER_MIN_RATE (0.0f) -//#define AL_FLANGER_MAX_RATE (10.0f) -//#define AL_FLANGER_DEFAULT_RATE (0.27f) -// -//#define AL_FLANGER_MIN_DEPTH (0.0f) -//#define AL_FLANGER_MAX_DEPTH (1.0f) -//#define AL_FLANGER_DEFAULT_DEPTH (1.0f) -// -//#define AL_FLANGER_MIN_FEEDBACK (-1.0f) -//#define AL_FLANGER_MAX_FEEDBACK (1.0f) -//#define AL_FLANGER_DEFAULT_FEEDBACK (-0.5f) -// -//#define AL_FLANGER_MIN_DELAY (0.0f) -//#define AL_FLANGER_MAX_DELAY (0.004f) -//#define AL_FLANGER_DEFAULT_DELAY (0.002f) -// -///* Frequency shifter effect */ -//#define AL_FREQUENCY_SHIFTER_MIN_FREQUENCY (0.0f) -//#define AL_FREQUENCY_SHIFTER_MAX_FREQUENCY (24000.0f) -//#define AL_FREQUENCY_SHIFTER_DEFAULT_FREQUENCY (0.0f) -// -//#define AL_FREQUENCY_SHIFTER_MIN_LEFT_DIRECTION (0) -//#define AL_FREQUENCY_SHIFTER_MAX_LEFT_DIRECTION (2) -//#define AL_FREQUENCY_SHIFTER_DEFAULT_LEFT_DIRECTION (0) -// -//#define AL_FREQUENCY_SHIFTER_DIRECTION_DOWN (0) -//#define AL_FREQUENCY_SHIFTER_DIRECTION_UP (1) -//#define AL_FREQUENCY_SHIFTER_DIRECTION_OFF (2) -// -//#define AL_FREQUENCY_SHIFTER_MIN_RIGHT_DIRECTION (0) -//#define AL_FREQUENCY_SHIFTER_MAX_RIGHT_DIRECTION (2) -//#define AL_FREQUENCY_SHIFTER_DEFAULT_RIGHT_DIRECTION (0) -// -///* Vocal morpher effect */ -//#define AL_VOCAL_MORPHER_MIN_PHONEMEA (0) -//#define AL_VOCAL_MORPHER_MAX_PHONEMEA (29) -//#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEA (0) -// -//#define AL_VOCAL_MORPHER_MIN_PHONEMEA_COARSE_TUNING (-24) -//#define AL_VOCAL_MORPHER_MAX_PHONEMEA_COARSE_TUNING (24) -//#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEA_COARSE_TUNING (0) -// -//#define AL_VOCAL_MORPHER_MIN_PHONEMEB (0) -//#define AL_VOCAL_MORPHER_MAX_PHONEMEB (29) -//#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEB (10) -// -//#define AL_VOCAL_MORPHER_MIN_PHONEMEB_COARSE_TUNING (-24) -//#define AL_VOCAL_MORPHER_MAX_PHONEMEB_COARSE_TUNING (24) -//#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEB_COARSE_TUNING (0) -// -//#define AL_VOCAL_MORPHER_PHONEME_A (0) -//#define AL_VOCAL_MORPHER_PHONEME_E (1) -//#define AL_VOCAL_MORPHER_PHONEME_I (2) -//#define AL_VOCAL_MORPHER_PHONEME_O (3) -//#define AL_VOCAL_MORPHER_PHONEME_U (4) -//#define AL_VOCAL_MORPHER_PHONEME_AA (5) -//#define AL_VOCAL_MORPHER_PHONEME_AE (6) -//#define AL_VOCAL_MORPHER_PHONEME_AH (7) -//#define AL_VOCAL_MORPHER_PHONEME_AO (8) -//#define AL_VOCAL_MORPHER_PHONEME_EH (9) -//#define AL_VOCAL_MORPHER_PHONEME_ER (10) -//#define AL_VOCAL_MORPHER_PHONEME_IH (11) -//#define AL_VOCAL_MORPHER_PHONEME_IY (12) -//#define AL_VOCAL_MORPHER_PHONEME_UH (13) -//#define AL_VOCAL_MORPHER_PHONEME_UW (14) -//#define AL_VOCAL_MORPHER_PHONEME_B (15) -//#define AL_VOCAL_MORPHER_PHONEME_D (16) -//#define AL_VOCAL_MORPHER_PHONEME_F (17) -//#define AL_VOCAL_MORPHER_PHONEME_G (18) -//#define AL_VOCAL_MORPHER_PHONEME_J (19) -//#define AL_VOCAL_MORPHER_PHONEME_K (20) -//#define AL_VOCAL_MORPHER_PHONEME_L (21) -//#define AL_VOCAL_MORPHER_PHONEME_M (22) -//#define AL_VOCAL_MORPHER_PHONEME_N (23) -//#define AL_VOCAL_MORPHER_PHONEME_P (24) -//#define AL_VOCAL_MORPHER_PHONEME_R (25) -//#define AL_VOCAL_MORPHER_PHONEME_S (26) -//#define AL_VOCAL_MORPHER_PHONEME_T (27) -//#define AL_VOCAL_MORPHER_PHONEME_V (28) -//#define AL_VOCAL_MORPHER_PHONEME_Z (29) -// -//#define AL_VOCAL_MORPHER_WAVEFORM_SINUSOID (0) -//#define AL_VOCAL_MORPHER_WAVEFORM_TRIANGLE (1) -//#define AL_VOCAL_MORPHER_WAVEFORM_SAWTOOTH (2) -// -//#define AL_VOCAL_MORPHER_MIN_WAVEFORM (0) -//#define AL_VOCAL_MORPHER_MAX_WAVEFORM (2) -//#define AL_VOCAL_MORPHER_DEFAULT_WAVEFORM (0) -// -//#define AL_VOCAL_MORPHER_MIN_RATE (0.0f) -//#define AL_VOCAL_MORPHER_MAX_RATE (10.0f) -//#define AL_VOCAL_MORPHER_DEFAULT_RATE (1.41f) -// -///* Pitch shifter effect */ -//#define AL_PITCH_SHIFTER_MIN_COARSE_TUNE (-12) -//#define AL_PITCH_SHIFTER_MAX_COARSE_TUNE (12) -//#define AL_PITCH_SHIFTER_DEFAULT_COARSE_TUNE (12) -// -//#define AL_PITCH_SHIFTER_MIN_FINE_TUNE (-50) -//#define AL_PITCH_SHIFTER_MAX_FINE_TUNE (50) -//#define AL_PITCH_SHIFTER_DEFAULT_FINE_TUNE (0) -// -///* Ring modulator effect */ -//#define AL_RING_MODULATOR_MIN_FREQUENCY (0.0f) -//#define AL_RING_MODULATOR_MAX_FREQUENCY (8000.0f) -//#define AL_RING_MODULATOR_DEFAULT_FREQUENCY (440.0f) -// -//#define AL_RING_MODULATOR_MIN_HIGHPASS_CUTOFF (0.0f) -//#define AL_RING_MODULATOR_MAX_HIGHPASS_CUTOFF (24000.0f) -//#define AL_RING_MODULATOR_DEFAULT_HIGHPASS_CUTOFF (800.0f) -// -//#define AL_RING_MODULATOR_SINUSOID (0) -//#define AL_RING_MODULATOR_SAWTOOTH (1) -//#define AL_RING_MODULATOR_SQUARE (2) -// -//#define AL_RING_MODULATOR_MIN_WAVEFORM (0) -//#define AL_RING_MODULATOR_MAX_WAVEFORM (2) -//#define AL_RING_MODULATOR_DEFAULT_WAVEFORM (0) -// -///* Autowah effect */ -//#define AL_AUTOWAH_MIN_ATTACK_TIME (0.0001f) -//#define AL_AUTOWAH_MAX_ATTACK_TIME (1.0f) -//#define AL_AUTOWAH_DEFAULT_ATTACK_TIME (0.06f) -// -//#define AL_AUTOWAH_MIN_RELEASE_TIME (0.0001f) -//#define AL_AUTOWAH_MAX_RELEASE_TIME (1.0f) -//#define AL_AUTOWAH_DEFAULT_RELEASE_TIME (0.06f) -// -//#define AL_AUTOWAH_MIN_RESONANCE (2.0f) -//#define AL_AUTOWAH_MAX_RESONANCE (1000.0f) -//#define AL_AUTOWAH_DEFAULT_RESONANCE (1000.0f) -// -//#define AL_AUTOWAH_MIN_PEAK_GAIN (0.00003f) -//#define AL_AUTOWAH_MAX_PEAK_GAIN (31621.0f) -//#define AL_AUTOWAH_DEFAULT_PEAK_GAIN (11.22f) -// -///* Compressor effect */ -//#define AL_COMPRESSOR_MIN_ONOFF (0) -//#define AL_COMPRESSOR_MAX_ONOFF (1) -//#define AL_COMPRESSOR_DEFAULT_ONOFF (1) -// -///* Equalizer effect */ -//#define AL_EQUALIZER_MIN_LOW_GAIN (0.126f) -//#define AL_EQUALIZER_MAX_LOW_GAIN (7.943f) -//#define AL_EQUALIZER_DEFAULT_LOW_GAIN (1.0f) -// -//#define AL_EQUALIZER_MIN_LOW_CUTOFF (50.0f) -//#define AL_EQUALIZER_MAX_LOW_CUTOFF (800.0f) -//#define AL_EQUALIZER_DEFAULT_LOW_CUTOFF (200.0f) -// -//#define AL_EQUALIZER_MIN_MID1_GAIN (0.126f) -//#define AL_EQUALIZER_MAX_MID1_GAIN (7.943f) -//#define AL_EQUALIZER_DEFAULT_MID1_GAIN (1.0f) -// -//#define AL_EQUALIZER_MIN_MID1_CENTER (200.0f) -//#define AL_EQUALIZER_MAX_MID1_CENTER (3000.0f) -//#define AL_EQUALIZER_DEFAULT_MID1_CENTER (500.0f) -// -//#define AL_EQUALIZER_MIN_MID1_WIDTH (0.01f) -//#define AL_EQUALIZER_MAX_MID1_WIDTH (1.0f) -//#define AL_EQUALIZER_DEFAULT_MID1_WIDTH (1.0f) -// -//#define AL_EQUALIZER_MIN_MID2_GAIN (0.126f) -//#define AL_EQUALIZER_MAX_MID2_GAIN (7.943f) -//#define AL_EQUALIZER_DEFAULT_MID2_GAIN (1.0f) -// -//#define AL_EQUALIZER_MIN_MID2_CENTER (1000.0f) -//#define AL_EQUALIZER_MAX_MID2_CENTER (8000.0f) -//#define AL_EQUALIZER_DEFAULT_MID2_CENTER (3000.0f) -// -//#define AL_EQUALIZER_MIN_MID2_WIDTH (0.01f) -//#define AL_EQUALIZER_MAX_MID2_WIDTH (1.0f) -//#define AL_EQUALIZER_DEFAULT_MID2_WIDTH (1.0f) -// -//#define AL_EQUALIZER_MIN_HIGH_GAIN (0.126f) -//#define AL_EQUALIZER_MAX_HIGH_GAIN (7.943f) -//#define AL_EQUALIZER_DEFAULT_HIGH_GAIN (1.0f) -// -//#define AL_EQUALIZER_MIN_HIGH_CUTOFF (4000.0f) -//#define AL_EQUALIZER_MAX_HIGH_CUTOFF (16000.0f) -//#define AL_EQUALIZER_DEFAULT_HIGH_CUTOFF (6000.0f) -// -// -///* Source parameter value ranges and defaults. */ -//#define AL_MIN_AIR_ABSORPTION_FACTOR (0.0f) -//#define AL_MAX_AIR_ABSORPTION_FACTOR (10.0f) -//#define AL_DEFAULT_AIR_ABSORPTION_FACTOR (0.0f) -// -//#define AL_MIN_ROOM_ROLLOFF_FACTOR (0.0f) -//#define AL_MAX_ROOM_ROLLOFF_FACTOR (10.0f) -//#define AL_DEFAULT_ROOM_ROLLOFF_FACTOR (0.0f) -// -//#define AL_MIN_CONE_OUTER_GAINHF (0.0f) -//#define AL_MAX_CONE_OUTER_GAINHF (1.0f) -//#define AL_DEFAULT_CONE_OUTER_GAINHF (1.0f) -// -//#define AL_MIN_DIRECT_FILTER_GAINHF_AUTO AL_FALSE -//#define AL_MAX_DIRECT_FILTER_GAINHF_AUTO AL_TRUE -//#define AL_DEFAULT_DIRECT_FILTER_GAINHF_AUTO AL_TRUE -// -//#define AL_MIN_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_FALSE -//#define AL_MAX_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_TRUE -//#define AL_DEFAULT_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_TRUE -// -//#define AL_MIN_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_FALSE -//#define AL_MAX_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_TRUE -//#define AL_DEFAULT_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_TRUE -// -// -///* Listener parameter value ranges and defaults. */ -//#define AL_MIN_METERS_PER_UNIT FLT_MIN -//#define AL_MAX_METERS_PER_UNIT FLT_MAX -//#define AL_DEFAULT_METERS_PER_UNIT (1.0f) - - - public static String GetALErrorMsg(int errorCode) { - String errorText; - switch (errorCode) { - case AL_NO_ERROR: - errorText = "No Error"; - break; - case AL_INVALID_NAME: - errorText = "Invalid Name"; - break; - case AL_INVALID_ENUM: - errorText = "Invalid Enum"; - break; - case AL_INVALID_VALUE: - errorText = "Invalid Value"; - break; - case AL_INVALID_OPERATION: - errorText = "Invalid Operation"; - break; - case AL_OUT_OF_MEMORY: - errorText = "Out of Memory"; - break; - default: - errorText = "Unknown Error Code: " + String.valueOf(errorCode); - } - return errorText; - } -} - diff --git a/engine/src/ios/com/jme3/audio/android/AndroidAudioData.java b/engine/src/ios/com/jme3/audio/android/AndroidAudioData.java deleted file mode 100644 index e7f4a0f98..000000000 --- a/engine/src/ios/com/jme3/audio/android/AndroidAudioData.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.jme3.audio.android; - -import com.jme3.asset.AssetKey; -import com.jme3.audio.AudioData; -import com.jme3.audio.AudioRenderer; -import com.jme3.util.NativeObject; - -public class AndroidAudioData extends AudioData { - - protected AssetKey assetKey; - protected float currentVolume = 0f; - - public AndroidAudioData(){ - super(); - } - - protected AndroidAudioData(int id){ - super(id); - } - - public AssetKey getAssetKey() { - return assetKey; - } - - public void setAssetKey(AssetKey assetKey) { - this.assetKey = assetKey; - } - - @Override - public DataType getDataType() { - return DataType.Buffer; - } - - @Override - public float getDuration() { - return 0; // TODO: ??? - } - - @Override - public void resetObject() { - this.id = -1; - setUpdateNeeded(); - } - - @Override - public void deleteObject(Object rendererObject) { - ((AudioRenderer)rendererObject).deleteAudioData(this); - } - - public float getCurrentVolume() { - return currentVolume; - } - - public void setCurrentVolume(float currentVolume) { - this.currentVolume = currentVolume; - } - - @Override - public NativeObject createDestructableClone() { - return new AndroidAudioData(id); - } - - @Override - public long getUniqueId() { - return ((long)OBJTYPE_AUDIOBUFFER << 32) | ((long)id); - } -} diff --git a/engine/src/ios/com/jme3/audio/android/AndroidAudioRenderer.java b/engine/src/ios/com/jme3/audio/android/AndroidAudioRenderer.java deleted file mode 100644 index 0cde16aa5..000000000 --- a/engine/src/ios/com/jme3/audio/android/AndroidAudioRenderer.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.jme3.audio.android; - -import com.jme3.audio.AudioRenderer; - -/** - * Android specific AudioRenderer interface that supports pausing and resuming - * audio files when the app is minimized or placed in the background - * - * @author iwgeric - */ -public interface AndroidAudioRenderer extends AudioRenderer { - - /** - * Pauses all Playing audio. To be used when the app is placed in the - * background. - */ - public void pauseAll(); - - /** - * Resumes all Paused audio. To be used when the app is brought back to - * the foreground. - */ - public void resumeAll(); -} diff --git a/engine/src/ios/com/jme3/audio/android/AndroidOpenALSoftAudioRenderer.java b/engine/src/ios/com/jme3/audio/android/AndroidOpenALSoftAudioRenderer.java deleted file mode 100644 index 07591a425..000000000 --- a/engine/src/ios/com/jme3/audio/android/AndroidOpenALSoftAudioRenderer.java +++ /dev/null @@ -1,1423 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.audio.android; - -import com.jme3.audio.*; -import com.jme3.audio.AudioSource.Status; -import com.jme3.math.Vector3f; -import com.jme3.util.BufferUtils; -import com.jme3.util.NativeObjectManager; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.util.ArrayList; -import java.util.concurrent.atomic.AtomicBoolean; -import java.util.logging.Level; -import java.util.logging.Logger; - -public class AndroidOpenALSoftAudioRenderer implements AndroidAudioRenderer, Runnable { - - private static final Logger logger = Logger.getLogger(AndroidOpenALSoftAudioRenderer.class.getName()); - private final NativeObjectManager objManager = new NativeObjectManager(); - // When multiplied by STREAMING_BUFFER_COUNT, will equal 44100 * 2 * 2 - // which is exactly 1 second of audio. - private static final int BUFFER_SIZE = 35280; - private static final int STREAMING_BUFFER_COUNT = 5; - private final static int MAX_NUM_CHANNELS = 64; - private IntBuffer ib = BufferUtils.createIntBuffer(1); - private final FloatBuffer fb = BufferUtils.createVector3Buffer(2); - private final ByteBuffer nativeBuf = BufferUtils.createByteBuffer(BUFFER_SIZE); - private final byte[] arrayBuf = new byte[BUFFER_SIZE]; - private int[] channels; - private AudioSource[] chanSrcs; - private int nextChan = 0; - private ArrayList freeChans = new ArrayList(); - private Listener listener; - private boolean audioDisabled = false; - private boolean supportEfx = false; - private int auxSends = 0; - private int reverbFx = -1; - private int reverbFxSlot = -1; - // Update audio 20 times per second - private static final float UPDATE_RATE = 0.05f; - private final Thread audioThread = new Thread(this, "jME3 Audio Thread"); - private final AtomicBoolean threadLock = new AtomicBoolean(false); - private boolean initialized = false; - - public AndroidOpenALSoftAudioRenderer() { - } - - public void initialize() { - if (!audioThread.isAlive()) { - audioThread.setDaemon(true); - audioThread.setPriority(Thread.NORM_PRIORITY + 1); - audioThread.start(); - } else { - throw new IllegalStateException("Initialize already called"); - } - } - - private void checkDead() { - if (audioThread.getState() == Thread.State.TERMINATED) { - throw new IllegalStateException("Audio thread is terminated"); - } - } - - public void run() { - initInThread(); - synchronized (threadLock) { - threadLock.set(true); - threadLock.notifyAll(); - } - - initialized = true; - - long updateRateNanos = (long) (UPDATE_RATE * 1000000000); - mainloop: - while (true) { - long startTime = System.nanoTime(); - - if (Thread.interrupted()) { - break; - } - - synchronized (threadLock) { - updateInThread(UPDATE_RATE); - } - - long endTime = System.nanoTime(); - long diffTime = endTime - startTime; - - if (diffTime < updateRateNanos) { - long desiredEndTime = startTime + updateRateNanos; - while (System.nanoTime() < desiredEndTime) { - try { - Thread.sleep(1); - } catch (InterruptedException ex) { - break mainloop; - } - } - } - } - - initialized = false; - - synchronized (threadLock) { - cleanupInThread(); - } - } - - public void initInThread() { - try { - if (!alIsCreated()) { - //AL.create(); - alCreate(); - checkError(false); - } -// } catch (OpenALException ex) { -// logger.log(Level.SEVERE, "Failed to load audio library", ex); -// audioDisabled = true; -// return; -// } catch (LWJGLException ex) { -// logger.log(Level.SEVERE, "Failed to load audio library", ex); -// audioDisabled = true; -// return; - } catch (UnsatisfiedLinkError ex) { - logger.log(Level.SEVERE, "Failed to load audio library", ex); - audioDisabled = true; - return; - } - - //ALCdevice device = AL.getDevice(); /* device maintained in jni */ - //String deviceName = ALC10.alcGetString(device, ALC10.ALC_DEVICE_SPECIFIER); - String deviceName = alcGetString(AL.ALC_DEVICE_SPECIFIER); - - logger.log(Level.INFO, "Audio Device: {0}", deviceName); - //logger.log(Level.INFO, "Audio Vendor: {0}", alGetString(AL_VENDOR)); - //logger.log(Level.INFO, "Audio Renderer: {0}", alGetString(AL_RENDERER)); - //logger.log(Level.INFO, "Audio Version: {0}", alGetString(AL_VERSION)); - logger.log(Level.INFO, "Audio Vendor: {0}", alGetString(AL.AL_VENDOR)); - logger.log(Level.INFO, "Audio Renderer: {0}", alGetString(AL.AL_RENDERER)); - logger.log(Level.INFO, "Audio Version: {0}", alGetString(AL.AL_VERSION)); - - // Find maximum # of sources supported by this implementation - ArrayList channelList = new ArrayList(); - for (int i = 0; i < MAX_NUM_CHANNELS; i++) { - int chan = alGenSources(); - //if (alGetError() != 0) { - if (checkError(false) != 0) { - break; - } else { - channelList.add(chan); - } - } - - channels = new int[channelList.size()]; - for (int i = 0; i < channels.length; i++) { - channels[i] = channelList.get(i); - } - - ib = BufferUtils.createIntBuffer(channels.length); - chanSrcs = new AudioSource[channels.length]; - - logger.log(Level.INFO, "AudioRenderer supports {0} channels", channels.length); - - //supportEfx = alcIsExtensionPresent(device, "ALC_EXT_EFX"); - supportEfx = alcIsExtensionPresent(AL.ALC_EXT_EFX_NAME); - - if (supportEfx) { - ib.position(0).limit(1); - //ALC10.alcGetInteger(device, EFX10.ALC_EFX_MAJOR_VERSION, ib); - alcGetInteger(AL.ALC_EFX_MAJOR_VERSION, ib, 1); - int major = ib.get(0); - ib.position(0).limit(1); - //ALC10.alcGetInteger(device, EFX10.ALC_EFX_MINOR_VERSION, ib); - alcGetInteger(AL.ALC_EFX_MINOR_VERSION, ib, 1); - int minor = ib.get(0); - logger.log(Level.INFO, "Audio effect extension version: {0}.{1}", new Object[]{major, minor}); - - //ALC10.alcGetInteger(device, EFX10.ALC_MAX_AUXILIARY_SENDS, ib); - alcGetInteger(AL.ALC_MAX_AUXILIARY_SENDS, ib, 1); - auxSends = ib.get(0); - logger.log(Level.INFO, "Audio max auxilary sends: {0}", auxSends); - - // create slot - ib.position(0).limit(1); - //EFX10.alGenAuxiliaryEffectSlots(ib); - alGenAuxiliaryEffectSlots(1, ib); - reverbFxSlot = ib.get(0); - - // create effect - ib.position(0).limit(1); - //EFX10.alGenEffects(ib); - alGenEffects(1, ib); - reverbFx = ib.get(0); - //EFX10.alEffecti(reverbFx, EFX10.AL_EFFECT_TYPE, EFX10.AL_EFFECT_REVERB); - alEffecti(reverbFx, AL.AL_EFFECT_TYPE, AL.AL_EFFECT_REVERB); - - // attach reverb effect to effect slot - //EFX10.alAuxiliaryEffectSloti(reverbFxSlot, EFX10.AL_EFFECTSLOT_EFFECT, reverbFx); - alAuxiliaryEffectSloti(reverbFxSlot, AL.AL_EFFECTSLOT_EFFECT, reverbFx); - } else { - logger.log(Level.WARNING, "OpenAL EFX not available! Audio effects won't work."); - } - } - - public void cleanupInThread() { - if (audioDisabled) { - //AL.destroy(); - alDestroy(); - checkError(true); - return; - } - - // stop any playing channels - for (int i = 0; i < chanSrcs.length; i++) { - if (chanSrcs[i] != null) { - clearChannel(i); - } - } - - // delete channel-based sources - ib.clear(); - ib.put(channels); - ib.flip(); - //alDeleteSources(ib); - alDeleteSources(channels.length, ib); - checkError(true); - - // delete audio buffers and filters - objManager.deleteAllObjects(this); - - if (supportEfx) { - ib.position(0).limit(1); - ib.put(0, reverbFx); - //EFX10.alDeleteEffects(ib); - alDeleteEffects(1, ib); - - // If this is not allocated, why is it deleted? - // Commented out to fix native crash in OpenAL. - ib.position(0).limit(1); - ib.put(0, reverbFxSlot); - //EFX10.alDeleteAuxiliaryEffectSlots(ib); - alDeleteAuxiliaryEffectSlots(1, ib); - } - - //AL.destroy(); - logger.log(Level.INFO, "Destroying OpenAL Soft Renderer"); - alDestroy(); - } - - public void cleanup() { - // kill audio thread - if (audioThread.isAlive()) { - audioThread.interrupt(); - } - } - - private void updateFilter(Filter f) { - int id = f.getId(); - if (id == -1) { - ib.position(0).limit(1); - //EFX10.alGenFilters(ib); - alGenFilters(1, ib); - id = ib.get(0); - f.setId(id); - - objManager.registerObject(f); - } - - if (f instanceof LowPassFilter) { - LowPassFilter lpf = (LowPassFilter) f; - //EFX10.alFilteri(id, EFX10.AL_FILTER_TYPE, EFX10.AL_FILTER_LOWPASS); - alFilteri(id, AL.AL_FILTER_TYPE, AL.AL_FILTER_LOWPASS); - //EFX10.alFilterf(id, EFX10.AL_LOWPASS_GAIN, lpf.getVolume()); - alFilterf(id, AL.AL_LOWPASS_GAIN, lpf.getVolume()); - //EFX10.alFilterf(id, EFX10.AL_LOWPASS_GAINHF, lpf.getHighFreqVolume()); - alFilterf(id, AL.AL_LOWPASS_GAINHF, lpf.getHighFreqVolume()); - } else { - throw new UnsupportedOperationException("Filter type unsupported: " - + f.getClass().getName()); - } - - f.clearUpdateNeeded(); - } - - public void updateSourceParam(AudioSource src, AudioParam param) { - checkDead(); - synchronized (threadLock) { - while (!threadLock.get()) { - try { - threadLock.wait(); - } catch (InterruptedException ex) { - } - } - if (audioDisabled) { - return; - } - - // There is a race condition in AudioSource that can - // cause this to be called for a node that has been - // detached from its channel. For example, setVolume() - // called from the render thread may see that that AudioSource - // still has a channel value but the audio thread may - // clear that channel before setVolume() gets to call - // updateSourceParam() (because the audio stopped playing - // on its own right as the volume was set). In this case, - // it should be safe to just ignore the update - if (src.getChannel() < 0) { - return; - } - - assert src.getChannel() >= 0; - - int id = channels[src.getChannel()]; - switch (param) { - case Position: - if (!src.isPositional()) { - return; - } - - Vector3f pos = src.getPosition(); - //alSource3f(id, AL_POSITION, pos.x, pos.y, pos.z); - alSource3f(id, AL.AL_POSITION, pos.x, pos.y, pos.z); - checkError(true); - break; - case Velocity: - if (!src.isPositional()) { - return; - } - - Vector3f vel = src.getVelocity(); - //alSource3f(id, AL_VELOCITY, vel.x, vel.y, vel.z); - alSource3f(id, AL.AL_VELOCITY, vel.x, vel.y, vel.z); - checkError(true); - break; - case MaxDistance: - if (!src.isPositional()) { - return; - } - - //alSourcef(id, AL_MAX_DISTANCE, src.getMaxDistance()); - alSourcef(id, AL.AL_MAX_DISTANCE, src.getMaxDistance()); - checkError(true); - break; - case RefDistance: - if (!src.isPositional()) { - return; - } - - //alSourcef(id, AL_REFERENCE_DISTANCE, src.getRefDistance()); - alSourcef(id, AL.AL_REFERENCE_DISTANCE, src.getRefDistance()); - checkError(true); - break; - case ReverbFilter: - if (!supportEfx || !src.isPositional() || !src.isReverbEnabled()) { - return; - } - - int filter = AL.AL_FILTER_NULL; - if (src.getReverbFilter() != null) { - Filter f = src.getReverbFilter(); - if (f.isUpdateNeeded()) { - updateFilter(f); - } - filter = f.getId(); - } - //AL11.alSource3i(id, EFX10.AL_AUXILIARY_SEND_FILTER, reverbFxSlot, 0, filter); - alSource3i(id, AL.AL_AUXILIARY_SEND_FILTER, reverbFxSlot, 0, filter); - break; - case ReverbEnabled: - if (!supportEfx || !src.isPositional()) { - return; - } - - if (src.isReverbEnabled()) { - updateSourceParam(src, AudioParam.ReverbFilter); - } else { - //AL11.alSource3i(id, EFX10.AL_AUXILIARY_SEND_FILTER, 0, 0, EFX10.AL_FILTER_NULL); - alSource3i(id, AL.AL_AUXILIARY_SEND_FILTER, 0, 0, AL.AL_FILTER_NULL); - } - break; - case IsPositional: - if (!src.isPositional()) { - // Play in headspace - //alSourcei(id, AL_SOURCE_RELATIVE, AL_TRUE); - alSourcei(id, AL.AL_SOURCE_RELATIVE, AL.AL_TRUE); - checkError(true); - //alSource3f(id, AL_POSITION, 0, 0, 0); - alSource3f(id, AL.AL_POSITION, 0, 0, 0); - checkError(true); - //alSource3f(id, AL_VELOCITY, 0, 0, 0); - alSource3f(id, AL.AL_VELOCITY, 0, 0, 0); - checkError(true); - - // Disable reverb - //AL11.alSource3i(id, EFX10.AL_AUXILIARY_SEND_FILTER, 0, 0, EFX10.AL_FILTER_NULL); - alSource3i(id, AL.AL_AUXILIARY_SEND_FILTER, 0, 0, AL.AL_FILTER_NULL); - } else { - //alSourcei(id, AL_SOURCE_RELATIVE, AL_FALSE); - alSourcei(id, AL.AL_SOURCE_RELATIVE, AL.AL_FALSE); - checkError(true); - updateSourceParam(src, AudioParam.Position); - updateSourceParam(src, AudioParam.Velocity); - updateSourceParam(src, AudioParam.MaxDistance); - updateSourceParam(src, AudioParam.RefDistance); - updateSourceParam(src, AudioParam.ReverbEnabled); - } - break; - case Direction: - if (!src.isDirectional()) { - return; - } - - Vector3f dir = src.getDirection(); - //alSource3f(id, AL_DIRECTION, dir.x, dir.y, dir.z); - alSource3f(id, AL.AL_DIRECTION, dir.x, dir.y, dir.z); - checkError(true); - break; - case InnerAngle: - if (!src.isDirectional()) { - return; - } - - //alSourcef(id, AL_CONE_INNER_ANGLE, src.getInnerAngle()); - alSourcef(id, AL.AL_CONE_INNER_ANGLE, src.getInnerAngle()); - checkError(true); - break; - case OuterAngle: - if (!src.isDirectional()) { - return; - } - - //alSourcef(id, AL_CONE_OUTER_ANGLE, src.getOuterAngle()); - alSourcef(id, AL.AL_CONE_OUTER_ANGLE, src.getOuterAngle()); - checkError(true); - break; - case IsDirectional: - if (src.isDirectional()) { - updateSourceParam(src, AudioParam.Direction); - updateSourceParam(src, AudioParam.InnerAngle); - updateSourceParam(src, AudioParam.OuterAngle); - //alSourcef(id, AL_CONE_OUTER_GAIN, 0); - alSourcef(id, AL.AL_CONE_OUTER_GAIN, 0); - checkError(true); - } else { - //alSourcef(id, AL_CONE_INNER_ANGLE, 360); - alSourcef(id, AL.AL_CONE_INNER_ANGLE, 360); - checkError(true); - //alSourcef(id, AL_CONE_OUTER_ANGLE, 360); - alSourcef(id, AL.AL_CONE_OUTER_ANGLE, 360); - checkError(true); - //alSourcef(id, AL_CONE_OUTER_GAIN, 1f); - alSourcef(id, AL.AL_CONE_OUTER_GAIN, 1f); - checkError(true); - } - break; - case DryFilter: - if (!supportEfx) { - return; - } - - if (src.getDryFilter() != null) { - Filter f = src.getDryFilter(); - if (f.isUpdateNeeded()) { - updateFilter(f); - - // NOTE: must re-attach filter for changes to apply. - //alSourcei(id, EFX10.AL_DIRECT_FILTER, f.getId()); - alSourcei(id, AL.AL_DIRECT_FILTER, f.getId()); - } - } else { - //alSourcei(id, EFX10.AL_DIRECT_FILTER, EFX10.AL_FILTER_NULL); - alSourcei(id, AL.AL_DIRECT_FILTER, AL.AL_FILTER_NULL); - } - break; - case Looping: - if (src.isLooping()) { - if (!(src.getAudioData() instanceof AudioStream)) { - //alSourcei(id, AL_LOOPING, AL_TRUE); - alSourcei(id, AL.AL_LOOPING, AL.AL_TRUE); - checkError(true); - } - } else { - //alSourcei(id, AL_LOOPING, AL_FALSE); - alSourcei(id, AL.AL_LOOPING, AL.AL_FALSE); - checkError(true); - } - break; - case Volume: - //alSourcef(id, AL_GAIN, src.getVolume()); - alSourcef(id, AL.AL_GAIN, src.getVolume()); - checkError(true); - break; - case Pitch: - //alSourcef(id, AL_PITCH, src.getPitch()); - alSourcef(id, AL.AL_PITCH, src.getPitch()); - checkError(true); - break; - } - } - } - - private void setSourceParams(int id, AudioSource src, boolean forceNonLoop) { - if (src.isPositional()) { - Vector3f pos = src.getPosition(); - Vector3f vel = src.getVelocity(); - //alSource3f(id, AL_POSITION, pos.x, pos.y, pos.z); - alSource3f(id, AL.AL_POSITION, pos.x, pos.y, pos.z); - checkError(true); - //alSource3f(id, AL_VELOCITY, vel.x, vel.y, vel.z); - alSource3f(id, AL.AL_VELOCITY, vel.x, vel.y, vel.z); - checkError(true); - //alSourcef(id, AL_MAX_DISTANCE, src.getMaxDistance()); - alSourcef(id, AL.AL_MAX_DISTANCE, src.getMaxDistance()); - checkError(true); - //alSourcef(id, AL_REFERENCE_DISTANCE, src.getRefDistance()); - alSourcef(id, AL.AL_REFERENCE_DISTANCE, src.getRefDistance()); - checkError(true); - //alSourcei(id, AL_SOURCE_RELATIVE, AL_FALSE); - alSourcei(id, AL.AL_SOURCE_RELATIVE, AL.AL_FALSE); - checkError(true); - - if (src.isReverbEnabled() && supportEfx) { - //int filter = EFX10.AL_FILTER_NULL; - int filter = AL.AL_FILTER_NULL; - if (src.getReverbFilter() != null) { - Filter f = src.getReverbFilter(); - if (f.isUpdateNeeded()) { - updateFilter(f); - } - filter = f.getId(); - } - //AL11.alSource3i(id, EFX10.AL_AUXILIARY_SEND_FILTER, reverbFxSlot, 0, filter); - alSource3i(id, AL.AL_AUXILIARY_SEND_FILTER, reverbFxSlot, 0, filter); - } - } else { - // play in headspace - //alSourcei(id, AL_SOURCE_RELATIVE, AL_TRUE); - alSourcei(id, AL.AL_SOURCE_RELATIVE, AL.AL_TRUE); - checkError(true); - //alSource3f(id, AL_POSITION, 0, 0, 0); - alSource3f(id, AL.AL_POSITION, 0, 0, 0); - checkError(true); - //alSource3f(id, AL_VELOCITY, 0, 0, 0); - alSource3f(id, AL.AL_VELOCITY, 0, 0, 0); - checkError(true); - } - - if (src.getDryFilter() != null && supportEfx) { - Filter f = src.getDryFilter(); - if (f.isUpdateNeeded()) { - updateFilter(f); - - // NOTE: must re-attach filter for changes to apply. - //alSourcei(id, EFX10.AL_DIRECT_FILTER, f.getId()); - alSourcei(id, AL.AL_DIRECT_FILTER, f.getId()); - } - } - - if (forceNonLoop) { - //alSourcei(id, AL_LOOPING, AL_FALSE); - alSourcei(id, AL.AL_LOOPING, AL.AL_FALSE); - checkError(true); - } else { - //alSourcei(id, AL_LOOPING, src.isLooping() ? AL_TRUE : AL_FALSE); - alSourcei(id, AL.AL_LOOPING, src.isLooping() ? AL.AL_TRUE : AL.AL_FALSE); - checkError(true); - } - //alSourcef(id, AL_GAIN, src.getVolume()); - alSourcef(id, AL.AL_GAIN, src.getVolume()); - checkError(true); - //alSourcef(id, AL_PITCH, src.getPitch()); - alSourcef(id, AL.AL_PITCH, src.getPitch()); - checkError(true); - //alSourcef(id, AL11.AL_SEC_OFFSET, src.getTimeOffset()); - alSourcef(id, AL.AL_SEC_OFFSET, src.getTimeOffset()); - checkError(true); - - if (src.isDirectional()) { - Vector3f dir = src.getDirection(); - //alSource3f(id, AL_DIRECTION, dir.x, dir.y, dir.z); - alSource3f(id, AL.AL_DIRECTION, dir.x, dir.y, dir.z); - checkError(true); - //alSourcef(id, AL_CONE_INNER_ANGLE, src.getInnerAngle()); - alSourcef(id, AL.AL_CONE_INNER_ANGLE, src.getInnerAngle()); - checkError(true); - //alSourcef(id, AL_CONE_OUTER_ANGLE, src.getOuterAngle()); - alSourcef(id, AL.AL_CONE_OUTER_ANGLE, src.getOuterAngle()); - checkError(true); - //alSourcef(id, AL_CONE_OUTER_GAIN, 0); - alSourcef(id, AL.AL_CONE_OUTER_GAIN, 0); - checkError(true); - } else { - //alSourcef(id, AL_CONE_INNER_ANGLE, 360); - alSourcef(id, AL.AL_CONE_INNER_ANGLE, 360); - checkError(true); - //alSourcef(id, AL_CONE_OUTER_ANGLE, 360); - alSourcef(id, AL.AL_CONE_OUTER_ANGLE, 360); - checkError(true); - //alSourcef(id, AL_CONE_OUTER_GAIN, 1f); - alSourcef(id, AL.AL_CONE_OUTER_GAIN, 1f); - checkError(true); - } - } - - public void updateListenerParam(Listener listener, ListenerParam param) { - checkDead(); - synchronized (threadLock) { - while (!threadLock.get()) { - try { - threadLock.wait(); - } catch (InterruptedException ex) { - } - } - if (audioDisabled) { - return; - } - - switch (param) { - case Position: - Vector3f pos = listener.getLocation(); - //alListener3f(AL_POSITION, pos.x, pos.y, pos.z); - alListener3f(AL.AL_POSITION, pos.x, pos.y, pos.z); - checkError(true); - break; - case Rotation: - Vector3f dir = listener.getDirection(); - Vector3f up = listener.getUp(); - fb.rewind(); - fb.put(dir.x).put(dir.y).put(dir.z); - fb.put(up.x).put(up.y).put(up.z); - fb.flip(); - //alListener(AL_ORIENTATION, fb); - alListener(AL.AL_ORIENTATION, fb); - checkError(true); - break; - case Velocity: - Vector3f vel = listener.getVelocity(); - //alListener3f(AL_VELOCITY, vel.x, vel.y, vel.z); - alListener3f(AL.AL_VELOCITY, vel.x, vel.y, vel.z); - checkError(true); - break; - case Volume: - //alListenerf(AL_GAIN, listener.getVolume()); - alListenerf(AL.AL_GAIN, listener.getVolume()); - checkError(true); - break; - } - } - } - - private void setListenerParams(Listener listener) { - Vector3f pos = listener.getLocation(); - Vector3f vel = listener.getVelocity(); - Vector3f dir = listener.getDirection(); - Vector3f up = listener.getUp(); - - //alListener3f(AL_POSITION, pos.x, pos.y, pos.z); - alListener3f(AL.AL_POSITION, pos.x, pos.y, pos.z); - checkError(true); - //alListener3f(AL_VELOCITY, vel.x, vel.y, vel.z); - alListener3f(AL.AL_VELOCITY, vel.x, vel.y, vel.z); - checkError(true); - fb.rewind(); - fb.put(dir.x).put(dir.y).put(dir.z); - fb.put(up.x).put(up.y).put(up.z); - fb.flip(); - //alListener(AL_ORIENTATION, fb); - alListener(AL.AL_ORIENTATION, fb); - checkError(true); - //alListenerf(AL_GAIN, listener.getVolume()); - alListenerf(AL.AL_GAIN, listener.getVolume()); - checkError(true); - } - - private int newChannel() { - if (freeChans.size() > 0) { - return freeChans.remove(0); - } else if (nextChan < channels.length) { - return nextChan++; - } else { - return -1; - } - } - - private void freeChannel(int index) { - if (index == nextChan - 1) { - nextChan--; - } else { - freeChans.add(index); - } - } - - public void setEnvironment(Environment env) { - checkDead(); - synchronized (threadLock) { - while (!threadLock.get()) { - try { - threadLock.wait(); - } catch (InterruptedException ex) { - } - } - if (audioDisabled || !supportEfx) { - return; - } - - //EFX10.alEffectf(reverbFx, EFX10.AL_REVERB_DENSITY, env.getDensity()); - alEffectf(reverbFx, AL.AL_REVERB_DENSITY, env.getDensity()); - //EFX10.alEffectf(reverbFx, EFX10.AL_REVERB_DIFFUSION, env.getDiffusion()); - alEffectf(reverbFx, AL.AL_REVERB_DIFFUSION, env.getDiffusion()); - //EFX10.alEffectf(reverbFx, EFX10.AL_REVERB_GAIN, env.getGain()); - alEffectf(reverbFx, AL.AL_REVERB_GAIN, env.getGain()); - //EFX10.alEffectf(reverbFx, EFX10.AL_REVERB_GAINHF, env.getGainHf()); - alEffectf(reverbFx, AL.AL_REVERB_GAINHF, env.getGainHf()); - //EFX10.alEffectf(reverbFx, EFX10.AL_REVERB_DECAY_TIME, env.getDecayTime()); - alEffectf(reverbFx, AL.AL_REVERB_DECAY_TIME, env.getDecayTime()); - //EFX10.alEffectf(reverbFx, EFX10.AL_REVERB_DECAY_HFRATIO, env.getDecayHFRatio()); - alEffectf(reverbFx, AL.AL_REVERB_DECAY_HFRATIO, env.getDecayHFRatio()); - //EFX10.alEffectf(reverbFx, EFX10.AL_REVERB_REFLECTIONS_GAIN, env.getReflectGain()); - alEffectf(reverbFx, AL.AL_REVERB_REFLECTIONS_GAIN, env.getReflectGain()); - //EFX10.alEffectf(reverbFx, EFX10.AL_REVERB_REFLECTIONS_DELAY, env.getReflectDelay()); - alEffectf(reverbFx, AL.AL_REVERB_REFLECTIONS_DELAY, env.getReflectDelay()); - //EFX10.alEffectf(reverbFx, EFX10.AL_REVERB_LATE_REVERB_GAIN, env.getLateReverbGain()); - alEffectf(reverbFx, AL.AL_REVERB_LATE_REVERB_GAIN, env.getLateReverbGain()); - //EFX10.alEffectf(reverbFx, EFX10.AL_REVERB_LATE_REVERB_DELAY, env.getLateReverbDelay()); - alEffectf(reverbFx, AL.AL_REVERB_LATE_REVERB_DELAY, env.getLateReverbDelay()); - //EFX10.alEffectf(reverbFx, EFX10.AL_REVERB_AIR_ABSORPTION_GAINHF, env.getAirAbsorbGainHf()); - alEffectf(reverbFx, AL.AL_REVERB_AIR_ABSORPTION_GAINHF, env.getAirAbsorbGainHf()); - //EFX10.alEffectf(reverbFx, EFX10.AL_REVERB_ROOM_ROLLOFF_FACTOR, env.getRoomRolloffFactor()); - alEffectf(reverbFx, AL.AL_REVERB_ROOM_ROLLOFF_FACTOR, env.getRoomRolloffFactor()); - - // attach effect to slot - //EFX10.alAuxiliaryEffectSloti(reverbFxSlot, EFX10.AL_EFFECTSLOT_EFFECT, reverbFx); - alAuxiliaryEffectSloti(reverbFxSlot, AL.AL_EFFECTSLOT_EFFECT, reverbFx); - } - } - - private boolean fillBuffer(AudioStream stream, int id) { - int size = 0; - int result; - - while (size < arrayBuf.length) { - result = stream.readSamples(arrayBuf, size, arrayBuf.length - size); - - if (result > 0) { - size += result; - } else { - break; - } - } - - if (size == 0) { - return false; - } - - nativeBuf.clear(); - nativeBuf.put(arrayBuf, 0, size); - nativeBuf.flip(); - - //alBufferData(id, convertFormat(stream), nativeBuf, stream.getSampleRate()); - alBufferData(id, convertFormat(stream), nativeBuf, size, stream.getSampleRate()); - checkError(true); - - return true; - } - - private boolean fillStreamingSource(int sourceId, AudioStream stream) { - if (!stream.isOpen()) { - return false; - } - - boolean active = true; - //int processed = alGetSourcei(sourceId, AL_BUFFERS_PROCESSED); - int processed = alGetSourcei(sourceId, AL.AL_BUFFERS_PROCESSED); - checkError(true); - - //while((processed--) != 0){ - if (processed > 0) { - int buffer; - - ib.position(0).limit(1); - //alSourceUnqueueBuffers(sourceId, ib); - alSourceUnqueueBuffers(sourceId, 1, ib); - checkError(true); - buffer = ib.get(0); - - active = fillBuffer(stream, buffer); - - ib.position(0).limit(1); - ib.put(0, buffer); - //alSourceQueueBuffers(sourceId, ib); - alSourceQueueBuffers(sourceId, 1, ib); - checkError(true); - } - - if (!active && stream.isOpen()) { - stream.close(); - } - - return active; - } - - private boolean attachStreamToSource(int sourceId, AudioStream stream) { - boolean active = true; - int activeBufferCount = 0; - for (int id : stream.getIds()) { - active = fillBuffer(stream, id); - ib.position(0).limit(1); - ib.put(id).flip(); - //alSourceQueueBuffers(sourceId, ib); - // OpenAL Soft does not like 0 size buffer data in alSourceQueueBuffers - // Produces error code 40964 (0xA004) = AL_INVALID_OPERATION and - // does not return (crashes) so that the error code can be checked. - // active is FALSE when the data size is 0 - if (active) { - alSourceQueueBuffers(sourceId, 1, ib); - checkError(true); - activeBufferCount++; - } - } - // adjust the steam id array if the audio data is smaller than STREAMING_BUFFER_COUNT - // this is to avoid an error with OpenAL Soft when alSourceUnenqueueBuffers - // is called with more buffers than were originally used with alSourceQueueBuffers - if (activeBufferCount < STREAMING_BUFFER_COUNT) { - int[] newIds = new int[activeBufferCount]; - for (int i=0; iAndroidAudioLoader will create an - * {@link AndroidAudioData} object with the specified asset key. - */ -public class AndroidAudioLoader implements AssetLoader { - - @Override - public Object load(AssetInfo assetInfo) throws IOException { - AndroidAudioData result = new AndroidAudioData(); - result.setAssetKey(assetInfo.getKey()); - return result; - } -} diff --git a/engine/src/ios/com/jme3/renderer/ios/IGLESShaderRenderer.java b/engine/src/ios/com/jme3/renderer/ios/IGLESShaderRenderer.java deleted file mode 100644 index d3af7eff3..000000000 --- a/engine/src/ios/com/jme3/renderer/ios/IGLESShaderRenderer.java +++ /dev/null @@ -1,2575 +0,0 @@ -package com.jme3.renderer.ios; - -import com.jme3.light.LightList; -import com.jme3.material.RenderState; -import com.jme3.math.*; -import com.jme3.renderer.*; -import com.jme3.scene.Mesh; -import com.jme3.scene.Mesh.Mode; -import com.jme3.scene.VertexBuffer; -import com.jme3.scene.VertexBuffer.Format; -import com.jme3.scene.VertexBuffer.Type; -import com.jme3.scene.VertexBuffer.Usage; -import com.jme3.shader.Attribute; -import com.jme3.shader.Shader; -import com.jme3.shader.Shader.ShaderSource; -import com.jme3.shader.Shader.ShaderType; -import com.jme3.shader.Uniform; -import com.jme3.texture.FrameBuffer; -import com.jme3.texture.FrameBuffer.RenderBuffer; -import com.jme3.texture.Image; -import com.jme3.texture.Texture; -import com.jme3.texture.Texture.WrapAxis; -import com.jme3.util.BufferUtils; -import com.jme3.util.ListMap; -import com.jme3.util.NativeObjectManager; - -import java.nio.*; -import java.util.EnumSet; -import java.util.List; -import java.util.logging.Level; -import java.util.logging.Logger; -import jme3tools.shader.ShaderDebug; - -/** - * The Renderer is responsible for taking rendering commands and - * executing them on the underlying video hardware. - * - * @author Kirill Vainer - */ -public class IGLESShaderRenderer implements Renderer { - - private static final Logger logger = Logger.getLogger(IGLESShaderRenderer.class.getName()); - private static final boolean VALIDATE_SHADER = false; - - private final NativeObjectManager objManager = new NativeObjectManager(); - private final EnumSet caps = EnumSet.noneOf(Caps.class); - private final Statistics statistics = new Statistics(); - private final StringBuilder stringBuf = new StringBuilder(250); - private final RenderContext context = new RenderContext(); - private final ByteBuffer nameBuf = BufferUtils.createByteBuffer(250); - - private final int maxFBOAttachs = 1; // Only 1 color attachment on ES - private final int maxMRTFBOAttachs = 1; // FIXME for now, not sure if > 1 is needed for ES - - private final int[] intBuf1 = new int[1]; - private final int[] intBuf16 = new int[16]; - - private int glslVer; - private int vertexTextureUnits; - private int fragTextureUnits; - private int vertexUniforms; - private int fragUniforms; - private int vertexAttribs; - private int maxRBSize; - private int maxTexSize; - private int maxCubeTexSize; - - private FrameBuffer lastFb = null; - private FrameBuffer mainFbOverride = null; - private boolean useVBO = true; - private boolean powerVr = false; - private boolean uintIndexSupport = false; - - private Shader boundShader; - - private int vpX, vpY, vpW, vpH; - private int clipX, clipY, clipW, clipH; - - public IGLESShaderRenderer() { - logger.log(Level.FINE, "IGLESShaderRenderer Constructor"); - } - - /** - * Get the capabilities of the renderer. - * @return The capabilities of the renderer. - */ - public EnumSet getCaps() { - logger.log(Level.FINE, "IGLESShaderRenderer getCaps"); - return caps; - } - - /** - * The statistics allow tracking of how data - * per frame, such as number of objects rendered, number of triangles, etc. - * These are updated when the Renderer's methods are used, make sure - * to call {@link Statistics#clearFrame() } at the appropriate time - * to get accurate info per frame. - */ - public Statistics getStatistics() { - logger.log(Level.FINE, "IGLESShaderRenderer getStatistics"); - return statistics; - } - - /** - * Invalidates the current rendering state. Should be called after - * the GL state was changed manually or through an external library. - */ - public void invalidateState() { - logger.log(Level.FINE, "IGLESShaderRenderer invalidateState"); - } - - /** - * Clears certain channels of the currently bound framebuffer. - * - * @param color True if to clear colors (RGBA) - * @param depth True if to clear depth/z - * @param stencil True if to clear stencil buffer (if available, otherwise - * ignored) - */ - public void clearBuffers(boolean color, boolean depth, boolean stencil) { - logger.log(Level.FINE, "IGLESShaderRenderer clearBuffers"); - int bits = 0; - if (color) { - bits = JmeIosGLES.GL_COLOR_BUFFER_BIT; - } - if (depth) { - bits |= JmeIosGLES.GL_DEPTH_BUFFER_BIT; - } - if (stencil) { - bits |= JmeIosGLES.GL_STENCIL_BUFFER_BIT; - } - if (bits != 0) { - JmeIosGLES.glClear(bits); - JmeIosGLES.checkGLError(); - } - } - - /** - * Sets the background (aka clear) color. - * - * @param color The background color to set - */ - public void setBackgroundColor(ColorRGBA color) { - logger.log(Level.FINE, "IGLESShaderRenderer setBackgroundColor"); - JmeIosGLES.glClearColor(color.r, color.g, color.b, color.a); - JmeIosGLES.checkGLError(); - } - - /** - * Applies the given {@link RenderState}, making the necessary - * GL calls so that the state is applied. - */ - public void applyRenderState(RenderState state) { - logger.log(Level.FINE, "IGLESShaderRenderer applyRenderState"); - /* - if (state.isWireframe() && !context.wireframe){ - GLES20.glPolygonMode(GLES20.GL_FRONT_AND_BACK, GLES20.GL_LINE); - context.wireframe = true; - }else if (!state.isWireframe() && context.wireframe){ - GLES20.glPolygonMode(GLES20.GL_FRONT_AND_BACK, GLES20.GL_FILL); - context.wireframe = false; - } - */ - if (state.isDepthTest() && !context.depthTestEnabled) { - JmeIosGLES.glEnable(JmeIosGLES.GL_DEPTH_TEST); - JmeIosGLES.glDepthFunc(convertTestFunction(context.depthFunc)); - JmeIosGLES.checkGLError(); - context.depthTestEnabled = true; - } else if (!state.isDepthTest() && context.depthTestEnabled) { - JmeIosGLES.glDisable(JmeIosGLES.GL_DEPTH_TEST); - JmeIosGLES.checkGLError(); - context.depthTestEnabled = false; - } - if (state.getDepthFunc() != context.depthFunc) { - JmeIosGLES.glDepthFunc(convertTestFunction(state.getDepthFunc())); - context.depthFunc = state.getDepthFunc(); - } - - if (state.isDepthWrite() && !context.depthWriteEnabled) { - JmeIosGLES.glDepthMask(true); - JmeIosGLES.checkGLError(); - context.depthWriteEnabled = true; - } else if (!state.isDepthWrite() && context.depthWriteEnabled) { - JmeIosGLES.glDepthMask(false); - JmeIosGLES.checkGLError(); - context.depthWriteEnabled = false; - } - if (state.isColorWrite() && !context.colorWriteEnabled) { - JmeIosGLES.glColorMask(true, true, true, true); - JmeIosGLES.checkGLError(); - context.colorWriteEnabled = true; - } else if (!state.isColorWrite() && context.colorWriteEnabled) { - JmeIosGLES.glColorMask(false, false, false, false); - JmeIosGLES.checkGLError(); - context.colorWriteEnabled = false; - } -// if (state.isPointSprite() && !context.pointSprite) { -//// GLES20.glEnable(GLES20.GL_POINT_SPRITE); -//// GLES20.glTexEnvi(GLES20.GL_POINT_SPRITE, GLES20.GL_COORD_REPLACE, GLES20.GL_TRUE); -//// GLES20.glEnable(GLES20.GL_VERTEX_PROGRAM_POINT_SIZE); -//// GLES20.glPointParameterf(GLES20.GL_POINT_SIZE_MIN, 1.0f); -// } else if (!state.isPointSprite() && context.pointSprite) { -//// GLES20.glDisable(GLES20.GL_POINT_SPRITE); -// } - - if (state.isPolyOffset()) { - if (!context.polyOffsetEnabled) { - JmeIosGLES.glEnable(JmeIosGLES.GL_POLYGON_OFFSET_FILL); - JmeIosGLES.glPolygonOffset(state.getPolyOffsetFactor(), - state.getPolyOffsetUnits()); - JmeIosGLES.checkGLError(); - - context.polyOffsetEnabled = true; - context.polyOffsetFactor = state.getPolyOffsetFactor(); - context.polyOffsetUnits = state.getPolyOffsetUnits(); - } else { - if (state.getPolyOffsetFactor() != context.polyOffsetFactor - || state.getPolyOffsetUnits() != context.polyOffsetUnits) { - JmeIosGLES.glPolygonOffset(state.getPolyOffsetFactor(), - state.getPolyOffsetUnits()); - JmeIosGLES.checkGLError(); - - context.polyOffsetFactor = state.getPolyOffsetFactor(); - context.polyOffsetUnits = state.getPolyOffsetUnits(); - } - } - } else { - if (context.polyOffsetEnabled) { - JmeIosGLES.glDisable(JmeIosGLES.GL_POLYGON_OFFSET_FILL); - JmeIosGLES.checkGLError(); - - context.polyOffsetEnabled = false; - context.polyOffsetFactor = 0; - context.polyOffsetUnits = 0; - } - } - if (state.getFaceCullMode() != context.cullMode) { - if (state.getFaceCullMode() == RenderState.FaceCullMode.Off) { - JmeIosGLES.glDisable(JmeIosGLES.GL_CULL_FACE); - JmeIosGLES.checkGLError(); - } else { - JmeIosGLES.glEnable(JmeIosGLES.GL_CULL_FACE); - JmeIosGLES.checkGLError(); - } - - switch (state.getFaceCullMode()) { - case Off: - break; - case Back: - JmeIosGLES.glCullFace(JmeIosGLES.GL_BACK); - JmeIosGLES.checkGLError(); - break; - case Front: - JmeIosGLES.glCullFace(JmeIosGLES.GL_FRONT); - JmeIosGLES.checkGLError(); - break; - case FrontAndBack: - JmeIosGLES.glCullFace(JmeIosGLES.GL_FRONT_AND_BACK); - JmeIosGLES.checkGLError(); - break; - default: - throw new UnsupportedOperationException("Unrecognized face cull mode: " - + state.getFaceCullMode()); - } - - context.cullMode = state.getFaceCullMode(); - } - - if (state.getBlendMode() != context.blendMode) { - if (state.getBlendMode() == RenderState.BlendMode.Off) { - JmeIosGLES.glDisable(JmeIosGLES.GL_BLEND); - JmeIosGLES.checkGLError(); - } else { - JmeIosGLES.glEnable(JmeIosGLES.GL_BLEND); - switch (state.getBlendMode()) { - case Off: - break; - case Additive: - JmeIosGLES.glBlendFunc(JmeIosGLES.GL_ONE, JmeIosGLES.GL_ONE); - break; - case AlphaAdditive: - JmeIosGLES.glBlendFunc(JmeIosGLES.GL_SRC_ALPHA, JmeIosGLES.GL_ONE); - break; - case Color: - JmeIosGLES.glBlendFunc(JmeIosGLES.GL_ONE, JmeIosGLES.GL_ONE_MINUS_SRC_COLOR); - break; - case Alpha: - JmeIosGLES.glBlendFunc(JmeIosGLES.GL_SRC_ALPHA, JmeIosGLES.GL_ONE_MINUS_SRC_ALPHA); - break; - case PremultAlpha: - JmeIosGLES.glBlendFunc(JmeIosGLES.GL_ONE, JmeIosGLES.GL_ONE_MINUS_SRC_ALPHA); - break; - case Modulate: - JmeIosGLES.glBlendFunc(JmeIosGLES.GL_DST_COLOR, JmeIosGLES.GL_ZERO); - break; - case ModulateX2: - JmeIosGLES.glBlendFunc(JmeIosGLES.GL_DST_COLOR, JmeIosGLES.GL_SRC_COLOR); - break; - default: - throw new UnsupportedOperationException("Unrecognized blend mode: " - + state.getBlendMode()); - } - JmeIosGLES.checkGLError(); - } - context.blendMode = state.getBlendMode(); - } - } - - /** - * Set the range of the depth values for objects. All rendered - * objects will have their depth clamped to this range. - * - * @param start The range start - * @param end The range end - */ - public void setDepthRange(float start, float end) { - logger.log(Level.FINE, "IGLESShaderRenderer setDepthRange"); - JmeIosGLES.glDepthRangef(start, end); - JmeIosGLES.checkGLError(); - } - - /** - * Called when a new frame has been rendered. - */ - public void onFrame() { - logger.log(Level.FINE, "IGLESShaderRenderer onFrame"); - //JmeIosGLES.checkGLErrorForced(); - JmeIosGLES.checkGLError(); - - objManager.deleteUnused(this); - } - - /** - * Set the world matrix to use. Does nothing if the Renderer is - * shader based. - * - * @param worldMatrix World matrix to use. - */ - public void setWorldMatrix(Matrix4f worldMatrix) { - logger.log(Level.FINE, "IGLESShaderRenderer setWorldMatrix"); - } - - /** - * Sets the view and projection matrices to use. Does nothing if the Renderer - * is shader based. - * - * @param viewMatrix The view matrix to use. - * @param projMatrix The projection matrix to use. - */ - public void setViewProjectionMatrices(Matrix4f viewMatrix, Matrix4f projMatrix) { - logger.log(Level.FINE, "IGLESShaderRenderer setViewProjectionMatrices"); - } - - /** - * Set the viewport location and resolution on the screen. - * - * @param x The x coordinate of the viewport - * @param y The y coordinate of the viewport - * @param width Width of the viewport - * @param height Height of the viewport - */ - public void setViewPort(int x, int y, int width, int height) { - logger.log(Level.FINE, "IGLESShaderRenderer setViewPort"); - if (x != vpX || vpY != y || vpW != width || vpH != height) { - JmeIosGLES.glViewport(x, y, width, height); - JmeIosGLES.checkGLError(); - - vpX = x; - vpY = y; - vpW = width; - vpH = height; - } - } - - /** - * Specifies a clipping rectangle. - * For all future rendering commands, no pixels will be allowed - * to be rendered outside of the clip rectangle. - * - * @param x The x coordinate of the clip rect - * @param y The y coordinate of the clip rect - * @param width Width of the clip rect - * @param height Height of the clip rect - */ - public void setClipRect(int x, int y, int width, int height) { - logger.log(Level.FINE, "IGLESShaderRenderer setClipRect"); - if (!context.clipRectEnabled) { - JmeIosGLES.glEnable(JmeIosGLES.GL_SCISSOR_TEST); - JmeIosGLES.checkGLError(); - context.clipRectEnabled = true; - } - if (clipX != x || clipY != y || clipW != width || clipH != height) { - JmeIosGLES.glScissor(x, y, width, height); - JmeIosGLES.checkGLError(); - clipX = x; - clipY = y; - clipW = width; - clipH = height; - } - } - - /** - * Clears the clipping rectangle set with - * {@link #setClipRect(int, int, int, int) }. - */ - public void clearClipRect() { - logger.log(Level.FINE, "IGLESShaderRenderer clearClipRect"); - if (context.clipRectEnabled) { - JmeIosGLES.glDisable(JmeIosGLES.GL_SCISSOR_TEST); - JmeIosGLES.checkGLError(); - context.clipRectEnabled = false; - - clipX = 0; - clipY = 0; - clipW = 0; - clipH = 0; - } - } - - /** - * Set lighting state. - * Does nothing if the renderer is shader based. - * The lights should be provided in world space. - * Specify null to disable lighting. - * - * @param lights The light list to set. - */ - public void setLighting(LightList lights) { - logger.log(Level.FINE, "IGLESShaderRenderer setLighting"); - } - - /** - * Sets the shader to use for rendering. - * If the shader has not been uploaded yet, it is compiled - * and linked. If it has been uploaded, then the - * uniform data is updated and the shader is set. - * - * @param shader The shader to use for rendering. - */ - public void setShader(Shader shader) { - logger.log(Level.FINE, "IGLESShaderRenderer setShader"); - if (shader == null) { - throw new IllegalArgumentException("Shader cannot be null"); - } else { - if (shader.isUpdateNeeded()) { - updateShaderData(shader); - } - - // NOTE: might want to check if any of the - // sources need an update? - - assert shader.getId() > 0; - - updateShaderUniforms(shader); - bindProgram(shader); - } - } - - /** - * Deletes a shader. This method also deletes - * the attached shader sources. - * - * @param shader Shader to delete. - */ - public void deleteShader(Shader shader) { - logger.log(Level.FINE, "IGLESShaderRenderer deleteShader"); - if (shader.getId() == -1) { - logger.warning("Shader is not uploaded to GPU, cannot delete."); - return; - } - - for (ShaderSource source : shader.getSources()) { - if (source.getId() != -1) { - JmeIosGLES.glDetachShader(shader.getId(), source.getId()); - JmeIosGLES.checkGLError(); - - deleteShaderSource(source); - } - } - - JmeIosGLES.glDeleteProgram(shader.getId()); - JmeIosGLES.checkGLError(); - - statistics.onDeleteShader(); - shader.resetObject(); - } - - /** - * Deletes the provided shader source. - * - * @param source The ShaderSource to delete. - */ - public void deleteShaderSource(ShaderSource source) { - logger.log(Level.FINE, "IGLESShaderRenderer deleteShaderSource"); - if (source.getId() < 0) { - logger.warning("Shader source is not uploaded to GPU, cannot delete."); - return; - } - - source.clearUpdateNeeded(); - - JmeIosGLES.glDeleteShader(source.getId()); - JmeIosGLES.checkGLError(); - - source.resetObject(); - } - - /** - * Copies contents from src to dst, scaling if necessary. - */ - public void copyFrameBuffer(FrameBuffer src, FrameBuffer dst) { - logger.log(Level.FINE, "IGLESShaderRenderer copyFrameBuffer"); - copyFrameBuffer(src, dst, true); - } - - /** - * Copies contents from src to dst, scaling if necessary. - * set copyDepth to false to only copy the color buffers. - */ - public void copyFrameBuffer(FrameBuffer src, FrameBuffer dst, boolean copyDepth) { - logger.warning("IGLESShaderRenderer copyFrameBuffer with depth TODO"); - throw new RendererException("Copy framebuffer not implemented yet."); - } - - /** - * Sets the framebuffer that will be drawn to. - */ - public void setFrameBuffer(FrameBuffer fb) { - logger.log(Level.FINE, "IGLESShaderRenderer setFrameBuffer"); - if (fb == null && mainFbOverride != null) { - fb = mainFbOverride; - } - - if (lastFb == fb) { - if (fb == null || !fb.isUpdateNeeded()) { - return; - } - } - - // generate mipmaps for last FB if needed - if (lastFb != null) { - for (int i = 0; i < lastFb.getNumColorBuffers(); i++) { - RenderBuffer rb = lastFb.getColorBuffer(i); - Texture tex = rb.getTexture(); - if (tex != null - && tex.getMinFilter().usesMipMapLevels()) { - setTexture(0, rb.getTexture()); - -// int textureType = convertTextureType(tex.getType(), tex.getImage().getMultiSamples(), rb.getFace()); - int textureType = convertTextureType(tex.getType()); - JmeIosGLES.glGenerateMipmap(textureType); - JmeIosGLES.checkGLError(); - } - } - } - - if (fb == null) { - // unbind any fbos - if (context.boundFBO != 0) { - JmeIosGLES.glBindFramebuffer(JmeIosGLES.GL_FRAMEBUFFER, 0); - JmeIosGLES.checkGLError(); - - statistics.onFrameBufferUse(null, true); - - context.boundFBO = 0; - } - - /* - // select back buffer - if (context.boundDrawBuf != -1) { - glDrawBuffer(initialDrawBuf); - context.boundDrawBuf = -1; - } - if (context.boundReadBuf != -1) { - glReadBuffer(initialReadBuf); - context.boundReadBuf = -1; - } - */ - - lastFb = null; - } else { - if (fb.getNumColorBuffers() == 0 && fb.getDepthBuffer() == null) { - throw new IllegalArgumentException("The framebuffer: " + fb - + "\nDoesn't have any color/depth buffers"); - } - - if (fb.isUpdateNeeded()) { - updateFrameBuffer(fb); - } - - if (context.boundFBO != fb.getId()) { - JmeIosGLES.glBindFramebuffer(JmeIosGLES.GL_FRAMEBUFFER, fb.getId()); - JmeIosGLES.checkGLError(); - - statistics.onFrameBufferUse(fb, true); - - // update viewport to reflect framebuffer's resolution - setViewPort(0, 0, fb.getWidth(), fb.getHeight()); - - context.boundFBO = fb.getId(); - } else { - statistics.onFrameBufferUse(fb, false); - } - if (fb.getNumColorBuffers() == 0) { -// // make sure to select NONE as draw buf -// // no color buffer attached. select NONE - if (context.boundDrawBuf != -2) { -// glDrawBuffer(GL_NONE); - context.boundDrawBuf = -2; - } - if (context.boundReadBuf != -2) { -// glReadBuffer(GL_NONE); - context.boundReadBuf = -2; - } - } else { - if (fb.getNumColorBuffers() > maxFBOAttachs) { - throw new RendererException("Framebuffer has more color " - + "attachments than are supported" - + " by the video hardware!"); - } - if (fb.isMultiTarget()) { - if (fb.getNumColorBuffers() > maxMRTFBOAttachs) { - throw new RendererException("Framebuffer has more" - + " multi targets than are supported" - + " by the video hardware!"); - } - - if (context.boundDrawBuf != 100 + fb.getNumColorBuffers()) { - //intBuf16.clear(); - for (int i = 0; i < 16; i++) { - intBuf16[i] = i < fb.getNumColorBuffers() ? JmeIosGLES.GL_COLOR_ATTACHMENT0 + i : 0; - } - - //intBuf16.flip();// TODO: flip -// glDrawBuffers(intBuf16); - context.boundDrawBuf = 100 + fb.getNumColorBuffers(); - } - } else { - RenderBuffer rb = fb.getColorBuffer(fb.getTargetIndex()); - // select this draw buffer - if (context.boundDrawBuf != rb.getSlot()) { - JmeIosGLES.glActiveTexture(convertAttachmentSlot(rb.getSlot())); - JmeIosGLES.checkGLError(); - - context.boundDrawBuf = rb.getSlot(); - } - } - } - - assert fb.getId() >= 0; - assert context.boundFBO == fb.getId(); - - lastFb = fb; - - checkFrameBufferStatus(fb); - } - } - - /** - * Set the framebuffer that will be set instead of the main framebuffer - * when a call to setFrameBuffer(null) is made. - * - * @param fb - */ - public void setMainFrameBufferOverride(FrameBuffer fb) { - logger.log(Level.FINE, "IGLESShaderRenderer setMainFrameBufferOverride"); - mainFbOverride = fb; - } - - /** - * Reads the pixels currently stored in the specified framebuffer - * into the given ByteBuffer object. - * Only color pixels are transferred, the format is BGRA with 8 bits - * per component. The given byte buffer should have at least - * fb.getWidth() * fb.getHeight() * 4 bytes remaining. - * - * @param fb The framebuffer to read from - * @param byteBuf The bytebuffer to transfer color data to - */ - public void readFrameBuffer(FrameBuffer fb, ByteBuffer byteBuf) { - logger.log(Level.FINE, "IGLESShaderRenderer readFrameBuffer"); - if (fb != null) { - RenderBuffer rb = fb.getColorBuffer(); - if (rb == null) { - throw new IllegalArgumentException("Specified framebuffer" - + " does not have a colorbuffer"); - } - - setFrameBuffer(fb); - } else { - setFrameBuffer(null); - } - - //JmeIosGLES.glReadPixels2(vpX, vpY, vpW, vpH, JmeIosGLES.GL_RGBA, JmeIosGLES.GL_UNSIGNED_BYTE, byteBuf.array(), 0, vpW * vpH * 4); - JmeIosGLES.glReadPixels(vpX, vpY, vpW, vpH, JmeIosGLES.GL_RGBA, JmeIosGLES.GL_UNSIGNED_BYTE, byteBuf); - JmeIosGLES.checkGLError(); - } - - /** - * Deletes a framebuffer and all attached renderbuffers - */ - public void deleteFrameBuffer(FrameBuffer fb) { - logger.log(Level.FINE, "IGLESShaderRenderer deleteFrameBuffer"); - if (fb.getId() != -1) { - if (context.boundFBO == fb.getId()) { - JmeIosGLES.glBindFramebuffer(JmeIosGLES.GL_FRAMEBUFFER, 0); - JmeIosGLES.checkGLError(); - - context.boundFBO = 0; - } - - if (fb.getDepthBuffer() != null) { - deleteRenderBuffer(fb, fb.getDepthBuffer()); - } - if (fb.getColorBuffer() != null) { - deleteRenderBuffer(fb, fb.getColorBuffer()); - } - - intBuf1[0] = fb.getId(); - JmeIosGLES.glDeleteFramebuffers(1, intBuf1, 0); - JmeIosGLES.checkGLError(); - - fb.resetObject(); - - statistics.onDeleteFrameBuffer(); - } - } - - /** - * Sets the texture to use for the given texture unit. - */ - public void setTexture(int unit, Texture tex) { - logger.log(Level.FINE, "IGLESShaderRenderer setTexture"); - Image image = tex.getImage(); - if (image.isUpdateNeeded() || (image.isGeneratedMipmapsRequired() && !image.isMipmapsGenerated()) ) { - updateTexImageData(image, tex.getType()); - } - - int texId = image.getId(); - assert texId != -1; - - if (texId == -1) { - logger.warning("error: texture image has -1 id"); - } - - Image[] textures = context.boundTextures; - - int type = convertTextureType(tex.getType()); - if (!context.textureIndexList.moveToNew(unit)) { -// if (context.boundTextureUnit != unit){ -// glActiveTexture(GL_TEXTURE0 + unit); -// context.boundTextureUnit = unit; -// } -// glEnable(type); - } - - if (textures[unit] != image) { - if (context.boundTextureUnit != unit) { - JmeIosGLES.glActiveTexture(JmeIosGLES.GL_TEXTURE0 + unit); - context.boundTextureUnit = unit; - } - - JmeIosGLES.glBindTexture(type, texId); - JmeIosGLES.checkGLError(); - - textures[unit] = image; - - statistics.onTextureUse(tex.getImage(), true); - } else { - statistics.onTextureUse(tex.getImage(), false); - } - - setupTextureParams(tex); - } - - /** - * Modify the given Texture tex with the given Image. The image will be put at x and y into the texture. - * - * @param tex the Texture that will be modified - * @param pixels the source Image data to copy data from - * @param x the x position to put the image into the texture - * @param y the y position to put the image into the texture - */ - public void modifyTexture(Texture tex, Image pixels, int x, int y) { - logger.log(Level.FINE, "IGLESShaderRenderer modifyTexture"); - setTexture(0, tex); - TextureUtil.uploadSubTexture(pixels, convertTextureType(tex.getType()), 0, x, y); - } - - /** - * Deletes a texture from the GPU. - */ - public void deleteImage(Image image) { - logger.log(Level.FINE, "IGLESShaderRenderer deleteImage"); - int texId = image.getId(); - if (texId != -1) { - intBuf1[0] = texId; - - JmeIosGLES.glDeleteTextures(1, intBuf1, 0); - JmeIosGLES.checkGLError(); - - image.resetObject(); - - statistics.onDeleteTexture(); - } - } - - /** - * Uploads a vertex buffer to the GPU. - * - * @param vb The vertex buffer to upload - */ - public void updateBufferData(VertexBuffer vb) { - logger.log(Level.FINE, "IGLESShaderRenderer updateBufferData"); - int bufId = vb.getId(); - boolean created = false; - if (bufId == -1) { - // create buffer - JmeIosGLES.glGenBuffers(1, intBuf1, 0); - JmeIosGLES.checkGLError(); - - bufId = intBuf1[0]; - vb.setId(bufId); - objManager.registerObject(vb); - - created = true; - } - - // bind buffer - int target; - if (vb.getBufferType() == VertexBuffer.Type.Index) { - target = JmeIosGLES.GL_ELEMENT_ARRAY_BUFFER; - if (context.boundElementArrayVBO != bufId) { - JmeIosGLES.glBindBuffer(target, bufId); - JmeIosGLES.checkGLError(); - - context.boundElementArrayVBO = bufId; - } - } else { - target = JmeIosGLES.GL_ARRAY_BUFFER; - if (context.boundArrayVBO != bufId) { - JmeIosGLES.glBindBuffer(target, bufId); - JmeIosGLES.checkGLError(); - - context.boundArrayVBO = bufId; - } - } - - int usage = convertUsage(vb.getUsage()); - vb.getData().rewind(); - - if (created || vb.hasDataSizeChanged()) { - // upload data based on format - int size = vb.getData().limit() * vb.getFormat().getComponentSize(); - - switch (vb.getFormat()) { - case Byte: - case UnsignedByte: - JmeIosGLES.glBufferData(target, size, (ByteBuffer) vb.getData(), usage); - JmeIosGLES.checkGLError(); - break; - case Short: - case UnsignedShort: - JmeIosGLES.glBufferData(target, size, (ShortBuffer) vb.getData(), usage); - JmeIosGLES.checkGLError(); - break; - case Int: - case UnsignedInt: - JmeIosGLES.glBufferData(target, size, (IntBuffer) vb.getData(), usage); - JmeIosGLES.checkGLError(); - break; - case Float: - JmeIosGLES.glBufferData(target, size, (FloatBuffer) vb.getData(), usage); - JmeIosGLES.checkGLError(); - break; - default: - throw new RuntimeException("Unknown buffer format."); - } - } else { - int size = vb.getData().limit() * vb.getFormat().getComponentSize(); - - switch (vb.getFormat()) { - case Byte: - case UnsignedByte: - JmeIosGLES.glBufferSubData(target, 0, size, (ByteBuffer) vb.getData()); - JmeIosGLES.checkGLError(); - break; - case Short: - case UnsignedShort: - JmeIosGLES.glBufferSubData(target, 0, size, (ShortBuffer) vb.getData()); - JmeIosGLES.checkGLError(); - break; - case Int: - case UnsignedInt: - JmeIosGLES.glBufferSubData(target, 0, size, (IntBuffer) vb.getData()); - JmeIosGLES.checkGLError(); - break; - case Float: - JmeIosGLES.glBufferSubData(target, 0, size, (FloatBuffer) vb.getData()); - JmeIosGLES.checkGLError(); - break; - default: - throw new RuntimeException("Unknown buffer format."); - } - } - vb.clearUpdateNeeded(); - } - - /** - * Deletes a vertex buffer from the GPU. - * @param vb The vertex buffer to delete - */ - public void deleteBuffer(VertexBuffer vb) { - logger.log(Level.FINE, "IGLESShaderRenderer deleteBuffer"); - int bufId = vb.getId(); - if (bufId != -1) { - // delete buffer - intBuf1[0] = bufId; - - JmeIosGLES.glDeleteBuffers(1, intBuf1, 0); - JmeIosGLES.checkGLError(); - - vb.resetObject(); - } - } - - /** - * Renders count meshes, with the geometry data supplied. - * The shader which is currently set with setShader is - * responsible for transforming the input verticies into clip space - * and shading it based on the given vertex attributes. - * The int variable gl_InstanceID can be used to access the current - * instance of the mesh being rendered inside the vertex shader. - * - * @param mesh The mesh to render - * @param lod The LOD level to use, see {@link Mesh#setLodLevels(com.jme3.scene.VertexBuffer[]) }. - * @param count Number of mesh instances to render - */ - public void renderMesh(Mesh mesh, int lod, int count) { - logger.log(Level.FINE, "IGLESShaderRenderer renderMesh"); - if (mesh.getVertexCount() == 0) { - return; - } - /* - * NOTE: not supported in OpenGL ES 2.0. - if (context.pointSize != mesh.getPointSize()) { - GLES10.glPointSize(mesh.getPointSize()); - context.pointSize = mesh.getPointSize(); - } - */ - if (context.lineWidth != mesh.getLineWidth()) { - JmeIosGLES.glLineWidth(mesh.getLineWidth()); - JmeIosGLES.checkGLError(); - context.lineWidth = mesh.getLineWidth(); - } - - statistics.onMeshDrawn(mesh, lod); -// if (GLContext.getCapabilities().GL_ARB_vertex_array_object){ -// renderMeshVertexArray(mesh, lod, count); -// }else{ - - if (useVBO) { - renderMeshDefault(mesh, lod, count); - } else { - renderMeshVertexArray(mesh, lod, count); - } - } - - /** - * Resets all previously used {@link NativeObject Native Objects} on this Renderer. - * The state of the native objects is reset in such way, that using - * them again will cause the renderer to reupload them. - * Call this method when you know the GL context is going to shutdown. - * - * @see NativeObject#resetObject() - */ - public void resetGLObjects() { - logger.log(Level.FINE, "IGLESShaderRenderer resetGLObjects"); - objManager.resetObjects(); - statistics.clearMemory(); - boundShader = null; - lastFb = null; - context.reset(); - } - - /** - * Deletes all previously used {@link NativeObject Native Objects} on this Renderer, and - * then resets the native objects. - * - * @see #resetGLObjects() - * @see NativeObject#deleteObject(java.lang.Object) - */ - public void cleanup() { - logger.log(Level.FINE, "IGLESShaderRenderer cleanup"); - objManager.deleteAllObjects(this); - statistics.clearMemory(); - } - - /** - * Sets the alpha to coverage state. - *

    - * When alpha coverage and multi-sampling is enabled, - * each pixel will contain alpha coverage in all - * of its subsamples, which is then combined when - * other future alpha-blended objects are rendered. - *

    - *

    - * Alpha-to-coverage is useful for rendering transparent objects - * without having to worry about sorting them. - *

    - */ - public void setAlphaToCoverage(boolean value) { - logger.log(Level.FINE, "IGLESShaderRenderer setAlphaToCoverage"); - if (value) { - JmeIosGLES.glEnable(JmeIosGLES.GL_SAMPLE_ALPHA_TO_COVERAGE); - JmeIosGLES.checkGLError(); - } else { - JmeIosGLES.glDisable(JmeIosGLES.GL_SAMPLE_ALPHA_TO_COVERAGE); - JmeIosGLES.checkGLError(); - } - } - - - /* ------------------------------------------------------------------------------ */ - - - public void initialize() { - Level store = logger.getLevel(); - logger.setLevel(Level.FINE); - - logger.log(Level.FINE, "Vendor: {0}", JmeIosGLES.glGetString(JmeIosGLES.GL_VENDOR)); - logger.log(Level.FINE, "Renderer: {0}", JmeIosGLES.glGetString(JmeIosGLES.GL_RENDERER)); - logger.log(Level.FINE, "Version: {0}", JmeIosGLES.glGetString(JmeIosGLES.GL_VERSION)); - logger.log(Level.FINE, "Shading Language Version: {0}", JmeIosGLES.glGetString(JmeIosGLES.GL_SHADING_LANGUAGE_VERSION)); - - /* - // Fix issue in TestRenderToMemory when GL_FRONT is the main - // buffer being used. - initialDrawBuf = glGetInteger(GL_DRAW_BUFFER); - initialReadBuf = glGetInteger(GL_READ_BUFFER); - - // XXX: This has to be GL_BACK for canvas on Mac - // Since initialDrawBuf is GL_FRONT for pbuffer, gotta - // change this value later on ... -// initialDrawBuf = GL_BACK; -// initialReadBuf = GL_BACK; - */ - - // Check OpenGL version - int openGlVer = extractVersion("OpenGL ES ", JmeIosGLES.glGetString(JmeIosGLES.GL_VERSION)); - if (openGlVer == -1) { - glslVer = -1; - throw new UnsupportedOperationException("OpenGL ES 2.0+ is required for IGLESShaderRenderer!"); - } - - // Check shader language version - glslVer = extractVersion("OpenGL ES GLSL ES ", JmeIosGLES.glGetString(JmeIosGLES.GL_SHADING_LANGUAGE_VERSION)); - switch (glslVer) { - // TODO: When new versions of OpenGL ES shader language come out, - // update this. - default: - caps.add(Caps.GLSL100); - break; - } - - JmeIosGLES.glGetIntegerv(JmeIosGLES.GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS, intBuf16, 0); - vertexTextureUnits = intBuf16[0]; - logger.log(Level.FINE, "VTF Units: {0}", vertexTextureUnits); - if (vertexTextureUnits > 0) { - caps.add(Caps.VertexTextureFetch); - } - - JmeIosGLES.glGetIntegerv(JmeIosGLES.GL_MAX_TEXTURE_IMAGE_UNITS, intBuf16, 0); - fragTextureUnits = intBuf16[0]; - logger.log(Level.FINE, "Texture Units: {0}", fragTextureUnits); - - // Multiply vector count by 4 to get float count. - JmeIosGLES.glGetIntegerv(JmeIosGLES.GL_MAX_VERTEX_UNIFORM_VECTORS, intBuf16, 0); - vertexUniforms = intBuf16[0] * 4; - logger.log(Level.FINER, "Vertex Uniforms: {0}", vertexUniforms); - - JmeIosGLES.glGetIntegerv(JmeIosGLES.GL_MAX_FRAGMENT_UNIFORM_VECTORS, intBuf16, 0); - fragUniforms = intBuf16[0] * 4; - logger.log(Level.FINER, "Fragment Uniforms: {0}", fragUniforms); - - JmeIosGLES.glGetIntegerv(JmeIosGLES.GL_MAX_VARYING_VECTORS, intBuf16, 0); - int varyingFloats = intBuf16[0] * 4; - logger.log(Level.FINER, "Varying Floats: {0}", varyingFloats); - - JmeIosGLES.glGetIntegerv(JmeIosGLES.GL_MAX_VERTEX_ATTRIBS, intBuf16, 0); - vertexAttribs = intBuf16[0]; - logger.log(Level.FINE, "Vertex Attributes: {0}", vertexAttribs); - - JmeIosGLES.glGetIntegerv(JmeIosGLES.GL_SUBPIXEL_BITS, intBuf16, 0); - int subpixelBits = intBuf16[0]; - logger.log(Level.FINE, "Subpixel Bits: {0}", subpixelBits); - -// GLES10.glGetIntegerv(GLES10.GL_MAX_ELEMENTS_VERTICES, intBuf16); -// maxVertCount = intBuf16.get(0); -// logger.log(Level.FINER, "Preferred Batch Vertex Count: {0}", maxVertCount); -// -// GLES10.glGetIntegerv(GLES10.GL_MAX_ELEMENTS_INDICES, intBuf16); -// maxTriCount = intBuf16.get(0); -// logger.log(Level.FINER, "Preferred Batch Index Count: {0}", maxTriCount); - - JmeIosGLES.glGetIntegerv(JmeIosGLES.GL_MAX_TEXTURE_SIZE, intBuf16, 0); - maxTexSize = intBuf16[0]; - logger.log(Level.FINE, "Maximum Texture Resolution: {0}", maxTexSize); - - JmeIosGLES.glGetIntegerv(JmeIosGLES.GL_MAX_CUBE_MAP_TEXTURE_SIZE, intBuf16, 0); - maxCubeTexSize = intBuf16[0]; - logger.log(Level.FINE, "Maximum CubeMap Resolution: {0}", maxCubeTexSize); - - JmeIosGLES.glGetIntegerv(JmeIosGLES.GL_MAX_RENDERBUFFER_SIZE, intBuf16, 0); - maxRBSize = intBuf16[0]; - logger.log(Level.FINER, "FBO RB Max Size: {0}", maxRBSize); - - /* - if (ctxCaps.GL_ARB_color_buffer_float){ - // XXX: Require both 16 and 32 bit float support for FloatColorBuffer. - if (ctxCaps.GL_ARB_half_float_pixel){ - caps.add(Caps.FloatColorBuffer); - } - } - - if (ctxCaps.GL_ARB_depth_buffer_float){ - caps.add(Caps.FloatDepthBuffer); - } - - if (ctxCaps.GL_ARB_draw_instanced) - caps.add(Caps.MeshInstancing); - - if (ctxCaps.GL_ARB_texture_buffer_object) - caps.add(Caps.TextureBuffer); - - if (ctxCaps.GL_ARB_texture_float){ - if (ctxCaps.GL_ARB_half_float_pixel){ - caps.add(Caps.FloatTexture); - } - } - - if (ctxCaps.GL_EXT_packed_float){ - caps.add(Caps.PackedFloatColorBuffer); - if (ctxCaps.GL_ARB_half_float_pixel){ - // because textures are usually uploaded as RGB16F - // need half-float pixel - caps.add(Caps.PackedFloatTexture); - } - } - - if (ctxCaps.GL_EXT_texture_array) - caps.add(Caps.TextureArray); - - if (ctxCaps.GL_EXT_texture_shared_exponent) - caps.add(Caps.SharedExponentTexture); - - if (ctxCaps.GL_EXT_framebuffer_object){ - caps.add(Caps.FrameBuffer); - - glGetInteger(GL_MAX_RENDERBUFFER_SIZE_EXT, intBuf16); - maxRBSize = intBuf16.get(0); - logger.log(Level.FINER, "FBO RB Max Size: {0}", maxRBSize); - - glGetInteger(GL_MAX_COLOR_ATTACHMENTS_EXT, intBuf16); - maxFBOAttachs = intBuf16.get(0); - logger.log(Level.FINER, "FBO Max renderbuffers: {0}", maxFBOAttachs); - - if (ctxCaps.GL_EXT_framebuffer_multisample){ - caps.add(Caps.FrameBufferMultisample); - - glGetInteger(GL_MAX_SAMPLES_EXT, intBuf16); - maxFBOSamples = intBuf16.get(0); - logger.log(Level.FINER, "FBO Max Samples: {0}", maxFBOSamples); - } - - if (ctxCaps.GL_ARB_draw_buffers){ - caps.add(Caps.FrameBufferMRT); - glGetInteger(ARBDrawBuffers.GL_MAX_DRAW_BUFFERS_ARB, intBuf16); - maxMRTFBOAttachs = intBuf16.get(0); - logger.log(Level.FINER, "FBO Max MRT renderbuffers: {0}", maxMRTFBOAttachs); - } - } - - if (ctxCaps.GL_ARB_multisample){ - glGetInteger(ARBMultisample.GL_SAMPLE_BUFFERS_ARB, intBuf16); - boolean available = intBuf16.get(0) != 0; - glGetInteger(ARBMultisample.GL_SAMPLES_ARB, intBuf16); - int samples = intBuf16.get(0); - logger.log(Level.FINER, "Samples: {0}", samples); - boolean enabled = glIsEnabled(ARBMultisample.GL_MULTISAMPLE_ARB); - if (samples > 0 && available && !enabled){ - glEnable(ARBMultisample.GL_MULTISAMPLE_ARB); - } - } - */ - - String extensions = JmeIosGLES.glGetString(JmeIosGLES.GL_EXTENSIONS); - logger.log(Level.FINE, "GL_EXTENSIONS: {0}", extensions); - - // Get number of compressed formats available. - JmeIosGLES.glGetIntegerv(JmeIosGLES.GL_NUM_COMPRESSED_TEXTURE_FORMATS, intBuf16, 0); - int numCompressedFormats = intBuf16[0]; - - // Allocate buffer for compressed formats. - int[] compressedFormats = new int[numCompressedFormats]; - JmeIosGLES.glGetIntegerv(JmeIosGLES.GL_COMPRESSED_TEXTURE_FORMATS, compressedFormats, 0); - - // Check for errors after all glGet calls. - JmeIosGLES.checkGLError(); - - // Print compressed formats. - for (int i = 0; i < numCompressedFormats; i++) { - logger.log(Level.FINE, "Compressed Texture Formats: {0}", compressedFormats[i]); - } - - TextureUtil.loadTextureFeatures(extensions); - - applyRenderState(RenderState.DEFAULT); - JmeIosGLES.glDisable(JmeIosGLES.GL_DITHER); - JmeIosGLES.checkGLError(); - - logger.log(Level.FINE, "Caps: {0}", caps); - logger.setLevel(store); - - uintIndexSupport = extensions.contains("GL_OES_element_index_uint"); - logger.log(Level.FINE, "Support for UInt index: {0}", uintIndexSupport); - } - - - /* ------------------------------------------------------------------------------ */ - - - private int extractVersion(String prefixStr, String versionStr) { - if (versionStr != null) { - int spaceIdx = versionStr.indexOf(" ", prefixStr.length()); - if (spaceIdx >= 1) { - versionStr = versionStr.substring(prefixStr.length(), spaceIdx).trim(); - } else { - versionStr = versionStr.substring(prefixStr.length()).trim(); - } - float version = Float.parseFloat(versionStr); - return (int) (version * 100); - } else { - return -1; - } - } - - private void deleteRenderBuffer(FrameBuffer fb, RenderBuffer rb) { - intBuf1[0] = rb.getId(); - JmeIosGLES.glDeleteRenderbuffers(1, intBuf1, 0); - JmeIosGLES.checkGLError(); - } - - private int convertUsage(Usage usage) { - switch (usage) { - case Static: - return JmeIosGLES.GL_STATIC_DRAW; - case Dynamic: - return JmeIosGLES.GL_DYNAMIC_DRAW; - case Stream: - return JmeIosGLES.GL_STREAM_DRAW; - default: - throw new RuntimeException("Unknown usage type."); - } - } - - - protected void bindProgram(Shader shader) { - int shaderId = shader.getId(); - if (context.boundShaderProgram != shaderId) { - JmeIosGLES.glUseProgram(shaderId); - JmeIosGLES.checkGLError(); - - statistics.onShaderUse(shader, true); - boundShader = shader; - context.boundShaderProgram = shaderId; - } else { - statistics.onShaderUse(shader, false); - } - } - - protected void updateShaderUniforms(Shader shader) { - ListMap uniforms = shader.getUniformMap(); - for (int i = 0; i < uniforms.size(); i++) { - Uniform uniform = uniforms.getValue(i); - if (uniform.isUpdateNeeded()) { - updateUniform(shader, uniform); - } - } - } - - - protected void updateUniform(Shader shader, Uniform uniform) { - logger.log(Level.FINE, "IGLESShaderRenderer private updateUniform: " + uniform.getVarType()); - int shaderId = shader.getId(); - - assert uniform.getName() != null; - assert shader.getId() > 0; - - if (context.boundShaderProgram != shaderId) { - JmeIosGLES.glUseProgram(shaderId); - JmeIosGLES.checkGLError(); - - statistics.onShaderUse(shader, true); - boundShader = shader; - context.boundShaderProgram = shaderId; - } else { - statistics.onShaderUse(shader, false); - } - - int loc = uniform.getLocation(); - if (loc == -1) { - return; - } - - if (loc == -2) { - // get uniform location - updateUniformLocation(shader, uniform); - if (uniform.getLocation() == -1) { - // not declared, ignore - uniform.clearUpdateNeeded(); - return; - } - loc = uniform.getLocation(); - } - - if (uniform.getVarType() == null) { - // removed logging the warning to avoid flooding the log - // (LWJGL also doesn't post a warning) - //logger.log(Level.FINEST, "Uniform value is not set yet. Shader: {0}, Uniform: {1}", - // new Object[]{shader.toString(), uniform.toString()}); - return; // value not set yet.. - } - - statistics.onUniformSet(); - - uniform.clearUpdateNeeded(); - ByteBuffer bb;//GetPrimitiveArrayCritical - FloatBuffer fb; - IntBuffer ib; - switch (uniform.getVarType()) { - case Float: - Float f = (Float) uniform.getValue(); - JmeIosGLES.glUniform1f(loc, f.floatValue()); - break; - case Vector2: - Vector2f v2 = (Vector2f) uniform.getValue(); - JmeIosGLES.glUniform2f(loc, v2.getX(), v2.getY()); - break; - case Vector3: - Vector3f v3 = (Vector3f) uniform.getValue(); - JmeIosGLES.glUniform3f(loc, v3.getX(), v3.getY(), v3.getZ()); - break; - case Vector4: - Object val = uniform.getValue(); - if (val instanceof ColorRGBA) { - ColorRGBA c = (ColorRGBA) val; - JmeIosGLES.glUniform4f(loc, c.r, c.g, c.b, c.a); - } else if (val instanceof Vector4f) { - Vector4f c = (Vector4f) val; - JmeIosGLES.glUniform4f(loc, c.x, c.y, c.z, c.w); - } else { - Quaternion c = (Quaternion) uniform.getValue(); - JmeIosGLES.glUniform4f(loc, c.getX(), c.getY(), c.getZ(), c.getW()); - } - break; - case Boolean: - Boolean b = (Boolean) uniform.getValue(); - JmeIosGLES.glUniform1i(loc, b.booleanValue() ? JmeIosGLES.GL_TRUE : JmeIosGLES.GL_FALSE); - break; - case Matrix3: - fb = (FloatBuffer) uniform.getValue(); - assert fb.remaining() == 9; - JmeIosGLES.glUniformMatrix3fv(loc, 1, false, fb); - break; - case Matrix4: - fb = (FloatBuffer) uniform.getValue(); - assert fb.remaining() == 16; - JmeIosGLES.glUniformMatrix4fv(loc, 1, false, fb); - break; - case IntArray: - ib = (IntBuffer) uniform.getValue(); - JmeIosGLES.glUniform1iv(loc, ib.limit(), ib); - break; - case FloatArray: - fb = (FloatBuffer) uniform.getValue(); - JmeIosGLES.glUniform1fv(loc, fb.limit(), fb); - break; - case Vector2Array: - fb = (FloatBuffer) uniform.getValue(); - JmeIosGLES.glUniform2fv(loc, fb.limit() / 2, fb); - break; - case Vector3Array: - fb = (FloatBuffer) uniform.getValue(); - JmeIosGLES.glUniform3fv(loc, fb.limit() / 3, fb); - break; - case Vector4Array: - fb = (FloatBuffer) uniform.getValue(); - JmeIosGLES.glUniform4fv(loc, fb.limit() / 4, fb); - break; - case Matrix4Array: - fb = (FloatBuffer) uniform.getValue(); - JmeIosGLES.glUniformMatrix4fv(loc, fb.limit() / 16, false, fb); - break; - case Int: - Integer i = (Integer) uniform.getValue(); - JmeIosGLES.glUniform1i(loc, i.intValue()); - break; - default: - throw new UnsupportedOperationException("Unsupported uniform type: " + uniform.getVarType()); - } - JmeIosGLES.checkGLError(); - } - - protected void updateUniformLocation(Shader shader, Uniform uniform) { - stringBuf.setLength(0); - stringBuf.append(uniform.getName()).append('\0'); - updateNameBuffer(); - int loc = JmeIosGLES.glGetUniformLocation(shader.getId(), uniform.getName()); - JmeIosGLES.checkGLError(); - - if (loc < 0) { - uniform.setLocation(-1); - // uniform is not declared in shader - } else { - uniform.setLocation(loc); - } - } - - protected void updateNameBuffer() { - int len = stringBuf.length(); - - nameBuf.position(0); - nameBuf.limit(len); - for (int i = 0; i < len; i++) { - nameBuf.put((byte) stringBuf.charAt(i)); - } - - nameBuf.rewind(); - } - - - public void updateShaderData(Shader shader) { - int id = shader.getId(); - boolean needRegister = false; - if (id == -1) { - // create program - id = JmeIosGLES.glCreateProgram(); - JmeIosGLES.checkGLError(); - - if (id <= 0) { - throw new RendererException("Invalid ID received when trying to create shader program."); - } - - shader.setId(id); - needRegister = true; - } - - for (ShaderSource source : shader.getSources()) { - if (source.isUpdateNeeded()) { - updateShaderSourceData(source); - } - - JmeIosGLES.glAttachShader(id, source.getId()); - JmeIosGLES.checkGLError(); - } - - // link shaders to program - JmeIosGLES.glLinkProgram(id); - JmeIosGLES.checkGLError(); - - JmeIosGLES.glGetProgramiv(id, JmeIosGLES.GL_LINK_STATUS, intBuf1, 0); - JmeIosGLES.checkGLError(); - - boolean linkOK = intBuf1[0] == JmeIosGLES.GL_TRUE; - String infoLog = null; - - if (VALIDATE_SHADER || !linkOK) { - JmeIosGLES.glGetProgramiv(id, JmeIosGLES.GL_INFO_LOG_LENGTH, intBuf1, 0); - JmeIosGLES.checkGLError(); - - int length = intBuf1[0]; - if (length > 3) { - // get infos - infoLog = JmeIosGLES.glGetProgramInfoLog(id); - JmeIosGLES.checkGLError(); - } - } - - if (linkOK) { - if (infoLog != null) { - logger.log(Level.FINE, "shader link success. \n{0}", infoLog); - } else { - logger.fine("shader link success"); - } - shader.clearUpdateNeeded(); - if (needRegister) { - // Register shader for clean up if it was created in this method. - objManager.registerObject(shader); - statistics.onNewShader(); - } else { - // OpenGL spec: uniform locations may change after re-link - resetUniformLocations(shader); - } - } else { - if (infoLog != null) { - throw new RendererException("Shader link failure, shader:" + shader + " info:" + infoLog); - } else { - throw new RendererException("Shader link failure, shader:" + shader + " info: "); - } - } - } - - protected void resetUniformLocations(Shader shader) { - ListMap uniforms = shader.getUniformMap(); - for (int i = 0; i < uniforms.size(); i++) { - Uniform uniform = uniforms.getValue(i); - uniform.reset(); // e.g check location again - } - } - - public void updateTexImageData(Image img, Texture.Type type) { - int texId = img.getId(); - if (texId == -1) { - // create texture - JmeIosGLES.glGenTextures(1, intBuf1, 0); - JmeIosGLES.checkGLError(); - - texId = intBuf1[0]; - img.setId(texId); - objManager.registerObject(img); - - statistics.onNewTexture(); - } - - // bind texture - int target = convertTextureType(type); - if (context.boundTextures[0] != img) { - if (context.boundTextureUnit != 0) { - JmeIosGLES.glActiveTexture(JmeIosGLES.GL_TEXTURE0); - JmeIosGLES.checkGLError(); - - context.boundTextureUnit = 0; - } - - JmeIosGLES.glBindTexture(target, texId); - JmeIosGLES.checkGLError(); - - context.boundTextures[0] = img; - } - - boolean needMips = false; - if (img.isGeneratedMipmapsRequired()) { - needMips = true; - img.setMipmapsGenerated(true); - } - - if (target == JmeIosGLES.GL_TEXTURE_CUBE_MAP) { - // Check max texture size before upload - if (img.getWidth() > maxCubeTexSize || img.getHeight() > maxCubeTexSize) { - throw new RendererException("Cannot upload cubemap " + img + ". The maximum supported cubemap resolution is " + maxCubeTexSize); - } - } else { - if (img.getWidth() > maxTexSize || img.getHeight() > maxTexSize) { - throw new RendererException("Cannot upload texture " + img + ". The maximum supported texture resolution is " + maxTexSize); - } - } - - if (target == JmeIosGLES.GL_TEXTURE_CUBE_MAP) { - // Upload a cube map / sky box - /* - @SuppressWarnings("unchecked") - List bmps = (List) img.getEfficentData(); - if (bmps != null) { - // Native android bitmap - if (bmps.size() != 6) { - throw new UnsupportedOperationException("Invalid texture: " + img - + "Cubemap textures must contain 6 data units."); - } - for (int i = 0; i < 6; i++) { - TextureUtil.uploadTextureBitmap(JmeIosGLES.GL_TEXTURE_CUBE_MAP_POSITIVE_X + i, bmps.get(i).getBitmap(), needMips); - bmps.get(i).notifyBitmapUploaded(); - } - } else { - */ - // Standard jme3 image data - List data = img.getData(); - if (data.size() != 6) { - throw new UnsupportedOperationException("Invalid texture: " + img - + "Cubemap textures must contain 6 data units."); - } - for (int i = 0; i < 6; i++) { - TextureUtil.uploadTextureAny(img, JmeIosGLES.GL_TEXTURE_CUBE_MAP_POSITIVE_X + i, i, needMips); - } - //} - } else { - TextureUtil.uploadTextureAny(img, target, 0, needMips); - /* - if (img.getEfficentData() instanceof AndroidImageInfo) { - AndroidImageInfo info = (AndroidImageInfo) img.getEfficentData(); - info.notifyBitmapUploaded(); - } - */ - } - - img.clearUpdateNeeded(); - } - - private void setupTextureParams(Texture tex) { - int target = convertTextureType(tex.getType()); - - // filter things - int minFilter = convertMinFilter(tex.getMinFilter()); - int magFilter = convertMagFilter(tex.getMagFilter()); - - JmeIosGLES.glTexParameteri(target, JmeIosGLES.GL_TEXTURE_MIN_FILTER, minFilter); - JmeIosGLES.checkGLError(); - JmeIosGLES.glTexParameteri(target, JmeIosGLES.GL_TEXTURE_MAG_FILTER, magFilter); - JmeIosGLES.checkGLError(); - - /* - if (tex.getAnisotropicFilter() > 1){ - - if (GLContext.getCapabilities().GL_EXT_texture_filter_anisotropic){ - glTexParameterf(target, - EXTTextureFilterAnisotropic.GL_TEXTURE_MAX_ANISOTROPY_EXT, - tex.getAnisotropicFilter()); - } - - } - */ - // repeat modes - - switch (tex.getType()) { - case ThreeDimensional: - case CubeMap: // cubemaps use 3D coords - // GL_TEXTURE_WRAP_R is not available in api 8 - //GLES20.glTexParameteri(target, GLES20.GL_TEXTURE_WRAP_R, convertWrapMode(tex.getWrap(WrapAxis.R))); - case TwoDimensional: - case TwoDimensionalArray: - JmeIosGLES.glTexParameteri(target, JmeIosGLES.GL_TEXTURE_WRAP_T, convertWrapMode(tex.getWrap(WrapAxis.T))); - - // fall down here is intentional.. -// case OneDimensional: - JmeIosGLES.glTexParameteri(target, JmeIosGLES.GL_TEXTURE_WRAP_S, convertWrapMode(tex.getWrap(WrapAxis.S))); - - JmeIosGLES.checkGLError(); - break; - default: - throw new UnsupportedOperationException("Unknown texture type: " + tex.getType()); - } - - // R to Texture compare mode -/* - if (tex.getShadowCompareMode() != Texture.ShadowCompareMode.Off){ - GLES20.glTexParameteri(target, GLES20.GL_TEXTURE_COMPARE_MODE, GLES20.GL_COMPARE_R_TO_TEXTURE); - GLES20.glTexParameteri(target, GLES20.GL_DEPTH_TEXTURE_MODE, GLES20.GL_INTENSITY); - if (tex.getShadowCompareMode() == Texture.ShadowCompareMode.GreaterOrEqual){ - GLES20.glTexParameteri(target, GLES20.GL_TEXTURE_COMPARE_FUNC, GLES20.GL_GEQUAL); - }else{ - GLES20.glTexParameteri(target, GLES20.GL_TEXTURE_COMPARE_FUNC, GLES20.GL_LEQUAL); - } - } - */ - } - - private int convertTextureType(Texture.Type type) { - switch (type) { - case TwoDimensional: - return JmeIosGLES.GL_TEXTURE_2D; - // case TwoDimensionalArray: - // return EXTTextureArray.GL_TEXTURE_2D_ARRAY_EXT; -// case ThreeDimensional: - // return GLES20.GL_TEXTURE_3D; - case CubeMap: - return JmeIosGLES.GL_TEXTURE_CUBE_MAP; - default: - throw new UnsupportedOperationException("Unknown texture type: " + type); - } - } - - private int convertMagFilter(Texture.MagFilter filter) { - switch (filter) { - case Bilinear: - return JmeIosGLES.GL_LINEAR; - case Nearest: - return JmeIosGLES.GL_NEAREST; - default: - throw new UnsupportedOperationException("Unknown mag filter: " + filter); - } - } - - private int convertMinFilter(Texture.MinFilter filter) { - switch (filter) { - case Trilinear: - return JmeIosGLES.GL_LINEAR_MIPMAP_LINEAR; - case BilinearNearestMipMap: - return JmeIosGLES.GL_LINEAR_MIPMAP_NEAREST; - case NearestLinearMipMap: - return JmeIosGLES.GL_NEAREST_MIPMAP_LINEAR; - case NearestNearestMipMap: - return JmeIosGLES.GL_NEAREST_MIPMAP_NEAREST; - case BilinearNoMipMaps: - return JmeIosGLES.GL_LINEAR; - case NearestNoMipMaps: - return JmeIosGLES.GL_NEAREST; - default: - throw new UnsupportedOperationException("Unknown min filter: " + filter); - } - } - - private int convertWrapMode(Texture.WrapMode mode) { - switch (mode) { - case BorderClamp: - case Clamp: - case EdgeClamp: - return JmeIosGLES.GL_CLAMP_TO_EDGE; - case Repeat: - return JmeIosGLES.GL_REPEAT; - case MirroredRepeat: - return JmeIosGLES.GL_MIRRORED_REPEAT; - default: - throw new UnsupportedOperationException("Unknown wrap mode: " + mode); - } - } - - private void renderMeshVertexArray(Mesh mesh, int lod, int count) { - for (VertexBuffer vb : mesh.getBufferList().getArray()) { - if (vb.getBufferType() == Type.InterleavedData - || vb.getUsage() == Usage.CpuOnly // ignore cpu-only buffers - || vb.getBufferType() == Type.Index) { - continue; - } - - if (vb.getStride() == 0) { - // not interleaved - setVertexAttrib_Array(vb); - } else { - // interleaved - VertexBuffer interleavedData = mesh.getBuffer(Type.InterleavedData); - setVertexAttrib_Array(vb, interleavedData); - } - } - - VertexBuffer indices = null; - if (mesh.getNumLodLevels() > 0) { - indices = mesh.getLodLevel(lod); - } else { - indices = mesh.getBuffer(Type.Index);//buffers.get(Type.Index.ordinal()); - } - if (indices != null) { - drawTriangleList_Array(indices, mesh, count); - } else { - JmeIosGLES.glDrawArrays(convertElementMode(mesh.getMode()), 0, mesh.getVertexCount()); - JmeIosGLES.checkGLError(); - } - clearVertexAttribs(); - clearTextureUnits(); - } - - private void renderMeshDefault(Mesh mesh, int lod, int count) { - VertexBuffer indices = null; - VertexBuffer interleavedData = mesh.getBuffer(Type.InterleavedData); - if (interleavedData != null && interleavedData.isUpdateNeeded()) { - updateBufferData(interleavedData); - } - - //IntMap buffers = mesh.getBuffers(); ; - if (mesh.getNumLodLevels() > 0) { - indices = mesh.getLodLevel(lod); - } else { - indices = mesh.getBuffer(Type.Index);// buffers.get(Type.Index.ordinal()); - } - for (VertexBuffer vb : mesh.getBufferList().getArray()){ - if (vb.getBufferType() == Type.InterleavedData - || vb.getUsage() == Usage.CpuOnly // ignore cpu-only buffers - || vb.getBufferType() == Type.Index) { - continue; - } - - if (vb.getStride() == 0) { - // not interleaved - setVertexAttrib(vb); - } else { - // interleaved - setVertexAttrib(vb, interleavedData); - } - } - if (indices != null) { - drawTriangleList(indices, mesh, count); - } else { -// throw new UnsupportedOperationException("Cannot render without index buffer"); - JmeIosGLES.glDrawArrays(convertElementMode(mesh.getMode()), 0, mesh.getVertexCount()); - JmeIosGLES.checkGLError(); - } - clearVertexAttribs(); - clearTextureUnits(); - } - - - public void setVertexAttrib(VertexBuffer vb, VertexBuffer idb) { - if (vb.getBufferType() == VertexBuffer.Type.Index) { - throw new IllegalArgumentException("Index buffers not allowed to be set to vertex attrib"); - } - - if (vb.isUpdateNeeded() && idb == null) { - updateBufferData(vb); - } - - int programId = context.boundShaderProgram; - if (programId > 0) { - Attribute attrib = boundShader.getAttribute(vb.getBufferType()); - int loc = attrib.getLocation(); - if (loc == -1) { - return; // not defined - } - - if (loc == -2) { -// stringBuf.setLength(0); -// stringBuf.append("in").append(vb.getBufferType().name()).append('\0'); -// updateNameBuffer(); - - String attributeName = "in" + vb.getBufferType().name(); - loc = JmeIosGLES.glGetAttribLocation(programId, attributeName); - JmeIosGLES.checkGLError(); - - // not really the name of it in the shader (inPosition\0) but - // the internal name of the enum (Position). - if (loc < 0) { - attrib.setLocation(-1); - return; // not available in shader. - } else { - attrib.setLocation(loc); - } - } - - VertexBuffer[] attribs = context.boundAttribs; - if (!context.attribIndexList.moveToNew(loc)) { - JmeIosGLES.glEnableVertexAttribArray(loc); - JmeIosGLES.checkGLError(); - //System.out.println("Enabled ATTRIB IDX: "+loc); - } - if (attribs[loc] != vb) { - // NOTE: Use id from interleaved buffer if specified - int bufId = idb != null ? idb.getId() : vb.getId(); - assert bufId != -1; - - if (bufId == -1) { - logger.warning("invalid buffer id"); - } - - if (context.boundArrayVBO != bufId) { - JmeIosGLES.glBindBuffer(JmeIosGLES.GL_ARRAY_BUFFER, bufId); - JmeIosGLES.checkGLError(); - - context.boundArrayVBO = bufId; - } - - vb.getData().rewind(); - /* - Android22Workaround.glVertexAttribPointer(loc, - vb.getNumComponents(), - convertVertexBufferFormat(vb.getFormat()), - vb.isNormalized(), - vb.getStride(), - 0); - */ - logger.warning("iTODO Android22Workaround"); - - JmeIosGLES.glVertexAttribPointer(loc, - vb.getNumComponents(), - convertVertexBufferFormat(vb.getFormat()), - vb.isNormalized(), - vb.getStride(), - null); - - JmeIosGLES.checkGLError(); - - attribs[loc] = vb; - } - } else { - throw new IllegalStateException("Cannot render mesh without shader bound"); - } - } - - public void setVertexAttrib(VertexBuffer vb) { - setVertexAttrib(vb, null); - } - - public void drawTriangleArray(Mesh.Mode mode, int count, int vertCount) { - /* if (count > 1){ - ARBDrawInstanced.glDrawArraysInstancedARB(convertElementMode(mode), 0, - vertCount, count); - }else{*/ - JmeIosGLES.glDrawArrays(convertElementMode(mode), 0, vertCount); - JmeIosGLES.checkGLError(); - /* - }*/ - } - - public void drawTriangleList(VertexBuffer indexBuf, Mesh mesh, int count) { - if (indexBuf.getBufferType() != VertexBuffer.Type.Index) { - throw new IllegalArgumentException("Only index buffers are allowed as triangle lists."); - } - - if (indexBuf.isUpdateNeeded()) { - updateBufferData(indexBuf); - } - - int bufId = indexBuf.getId(); - assert bufId != -1; - - if (bufId == -1) { - throw new RendererException("Invalid buffer ID"); - } - - if (context.boundElementArrayVBO != bufId) { - JmeIosGLES.glBindBuffer(JmeIosGLES.GL_ELEMENT_ARRAY_BUFFER, bufId); - JmeIosGLES.checkGLError(); - - context.boundElementArrayVBO = bufId; - } - - int vertCount = mesh.getVertexCount(); - boolean useInstancing = count > 1 && caps.contains(Caps.MeshInstancing); - - Buffer indexData = indexBuf.getData(); - - if (!uintIndexSupport && (indexBuf.getFormat() == Format.UnsignedInt)) { - throw new RendererException("OpenGL ES does not support 32-bit index buffers." + - "Split your models to avoid going over 65536 vertices."); - } - - if (mesh.getMode() == Mode.Hybrid) { - int[] modeStart = mesh.getModeStart(); - int[] elementLengths = mesh.getElementLengths(); - - int elMode = convertElementMode(Mode.Triangles); - int fmt = convertVertexBufferFormat(indexBuf.getFormat()); - int elSize = indexBuf.getFormat().getComponentSize(); - int listStart = modeStart[0]; - int stripStart = modeStart[1]; - int fanStart = modeStart[2]; - int curOffset = 0; - for (int i = 0; i < elementLengths.length; i++) { - if (i == stripStart) { - elMode = convertElementMode(Mode.TriangleStrip); - } else if (i == fanStart) { - elMode = convertElementMode(Mode.TriangleStrip); - } - int elementLength = elementLengths[i]; - - if (useInstancing) { - //ARBDrawInstanced. - throw new IllegalArgumentException("instancing is not supported."); - /* - GLES20.glDrawElementsInstancedARB(elMode, - elementLength, - fmt, - curOffset, - count); - */ - } else { - indexBuf.getData().position(curOffset); - JmeIosGLES.glDrawElements(elMode, elementLength, fmt, indexBuf.getData()); - JmeIosGLES.checkGLError(); - /* - glDrawRangeElements(elMode, - 0, - vertCount, - elementLength, - fmt, - curOffset); - */ - } - - curOffset += elementLength * elSize; - } - } else { - if (useInstancing) { - throw new IllegalArgumentException("instancing is not supported."); - //ARBDrawInstanced. -/* - GLES20.glDrawElementsInstancedARB(convertElementMode(mesh.getMode()), - indexBuf.getData().limit(), - convertVertexBufferFormat(indexBuf.getFormat()), - 0, - count); - */ - } else { - logger.log(Level.FINE, "IGLESShaderRenderer drawTriangleList TODO check"); - indexData.rewind(); - JmeIosGLES.glDrawElementsIndex( - convertElementMode(mesh.getMode()), - indexBuf.getData().limit(), - convertVertexBufferFormat(indexBuf.getFormat()), - 0); - /*TODO: - indexData.rewind(); - JmeIosGLES.glDrawElements( - convertElementMode(mesh.getMode()), - indexBuf.getData().limit(), - convertVertexBufferFormat(indexBuf.getFormat()), - 0); - */ - JmeIosGLES.checkGLError(); - } - } - } - - public int convertElementMode(Mesh.Mode mode) { - switch (mode) { - case Points: - return JmeIosGLES.GL_POINTS; - case Lines: - return JmeIosGLES.GL_LINES; - case LineLoop: - return JmeIosGLES.GL_LINE_LOOP; - case LineStrip: - return JmeIosGLES.GL_LINE_STRIP; - case Triangles: - return JmeIosGLES.GL_TRIANGLES; - case TriangleFan: - return JmeIosGLES.GL_TRIANGLE_FAN; - case TriangleStrip: - return JmeIosGLES.GL_TRIANGLE_STRIP; - default: - throw new UnsupportedOperationException("Unrecognized mesh mode: " + mode); - } - } - - - private int convertVertexBufferFormat(Format format) { - switch (format) { - case Byte: - return JmeIosGLES.GL_BYTE; - case UnsignedByte: - return JmeIosGLES.GL_UNSIGNED_BYTE; - case Short: - return JmeIosGLES.GL_SHORT; - case UnsignedShort: - return JmeIosGLES.GL_UNSIGNED_SHORT; - case Int: - return JmeIosGLES.GL_INT; - case UnsignedInt: - return JmeIosGLES.GL_UNSIGNED_INT; - /* - case Half: - return NVHalfFloat.GL_HALF_FLOAT_NV; - // return ARBHalfFloatVertex.GL_HALF_FLOAT; - */ - case Float: - return JmeIosGLES.GL_FLOAT; -// case Double: -// return JmeIosGLES.GL_DOUBLE; - default: - throw new RuntimeException("Unknown buffer format."); - - } - } - - public void clearVertexAttribs() { - IDList attribList = context.attribIndexList; - for (int i = 0; i < attribList.oldLen; i++) { - int idx = attribList.oldList[i]; - - JmeIosGLES.glDisableVertexAttribArray(idx); - JmeIosGLES.checkGLError(); - - context.boundAttribs[idx] = null; - } - context.attribIndexList.copyNewToOld(); - } - - - public void clearTextureUnits() { - IDList textureList = context.textureIndexList; - Image[] textures = context.boundTextures; - for (int i = 0; i < textureList.oldLen; i++) { - int idx = textureList.oldList[i]; -// if (context.boundTextureUnit != idx){ -// glActiveTexture(GL_TEXTURE0 + idx); -// context.boundTextureUnit = idx; -// } -// glDisable(convertTextureType(textures[idx].getType())); - textures[idx] = null; - } - context.textureIndexList.copyNewToOld(); - } - - - public void updateFrameBuffer(FrameBuffer fb) { - int id = fb.getId(); - if (id == -1) { - // create FBO - JmeIosGLES.glGenFramebuffers(1, intBuf1, 0); - JmeIosGLES.checkGLError(); - - id = intBuf1[0]; - fb.setId(id); - objManager.registerObject(fb); - - statistics.onNewFrameBuffer(); - } - - if (context.boundFBO != id) { - JmeIosGLES.glBindFramebuffer(JmeIosGLES.GL_FRAMEBUFFER, id); - JmeIosGLES.checkGLError(); - - // binding an FBO automatically sets draw buf to GL_COLOR_ATTACHMENT0 - context.boundDrawBuf = 0; - context.boundFBO = id; - } - - FrameBuffer.RenderBuffer depthBuf = fb.getDepthBuffer(); - if (depthBuf != null) { - updateFrameBufferAttachment(fb, depthBuf); - } - - for (int i = 0; i < fb.getNumColorBuffers(); i++) { - FrameBuffer.RenderBuffer colorBuf = fb.getColorBuffer(i); - updateFrameBufferAttachment(fb, colorBuf); - } - - fb.clearUpdateNeeded(); - } - - - public void updateFrameBufferAttachment(FrameBuffer fb, RenderBuffer rb) { - boolean needAttach; - if (rb.getTexture() == null) { - // if it hasn't been created yet, then attach is required. - needAttach = rb.getId() == -1; - updateRenderBuffer(fb, rb); - } else { - needAttach = false; - updateRenderTexture(fb, rb); - } - if (needAttach) { - JmeIosGLES.glFramebufferRenderbuffer(JmeIosGLES.GL_FRAMEBUFFER, - convertAttachmentSlot(rb.getSlot()), - JmeIosGLES.GL_RENDERBUFFER, - rb.getId()); - - JmeIosGLES.checkGLError(); - } - } - - - public void updateRenderTexture(FrameBuffer fb, RenderBuffer rb) { - Texture tex = rb.getTexture(); - Image image = tex.getImage(); - if (image.isUpdateNeeded()) { - updateTexImageData(image, tex.getType()); - - // NOTE: For depth textures, sets nearest/no-mips mode - // Required to fix "framebuffer unsupported" - // for old NVIDIA drivers! - setupTextureParams(tex); - } - - JmeIosGLES.glFramebufferTexture2D(JmeIosGLES.GL_FRAMEBUFFER, - convertAttachmentSlot(rb.getSlot()), - convertTextureType(tex.getType()), - image.getId(), - 0); - - JmeIosGLES.checkGLError(); - } - - - private void updateRenderBuffer(FrameBuffer fb, RenderBuffer rb) { - int id = rb.getId(); - if (id == -1) { - JmeIosGLES.glGenRenderbuffers(1, intBuf1, 0); - JmeIosGLES.checkGLError(); - - id = intBuf1[0]; - rb.setId(id); - } - - if (context.boundRB != id) { - JmeIosGLES.glBindRenderbuffer(JmeIosGLES.GL_RENDERBUFFER, id); - JmeIosGLES.checkGLError(); - - context.boundRB = id; - } - - if (fb.getWidth() > maxRBSize || fb.getHeight() > maxRBSize) { - throw new RendererException("Resolution " + fb.getWidth() - + ":" + fb.getHeight() + " is not supported."); - } - - TextureUtil.IosGLImageFormat imageFormat = TextureUtil.getImageFormat(rb.getFormat()); - if (imageFormat.renderBufferStorageFormat == 0) { - throw new RendererException("The format '" + rb.getFormat() + "' cannot be used for renderbuffers."); - } - -// if (fb.getSamples() > 1 && GLContext.getCapabilities().GL_EXT_framebuffer_multisample) { - if (fb.getSamples() > 1) { -// // FIXME - throw new RendererException("Multisample FrameBuffer is not supported yet."); -// int samples = fb.getSamples(); -// if (maxFBOSamples < samples) { -// samples = maxFBOSamples; -// } -// glRenderbufferStorageMultisampleEXT(GL_RENDERBUFFER_EXT, -// samples, -// glFmt.internalFormat, -// fb.getWidth(), -// fb.getHeight()); - } else { - JmeIosGLES.glRenderbufferStorage(JmeIosGLES.GL_RENDERBUFFER, - imageFormat.renderBufferStorageFormat, - fb.getWidth(), - fb.getHeight()); - - JmeIosGLES.checkGLError(); - } - } - - - private int convertAttachmentSlot(int attachmentSlot) { - // can also add support for stencil here - if (attachmentSlot == -100) { - return JmeIosGLES.GL_DEPTH_ATTACHMENT; - } else if (attachmentSlot == 0) { - return JmeIosGLES.GL_COLOR_ATTACHMENT0; - } else { - throw new UnsupportedOperationException("Android does not support multiple color attachments to an FBO"); - } - } - - - private void checkFrameBufferStatus(FrameBuffer fb) { - try { - checkFrameBufferError(); - } catch (IllegalStateException ex) { - logger.log(Level.SEVERE, "=== jMonkeyEngine FBO State ===\n{0}", fb); - printRealFrameBufferInfo(fb); - throw ex; - } - } - - private void checkFrameBufferError() { - int status = JmeIosGLES.glCheckFramebufferStatus(JmeIosGLES.GL_FRAMEBUFFER); - switch (status) { - case JmeIosGLES.GL_FRAMEBUFFER_COMPLETE: - break; - case JmeIosGLES.GL_FRAMEBUFFER_UNSUPPORTED: - //Choose different formats - throw new IllegalStateException("Framebuffer object format is " - + "unsupported by the video hardware."); - case JmeIosGLES.GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT: - throw new IllegalStateException("Framebuffer has erronous attachment."); - case JmeIosGLES.GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: - throw new IllegalStateException("Framebuffer doesn't have any renderbuffers attached."); - case JmeIosGLES.GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS: - throw new IllegalStateException("Framebuffer attachments must have same dimensions."); -// case GLES20.GL_FRAMEBUFFER_INCOMPLETE_FORMATS: -// throw new IllegalStateException("Framebuffer attachments must have same formats."); -// case GLES20.GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER: -// throw new IllegalStateException("Incomplete draw buffer."); -// case GLES20.GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT: -// throw new IllegalStateException("Incomplete read buffer."); -// case GLES20.GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT: -// throw new IllegalStateException("Incomplete multisample buffer."); - default: - //Programming error; will fail on all hardware - throw new IllegalStateException("Some video driver error " - + "or programming error occured. " - + "Framebuffer object status is invalid: " + status); - } - } - - private void printRealRenderBufferInfo(FrameBuffer fb, RenderBuffer rb, String name) { - System.out.println("== Renderbuffer " + name + " =="); - System.out.println("RB ID: " + rb.getId()); - System.out.println("Is proper? " + JmeIosGLES.glIsRenderbuffer(rb.getId())); - - int attachment = convertAttachmentSlot(rb.getSlot()); - - //intBuf16.clear(); - JmeIosGLES.glGetFramebufferAttachmentParameteriv(JmeIosGLES.GL_FRAMEBUFFER, - attachment, JmeIosGLES.GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, intBuf16, 0); - int type = intBuf16[0]; - - //intBuf16.clear(); - JmeIosGLES.glGetFramebufferAttachmentParameteriv(JmeIosGLES.GL_FRAMEBUFFER, - attachment, JmeIosGLES.GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME, intBuf16, 0); - int rbName = intBuf16[0]; - - switch (type) { - case JmeIosGLES.GL_NONE: - System.out.println("Type: None"); - break; - case JmeIosGLES.GL_TEXTURE: - System.out.println("Type: Texture"); - break; - case JmeIosGLES.GL_RENDERBUFFER: - System.out.println("Type: Buffer"); - System.out.println("RB ID: " + rbName); - break; - } - } - - private void printRealFrameBufferInfo(FrameBuffer fb) { -// boolean doubleBuffer = GLES20.glGetBooleanv(GLES20.GL_DOUBLEBUFFER); - boolean doubleBuffer = false; // FIXME -// String drawBuf = getTargetBufferName(glGetInteger(GL_DRAW_BUFFER)); -// String readBuf = getTargetBufferName(glGetInteger(GL_READ_BUFFER)); - - int fbId = fb.getId(); - //intBuf16.clear(); -// int curDrawBinding = GLES20.glGetIntegerv(GLES20.GL_DRAW_FRAMEBUFFER_BINDING); -// int curReadBinding = glGetInteger(ARBFramebufferObject.GL_READ_FRAMEBUFFER_BINDING); - - System.out.println("=== OpenGL FBO State ==="); - System.out.println("Context doublebuffered? " + doubleBuffer); - System.out.println("FBO ID: " + fbId); - System.out.println("Is proper? " + JmeIosGLES.glIsFramebuffer(fbId)); -// System.out.println("Is bound to draw? " + (fbId == curDrawBinding)); -// System.out.println("Is bound to read? " + (fbId == curReadBinding)); -// System.out.println("Draw buffer: " + drawBuf); -// System.out.println("Read buffer: " + readBuf); - - if (context.boundFBO != fbId) { - JmeIosGLES.glBindFramebuffer(JmeIosGLES.GL_FRAMEBUFFER, fbId); - context.boundFBO = fbId; - } - - if (fb.getDepthBuffer() != null) { - printRealRenderBufferInfo(fb, fb.getDepthBuffer(), "Depth"); - } - for (int i = 0; i < fb.getNumColorBuffers(); i++) { - printRealRenderBufferInfo(fb, fb.getColorBuffer(i), "Color" + i); - } - - - } - - public void drawTriangleList_Array(VertexBuffer indexBuf, Mesh mesh, int count) { - if (indexBuf.getBufferType() != VertexBuffer.Type.Index) { - throw new IllegalArgumentException("Only index buffers are allowed as triangle lists."); - } - - boolean useInstancing = count > 1 && caps.contains(Caps.MeshInstancing); - if (useInstancing) { - throw new IllegalArgumentException("Caps.MeshInstancing is not supported."); - } - - int vertCount = mesh.getVertexCount(); - Buffer indexData = indexBuf.getData(); - indexData.rewind(); - - if (mesh.getMode() == Mode.Hybrid) { - int[] modeStart = mesh.getModeStart(); - int[] elementLengths = mesh.getElementLengths(); - - int elMode = convertElementMode(Mode.Triangles); - int fmt = convertVertexBufferFormat(indexBuf.getFormat()); - int elSize = indexBuf.getFormat().getComponentSize(); - int listStart = modeStart[0]; - int stripStart = modeStart[1]; - int fanStart = modeStart[2]; - int curOffset = 0; - for (int i = 0; i < elementLengths.length; i++) { - if (i == stripStart) { - elMode = convertElementMode(Mode.TriangleStrip); - } else if (i == fanStart) { - elMode = convertElementMode(Mode.TriangleFan); - } - int elementLength = elementLengths[i]; - - indexBuf.getData().position(curOffset); - JmeIosGLES.glDrawElements(elMode, elementLength, fmt, indexBuf.getData()); - JmeIosGLES.checkGLError(); - - curOffset += elementLength * elSize; - } - } else { - JmeIosGLES.glDrawElements( - convertElementMode(mesh.getMode()), - indexBuf.getData().limit(), - convertVertexBufferFormat(indexBuf.getFormat()), - indexBuf.getData()); - JmeIosGLES.checkGLError(); - } - } - - public void setVertexAttrib_Array(VertexBuffer vb, VertexBuffer idb) { - if (vb.getBufferType() == VertexBuffer.Type.Index) { - throw new IllegalArgumentException("Index buffers not allowed to be set to vertex attrib"); - } - - // Get shader - int programId = context.boundShaderProgram; - if (programId > 0) { - VertexBuffer[] attribs = context.boundAttribs; - - Attribute attrib = boundShader.getAttribute(vb.getBufferType()); - int loc = attrib.getLocation(); - if (loc == -1) { - //throw new IllegalArgumentException("Location is invalid for attrib: [" + vb.getBufferType().name() + "]"); - return; - } else if (loc == -2) { - String attributeName = "in" + vb.getBufferType().name(); - - loc = JmeIosGLES.glGetAttribLocation(programId, attributeName); - JmeIosGLES.checkGLError(); - - if (loc < 0) { - attrib.setLocation(-1); - return; // not available in shader. - } else { - attrib.setLocation(loc); - } - - } // if (loc == -2) - - if ((attribs[loc] != vb) || vb.isUpdateNeeded()) { - // NOTE: Use data from interleaved buffer if specified - VertexBuffer avb = idb != null ? idb : vb; - avb.getData().rewind(); - avb.getData().position(vb.getOffset()); - - // Upload attribute data - JmeIosGLES.glVertexAttribPointer(loc, - vb.getNumComponents(), - convertVertexBufferFormat(vb.getFormat()), - vb.isNormalized(), - vb.getStride(), - avb.getData()); - - JmeIosGLES.checkGLError(); - - JmeIosGLES.glEnableVertexAttribArray(loc); - JmeIosGLES.checkGLError(); - - attribs[loc] = vb; - } // if (attribs[loc] != vb) - } else { - throw new IllegalStateException("Cannot render mesh without shader bound"); - } - } - - public void setVertexAttrib_Array(VertexBuffer vb) { - setVertexAttrib_Array(vb, null); - } - - - public void updateShaderSourceData(ShaderSource source) { - int id = source.getId(); - if (id == -1) { - // Create id - id = JmeIosGLES.glCreateShader(convertShaderType(source.getType())); - JmeIosGLES.checkGLError(); - - if (id <= 0) { - throw new RendererException("Invalid ID received when trying to create shader."); - } - source.setId(id); - } - - if (!source.getLanguage().equals("GLSL100")) { - throw new RendererException("This shader cannot run in OpenGL ES. " - + "Only GLSL 1.0 shaders are supported."); - } - - // upload shader source - // merge the defines and source code - byte[] definesCodeData = source.getDefines().getBytes(); - byte[] sourceCodeData = source.getSource().getBytes(); - ByteBuffer codeBuf = BufferUtils.createByteBuffer(definesCodeData.length - + sourceCodeData.length); - codeBuf.put(definesCodeData); - codeBuf.put(sourceCodeData); - codeBuf.flip(); - - if (powerVr && source.getType() == ShaderType.Vertex) { - // XXX: This is to fix a bug in old PowerVR, remove - // when no longer applicable. - JmeIosGLES.glShaderSource( - id, source.getDefines() - + source.getSource()); - } else { - String precision =""; - if (source.getType() == ShaderType.Fragment) { - precision = "precision mediump float;\n"; - } - JmeIosGLES.glShaderSource( - id, - precision - +source.getDefines() - + source.getSource()); - } -// int range[] = new int[2]; -// int precision[] = new int[1]; -// GLES20.glGetShaderPrecisionFormat(GLES20.GL_VERTEX_SHADER, GLES20.GL_HIGH_FLOAT, range, 0, precision, 0); -// System.out.println("PRECISION HIGH FLOAT VERTEX"); -// System.out.println("range "+range[0]+"," +range[1]); -// System.out.println("precision "+precision[0]); - - JmeIosGLES.glCompileShader(id); - JmeIosGLES.checkGLError(); - - JmeIosGLES.glGetShaderiv(id, JmeIosGLES.GL_COMPILE_STATUS, intBuf1, 0); - JmeIosGLES.checkGLError(); - - boolean compiledOK = intBuf1[0] == JmeIosGLES.GL_TRUE; - String infoLog = null; - - if (VALIDATE_SHADER || !compiledOK) { - // even if compile succeeded, check - // log for warnings - JmeIosGLES.glGetShaderiv(id, JmeIosGLES.GL_INFO_LOG_LENGTH, intBuf1, 0); - JmeIosGLES.checkGLError(); - infoLog = JmeIosGLES.glGetShaderInfoLog(id); - } - - if (compiledOK) { - if (infoLog != null) { - logger.log(Level.FINE, "compile success: {0}, {1}", new Object[]{source.getName(), infoLog}); - } else { - logger.log(Level.FINE, "compile success: {0}", source.getName()); - } - source.clearUpdateNeeded(); - } else { - logger.log(Level.WARNING, "Bad compile of:\n{0}", - new Object[]{ShaderDebug.formatShaderSource(source.getDefines(), source.getSource(),stringBuf.toString())}); - if (infoLog != null) { - throw new RendererException("compile error in:" + source + " error:" + infoLog); - } else { - throw new RendererException("compile error in:" + source + " error: "); - } - } - } - - - public int convertShaderType(ShaderType type) { - switch (type) { - case Fragment: - return JmeIosGLES.GL_FRAGMENT_SHADER; - case Vertex: - return JmeIosGLES.GL_VERTEX_SHADER; -// case Geometry: -// return ARBGeometryShader4.GL_GEOMETRY_SHADER_ARB; - default: - throw new RuntimeException("Unrecognized shader type."); - } - } - - private int convertTestFunction(RenderState.TestFunction testFunc) { - switch (testFunc) { - case Never: - return JmeIosGLES.GL_NEVER; - case Less: - return JmeIosGLES.GL_LESS; - case LessOrEqual: - return JmeIosGLES.GL_LEQUAL; - case Greater: - return JmeIosGLES.GL_GREATER; - case GreaterOrEqual: - return JmeIosGLES.GL_GEQUAL; - case Equal: - return JmeIosGLES.GL_EQUAL; - case NotEqual: - return JmeIosGLES.GL_NOTEQUAL; - case Always: - return JmeIosGLES.GL_ALWAYS; - default: - throw new UnsupportedOperationException("Unrecognized test function: " + testFunc); - } - } -} \ No newline at end of file diff --git a/engine/src/ios/com/jme3/renderer/ios/JmeIosGLES.java b/engine/src/ios/com/jme3/renderer/ios/JmeIosGLES.java deleted file mode 100644 index 0811dc422..000000000 --- a/engine/src/ios/com/jme3/renderer/ios/JmeIosGLES.java +++ /dev/null @@ -1,273 +0,0 @@ -package com.jme3.renderer.ios; - -import com.jme3.renderer.RendererException; - -import java.nio.Buffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.util.logging.Level; -import java.util.logging.Logger; - -/** - * The iOS GLES interface iOS alternative to Android's GLES20 class - * - * @author Kostyantyn Hushchyn - */ -public class JmeIosGLES { - private static final Logger logger = Logger.getLogger(JmeIosGLES.class.getName()); - - private static boolean ENABLE_ERROR_CHECKING = true; - - public static final int GL_ALPHA = 0x00001906; - public static final int GL_ALWAYS = 0x00000207; - public static final int GL_ARRAY_BUFFER = 0x00008892; - public static final int GL_BACK = 0x00000405; - public static final int GL_BLEND = 0x00000be2; - public static final int GL_BYTE = 0x00001400; - public static final int GL_CLAMP_TO_EDGE = 0x0000812f; - public static final int GL_COLOR_ATTACHMENT0 = 0x00008ce0; - public static final int GL_COLOR_BUFFER_BIT = 0x00004000; - public static final int GL_COMPILE_STATUS = 0x00008b81; - public static final int GL_COMPRESSED_TEXTURE_FORMATS = 0x000086a3; - public static final int GL_CULL_FACE = 0x00000b44; - public static final int GL_DEPTH_ATTACHMENT = 0x00008d00; - public static final int GL_DEPTH_BUFFER_BIT = 0x00000100; - public static final int GL_DEPTH_COMPONENT = 0x00001902; - public static final int GL_DEPTH_COMPONENT16 = 0x000081a5; - public static final int GL_DEPTH_TEST = 0x00000b71; - public static final int GL_DITHER = 0x00000bd0; - public static final int GL_DST_COLOR = 0x00000306; - public static final int GL_DYNAMIC_DRAW = 0x000088e8; - public static final int GL_EQUAL = 0x00000202; - public static final int GL_ELEMENT_ARRAY_BUFFER = 0x00008893; - public static final int GL_EXTENSIONS = 0x00001f03; - public static final int GL_FALSE = 0x00000000; - public static final int GL_FLOAT = 0x00001406; - public static final int GL_FRAGMENT_SHADER = 0x00008b30; - public static final int GL_FRAMEBUFFER = 0x00008d40; - public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x00008cd1; - public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x00008cd0; - public static final int GL_FRAMEBUFFER_COMPLETE = 0x00008cd5; - public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x00008cd6; - public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 0x00008cd9; - public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x00008cd7; - public static final int GL_FRAMEBUFFER_UNSUPPORTED = 0x00008cdd; - public static final int GL_FRONT = 0x00000404; - public static final int GL_FRONT_AND_BACK = 0x00000408; - public static final int GL_GEQUAL = 0x00000206; - public static final int GL_GREATER = 0x00000204; - public static final int GL_HIGH_FLOAT = 0x00008df2; - public static final int GL_INFO_LOG_LENGTH = 0x00008b84; - public static final int GL_INT = 0x00001404; - public static final int GL_LEQUAL = 0x00000203; - public static final int GL_LESS = 0x00000201; - public static final int GL_LINEAR = 0x00002601; - public static final int GL_LINEAR_MIPMAP_LINEAR = 0x00002703; - public static final int GL_LINEAR_MIPMAP_NEAREST = 0x00002701; - public static final int GL_LINES = 0x00000001; - public static final int GL_LINE_LOOP = 0x00000002; - public static final int GL_LINE_STRIP = 0x00000003; - public static final int GL_LINK_STATUS = 0x00008b82; - public static final int GL_LUMINANCE = 0x00001909; - public static final int GL_LUMINANCE_ALPHA = 0x0000190a; - public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x0000851c; - public static final int GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x00008dfd; - public static final int GL_MAX_RENDERBUFFER_SIZE = 0x000084e8; - public static final int GL_MAX_TEXTURE_IMAGE_UNITS = 0x00008872; - public static final int GL_MAX_TEXTURE_SIZE = 0x00000d33; - public static final int GL_MAX_VARYING_VECTORS = 0x00008dfc; - public static final int GL_MAX_VERTEX_ATTRIBS = 0x00008869; - public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x00008b4c; - public static final int GL_MAX_VERTEX_UNIFORM_VECTORS = 0x00008dfb; - public static final int GL_MIRRORED_REPEAT = 0x00008370; - public static final int GL_NEAREST = 0x00002600; - public static final int GL_NEAREST_MIPMAP_LINEAR = 0x00002702; - public static final int GL_NEAREST_MIPMAP_NEAREST = 0x00002700; - public static final int GL_NEVER = 0x00000200; - public static final int GL_NONE = 0x00000000; - public static final int GL_NOTEQUAL = 0x00000205; - public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x000086a2; - public static final int GL_ONE = 0x00000001; - public static final int GL_ONE_MINUS_SRC_ALPHA = 0x00000303; - public static final int GL_ONE_MINUS_SRC_COLOR = 0x00000301; - public static final int GL_POINTS = 0x00000000; - public static final int GL_POLYGON_OFFSET_FILL = 0x00008037; - public static final int GL_RENDERBUFFER = 0x00008d41; - public static final int GL_RENDERER = 0x00001f01; - public static final int GL_REPEAT = 0x00002901; - public static final int GL_RGB = 0x00001907; - public static final int GL_RGB565 = 0x00008d62; - public static final int GL_RGB5_A1 = 0x00008057; - public static final int GL_RGBA = 0x00001908; - public static final int GL_RGBA4 = 0x00008056; - public static final int GL_SAMPLE_ALPHA_TO_COVERAGE = 0x0000809e; - public static final int GL_SCISSOR_TEST = 0x00000c11; - public static final int GL_SHADING_LANGUAGE_VERSION = 0x00008b8c; - public static final int GL_SHORT = 0x00001402; - public static final int GL_SRC_COLOR = 0x00000300; - public static final int GL_SRC_ALPHA = 0x00000302; - public static final int GL_STATIC_DRAW = 0x000088e4; - public static final int GL_STENCIL_BUFFER_BIT = 0x00000400; - public static final int GL_STREAM_DRAW = 0x000088e0; - public static final int GL_SUBPIXEL_BITS = 0x00000d50; - public static final int GL_TEXTURE = 0x00001702; - public static final int GL_TEXTURE0 = 0x000084c0; - public static final int GL_TEXTURE_2D = 0x00000de1; - public static final int GL_TEXTURE_CUBE_MAP = 0x00008513; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x00008515; - public static final int GL_TEXTURE_MAG_FILTER = 0x00002800; - public static final int GL_TEXTURE_MIN_FILTER = 0x00002801; - public static final int GL_TEXTURE_WRAP_S = 0x00002802; - public static final int GL_TEXTURE_WRAP_T = 0x00002803; - public static final int GL_TRIANGLES = 0x00000004; - public static final int GL_TRIANGLE_FAN = 0x00000006; - public static final int GL_TRIANGLE_STRIP = 0x00000005; - public static final int GL_TRUE = 0x00000001; - public static final int GL_UNPACK_ALIGNMENT = 0x00000cf5; - public static final int GL_UNSIGNED_BYTE = 0x00001401; - public static final int GL_UNSIGNED_INT = 0x00001405; - public static final int GL_UNSIGNED_SHORT = 0x00001403; - public static final int GL_UNSIGNED_SHORT_4_4_4_4 = 0x00008033; - public static final int GL_UNSIGNED_SHORT_5_5_5_1 = 0x00008034; - public static final int GL_UNSIGNED_SHORT_5_6_5 = 0x00008363; - public static final int GL_VENDOR = 0x00001f00; - public static final int GL_VERSION = 0x00001f02; - public static final int GL_VERTEX_SHADER = 0x00008b31; - public static final int GL_ZERO = 0x00000000; - - public static native void glActiveTexture(int texture); - public static native void glAttachShader(int program, int shader); - public static native void glBindBuffer(int target, int buffer); - public static native void glBindFramebuffer(int target, int framebuffer); - public static native void glBindRenderbuffer(int target, int renderbuffer); - public static native void glBindTexture(int target, int texture); -// public static native void glBindVertexArray // TODO: Investigate this - public static native void glBlendFunc(int sfactor, int dfactor); - public static native void glBufferData(int target, int size, Buffer data, int usage); - public static native void glBufferData2(int target, int size, byte[] data, int offset, int usage); - public static native void glBufferSubData(int target, int offset, int size, Buffer data); - public static native void glBufferSubData2(int target, int offset, int size, byte[] data, int dataoffset); - public static native int glCheckFramebufferStatus(int target); - public static native void glClear(int mask); - public static native void glClearColor(float red, float green, float blue, float alpha); - public static native void glColorMask(boolean red, boolean green, boolean blue, boolean alpha); - public static native void glCompileShader(int shader); - public static native void glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, Buffer pixels); - public static native void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, Buffer pixels); - public static native int glCreateProgram(); - public static native int glCreateShader(int type); - public static native void glCullFace(int mode); - public static native void glDeleteBuffers(int n, int[] buffers, int offset); - public static native void glDeleteFramebuffers(int n, int[] framebuffers, int offset); - public static native void glDeleteProgram(int program); - public static native void glDeleteRenderbuffers(int n, int[] renderbuffers, int offset); - public static native void glDeleteShader(int shader); - public static native void glDeleteTextures(int n, int[] textures, int offset); - public static native void glDepthFunc(int func); - public static native void glDepthMask(boolean flag); - public static native void glDepthRangef(float zNear, float zFar); - public static native void glDetachShader(int program, int shader); - public static native void glDisableVertexAttribArray(int index); - public static native void glDisable(int cap); - public static native void glDrawArrays(int mode, int first, int count); - public static native void glDrawElements(int mode, int count, int type, Buffer indices); - public static native void glDrawElements2(int mode, int count, int type, byte[] indices, int offset); - public static native void glDrawElementsIndex(int mode, int count, int type, int offset); - public static native void glEnable(int cap); - public static native void glEnableVertexAttribArray(int index); - public static native void glFramebufferRenderbuffer(int target, int attachment, int renderbuffertarget, int renderbuffer); - public static native void glFramebufferTexture2D(int target, int attachment, int textarget, int texture, int level); - public static native void glGenBuffers(int n, int[] buffers, int offset); - public static native void glGenFramebuffers(int n, int[] framebuffers, int offset); - public static native void glGenRenderbuffers(int n, int[] renderbuffers, int offset); - public static native void glGenTextures(int n, int[] textures, int offset); - public static native void glGenerateMipmap(int target); - public static native int glGetAttribLocation(int program, String name); - public static native int glGetError(); - public static native void glGetFramebufferAttachmentParameteriv(int target, int attachment, int pname, int[] params, int offset); - public static native void glGetIntegerv (int pname, int[] params, int offset); - public static native String glGetProgramInfoLog(int program); - public static native void glGetProgramiv(int program, int pname, int[] params, int offset); - public static native String glGetShaderInfoLog(int shader); - public static native void glGetShaderiv(int shader, int pname, int[] params, int offset); - public static native String glGetString(int name); - public static native int glGetUniformLocation(int program, String name); - public static native boolean glIsFramebuffer(int framebuffer); - public static native boolean glIsRenderbuffer(int renderbuffer); - public static native void glLineWidth(float width); - public static native void glLinkProgram(int program); - public static native void glPixelStorei(int pname, int param); - public static native void glPolygonOffset(float factor, float units); - public static native void glReadPixels(int vpX, int vpY, int vpW, int vpH, int format, int type, Buffer pixels); - public static native void glReadPixels2(int vpX, int vpY, int vpW, int vpH, int format, int type, byte[] pixels, int offset, int size); - public static native void glRenderbufferStorage(int target, int internalformat, int width, int height); - public static native void glScissor(int x, int y, int width, int height); - public static native void glShaderSource(int shader, String string); - public static native void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, Buffer pixels); - public static native void glTexParameteri(int target, int pname, int param); - public static native void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, Buffer pixels); - public static native void glUniform1f(int location, float x); - public static native void glUniform1fv(int location, int count, FloatBuffer v); - public static native void glUniform1fv2(int location, int count, float[] v, int offset); - public static native void glUniform1i(int location, int x); - public static native void glUniform1iv(int location, int count, IntBuffer v); - public static native void glUniform1iv2(int location, int count, int[] v, int offset); - public static native void glUniform2f(int location, float x, float y); - public static native void glUniform2fv(int location, int count, FloatBuffer v); - public static native void glUniform2fv2(int location, int count, float[] v, int offset); - public static native void glUniform3f(int location, float x, float y, float z); - public static native void glUniform3fv(int location, int count, FloatBuffer v); - public static native void glUniform3fv2(int location, int count, float[] v, int offset); - public static native void glUniform4f(int location, float x, float y, float z, float w); - public static native void glUniform4fv(int location, int count, FloatBuffer v); - public static native void glUniform4fv2(int location, int count, float[] v, int offset); - public static native void glUniformMatrix3fv(int location, int count, boolean transpose, FloatBuffer value); - public static native void glUniformMatrix3fv2(int location, int count, boolean transpose, float[] value, int offset); - public static native void glUniformMatrix4fv(int location, int count, boolean transpose, FloatBuffer value); - public static native void glUniformMatrix4fv2(int location, int count, boolean transpose, float[] value, int offset); - public static native void glUseProgram(int program); - //public static native void glVertexAttribPointer(int indx, int size, int type, boolean normalized, int stride, byte[] ptr, int offset); - public static native void glVertexAttribPointer(int indx, int size, int type, boolean normalized, int stride, Buffer ptr); - public static native void glVertexAttribPointer2(int indx, int size, int type, boolean normalized, int stride, int offset); - public static native void glViewport(int x, int y, int width, int height); - - - public static void checkGLError() { - if (!ENABLE_ERROR_CHECKING) { - return; - } - int error = glGetError(); - if (error != 0) { - String message = null;//GLU.gluErrorString(error); - if (message == null) { - throw new RendererException("An unknown [" + error + "] OpenGL error has occurred."); - } else { - throw new RendererException("An OpenGL error has occurred: " + message); - } - } - } - - /* - public static String gluErrorString(int error) { - switch (error) { - case GL10.GL_NO_ERROR: - return "no error"; - case GL10.GL_INVALID_ENUM: - return "invalid enum"; - case GL10.GL_INVALID_VALUE: - return "invalid value"; - case GL10.GL_INVALID_OPERATION: - return "invalid operation"; - case GL10.GL_STACK_OVERFLOW: - return "stack overflow"; - case GL10.GL_STACK_UNDERFLOW: - return "stack underflow"; - case GL10.GL_OUT_OF_MEMORY: - return "out of memory"; - default: - return null; - } - } - */ - -} \ No newline at end of file diff --git a/engine/src/ios/com/jme3/renderer/ios/TextureUtil.java b/engine/src/ios/com/jme3/renderer/ios/TextureUtil.java deleted file mode 100644 index 596df0ce4..000000000 --- a/engine/src/ios/com/jme3/renderer/ios/TextureUtil.java +++ /dev/null @@ -1,591 +0,0 @@ -package com.jme3.renderer.ios; - -//import android.graphics.Bitmap; -//import android.opengl.ETC1; -//import android.opengl.ETC1Util.ETC1Texture; -//import android.opengl.JmeIosGLES; -//import android.opengl.GLUtils; -//import com.jme3.asset.AndroidImageInfo; -import com.jme3.renderer.ios.JmeIosGLES; -import com.jme3.math.FastMath; -import com.jme3.renderer.RendererException; -import com.jme3.texture.Image; -import com.jme3.texture.Image.Format; -import com.jme3.util.BufferUtils; -import java.nio.ByteBuffer; -import java.util.logging.Level; -import java.util.logging.Logger; - -public class TextureUtil { - - private static final Logger logger = Logger.getLogger(TextureUtil.class.getName()); - //TODO Make this configurable through appSettings - public static boolean ENABLE_COMPRESSION = true; - private static boolean NPOT = false; - private static boolean ETC1support = false; - private static boolean DXT1 = false; - private static boolean PVRTC = false; - private static boolean DEPTH24_STENCIL8 = false; - private static boolean DEPTH_TEXTURE = false; - private static boolean RGBA8 = false; - - // Same constant used by both GL_ARM_rgba8 and GL_OES_rgb8_rgba8. - private static final int GL_RGBA8 = 0x8058; - - private static final int GL_DXT1 = 0x83F0; - private static final int GL_DXT1A = 0x83F1; - - private static final int GL_DEPTH_STENCIL_OES = 0x84F9; - private static final int GL_UNSIGNED_INT_24_8_OES = 0x84FA; - private static final int GL_DEPTH24_STENCIL8_OES = 0x88F0; - - public static void loadTextureFeatures(String extensionString) { - ETC1support = extensionString.contains("GL_OES_compressed_ETC1_RGB8_texture"); - DEPTH24_STENCIL8 = extensionString.contains("GL_OES_packed_depth_stencil"); - NPOT = extensionString.contains("GL_IMG_texture_npot") - || extensionString.contains("GL_OES_texture_npot") - || extensionString.contains("GL_NV_texture_npot_2D_mipmap"); - - PVRTC = extensionString.contains("GL_IMG_texture_compression_pvrtc"); - - DXT1 = extensionString.contains("GL_EXT_texture_compression_dxt1"); - DEPTH_TEXTURE = extensionString.contains("GL_OES_depth_texture"); - - RGBA8 = extensionString.contains("GL_ARM_rgba8") || - extensionString.contains("GL_OES_rgb8_rgba8"); - - logger.log(Level.FINE, "Supports ETC1? {0}", ETC1support); - logger.log(Level.FINE, "Supports DEPTH24_STENCIL8? {0}", DEPTH24_STENCIL8); - logger.log(Level.FINE, "Supports NPOT? {0}", NPOT); - logger.log(Level.FINE, "Supports PVRTC? {0}", PVRTC); - logger.log(Level.FINE, "Supports DXT1? {0}", DXT1); - logger.log(Level.FINE, "Supports DEPTH_TEXTURE? {0}", DEPTH_TEXTURE); - logger.log(Level.FINE, "Supports RGBA8? {0}", RGBA8); - } - - /* - private static void buildMipmap(Bitmap bitmap, boolean compress) { - int level = 0; - int height = bitmap.getHeight(); - int width = bitmap.getWidth(); - - logger.log(Level.FINEST, " - Generating mipmaps for bitmap using SOFTWARE"); - - JmeIosGLES.glPixelStorei(JmeIosGLES.GL_UNPACK_ALIGNMENT, 1); - - while (height >= 1 || width >= 1) { - //First of all, generate the texture from our bitmap and set it to the according level - if (compress) { - logger.log(Level.FINEST, " - Uploading LOD level {0} ({1}x{2}) with compression.", new Object[]{level, width, height}); - uploadBitmapAsCompressed(JmeIosGLES.GL_TEXTURE_2D, level, bitmap, false, 0, 0); - } else { - logger.log(Level.FINEST, " - Uploading LOD level {0} ({1}x{2}) directly.", new Object[]{level, width, height}); - GLUtils.texImage2D(JmeIosGLES.GL_TEXTURE_2D, level, bitmap, 0); - } - - if (height == 1 || width == 1) { - break; - } - - //Increase the mipmap level - height /= 2; - width /= 2; - Bitmap bitmap2 = Bitmap.createScaledBitmap(bitmap, width, height, true); - - // Recycle any bitmaps created as a result of scaling the bitmap. - // Do not recycle the original image (mipmap level 0) - if (level != 0) { - bitmap.recycle(); - } - - bitmap = bitmap2; - - level++; - } - } - - private static void uploadBitmapAsCompressed(int target, int level, Bitmap bitmap, boolean subTexture, int x, int y) { - if (bitmap.hasAlpha()) { - logger.log(Level.FINEST, " - Uploading bitmap directly. Cannot compress as alpha present."); - if (subTexture) { - GLUtils.texSubImage2D(target, level, x, y, bitmap); - JmeIosGLES.checkGLError(); - } else { - GLUtils.texImage2D(target, level, bitmap, 0); - JmeIosGLES.checkGLError(); - } - } else { - // Convert to RGB565 - int bytesPerPixel = 2; - Bitmap rgb565 = bitmap.copy(Bitmap.Config.RGB_565, true); - - // Put texture data into ByteBuffer - ByteBuffer inputImage = BufferUtils.createByteBuffer(bitmap.getRowBytes() * bitmap.getHeight()); - rgb565.copyPixelsToBuffer(inputImage); - inputImage.position(0); - - // Delete the copied RGB565 image - rgb565.recycle(); - - // Encode the image into the output bytebuffer - int encodedImageSize = ETC1.getEncodedDataSize(bitmap.getWidth(), bitmap.getHeight()); - ByteBuffer compressedImage = BufferUtils.createByteBuffer(encodedImageSize); - ETC1.encodeImage(inputImage, bitmap.getWidth(), - bitmap.getHeight(), - bytesPerPixel, - bytesPerPixel * bitmap.getWidth(), - compressedImage); - - // Delete the input image buffer - BufferUtils.destroyDirectBuffer(inputImage); - - // Create an ETC1Texture from the compressed image data - ETC1Texture etc1tex = new ETC1Texture(bitmap.getWidth(), bitmap.getHeight(), compressedImage); - - // Upload the ETC1Texture - if (bytesPerPixel == 2) { - int oldSize = (bitmap.getRowBytes() * bitmap.getHeight()); - int newSize = compressedImage.capacity(); - logger.log(Level.FINEST, " - Uploading compressed image to GL, oldSize = {0}, newSize = {1}, ratio = {2}", new Object[]{oldSize, newSize, (float) oldSize / newSize}); - if (subTexture) { - JmeIosGLES.glCompressedTexSubImage2D(target, - level, - x, y, - bitmap.getWidth(), - bitmap.getHeight(), - ETC1.ETC1_RGB8_OES, - etc1tex.getData().capacity(), - etc1tex.getData()); - - JmeIosGLES.checkGLError(); - } else { - JmeIosGLES.glCompressedTexImage2D(target, - level, - ETC1.ETC1_RGB8_OES, - bitmap.getWidth(), - bitmap.getHeight(), - 0, - etc1tex.getData().capacity(), - etc1tex.getData()); - - JmeIosGLES.checkGLError(); - } - -// ETC1Util.loadTexture(target, level, 0, JmeIosGLES.GL_RGB, -// JmeIosGLES.GL_UNSIGNED_SHORT_5_6_5, etc1Texture); -// } else if (bytesPerPixel == 3) { -// ETC1Util.loadTexture(target, level, 0, JmeIosGLES.GL_RGB, -// JmeIosGLES.GL_UNSIGNED_BYTE, etc1Texture); - } - - BufferUtils.destroyDirectBuffer(compressedImage); - } - } - - /** - * uploadTextureBitmap uploads a native android bitmap - */ - /* - public static void uploadTextureBitmap(final int target, Bitmap bitmap, boolean needMips) { - uploadTextureBitmap(target, bitmap, needMips, false, 0, 0); - } - - /** - * uploadTextureBitmap uploads a native android bitmap - */ - /* - public static void uploadTextureBitmap(final int target, Bitmap bitmap, boolean needMips, boolean subTexture, int x, int y) { - boolean recycleBitmap = false; - //TODO, maybe this should raise an exception when NPOT is not supported - - boolean willCompress = ENABLE_COMPRESSION && ETC1support && !bitmap.hasAlpha(); - if (needMips && willCompress) { - // Image is compressed and mipmaps are desired, generate them - // using software. - buildMipmap(bitmap, willCompress); - } else { - if (willCompress) { - // Image is compressed but mipmaps are not desired, upload directly. - logger.log(Level.FINEST, " - Uploading compressed bitmap. Mipmaps are not generated."); - uploadBitmapAsCompressed(target, 0, bitmap, subTexture, x, y); - - } else { - // Image is not compressed, mipmaps may or may not be desired. - logger.log(Level.FINEST, " - Uploading bitmap directly.{0}", - (needMips - ? " Mipmaps will be generated in HARDWARE" - : " Mipmaps are not generated.")); - if (subTexture) { - System.err.println("x : " + x + " y :" + y + " , " + bitmap.getWidth() + "/" + bitmap.getHeight()); - GLUtils.texSubImage2D(target, 0, x, y, bitmap); - JmeIosGLES.checkGLError(); - } else { - GLUtils.texImage2D(target, 0, bitmap, 0); - JmeIosGLES.checkGLError(); - } - - if (needMips) { - // No pregenerated mips available, - // generate from base level if required - JmeIosGLES.glGenerateMipmap(target); - JmeIosGLES.checkGLError(); - } - } - } - - if (recycleBitmap) { - bitmap.recycle(); - } - } - */ - - public static void uploadTextureAny(Image img, int target, int index, boolean needMips) { - /* - if (img.getEfficentData() instanceof AndroidImageInfo) { - logger.log(Level.FINEST, " === Uploading image {0}. Using BITMAP PATH === ", img); - // If image was loaded from asset manager, use fast path - AndroidImageInfo imageInfo = (AndroidImageInfo) img.getEfficentData(); - uploadTextureBitmap(target, imageInfo.getBitmap(), needMips); - } else { - */ - logger.log(Level.FINEST, " === Uploading image {0}. Using BUFFER PATH === ", img); - boolean wantGeneratedMips = needMips && !img.hasMipmaps(); - if (wantGeneratedMips && img.getFormat().isCompressed()) { - logger.log(Level.WARNING, "Generating mipmaps is only" - + " supported for Bitmap based or non-compressed images!"); - } - - // Upload using slower path - logger.log(Level.FINEST, " - Uploading bitmap directly.{0}", - (wantGeneratedMips - ? " Mipmaps will be generated in HARDWARE" - : " Mipmaps are not generated.")); - - uploadTexture(img, target, index); - - // Image was uploaded using slower path, since it is not compressed, - // then compress it - if (wantGeneratedMips) { - // No pregenerated mips available, - // generate from base level if required - JmeIosGLES.glGenerateMipmap(target); - JmeIosGLES.checkGLError(); - } - //} - } - - private static void unsupportedFormat(Format fmt) { - throw new UnsupportedOperationException("The image format '" + fmt + "' is unsupported by the video hardware."); - } - - public static IosGLImageFormat getImageFormat(Format fmt) throws UnsupportedOperationException { - IosGLImageFormat imageFormat = new IosGLImageFormat(); - switch (fmt) { - case RGBA16: - case RGB16: - case RGB10: - case Luminance16: - case Luminance16Alpha16: - case Alpha16: - case Depth32: - case Depth32F: - throw new UnsupportedOperationException("The image format '" - + fmt + "' is not supported by OpenGL ES 2.0 specification."); - case Alpha8: - imageFormat.format = JmeIosGLES.GL_ALPHA; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_BYTE; - if (RGBA8) { - imageFormat.renderBufferStorageFormat = GL_RGBA8; - } else { - // Highest precision alpha supported by vanilla OGLES2 - imageFormat.renderBufferStorageFormat = JmeIosGLES.GL_RGBA4; - } - break; - case Luminance8: - imageFormat.format = JmeIosGLES.GL_LUMINANCE; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_BYTE; - if (RGBA8) { - imageFormat.renderBufferStorageFormat = GL_RGBA8; - } else { - // Highest precision luminance supported by vanilla OGLES2 - imageFormat.renderBufferStorageFormat = JmeIosGLES.GL_RGB565; - } - break; - case Luminance8Alpha8: - imageFormat.format = JmeIosGLES.GL_LUMINANCE_ALPHA; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_BYTE; - if (RGBA8) { - imageFormat.renderBufferStorageFormat = GL_RGBA8; - } else { - imageFormat.renderBufferStorageFormat = JmeIosGLES.GL_RGBA4; - } - break; - case RGB565: - imageFormat.format = JmeIosGLES.GL_RGB; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_SHORT_5_6_5; - imageFormat.renderBufferStorageFormat = JmeIosGLES.GL_RGB565; - break; - case ARGB4444: - imageFormat.format = JmeIosGLES.GL_RGBA4; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_SHORT_4_4_4_4; - imageFormat.renderBufferStorageFormat = JmeIosGLES.GL_RGBA4; - break; - case RGB5A1: - imageFormat.format = JmeIosGLES.GL_RGBA; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_SHORT_5_5_5_1; - imageFormat.renderBufferStorageFormat = JmeIosGLES.GL_RGB5_A1; - break; - case RGB8: - imageFormat.format = JmeIosGLES.GL_RGB; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_BYTE; - if (RGBA8) { - imageFormat.renderBufferStorageFormat = GL_RGBA8; - } else { - // Fallback: Use RGB565 if RGBA8 is not available. - imageFormat.renderBufferStorageFormat = JmeIosGLES.GL_RGB565; - } - break; - case BGR8: - imageFormat.format = JmeIosGLES.GL_RGB; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_BYTE; - if (RGBA8) { - imageFormat.renderBufferStorageFormat = GL_RGBA8; - } else { - imageFormat.renderBufferStorageFormat = JmeIosGLES.GL_RGB565; - } - break; - case RGBA8: - imageFormat.format = JmeIosGLES.GL_RGBA; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_BYTE; - if (RGBA8) { - imageFormat.renderBufferStorageFormat = GL_RGBA8; - } else { - imageFormat.renderBufferStorageFormat = JmeIosGLES.GL_RGBA4; - } - break; - case Depth: - case Depth16: - if (!DEPTH_TEXTURE) { - unsupportedFormat(fmt); - } - imageFormat.format = JmeIosGLES.GL_DEPTH_COMPONENT; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_SHORT; - imageFormat.renderBufferStorageFormat = JmeIosGLES.GL_DEPTH_COMPONENT16; - break; - case Depth24: - case Depth24Stencil8: - if (!DEPTH_TEXTURE) { - unsupportedFormat(fmt); - } - if (DEPTH24_STENCIL8) { - // NEW: True Depth24 + Stencil8 format. - imageFormat.format = GL_DEPTH_STENCIL_OES; - imageFormat.dataType = GL_UNSIGNED_INT_24_8_OES; - imageFormat.renderBufferStorageFormat = GL_DEPTH24_STENCIL8_OES; - } else { - // Vanilla OGLES2, only Depth16 available. - imageFormat.format = JmeIosGLES.GL_DEPTH_COMPONENT; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_SHORT; - imageFormat.renderBufferStorageFormat = JmeIosGLES.GL_DEPTH_COMPONENT16; - } - break; - case DXT1: - if (!DXT1) { - unsupportedFormat(fmt); - } - imageFormat.format = GL_DXT1; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_BYTE; - imageFormat.compress = true; - break; - case DXT1A: - if (!DXT1) { - unsupportedFormat(fmt); - } - imageFormat.format = GL_DXT1A; - imageFormat.dataType = JmeIosGLES.GL_UNSIGNED_BYTE; - imageFormat.compress = true; - break; - default: - throw new UnsupportedOperationException("Unrecognized format: " + fmt); - } - return imageFormat; - } - - public static class IosGLImageFormat { - - boolean compress = false; - int format = -1; - int renderBufferStorageFormat = -1; - int dataType = -1; - } - - private static void uploadTexture(Image img, - int target, - int index) { - - /* - if (img.getEfficentData() instanceof AndroidImageInfo) { - throw new RendererException("This image uses efficient data. " - + "Use uploadTextureBitmap instead."); - } - */ - - // Otherwise upload image directly. - // Prefer to only use power of 2 textures here to avoid errors. - Image.Format fmt = img.getFormat(); - ByteBuffer data; - if (index >= 0 || img.getData() != null && img.getData().size() > 0) { - data = img.getData(index); - } else { - data = null; - } - - int width = img.getWidth(); - int height = img.getHeight(); - - if (!NPOT) { - // Check if texture is POT - if (!FastMath.isPowerOfTwo(width) || !FastMath.isPowerOfTwo(height)) { - throw new RendererException("Non-power-of-2 textures " - + "are not supported by the video hardware " - + "and no scaling path available for image: " + img); - } - } - IosGLImageFormat imageFormat = getImageFormat(fmt); - - if (data != null) { - JmeIosGLES.glPixelStorei(JmeIosGLES.GL_UNPACK_ALIGNMENT, 1); - JmeIosGLES.checkGLError(); - } - - int[] mipSizes = img.getMipMapSizes(); - int pos = 0; - if (mipSizes == null) { - if (data != null) { - mipSizes = new int[]{data.capacity()}; - } else { - mipSizes = new int[]{width * height * fmt.getBitsPerPixel() / 8}; - } - } - - for (int i = 0; i < mipSizes.length; i++) { - int mipWidth = Math.max(1, width >> i); - int mipHeight = Math.max(1, height >> i); - - if (data != null) { - data.position(pos); - data.limit(pos + mipSizes[i]); - } - - if (imageFormat.compress && data != null) { - JmeIosGLES.glCompressedTexImage2D(target, - i, - imageFormat.format, - mipWidth, - mipHeight, - 0, - data.remaining(), - data); - } else { - JmeIosGLES.glTexImage2D(target, - i, - imageFormat.format, - mipWidth, - mipHeight, - 0, - imageFormat.format, - imageFormat.dataType, - data); - } - JmeIosGLES.checkGLError(); - - pos += mipSizes[i]; - } - } - - /** - * Update the texture currently bound to target at with data from the given - * Image at position x and y. The parameter index is used as the zoffset in - * case a 3d texture or texture 2d array is being updated. - * - * @param image Image with the source data (this data will be put into the - * texture) - * @param target the target texture - * @param index the mipmap level to update - * @param x the x position where to put the image in the texture - * @param y the y position where to put the image in the texture - */ - public static void uploadSubTexture( - Image img, - int target, - int index, - int x, - int y) { - //TODO: - /* - if (img.getEfficentData() instanceof AndroidImageInfo) { - AndroidImageInfo imageInfo = (AndroidImageInfo) img.getEfficentData(); - uploadTextureBitmap(target, imageInfo.getBitmap(), true, true, x, y); - return; - } - */ - - // Otherwise upload image directly. - // Prefer to only use power of 2 textures here to avoid errors. - Image.Format fmt = img.getFormat(); - ByteBuffer data; - if (index >= 0 || img.getData() != null && img.getData().size() > 0) { - data = img.getData(index); - } else { - data = null; - } - - int width = img.getWidth(); - int height = img.getHeight(); - - if (!NPOT) { - // Check if texture is POT - if (!FastMath.isPowerOfTwo(width) || !FastMath.isPowerOfTwo(height)) { - throw new RendererException("Non-power-of-2 textures " - + "are not supported by the video hardware " - + "and no scaling path available for image: " + img); - } - } - IosGLImageFormat imageFormat = getImageFormat(fmt); - - if (data != null) { - JmeIosGLES.glPixelStorei(JmeIosGLES.GL_UNPACK_ALIGNMENT, 1); - JmeIosGLES.checkGLError(); - } - - int[] mipSizes = img.getMipMapSizes(); - int pos = 0; - if (mipSizes == null) { - if (data != null) { - mipSizes = new int[]{data.capacity()}; - } else { - mipSizes = new int[]{width * height * fmt.getBitsPerPixel() / 8}; - } - } - - for (int i = 0; i < mipSizes.length; i++) { - int mipWidth = Math.max(1, width >> i); - int mipHeight = Math.max(1, height >> i); - - if (data != null) { - data.position(pos); - data.limit(pos + mipSizes[i]); - } - - if (imageFormat.compress && data != null) { - JmeIosGLES.glCompressedTexSubImage2D(target, i, x, y, mipWidth, mipHeight, imageFormat.format, data.remaining(), data); - JmeIosGLES.checkGLError(); - } else { - JmeIosGLES.glTexSubImage2D(target, i, x, y, mipWidth, mipHeight, imageFormat.format, imageFormat.dataType, data); - JmeIosGLES.checkGLError(); - } - - pos += mipSizes[i]; - } - } -} diff --git a/engine/src/ios/com/jme3/system/ios/IGLESContext.java b/engine/src/ios/com/jme3/system/ios/IGLESContext.java deleted file mode 100644 index d96962244..000000000 --- a/engine/src/ios/com/jme3/system/ios/IGLESContext.java +++ /dev/null @@ -1,201 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.system.ios; - -import com.jme3.input.*; -import com.jme3.input.controls.SoftTextDialogInputListener; -import com.jme3.input.dummy.DummyKeyInput; -import com.jme3.input.dummy.DummyMouseInput; -import com.jme3.renderer.ios.IGLESShaderRenderer; -import com.jme3.system.*; -import java.util.concurrent.atomic.AtomicBoolean; -import java.util.logging.Level; -import java.util.logging.Logger; - -public class IGLESContext implements JmeContext { - - private static final Logger logger = Logger.getLogger(IGLESContext.class.getName()); - protected final AtomicBoolean created = new AtomicBoolean(false); - protected final AtomicBoolean renderable = new AtomicBoolean(false); - protected final AtomicBoolean needClose = new AtomicBoolean(false); - protected AppSettings settings = new AppSettings(true); - protected boolean autoFlush = true; - - /* - * >= OpenGL ES 2.0 (iOS) - */ - protected IGLESShaderRenderer renderer; - protected Timer timer; - protected SystemListener listener; - protected int minFrameDuration = 0; // No FPS cap - - public IGLESContext() { - logger.log(Level.FINE, "IGLESContext constructor"); - } - - @Override - public Type getType() { - return Type.Display; - } - - @Override - public void setSettings(AppSettings settings) { - logger.log(Level.FINE, "IGLESContext setSettings"); - this.settings.copyFrom(settings); - /* - if (androidInput != null) { - androidInput.loadSettings(settings); - } - */ - - } - - @Override - public void setSystemListener(SystemListener listener) { - logger.log(Level.FINE, "IGLESContext setSystemListener"); - this.listener = listener; - } - - @Override - public AppSettings getSettings() { - return settings; - } - - @Override - public com.jme3.renderer.Renderer getRenderer() { - logger.log(Level.FINE, "IGLESContext getRenderer"); - return renderer; - } - - @Override - public MouseInput getMouseInput() { - return new DummyMouseInput(); - } - - @Override - public KeyInput getKeyInput() { - return new DummyKeyInput(); - } - - @Override - public JoyInput getJoyInput() { - /* - if (androidSensorJoyInput == null) { - androidSensorJoyInput = new AndroidSensorJoyInput(); - } - return androidSensorJoyInput; - */ - return null;// new DummySensorJoyInput(); - } - - @Override - public TouchInput getTouchInput() { - //return androidInput; - return null;// new DummyTouchInput(); - } - - @Override - public Timer getTimer() { - return timer; - } - - @Override - public void setTitle(String title) { - } - - @Override - public boolean isCreated() { - logger.log(Level.FINE, "IGLESContext isCreated"); - return created.get(); - } - - @Override - public void setAutoFlushFrames(boolean enabled) { - this.autoFlush = enabled; - } - - @Override - public boolean isRenderable() { - logger.log(Level.FINE, "IGLESContext isRenderable"); - return true;// renderable.get(); - } - - @Override - public void create(boolean waitFor) { - logger.log(Level.FINE, "IGLESContext create"); - renderer = new IGLESShaderRenderer(); - timer = new NanoTimer(); - -//synchronized (createdLock){ - created.set(true); - //createdLock.notifyAll(); - //} - - listener.initialize(); - - if (waitFor) { - //waitFor(true); - } - logger.log(Level.FINE, "IGLESContext created"); - } - - public void create() { - create(false); - } - - @Override - public void restart() { - } - - @Override - public void destroy(boolean waitFor) { - logger.log(Level.FINE, "IGLESContext destroy"); - listener.destroy(); - needClose.set(true); - if (waitFor) { - //waitFor(false); - } - } - - public void destroy() { - destroy(true); - } - - protected void waitFor(boolean createdVal) { - while (renderable.get() != createdVal) { - try { - Thread.sleep(10); - } catch (InterruptedException ex) { - } - } - } -} \ No newline at end of file diff --git a/engine/src/ios/com/jme3/system/ios/IosAssetManager.java b/engine/src/ios/com/jme3/system/ios/IosAssetManager.java deleted file mode 100644 index edddf4f57..000000000 --- a/engine/src/ios/com/jme3/system/ios/IosAssetManager.java +++ /dev/null @@ -1,132 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.system.ios; - -import com.jme3.asset.AssetLoader; -import com.jme3.asset.DesktopAssetManager; -import com.jme3.asset.TextureKey; -import com.jme3.asset.plugins.ClasspathLocator; -import com.jme3.audio.plugins.WAVLoader; -import com.jme3.texture.Texture; -import java.io.InputStream; -import java.net.URL; -import java.util.logging.Level; -import java.util.logging.Logger; - -/** - * - * @author normenhansen - */ -public class IosAssetManager extends DesktopAssetManager { - - private static final Logger logger = Logger.getLogger(IosAssetManager.class.getName()); - - public IosAssetManager() { - this(null); - } - - @Deprecated - public IosAssetManager(boolean loadDefaults) { - //this(Thread.currentThread().getContextClassLoader().getResource("com/jme3/asset/Android.cfg")); - this(null); - } - - private void registerLoaderSafe(String loaderClass, String ... extensions) { - try { - Class loader = (Class) Class.forName(loaderClass); - registerLoader(loader, extensions); - } catch (Exception e){ - logger.log(Level.WARNING, "Failed to load AssetLoader", e); - } - } - - /** - * AndroidAssetManager constructor - * If URL == null then a default list of locators and loaders for android is set - * @param configFile - */ - public IosAssetManager(URL configFile) { - System.setProperty("org.xml.sax.driver", "org.xmlpull.v1.sax2.Driver"); - - // Set Default iOS config - registerLocator("", ClasspathLocator.class); - - registerLoader(IosImageLoader.class, "jpg", "bmp", "gif", "png", "jpeg"); - //registerLoader(AndroidImageLoader.class, "jpg", "bmp", "gif", "png", "jpeg"); - //registerLoader(AndroidAudioLoader.class, "ogg", "mp3", "wav"); - registerLoader(com.jme3.material.plugins.J3MLoader.class, "j3m"); - registerLoader(com.jme3.material.plugins.J3MLoader.class, "j3md"); - registerLoader(com.jme3.shader.plugins.GLSLLoader.class, "vert", "frag", "glsl", "glsllib"); - registerLoader(com.jme3.export.binary.BinaryImporter.class, "j3o"); - registerLoader(com.jme3.font.plugins.BitmapFontLoader.class, "fnt"); - registerLoader(WAVLoader.class, "wav"); - - // Less common loaders (especially on iOS) - registerLoaderSafe("com.jme3.audio.plugins.OGGLoader", "ogg"); - registerLoaderSafe("com.jme3.texture.plugins.DDSLoader", "dds"); - registerLoaderSafe("com.jme3.texture.plugins.PFMLoader", "pfm"); - registerLoaderSafe("com.jme3.texture.plugins.HDRLoader", "hdr"); - registerLoaderSafe("com.jme3.texture.plugins.TGALoader", "tga"); - registerLoaderSafe("com.jme3.scene.plugins.OBJLoader", "obj"); - registerLoaderSafe("com.jme3.scene.plugins.MTLLoader", "mtl"); - registerLoaderSafe("com.jme3.scene.plugins.ogre.MeshLoader", "mesh.xml"); - registerLoaderSafe("com.jme3.scene.plugins.ogre.SkeletonLoader", "skeleton.xml"); - registerLoaderSafe("com.jme3.scene.plugins.ogre.MaterialLoader", "material"); - registerLoaderSafe("com.jme3.scene.plugins.ogre.SceneLoader", "scene"); - - - logger.fine("IosAssetManager created."); - } - - /** - * Loads a texture. - * - * @return the texture - */ - @Override - public Texture loadTexture(TextureKey key) { - Texture tex = (Texture) loadAsset(key); - - // XXX: This will improve performance on some really - // low end GPUs (e.g. ones with OpenGL ES 1 support only) - // but otherwise won't help on the higher ones. - // Strongly consider removing this. - tex.setMagFilter(Texture.MagFilter.Nearest); - tex.setAnisotropicFilter(0); - if (tex.getMinFilter().usesMipMapLevels()) { - tex.setMinFilter(Texture.MinFilter.NearestNearestMipMap); - } else { - tex.setMinFilter(Texture.MinFilter.NearestNoMipMaps); - } - return tex; - } -} diff --git a/engine/src/ios/com/jme3/system/ios/IosHarness.java b/engine/src/ios/com/jme3/system/ios/IosHarness.java deleted file mode 100644 index f3b10196e..000000000 --- a/engine/src/ios/com/jme3/system/ios/IosHarness.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.system.ios; - -import com.jme3.app.Application; -import com.jme3.system.JmeSystem; - -/** - * @author normenhansen - */ -public abstract class IosHarness extends ObjcNativeObject { - - protected Application app; - - public IosHarness(long appDelegate) { - super(appDelegate); - JmeSystem.setSystemDelegate(new JmeIosSystem()); - } - - public abstract void appPaused(); - - public abstract void appReactivated(); - - public abstract void appClosed(); - - public abstract void appUpdate(); - - public abstract void appDraw(); - - public abstract void appReshape(int width, int height); - -} \ No newline at end of file diff --git a/engine/src/ios/com/jme3/system/ios/IosImageLoader.java b/engine/src/ios/com/jme3/system/ios/IosImageLoader.java deleted file mode 100644 index 4ec649086..000000000 --- a/engine/src/ios/com/jme3/system/ios/IosImageLoader.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.system.ios; - -import com.jme3.asset.AssetInfo; -import com.jme3.asset.AssetLoader; -import com.jme3.texture.Image; -import com.jme3.texture.Image.Format; -import java.io.IOException; -import java.io.InputStream; - -/** - * - * @author normenhansen - */ -public class IosImageLoader implements AssetLoader { - - public Object load(AssetInfo info) throws IOException { - InputStream in = info.openStream(); - Image img = null; - try { - img = loadImageData(Image.Format.RGBA8, in); - } catch (Exception e) { - e.printStackTrace(); - } finally { - in.close(); - } - return img; - } - - /** - * Loads images via iOS native API - * - * @param format has to be Image.Format.RGBA8 - * @param inputStream the InputStream to load the image data from - * @return the loaded Image - */ - private static native Image loadImageData(Format format, InputStream inputStream); -} diff --git a/engine/src/ios/com/jme3/system/ios/IosLogHandler.java b/engine/src/ios/com/jme3/system/ios/IosLogHandler.java deleted file mode 100644 index 8e8f51b35..000000000 --- a/engine/src/ios/com/jme3/system/ios/IosLogHandler.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.system.ios; - -import com.jme3.util.JmeFormatter; -import java.util.logging.Handler; -import java.util.logging.Level; -import java.util.logging.LogRecord; - -/** - * - * @author normenhansen - */ -public class IosLogHandler extends Handler { - - JmeFormatter formatter = new JmeFormatter(); - - public IosLogHandler() { - } - - @Override - public void publish(LogRecord record) { - if (record.getLevel().equals(Level.SEVERE)) { - System.err.println(formatter.formatMessage(record)); - } - else if (record.getLevel().equals(Level.WARNING)) { - System.err.println(formatter.formatMessage(record)); - } - else { - System.err.println(formatter.formatMessage(record)); - } - } - - @Override - public void flush() { -// throw new UnsupportedOperationException("Not supported yet."); - } - - @Override - public void close() throws SecurityException { -// throw new UnsupportedOperationException("Not supported yet."); - } - -} diff --git a/engine/src/ios/com/jme3/system/ios/JmeIosSystem.java b/engine/src/ios/com/jme3/system/ios/JmeIosSystem.java deleted file mode 100644 index 12c1b6595..000000000 --- a/engine/src/ios/com/jme3/system/ios/JmeIosSystem.java +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.system.ios; - -import com.jme3.asset.AssetManager; -import com.jme3.audio.AudioRenderer; -import com.jme3.audio.android.AndroidOpenALSoftAudioRenderer; -import com.jme3.system.AppSettings; -import com.jme3.system.JmeContext; -import com.jme3.system.JmeSystemDelegate; -import com.jme3.system.NullContext; -import com.jme3.texture.Image; -import com.jme3.texture.image.ImageRaster; -import java.io.IOException; -import java.io.OutputStream; -import java.net.URL; -import java.nio.ByteBuffer; -import java.util.logging.Logger; - -/** - * - * @author normenhansen - */ -public class JmeIosSystem extends JmeSystemDelegate { - - @Override - public void writeImageFile(OutputStream outStream, String format, ByteBuffer imageData, int width, int height) throws IOException { - throw new UnsupportedOperationException("Not supported yet."); - } - - @Override - public AssetManager newAssetManager(URL configFile) { - return new IosAssetManager(configFile); - } - - @Override - public AssetManager newAssetManager() { - return new IosAssetManager(); - } - - @Override - public void showErrorDialog(String message) { - showDialog(message); - System.err.println("JME APPLICATION ERROR:" + message); - } - - private native void showDialog(String message); - - @Override - public boolean showSettingsDialog(AppSettings sourceSettings, boolean loadFromRegistry) { - return true; - } - - @Override - public JmeContext newContext(AppSettings settings, JmeContext.Type contextType) { - initialize(settings); - JmeContext ctx = null; - if (settings.getRenderer() == null - || settings.getRenderer().equals("NULL") - || contextType == JmeContext.Type.Headless) { - ctx = new NullContext(); - ctx.setSettings(settings); - } else { - ctx = new IGLESContext(); - ctx.setSettings(settings); - } - return ctx; - } - - @Override - public AudioRenderer newAudioRenderer(AppSettings settings) { - return new AndroidOpenALSoftAudioRenderer(); - } - - @Override - public void initialize(AppSettings settings) { - Logger.getLogger("").addHandler(new IosLogHandler()); -// throw new UnsupportedOperationException("Not supported yet."); - } - - @Override - public ImageRaster createImageRaster(Image image, int slice) { - throw new UnsupportedOperationException("Not supported yet."); - } -} \ No newline at end of file diff --git a/engine/src/ios/com/jme3/system/ios/ObjcNativeObject.java b/engine/src/ios/com/jme3/system/ios/ObjcNativeObject.java deleted file mode 100644 index 271baec0f..000000000 --- a/engine/src/ios/com/jme3/system/ios/ObjcNativeObject.java +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.system.ios; - -/** - * Java Object that represents a native iOS class. You can call methods and - * retrieve objects from the native object via this class. - * - * @author normenhansen - */ -public class ObjcNativeObject { - - private final long nativeObject; - - /** - * Creates a new native object representation - * - * @param nativeObject The id of the native object, created via cast of - * object to jlong - */ - public ObjcNativeObject(long nativeObject) { - this.nativeObject = nativeObject; - } - - /** - * Performs the given selector on the native AppDelegate, equivalent to - * calling a method in java. - * - * @param selector The selector (name of the method) to perform. - * @return The object in form of a long id if any is returned. - */ - public ObjcNativeObject performSelector(String selector) { - return new ObjcNativeObject(performSelector(nativeObject, selector)); - } - - /** - * Performs the given selector on the native AppDelegate, equivalent to - * calling a method in java. - * - * @param selector The selector (name of the method) to perform. - * @param object An object that was before returned from native code. - * @return The object in form of a long id if any is returned. - */ - public ObjcNativeObject performSelectorWithObject(String selector, ObjcNativeObject object) { - return new ObjcNativeObject(performSelectorWithObject(nativeObject, selector, object.nativeObject)); - } - - /** - * Performs the given selector on the native AppDelegate, run it on the main - * thread. - * - * @param selector The selector (name of the method) to perform. - */ - public void performSelectorOnMainThread(String selector) { - performSelectorOnMainThread(nativeObject, selector); - } - - /** - * Performs the given selector on the native AppDelegate, run it on the main - * thread. - * - * @param selector The selector (name of the method) to perform. - * @param object An object that was before returned from native code. - */ - public void performSelectorOnMainThreadWithObject(String selector, ObjcNativeObject object) { - performSelectorOnMainThreadWithObject(nativeObject, selector, object.nativeObject); - } - - /** - * Performs the given selector on the native AppDelegate, run it in the - * background. - * - * @param selector The selector (name of the method) to perform. - */ - public void performSelectorInBackground(String selector) { - performSelectorInBackground(nativeObject, selector); - } - - /** - * Performs the given selector on the native AppDelegate, run it in the - * background - * - * @param selector The selector (name of the method) to perform. - * @param object An object that was before returned from native code. - */ - public void performSelectorInBackgroundWithObject(String selector, ObjcNativeObject object) { - performSelectorInBackgroundWithObject(nativeObject, selector, object.nativeObject); - } - - private static native long performSelector(long nativeObject, String selector); - - private static native long performSelectorWithObject(long nativeObject, String selector, long object); - - private static native void performSelectorOnMainThread(long nativeObject, String selector); - - private static native void performSelectorOnMainThreadWithObject(long nativeObject, String selector, long object); - - private static native void performSelectorInBackground(long nativeObject, String selector); - - private static native void performSelectorInBackgroundWithObject(long nativeObject, String selector, long object); -} diff --git a/engine/src/jheora/com/jme3/newvideo/InputStreamSrc.java b/engine/src/jheora/com/jme3/newvideo/InputStreamSrc.java deleted file mode 100644 index 93a3499de..000000000 --- a/engine/src/jheora/com/jme3/newvideo/InputStreamSrc.java +++ /dev/null @@ -1,205 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.newvideo; - -import com.fluendo.jst.Buffer; -import com.fluendo.jst.Caps; -import com.fluendo.jst.Element; -import com.fluendo.jst.ElementFactory; -import com.fluendo.jst.Event; -import com.fluendo.jst.Message; -import com.fluendo.jst.Pad; -import com.fluendo.utils.Debug; -import java.io.IOException; -import java.io.InputStream; - -public class InputStreamSrc extends Element { - private InputStream input; - private long contentLength; - private long offset = 0; - private long offsetLastMessage = 0; - private long skipBytes = 0; - private String mime; - private Caps outCaps; - private boolean discont = true; - private static final int DEFAULT_READSIZE = 4096; - private int readSize = DEFAULT_READSIZE; - - private Pad srcpad = new Pad(Pad.SRC, "src") { - @Override - protected void taskFunc() { - int ret; - int toRead; - long left; - - // Skip to the target offset if required - if (skipBytes > 0) { - Debug.info("Skipping " + skipBytes + " input bytes"); - try { - offset += input.skip(skipBytes); - } catch (IOException e) { - Debug.error("input.skip error: " + e); - postMessage(Message.newError(this, "File read error")); - return; - } - skipBytes = 0; - } - - // Calculate the read size - if (contentLength != -1) { - left = contentLength - offset; - } else { - left = -1; - } - - if (left != -1 && left < readSize) { - toRead = (int) left; - } else { - toRead = readSize; - } - - // Perform the read - Buffer data = Buffer.create(); - data.ensureSize(toRead); - data.offset = 0; - try { - if (toRead > 0) { - data.length = input.read(data.data, 0, toRead); - } else { - data.length = -1; - } - } catch (Exception e) { - e.printStackTrace(); - data.length = 0; - } - if (data.length <= 0) { - /* EOS */ - - postMessage(Message.newBytePosition(this, offset)); - offsetLastMessage = offset; - - try { - input.close(); - } catch (Exception e) { - e.printStackTrace(); - } - data.free(); - Debug.log(Debug.INFO, this + " reached EOS"); - pushEvent(Event.newEOS()); - postMessage(Message.newStreamStatus(this, false, Pad.UNEXPECTED, "reached EOS")); - pauseTask(); - return; - } - - offset += data.length; - if (offsetLastMessage > offset) { - offsetLastMessage = 0; - } - if (offset - offsetLastMessage > contentLength / 100) { - postMessage(Message.newBytePosition(this, offset)); - offsetLastMessage = offset; - } - - // Negotiate capabilities - if (srcpad.getCaps() == null) { - String typeMime; - - typeMime = ElementFactory.typeFindMime(data.data, data.offset, data.length); - Debug.log(Debug.INFO, "using typefind contentType: " + typeMime); - mime = typeMime; - - outCaps = new Caps(mime); - srcpad.setCaps(outCaps); - } - - data.caps = outCaps; - data.setFlag(com.fluendo.jst.Buffer.FLAG_DISCONT, discont); - discont = false; - - // Push the data to the peer - if ((ret = push(data)) != OK) { - if (isFlowFatal(ret) || ret == Pad.NOT_LINKED) { - postMessage(Message.newError(this, "error: " + getFlowName(ret))); - pushEvent(Event.newEOS()); - } - postMessage(Message.newStreamStatus(this, false, ret, "reason: " + getFlowName(ret))); - pauseTask(); - } - } - - @Override - protected boolean activateFunc(int mode) { - switch (mode) { - case MODE_NONE: - postMessage(Message.newStreamStatus(this, false, Pad.WRONG_STATE, "stopping")); - input = null; - outCaps = null; - mime = null; - return stopTask(); - case MODE_PUSH: - contentLength = -1; - // until we can determine content length from IS? -// if (contentLength != -1) { -// postMessage(Message.newDuration(this, Format.BYTES, contentLength)); -// } - if (input == null) - return false; - - postMessage(Message.newStreamStatus(this, true, Pad.OK, "activating")); - return startTask("JmeVideo-Src-Stream-" + Debug.genId()); - default: - return false; - } - } - }; - - public String getFactoryName() { - return "inputstreamsrc"; - } - - public InputStreamSrc(String name) { - super(name); - addPad(srcpad); - } - - @Override - public synchronized boolean setProperty(String name, java.lang.Object value) { - if (name.equals("inputstream")){ - input = (InputStream) value; - }else if (name.equals("readSize")) { - readSize = Integer.parseInt((String) value); - } else { - return false; - } - return true; - } -} diff --git a/engine/src/jheora/com/jme3/newvideo/JmeVideoPipeline.java b/engine/src/jheora/com/jme3/newvideo/JmeVideoPipeline.java deleted file mode 100644 index 7cb76e451..000000000 --- a/engine/src/jheora/com/jme3/newvideo/JmeVideoPipeline.java +++ /dev/null @@ -1,412 +0,0 @@ -package com.jme3.newvideo; - -import com.fluendo.jst.Caps; -import com.fluendo.jst.CapsListener; -import com.fluendo.jst.Clock; -import com.fluendo.jst.Element; -import com.fluendo.jst.ElementFactory; -import com.fluendo.jst.Format; -import com.fluendo.jst.Message; -import com.fluendo.jst.Pad; -import com.fluendo.jst.PadListener; -import com.fluendo.jst.Pipeline; -import com.fluendo.jst.Query; -import com.fluendo.utils.Debug; -import com.jme3.app.Application; -import com.jme3.texture.Texture2D; -import java.io.InputStream; - -public class JmeVideoPipeline extends Pipeline implements PadListener, CapsListener { - - private boolean enableAudio; - private boolean enableVideo; - - private int bufferSize = -1; - private int bufferLow = -1; - private int bufferHigh = -1; - - private Element inputstreamsrc; - private Element buffer; - private Element demux; - private Element videodec; - private Element audiodec; - private Element videosink; - private Element audiosink; - private Element yuv2tex; - private Element v_queue, v_queue2, a_queue = null; - private Pad asinkpad, ovsinkpad; - private Pad apad, vpad; - public boolean usingJavaX = false; - - public InputStream inputStream; - private Application app; - - public JmeVideoPipeline(Application app) { - super("pipeline"); - - enableAudio = true; - enableVideo = true; - this.app = app; - } - - private void noSuchElement(String elemName) { - postMessage(Message.newError(this, "no such element: " + elemName)); - } - - public void padAdded(Pad pad) { - Caps caps = pad.getCaps(); - - if (caps == null) { - Debug.log(Debug.INFO, "pad added without caps: " + pad); - return; - } - - Debug.log(Debug.INFO, "pad added " + pad); - String mime = caps.getMime(); - - if (mime.equals("audio/x-vorbis")) { - if (true) - return; - - if (a_queue != null) { - Debug.log(Debug.INFO, "More than one audio stream detected, ignoring all except first one"); - return; - } - - a_queue = ElementFactory.makeByName("queue", "a_queue"); - if (a_queue == null) { - noSuchElement("queue"); - return; - } - - // if we already have a video queue: We want smooth audio playback - // over frame completeness, so make the video queue leaky - if (v_queue != null) { - v_queue.setProperty("leaky", "2"); // 2 == Queue.LEAK_DOWNSTREAM - } - - audiodec = ElementFactory.makeByName("vorbisdec", "audiodec"); - if (audiodec == null) { - noSuchElement("vorbisdec"); - return; - } - - a_queue.setProperty("maxBuffers", "100"); - - add(a_queue); - add(audiodec); - - pad.link(a_queue.getPad("sink")); - a_queue.getPad("src").link(audiodec.getPad("sink")); - if (!audiodec.getPad("src").link(asinkpad)) { - postMessage(Message.newError(this, "audiosink already linked")); - return; - } - - apad = pad; - - audiodec.setState(PAUSE); - a_queue.setState(PAUSE); - } else if (enableVideo && mime.equals("video/x-theora")) { - // Constructs a chain of the form - // oggdemux -> v_queue -> theoradec -> v_queue2 -> videosink - v_queue = ElementFactory.makeByName("queue", "v_queue"); - v_queue2 = ElementFactory.makeByName("queue", "v_queue2"); - yuv2tex = new YUV2Texture(app); - if (v_queue == null) { - noSuchElement("queue"); - return; - } - - videodec = ElementFactory.makeByName("theoradec", "videodec"); - if (videodec == null) { - noSuchElement("theoradec"); - return; - } - add(videodec); - - // if we have audio: We want smooth audio playback - // over frame completeness - if (a_queue != null) { - v_queue.setProperty("leaky", "2"); // 2 == Queue.LEAK_DOWNSTREAM - } - - v_queue.setProperty("maxBuffers", "5"); - v_queue2.setProperty("maxBuffers", "5"); - v_queue2.setProperty("isBuffer", Boolean.FALSE); - - add(v_queue); - add(v_queue2); - add(yuv2tex); - - pad.link(v_queue.getPad("sink")); - v_queue.getPad("src").link(videodec.getPad("sink")); - - // WITH YUV2TEX - videodec.getPad("src").link(yuv2tex.getPad("sink")); - yuv2tex.getPad("src").link(v_queue2.getPad("sink")); - v_queue2.getPad("src").link(videosink.getPad("sink")); - - // WITHOUT YUV2TEX -// videodec.getPad("src").link(v_queue2.getPad("sink")); - - if (!v_queue2.getPad("src").link(ovsinkpad)) { - postMessage(Message.newError(this, "videosink already linked")); - return; - } - - vpad = pad; - - videodec.setState(PAUSE); - v_queue.setState(PAUSE); - v_queue2.setState(PAUSE); - yuv2tex.setState(PAUSE); - } - } - - public void padRemoved(Pad pad) { - pad.unlink(); - if (pad == vpad) { - Debug.log(Debug.INFO, "video pad removed " + pad); - ovsinkpad.unlink(); - vpad = null; - } else if (pad == apad) { - Debug.log(Debug.INFO, "audio pad removed " + pad); - asinkpad.unlink(); - apad = null; - } - } - - @Override - public void noMorePads() { - boolean changed = false; - - Debug.log(Debug.INFO, "all streams detected"); - - if (apad == null && enableAudio) { - Debug.log(Debug.INFO, "file has no audio, remove audiosink"); - audiosink.setState(STOP); - remove(audiosink); - audiosink = null; - changed = true; - if (videosink != null) { -// videosink.setProperty("max-lateness", Long.toString(Long.MAX_VALUE)); - videosink.setProperty("max-lateness", ""+Clock.SECOND); - } - } - if (vpad == null && enableVideo) { - Debug.log(Debug.INFO, "file has no video, remove videosink"); - videosink.setState(STOP); - - remove(videosink); - videosink = null; - changed = true; - } - if (changed) { - scheduleReCalcState(); - } - } - - public Texture2D getTexture(){ - if (videosink != null){ - return (Texture2D) videosink.getProperty("texture"); - } - return null; - } - - public boolean buildOggPipeline() { - demux = ElementFactory.makeByName("oggdemux", "OggFileDemuxer"); - if (demux == null) { - noSuchElement("oggdemux"); - return false; - } - - buffer = ElementFactory.makeByName("queue", "BufferQueue"); - if (buffer == null) { - demux = null; - noSuchElement("queue"); - return false; - } - - buffer.setProperty("isBuffer", Boolean.TRUE); - if (bufferSize != -1) { - buffer.setProperty("maxSize", new Integer(bufferSize * 1024)); - } - if (bufferLow != -1) { - buffer.setProperty("lowPercent", new Integer(bufferLow)); - } - if (bufferHigh != -1) { - buffer.setProperty("highPercent", new Integer(bufferHigh)); - } - - add(demux); - add(buffer); - - // Link input stream source with bufferqueue's sink - inputstreamsrc.getPad("src").link(buffer.getPad("sink")); - - // Link bufferqueue's source with the oggdemuxer's sink - buffer.getPad("src").link(demux.getPad("sink")); - - // Receive pad events from OggDemuxer - demux.addPadListener(this); - - buffer.setState(PAUSE); - demux.setState(PAUSE); - - return true; - } - - public void capsChanged(Caps caps) { - String mime = caps.getMime(); - if (mime.equals("application/ogg")) { - buildOggPipeline(); - } else { - postMessage(Message.newError(this, "Unknown MIME type: " + mime)); - } - } - - private boolean openFile() { - inputstreamsrc = new InputStreamSrc("InputStreamSource"); - inputstreamsrc.setProperty("inputstream", inputStream); - add(inputstreamsrc); - - // Receive caps from InputStream source - inputstreamsrc.getPad("src").addCapsListener(this); - - audiosink = newAudioSink(); - if (audiosink == null) { - enableAudio = false; - } else { - asinkpad = audiosink.getPad("sink"); - add(audiosink); - } - - if (enableVideo) { - videosink = new TextureVideoSink("TextureVideoSink"); - videosink.setProperty("max-lateness", ""+Clock.SECOND); -// Long.toString(enableAudio ? Clock.MSECOND * 20 : Long.MAX_VALUE)); - add(videosink); - - ovsinkpad = videosink.getPad("sink"); - } - if (audiosink == null && videosink == null) { - postMessage(Message.newError(this, "Both audio and video are disabled, can't play anything")); - return false; - } - - return true; - } - - protected Element newAudioSink() { - com.fluendo.plugin.AudioSink s; - try { - s = (com.fluendo.plugin.AudioSink) ElementFactory.makeByName("audiosinkj2", "audiosink"); - Debug.log(Debug.INFO, "using high quality javax.sound backend"); - } catch (Throwable e) { - s = null; - noSuchElement ("audiosink"); - return null; - } - if (!s.test()) { - return null; - } else { - return s; - } - } - - private boolean cleanup() { - Debug.log(Debug.INFO, "cleanup"); - if (inputstreamsrc != null) { - remove(inputstreamsrc); - inputstreamsrc = null; - } - if (audiosink != null) { - remove(audiosink); - audiosink = null; - asinkpad = null; - } - if (videosink != null) { - remove(videosink); - videosink = null; - } - if (buffer != null) { - remove(buffer); - buffer = null; - } - if (demux != null) { - demux.removePadListener(this); - remove(demux); - demux = null; - } - if (v_queue != null) { - remove(v_queue); - v_queue = null; - } - if (v_queue2 != null) { - remove(v_queue2); - v_queue2 = null; - } - if (yuv2tex != null){ - remove(yuv2tex); - yuv2tex = null; - } - if (a_queue != null) { - remove(a_queue); - a_queue = null; - } - if (videodec != null) { - remove(videodec); - videodec = null; - } - if (audiodec != null) { - remove(audiodec); - audiodec = null; - } - - return true; - } - - @Override - protected int changeState(int transition) { - int res; - switch (transition) { - case STOP_PAUSE: - if (!openFile()) { - return FAILURE; - } - break; - default: - break; - } - - res = super.changeState(transition); - - switch (transition) { - case PAUSE_STOP: - cleanup(); - break; - default: - break; - } - - return res; - } - - @Override - protected boolean doSendEvent(com.fluendo.jst.Event event) { - return false; // no seek support - } - - protected long getPosition() { - Query q; - long result = 0; - - q = Query.newPosition(Format.TIME); - if (super.query(q)){ - result = q.parsePositionValue(); - } - return result; - } - -} diff --git a/engine/src/jheora/com/jme3/newvideo/TestNewVideo.java b/engine/src/jheora/com/jme3/newvideo/TestNewVideo.java deleted file mode 100644 index b9edbc9a6..000000000 --- a/engine/src/jheora/com/jme3/newvideo/TestNewVideo.java +++ /dev/null @@ -1,144 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package com.jme3.newvideo; - -import com.fluendo.jst.BusHandler; -import com.fluendo.jst.Message; -import com.fluendo.jst.Pipeline; -import com.fluendo.utils.Debug; -import com.jme3.app.SimpleApplication; -import com.jme3.system.AppSettings; -import com.jme3.texture.Texture2D; -import com.jme3.ui.Picture; -import java.io.FileInputStream; -import java.io.FileNotFoundException; - -public class TestNewVideo extends SimpleApplication implements BusHandler { - - private Picture picture; - private JmeVideoPipeline p; - private int frame = 0; - - public static void main(String[] args){ - TestNewVideo app = new TestNewVideo(); - AppSettings settings = new AppSettings(true); -// settings.setFrameRate(24); - app.setSettings(settings); - app.start(); - } - - private void createVideo(){ - Debug.level = Debug.INFO; - p = new JmeVideoPipeline(this); - p.getBus().addHandler(this); - try { - p.inputStream = new FileInputStream("E:\\VideoTest.ogv"); - } catch (FileNotFoundException ex) { - ex.printStackTrace(); - } - p.setState(Pipeline.PLAY); - } - - @Override - public void simpleUpdate(float tpf){ -// if (p == null) -// return; - - Texture2D tex = p.getTexture(); - if (tex == null) - return; - - if (picture != null){ - synchronized (tex){ - try { - tex.wait(); - } catch (InterruptedException ex) { - // ignore - } - tex.getImage().setUpdateNeeded(); - renderer.setTexture(0, tex); - ((VideoTexture)tex).free(); - System.out.println("PLAY : " + (frame++)); - } - return; - } - - picture = new Picture("VideoPicture", true); - picture.setPosition(0, 0); - picture.setWidth(settings.getWidth()); - picture.setHeight(settings.getHeight()); - picture.setTexture(assetManager, tex, false); - rootNode.attachChild(picture); - } - - public void simpleInitApp() { - // start video playback - createVideo(); - } - - @Override - public void destroy(){ - if (p != null){ - p.setState(Pipeline.STOP); - p.shutDown(); - } - super.destroy(); - } - - public void handleMessage(Message msg) { - switch (msg.getType()){ - case Message.EOS: - Debug.log(Debug.INFO, "EOS: playback ended"); - /* - enqueue(new Callable(){ - public Void call() throws Exception { - rootNode.detachChild(picture); - p.setState(Element.STOP); - p.shutDown(); - p = null; - return null; - } - }); - - Texture2D tex = p.getTexture(); - synchronized (tex){ - tex.notifyAll(); - } - */ - break; - case Message.STREAM_STATUS: - Debug.info(msg.toString()); - break; - } - } -} diff --git a/engine/src/jheora/com/jme3/newvideo/TextureVideoSink.java b/engine/src/jheora/com/jme3/newvideo/TextureVideoSink.java deleted file mode 100644 index 04cbf33e7..000000000 --- a/engine/src/jheora/com/jme3/newvideo/TextureVideoSink.java +++ /dev/null @@ -1,98 +0,0 @@ -package com.jme3.newvideo; - -import com.fluendo.jst.Buffer; -import com.fluendo.jst.Caps; -import com.fluendo.jst.Pad; -import com.fluendo.jst.Sink; -import com.fluendo.utils.Debug; -import com.jme3.texture.Image; -import com.jme3.texture.Texture2D; - -public class TextureVideoSink extends Sink { - - private Texture2D outTex; - private int width, height; - - private int frame = 0; - - public TextureVideoSink(String name) { - super(); - setName(name); - } - - @Override - protected boolean setCapsFunc(Caps caps) { - String mime = caps.getMime(); - if (!mime.equals("video/raw")) { - return false; - } - - width = caps.getFieldInt("width", -1); - height = caps.getFieldInt("height", -1); - - if (width == -1 || height == -1) { - return false; - } - -// aspectX = caps.getFieldInt("aspect_x", 1); -// aspectY = caps.getFieldInt("aspect_y", 1); -// -// if (!ignoreAspect) { -// Debug.log(Debug.DEBUG, this + " dimension: " + width + "x" + height + ", aspect: " + aspectX + "/" + aspectY); -// -// if (aspectY > aspectX) { -// height = height * aspectY / aspectX; -// } else { -// width = width * aspectX / aspectY; -// } -// Debug.log(Debug.DEBUG, this + " scaled source: " + width + "x" + height); -// } - - outTex = new Texture2D(); - - return true; - } - - @Override - protected int preroll(Buffer buf) { - return render(buf); - } - - @Override - protected int render(Buffer buf) { - if (buf.duplicate) - return Pad.OK; - - Debug.log(Debug.DEBUG, this.getName() + " starting buffer " + buf); - if (buf.object instanceof Image){ - synchronized (outTex){ - outTex.setImage( (Image) buf.object ); - outTex.notifyAll(); - System.out.println("PUSH : " + (frame++)); - } - } else { - System.out.println(this + ": unknown buffer received " + buf.object); - return Pad.ERROR; - } - - if (outTex == null) { - return Pad.NOT_NEGOTIATED; - } - - Debug.log(Debug.DEBUG, this.getName() + " done with buffer " + buf); - return Pad.OK; - } - - public String getFactoryName() { - return "texturevideosink"; - } - - @Override - public java.lang.Object getProperty(String name) { - if (name.equals("texture")) { - return outTex; - } else { - return super.getProperty(name); - } - } -} diff --git a/engine/src/jheora/com/jme3/newvideo/VideoTexture.java b/engine/src/jheora/com/jme3/newvideo/VideoTexture.java deleted file mode 100644 index 4581bfc1b..000000000 --- a/engine/src/jheora/com/jme3/newvideo/VideoTexture.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.jme3.newvideo; - -import com.jme3.texture.Image; -import com.jme3.texture.Image.Format; -import com.jme3.texture.Texture2D; -import com.jme3.util.BufferUtils; -import java.util.concurrent.BlockingQueue; - -public final class VideoTexture extends Texture2D { - - private BlockingQueue ownerQueue; - - public VideoTexture(int width, int height, Format format, BlockingQueue ownerQueue){ - super(new Image(format, width, height, - BufferUtils.createByteBuffer(width*height*format.getBitsPerPixel()/8))); - this.ownerQueue = ownerQueue; - } - - public void free(){ - try { - ownerQueue.put(this); - } catch (InterruptedException ex) { - ex.printStackTrace(); - } - } - -} diff --git a/engine/src/jheora/com/jme3/newvideo/YUV2Texture.java b/engine/src/jheora/com/jme3/newvideo/YUV2Texture.java deleted file mode 100644 index 4557d973d..000000000 --- a/engine/src/jheora/com/jme3/newvideo/YUV2Texture.java +++ /dev/null @@ -1,109 +0,0 @@ -package com.jme3.newvideo; - -import com.fluendo.jheora.YUVBuffer; -import com.fluendo.jst.Buffer; -import com.fluendo.jst.Element; -import com.fluendo.jst.Event; -import com.fluendo.jst.Pad; -import com.jme3.app.Application; -import com.jme3.texture.Image.Format; -import java.awt.image.FilteredImageSource; -import java.lang.reflect.Field; -import java.nio.ByteBuffer; -import java.util.concurrent.ArrayBlockingQueue; -import java.util.concurrent.BlockingQueue; -import java.util.concurrent.Callable; - -public class YUV2Texture extends Element { - - private YUVConv conv = new YUVConv(); - private int width, height; - private BlockingQueue frameQueue; - private Application app; - - private int frame = 0; - - private YUVBuffer getYUVBuffer(Buffer buf){ - if (buf.object instanceof FilteredImageSource) { - FilteredImageSource imgSrc = (FilteredImageSource) buf.object; - try { - Field srcField = imgSrc.getClass().getDeclaredField("src"); - srcField.setAccessible(true); - return (YUVBuffer) srcField.get(imgSrc); - } catch (Exception e){ - throw new RuntimeException(e); - } - }else if (buf.object instanceof YUVBuffer){ - return (YUVBuffer) buf.object; - }else{ - throw new RuntimeException("Expected buffer"); - } - } - - private VideoTexture decode(YUVBuffer yuv){ - if (frameQueue == null){ - frameQueue = new ArrayBlockingQueue(20); - for (int i = 0; i < 20; i++){ - VideoTexture img = new VideoTexture(yuv.y_width, yuv.y_height, Format.RGBA8, frameQueue); - frameQueue.add(img); - } - } - - try { - final VideoTexture videoTex = frameQueue.take(); - ByteBuffer outBuf = videoTex.getImage().getData(0); - conv.convert(yuv, 0, 0, yuv.y_width, yuv.y_height); - outBuf.clear(); - outBuf.asIntBuffer().put(conv.getRGBData()).clear(); - - app.enqueue( new Callable() { - public Void call() throws Exception { - videoTex.getImage().setUpdateNeeded(); - app.getRenderer().setTexture(0, videoTex); - return null; - } - }); - - return videoTex; - } catch (InterruptedException ex) { - } - - return null; - } - - private Pad srcPad = new Pad(Pad.SRC, "src") { - @Override - protected boolean eventFunc(Event event) { - return sinkPad.pushEvent(event); - } - }; - - private Pad sinkPad = new Pad(Pad.SINK, "sink") { - @Override - protected boolean eventFunc(Event event) { - return srcPad.pushEvent(event); - } - - @Override - protected int chainFunc (Buffer buf) { - YUVBuffer yuv = getYUVBuffer(buf); - buf.object = decode(yuv); - System.out.println("DECODE: " + (frame++)); - return srcPad.push(buf); - - } - }; - - public YUV2Texture(Application app) { - super("YUV2Texture"); - addPad(srcPad); - addPad(sinkPad); - this.app = app; - } - - @Override - public String getFactoryName() { - return "yuv2tex"; - } - -} diff --git a/engine/src/jheora/com/jme3/newvideo/YUVConv.java b/engine/src/jheora/com/jme3/newvideo/YUVConv.java deleted file mode 100644 index 637ffd903..000000000 --- a/engine/src/jheora/com/jme3/newvideo/YUVConv.java +++ /dev/null @@ -1,143 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package com.jme3.newvideo; - -import com.fluendo.jheora.YUVBuffer; - -@Deprecated -public final class YUVConv { - - private int[] pixels; - - private static final int VAL_RANGE = 256; - private static final int SHIFT = 16; - - private static final int CR_FAC = (int) (1.402 * (1 << SHIFT)); - private static final int CB_FAC = (int) (1.772 * (1 << SHIFT)); - private static final int CR_DIFF_FAC = (int) (0.71414 * (1 << SHIFT)); - private static final int CB_DIFF_FAC = (int) (0.34414 * (1 << SHIFT)); - - private static int[] r_tab = new int[VAL_RANGE * 3]; - private static int[] g_tab = new int[VAL_RANGE * 3]; - private static int[] b_tab = new int[VAL_RANGE * 3]; - - static { - setupRgbYuvAccelerators(); - } - - private static final short clamp255(int val) { - val -= 255; - val = -(255 + ((val >> (31)) & val)); - return (short) -((val >> 31) & val); - } - - private static void setupRgbYuvAccelerators() { - for (int i = 0; i < VAL_RANGE * 3; i++) { - r_tab[i] = clamp255(i - VAL_RANGE); - g_tab[i] = clamp255(i - VAL_RANGE) << 8; - b_tab[i] = clamp255(i - VAL_RANGE) << 16; - } - } - - public YUVConv(){ - } - - public int[] getRGBData(){ - return pixels; - } - - public void convert(YUVBuffer yuv, int xOff, int yOff, int width, int height) { - if (pixels == null){ - pixels = new int[width*height]; - } - // Set up starting values for YUV pointers - int YPtr = yuv.y_offset + xOff + yOff * (yuv.y_stride); - int YPtr2 = YPtr + yuv.y_stride; - int UPtr = yuv.u_offset + xOff/2 + (yOff/2)*(yuv.uv_stride); - int VPtr = yuv.v_offset + xOff/2 + (yOff/2)*(yuv.uv_stride); - int RGBPtr = 0; - int RGBPtr2 = width; - int width2 = width / 2; - int height2 = height / 2; - - // Set the line step for the Y and UV planes and YPtr2 - int YStep = yuv.y_stride * 2 - (width2) * 2; - int UVStep = yuv.uv_stride - (width2); - int RGBStep = width; - - for (int i = 0; i < height2; i++) { - for (int j = 0; j < width2; j++) { - // groups of four pixels - int UFactor = yuv.data[UPtr++] - 128; - int VFactor = yuv.data[VPtr++] - 128; - int GFactor = UFactor * CR_DIFF_FAC + VFactor * CB_DIFF_FAC - (VAL_RANGE<>SHIFT] | - b_tab[(YVal + UFactor)>>SHIFT] | - g_tab[(YVal - GFactor)>>SHIFT]; - - YVal = yuv.data[YPtr+1] << SHIFT; - pixels[RGBPtr+1] = r_tab[(YVal + VFactor)>>SHIFT] | - b_tab[(YVal + UFactor)>>SHIFT] | - g_tab[(YVal - GFactor)>>SHIFT]; - - YVal = yuv.data[YPtr2] << SHIFT; - pixels[RGBPtr2] = r_tab[(YVal + VFactor)>>SHIFT] | - b_tab[(YVal + UFactor)>>SHIFT] | - g_tab[(YVal - GFactor)>>SHIFT]; - - YVal = yuv.data[YPtr2+1] << SHIFT; - pixels[RGBPtr2+1] = r_tab[(YVal + VFactor)>>SHIFT] | - b_tab[(YVal + UFactor)>>SHIFT] | - g_tab[(YVal - GFactor)>>SHIFT]; - - YPtr += 2; - YPtr2 += 2; - RGBPtr += 2; - RGBPtr2 += 2; - } - - // Increment the various pointers - YPtr += YStep; - YPtr2 += YStep; - UPtr += UVStep; - VPtr += UVStep; - RGBPtr += RGBStep; - RGBPtr2 += RGBStep; - } - } -} diff --git a/engine/test-data/Textures/Terrain/splat/alpha1.png b/engine/test-data/Textures/Terrain/splat/alpha1.png deleted file mode 100644 index bb7742fe9..000000000 Binary files a/engine/test-data/Textures/Terrain/splat/alpha1.png and /dev/null differ diff --git a/engine/test-data/Textures/Terrain/splat/alpha2.png b/engine/test-data/Textures/Terrain/splat/alpha2.png deleted file mode 100644 index 28e48c64d..000000000 Binary files a/engine/test-data/Textures/Terrain/splat/alpha2.png and /dev/null differ diff --git a/engine/test/com/jme/animation/CompactQuaternionArrayTest.java b/engine/test/com/jme/animation/CompactQuaternionArrayTest.java deleted file mode 100644 index 2e328be31..000000000 --- a/engine/test/com/jme/animation/CompactQuaternionArrayTest.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.jme.animation; - -import com.jme3.animation.CompactQuaternionArray; -import com.jme3.math.Quaternion; -import java.util.Arrays; -import static org.junit.Assert.assertTrue; -import org.junit.Before; -import org.junit.Test; - -public class CompactQuaternionArrayTest { - - @Before - public void setUp() throws Exception { - } - - @Test - public void testCompactQuaternionArrayQuaternionArray() { - Quaternion[] objArray = new Quaternion[] { - new Quaternion(1, 0, 1, 1), - new Quaternion(1, 1, 1, 0), - new Quaternion(0, 1, 1, 0), - new Quaternion(1, 1, 1, 0), - new Quaternion(1, 0, 1, 1), - }; - CompactQuaternionArray compact = new CompactQuaternionArray(); - compact.add(objArray); - assertTrue(Arrays.equals(compact.getIndex(objArray), new int[] {0, 1, 2, 1, 0})); - assertTrue(Arrays.equals(compact.getSerializedData(), new float[] {1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0})); - } - - @Test - public void testCompactQuaternionArrayDoubleArrayIntArray() { - int[] indexArray = new int[] {0, 1, 2, 1, 0}; - float[] dataArray = new float[] {1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0}; - Quaternion[] objArray = new Quaternion[] { - new Quaternion(1, 0, 1, 1), - new Quaternion(1, 1, 1, 0), - new Quaternion(0, 1, 1, 0), - new Quaternion(1, 1, 1, 0), - new Quaternion(1, 0, 1, 1), - }; - CompactQuaternionArray compact = new CompactQuaternionArray(dataArray, indexArray); - assertTrue(Arrays.deepEquals(compact.toObjectArray(), objArray)); - } -} diff --git a/engine/test/com/jme/animation/CompactVector3ArrayTest.java b/engine/test/com/jme/animation/CompactVector3ArrayTest.java deleted file mode 100644 index 46280df36..000000000 --- a/engine/test/com/jme/animation/CompactVector3ArrayTest.java +++ /dev/null @@ -1,156 +0,0 @@ -package com.jme.animation; - -import com.jme3.animation.CompactVector3Array; -import com.jme3.export.binary.BinaryExporter; -import com.jme3.export.binary.BinaryImporter; -import com.jme3.math.Vector3f; -import java.io.File; -import java.io.IOException; -import java.util.Arrays; -import static org.junit.Assert.*; -import org.junit.Before; -import org.junit.Test; - -public class CompactVector3ArrayTest { - private final Vector3f[] objArray1 = new Vector3f[] { - new Vector3f(1, 0, 1), // 0 - new Vector3f(1, 1, 1), // 1 - new Vector3f(0, 1, 1), // 2 - new Vector3f(1, 1, 1), // 1 - new Vector3f(1, 0, 1), // 0 - }; - private final Vector3f[] objArray2 = new Vector3f[] { - new Vector3f(1, 0, 2), // 3 - new Vector3f(1, 1, 1), // 1 - new Vector3f(0, 1, 1), // 2 - null, // -1 - new Vector3f(1, 0, 2), // 3 - }; - private static final int[] index1 = new int[] {0, 1, 2, 1, 0}; - private static final int[] index2 = new int[] {3, 1, 2, -1, 3}; - private int[] index12; - private static final float[] serialData = new float[] {1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 2}; - - CompactVector3Array compact; - - @Before - public void setUp() throws Exception { - compact = new CompactVector3Array(); - index12 = Arrays.copyOf(index1, index1.length+index2.length); - System.arraycopy(index2, 0, index12, index1.length, index2.length); - } - - @Test - public void testCompactVector3ArrayAdd() { - compact.add(objArray1); - compact.add(objArray2); - _testAdd(); - - try { - compact.freeze(); - compact.add(objArray1); - fail(); - } catch (Exception e) { - } - } - - private void _testAdd() { - assertTrue(Arrays.equals(compact.getIndex(objArray1), index1)); - assertTrue(Arrays.equals(compact.getIndex(objArray2), index2)); - assertTrue(Arrays.equals(compact.getSerializedData(), serialData)); - } - - @Test - public void testCompactVector3ArrayFloatArrayIntArray() { - int[] indexArray = index1; - float[] dataArray = new float[] {1, 0, 1, 1, 1, 1, 0, 1, 1}; - Vector3f[] objArray = new Vector3f[] { - new Vector3f(1, 0, 1), - new Vector3f(1, 1, 1), - new Vector3f(0, 1, 1), - new Vector3f(1, 1, 1), - new Vector3f(1, 0, 1), - }; - CompactVector3Array compact = new CompactVector3Array(dataArray, indexArray); - assertTrue(Arrays.deepEquals(compact.toObjectArray(), objArray)); - } - - @Test - public void testGetTotalObjectSize() { - compact.add(objArray1); - assertTrue(compact.getTotalObjectSize() == 5); - assertTrue(compact.getCompactObjectSize() == 3); - compact.add(objArray2); - _testSize(); - } - - private void _testSize() { - assertTrue(compact.getTotalObjectSize() == 10); - assertTrue(compact.getCompactObjectSize() == 4); - } - - @Test - public void testGet() { - compact.add(objArray1); - Vector3f v1 = compact.get(1, new Vector3f()); - assertEquals(new Vector3f(1, 1, 1), v1); - compact.add(objArray2); - _testGet(); - } - - private void _testGet() { - Vector3f v2 = compact.get(1, new Vector3f()); - assertEquals(new Vector3f(1, 1, 1), v2); - Vector3f v3 = compact.get(5, new Vector3f()); - assertEquals(new Vector3f(1, 0, 2), v3); - } - - @Test - public void testGetCompactIndex() { - compact.add(objArray1); - compact.add(objArray2); - _testCompactIndex(); - } - - private void _testCompactIndex() { - for (int i = 0; i < index12.length; i++) { - assertEquals(index12[i], compact.getCompactIndex(i)); - } - } - - @Test - public void testGetIndex() { - compact.add(objArray1); - compact.add(objArray2); - _testGetIndex(); - } - - private void _testGetIndex() { - Vector3f[] reverse = new Vector3f[objArray1.length]; - int[] reverseIndex = new int[objArray1.length]; - for (int i = 0; i < objArray1.length; i++) { - reverse[i] = objArray1[objArray1.length-1-i]; - reverseIndex[i] = index1[objArray1.length-1-i]; - } - - int[] index = compact.getIndex(reverse); - for (int i = 0; i < index.length; i++) { - assertEquals(reverseIndex[i], index[i]); - } - } - - @Test - public void testRead() throws IOException { - File file = File.createTempFile("compactArray", "test"); - BinaryImporter importer = new BinaryImporter(); - BinaryExporter exporter = new BinaryExporter(); - compact.add(objArray1); - compact.add(objArray2); - exporter.save(compact, file); - compact = (CompactVector3Array) importer.load(file); - _testSize(); - _testCompactIndex(); - _testGet(); - file.delete(); - } -} diff --git a/engine/test/com/jme3/font/ColorTagsTest.java b/engine/test/com/jme3/font/ColorTagsTest.java deleted file mode 100644 index 084a5256d..000000000 --- a/engine/test/com/jme3/font/ColorTagsTest.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.jme3.font; - -import org.junit.After; -import static org.junit.Assert.*; -import org.junit.Before; -import org.junit.Test; - -public class ColorTagsTest { - - @Before - public void setUp() throws Exception { - } - - @After - public void tearDown() throws Exception { - } - - @Test - public void testGetPureText() { - String str1 = "abcde test"; - ColorTags tag1 = new ColorTags(str1); - assertEquals(tag1.getPlainText(), str1); - - String str2 = "abcde\\#1A3d#test\\#1A3#"; - ColorTags tag2 = new ColorTags(str2); - assertEquals("abcdetest", tag2.getPlainText()); - } - - @Test - public void testGetTags() { - String str1 = "abcde test"; - ColorTags tag1 = new ColorTags(str1); - assertTrue(tag1.getTags().isEmpty()); - - String str2 = "abcde\\#1A3d#test\\#abef1211#gogo\\#abef12#yeye\\#ab1#hey"; - ColorTags tag2 = new ColorTags(str2); - assertEquals(4, tag2.getTags().size()); - assertEquals("abcdetestgogoyeyehey", tag2.getPlainText()); - assertEquals(5, tag2.getTags().get(0).start); - assertEquals(9, tag2.getTags().get(1).start); - assertEquals(13, tag2.getTags().get(2).start); - assertEquals(17, tag2.getTags().get(3).start); - } - -} diff --git a/engine/test/com/jme3/math/TrigonometryTest.java b/engine/test/com/jme3/math/TrigonometryTest.java deleted file mode 100644 index c9df4878f..000000000 --- a/engine/test/com/jme3/math/TrigonometryTest.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.jme3.math; - -import static org.junit.Assert.assertEquals; -import org.junit.Test; - -public class TrigonometryTest { - - @Test - public void testVector2(){ - Vector2f original = new Vector2f(1, 2); - Vector2f recreated = new Vector2f(); - - float angle = original.getAngle(); - float length = original.length(); - - recreated.set( FastMath.cos(angle), FastMath.sin(angle) ); - recreated.multLocal(length); - - assertEquals( original.getX(), recreated.getX(), 0.000001 ); - assertEquals( original.getY(), recreated.getY(), 0.000001 ); - } - -} diff --git a/engine/test/com/jme3/scene/GeometryTest.java b/engine/test/com/jme3/scene/GeometryTest.java deleted file mode 100644 index bf00e8f5b..000000000 --- a/engine/test/com/jme3/scene/GeometryTest.java +++ /dev/null @@ -1,178 +0,0 @@ -package com.jme3.scene; - -import com.jme3.bounding.BoundingVolume; -import com.jme3.material.Material; -import com.jme3.math.Quaternion; -import com.jme3.math.Transform; -import com.jme3.math.Vector3f; -import org.junit.Test; -import static org.easymock.EasyMock.*; -import static org.junit.Assert.*; - -public class GeometryTest { - - @Test - public void testConstructorNameNull() { - Geometry geom = new Geometry(null); - assertNull(geom.getName()); - } - - @Test - public void testConstructorName() { - Geometry geom = new Geometry("TestGeometry"); - assertEquals("TestGeometry", geom.getName()); - } - - @Test(expected = NullPointerException.class) - public void testConstructorNameMeshNullMesh() { - Geometry geom = new Geometry("TestGeometry", null); - } - - @Test - public void testConstructorNameMesh() { - Mesh m = new Mesh(); - Geometry geom = new Geometry("TestGeometry", m); - assertEquals("TestGeometry", geom.getName()); - assertEquals(m, geom.getMesh()); - } - - @Test(expected = IllegalStateException.class) - public void testSetLodLevelMeshLodZero() { - Mesh m = new Mesh(); - Geometry geom = new Geometry("TestGeometry", m); - geom.setLodLevel(0); - } - - @Test(expected = IllegalArgumentException.class) - public void testSetLodLevelLodLessZero() { - Mesh m = new Mesh(); - VertexBuffer lodLevels = new VertexBuffer(VertexBuffer.Type.Size); - m.setLodLevels(new VertexBuffer[]{lodLevels}); - Geometry geom = new Geometry("TestGeometry", m); - geom.setLodLevel(-1); - } - - @Test(expected = IllegalArgumentException.class) - public void testSetLodLevelLodGreaterMeshLod() { - Mesh m = new Mesh(); - VertexBuffer lodLevel = new VertexBuffer(VertexBuffer.Type.Size); - m.setLodLevels(new VertexBuffer[]{lodLevel}); - Geometry geom = new Geometry("TestGeometry", m); - geom.setLodLevel(5); - } - - @Test - public void testSetLodLevel() { - Mesh m = new Mesh(); - VertexBuffer lodLevel = new VertexBuffer(VertexBuffer.Type.Size); - m.setLodLevels(new VertexBuffer[]{lodLevel, lodLevel, lodLevel}); - Geometry geom = new Geometry("TestGeometry", m); - geom.setLodLevel(2); - assertEquals(2, geom.getLodLevel()); - } - - @Test(expected = IllegalArgumentException.class) - public void testSetMeshNull() { - Geometry geom = new Geometry(); - geom.setMesh(null); - } - - @Test(expected = UnsupportedOperationException.class) - public void testSetMeshBatched() { - Mesh m = new Mesh(); - Geometry geom = new Geometry(); - BatchNode bn = new BatchNode(); - geom.batch(bn, 1); - geom.setMesh(m); - } - - @Test - public void testSetMesh() { - Mesh m = new Mesh(); - Geometry geom = new Geometry(); - geom.setMesh(m); - assertEquals(m, geom.getMesh()); - } - - @Test(expected = UnsupportedOperationException.class) - public void testSetMaterialBatched() { - Material m = new Material(); - Geometry geom = new Geometry(); - BatchNode bn = new BatchNode(); - geom.batch(bn, 1); - geom.setMaterial(m); - } - - @Test - public void testSetMaterial() { - Material m = new Material(); - Geometry geom = new Geometry(); - geom.setMaterial(m); - assertEquals(m, geom.getMaterial()); - } - - @Test - public void testUpdateModelBound() { - Mesh mockedMesh = createMock(Mesh.class); - mockedMesh.updateBound(); - expectLastCall(); - - replay(mockedMesh); - Geometry geom = new Geometry(); - geom.setMesh(mockedMesh); - geom.updateModelBound(); - - verify(mockedMesh); - } - - @Test(expected = NullPointerException.class) - public void testUpdateWorldBoundNoMesh() { - Geometry geom = new Geometry(); - geom.updateWorldBound(); - } - - @Test - public void testUpdateWorlBoundNoBoundingVolume() { - Mesh mockedMesh = createMock(Mesh.class); - expect(mockedMesh.getBound()).andReturn(null); - replay(mockedMesh); - - Geometry geom = new Geometry(); - geom.setMesh(mockedMesh); - geom.updateWorldBound(); - - verify(mockedMesh); - } - - @Test - public void testUpdateWorlBoundIgnoreTransform() { - Mesh mockedMesh = createMock(Mesh.class); - BoundingVolume mockedBoundingVolume = createMock(BoundingVolume.class); - expect(mockedMesh.getBound()).andReturn(mockedBoundingVolume).times(2); - expect(mockedBoundingVolume.clone(null)).andReturn(null); - replay(mockedMesh, mockedBoundingVolume); - - Geometry geom = new Geometry(); - geom.setMesh(mockedMesh); - geom.setIgnoreTransform(true); - geom.updateWorldBound(); - - verify(mockedMesh, mockedBoundingVolume); - } - - @Test - public void testUpdateWorlBoundTransform() { - Mesh mockedMesh = createMock(Mesh.class); - BoundingVolume mockedBoundingVolume = createMock(BoundingVolume.class); - expect(mockedMesh.getBound()).andReturn(mockedBoundingVolume).times(2); - expect(mockedBoundingVolume.transform(anyObject(Transform.class), same((BoundingVolume) null))).andReturn(null); - replay(mockedMesh, mockedBoundingVolume); - - Geometry geom = new Geometry(); - geom.setMesh(mockedMesh); - geom.setIgnoreTransform(false); - geom.updateWorldBound(); - - verify(mockedMesh, mockedBoundingVolume); - } -} diff --git a/engine/town.zip b/engine/town.zip deleted file mode 100644 index 53e31a0bf..000000000 Binary files a/engine/town.zip and /dev/null differ diff --git a/engine/wildhouse.zip b/engine/wildhouse.zip deleted file mode 100644 index ea9cc26eb..000000000 Binary files a/engine/wildhouse.zip and /dev/null differ diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 000000000..e25636a95 --- /dev/null +++ b/gradle.properties @@ -0,0 +1,5 @@ +jmeVersion = 3.0.10 + +// path to android ndk for building native libraries +#ndkPath=/Users/normenhansen/Documents/Code-Import/android-ndk-r7 +ndkPath = D:/android/android-ndk-r8e diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 000000000..583859812 Binary files /dev/null and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..9997bdc41 --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Mon Jan 06 23:12:51 CET 2014 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-bin.zip diff --git a/gradlew b/gradlew new file mode 100755 index 000000000..91a7e269e --- /dev/null +++ b/gradlew @@ -0,0 +1,164 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# For Cygwin, ensure paths are in UNIX format before anything is touched. +if $cygwin ; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` +fi + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >&- +APP_HOME="`pwd -P`" +cd "$SAVED" >&- + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 000000000..aec99730b --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/jme3-android-native/build.gradle b/jme3-android-native/build.gradle new file mode 100644 index 000000000..4c065aac8 --- /dev/null +++ b/jme3-android-native/build.gradle @@ -0,0 +1,154 @@ +// Note: "common.gradle" in the root project contains additional initialization +// for this project. This initialization is applied in the "build.gradle" +// of the root project. + +// NetBeans will automatically add "run" and "debug" tasks relying on the +// "mainClass" property. You may however define the property prior executing +// tasks by passing a "-PmainClass=" argument. +// +// Note however, that you may define your own "run" and "debug" task if you +// prefer. In this case NetBeans will not add these tasks but you may rely on +// your own implementation. +// // OpenAL Soft r1.15.1 +//String openALSoftUrl = 'http://repo.or.cz/w/openal-soft.git/snapshot/9b6a226da55a987cb883f425eeb568776ea12c8d.zip' +// OpenAL Soft r1.15.1 + Android OpenSL Support +String openALSoftUrl = 'http://repo.or.cz/w/openal-soft.git/snapshot/be25e6802dacad78876c6fa1d6a5c63797b8a9ed.zip' +// OpenAL Soft r1.15.1 latest build (at the time) +//String openALSoftUrl = 'http://repo.or.cz/w/openal-soft.git/snapshot/3f5914e0949ee12b504ee7254990e007ff8057ef.zip' + +// OpenAL Soft directory the download is extracted into +// Typically, the downloaded OpenAL Soft zip file will extract to a directory +// called "openal-soft" +String openALSoftFolder = 'openal-soft' +String openALSoftZipFile = 'OpenALSoft.zip' + +//Working directory for the ndk build. +//Must be the parent directory of the jni directory +//Libs directory (output of ndk) will be created in this directory as well +String ndkWorkingPath = 'src/native' + +// jni folder path to build from +String jniPath = ndkWorkingPath + '/jni' + +//Output directory of the NDK (do not change) +String ndkOutputPath = ndkWorkingPath + '/libs' + +// jME Android Native source files path +String jMEAndroidPath = 'src/native/android' + +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +sourceSets { + main { + java { + srcDir jMEAndroidPath + } + } +} + +dependencies { + // TODO: Add dependencies here + // but note that JUnit should have already been added in parent.gradle. + // By default, only the Maven Central Repository is specified in + // parent.gradle. + // + // You can read more about how to add dependency here: + // http://www.gradle.org/docs/current/userguide/dependency_management.html#sec:how_to_declare_your_dependencies + compile project(':jme3-android') +} + +// Download bullet if not available +task downloadOpenALSoft(type: MyDownload) { + sourceUrl = openALSoftUrl + target = file(openALSoftZipFile) +} + +// Unzip OpenALSoft +task unzipOpenALSoft(type: Copy) { + def zipFile = file(openALSoftZipFile) + def outputDir = file(".") + + from zipTree(zipFile) + into outputDir +} +unzipOpenALSoft.dependsOn { + def zipFilePath = project.projectDir.absolutePath + File.separator + openALSoftZipFile + def zipFile = new File(zipFilePath) +// println "zipFile path: " + zipFile.absolutePath +// println "zipFile exists: " + zipFile.exists() + if (!zipFile.exists()) { + downloadOpenALSoft + } +} + +// Copy OpenALSoft files to jni directory +task copyOpenALSoft(type: Copy) { + def sourceDir = file(openALSoftFolder) + def outputDir = file(jniPath) + + from sourceDir + into outputDir +} +copyOpenALSoft.dependsOn { + def openALSoftUnzipDir = new File(project.projectDir.absolutePath + File.separator + openALSoftFolder) +// println "openALSoftUnzipDir path: " + openALSoftUnzipDir.absolutePath +// println "openALSoftUnzipDir exists: " + openALSoftUnzipDir.isDirectory() + if (!openALSoftUnzipDir.isDirectory()) { + unzipOpenALSoft + } +} + +// Copy jME Android native files to jni directory +task copyJmeOpenALSoft(type: Copy, dependsOn:copyOpenALSoft) { + def sourceDir = file(jMEAndroidPath) + def outputDir = file(jniPath) + + from sourceDir + into outputDir +} + +task buildNative(type: Exec, dependsOn:copyJmeOpenALSoft) { + String ndkBuildFile = "ndk-build" + // if windows, use ndk-build.cmd instead + if (System.properties['os.name'].toLowerCase().contains('windows')) { + ndkBuildFile = "ndk-build.cmd" + } + + // ndkPath is defined in the root project gradle.properties file + String ndkBuildPath = ndkPath + File.separator + ndkBuildFile + //Use the environment variable for the NDK location if defined + if (System.env.ANDROID_NDK != null) { + ndkBuildPath = System.env.ANDROID_NDK + File.separator + ndkBuildFile + } + + // need to target android-9 so the ndk can pull in the opensl library + args 'TARGET_PLATFORM=android-9' + workingDir ndkWorkingPath + executable ndkBuildPath +} + +jar.into("lib") { from ndkOutputPath } + +compileJava.dependsOn { + // ndkPath is defined in the root project gradle.properties file + def ndkDir = new File(ndkPath) + if (ndkDir.isDirectory()) { + buildNative + } +} + +// Helper class to wrap ant dowload task +class MyDownload extends DefaultTask { + @Input + String sourceUrl + + @OutputFile + File target + + @TaskAction + void download() { + ant.get(src: sourceUrl, dest: target) + } +} diff --git a/engine/src/openal-soft-native/android/Android.mk b/jme3-android-native/src/native/android/Android.mk similarity index 88% rename from engine/src/openal-soft-native/android/Android.mk rename to jme3-android-native/src/native/android/Android.mk index 936bf3d49..428008320 100644 --- a/engine/src/openal-soft-native/android/Android.mk +++ b/jme3-android-native/src/native/android/Android.mk @@ -29,11 +29,9 @@ LOCAL_SRC_FILES := OpenAL32/alAuxEffectSlot.c \ OpenAL32/alThunk.c \ Alc/ALc.c \ Alc/ALu.c \ - Alc/alcChorus.c \ Alc/alcConfig.c \ Alc/alcDedicated.c \ Alc/alcEcho.c \ - Alc/alcFlanger.c \ Alc/alcModulator.c \ Alc/alcReverb.c \ Alc/alcRing.c \ @@ -43,13 +41,18 @@ LOCAL_SRC_FILES := OpenAL32/alAuxEffectSlot.c \ Alc/panning.c \ Alc/hrtf.c \ Alc/mixer.c \ - Alc/mixer_c.c \ + Alc/mixer_c.c \ Alc/backends/loopback.c \ Alc/backends/null.c \ Alc/backends/opensl.c \ com_jme3_audio_android_AndroidOpenALSoftAudioRenderer.cpp # Alc/backends/alsa.c \ # Alc/backends/android.c \ +# Alc/alcChorus.c \ +# Alc/alcFlanger.c \ +# Alc/mixer_c.c \ +# Alc/backends/loopback.c \ +# Alc/backends/null.c \ include $(BUILD_SHARED_LIBRARY) diff --git a/engine/src/openal-soft-native/android/Application.mk b/jme3-android-native/src/native/android/Application.mk similarity index 100% rename from engine/src/openal-soft-native/android/Application.mk rename to jme3-android-native/src/native/android/Application.mk diff --git a/engine/src/openal-soft-native/android/com_jme3_audio_android_AndroidOpenALSoftAudioRenderer.cpp b/jme3-android-native/src/native/android/com_jme3_audio_android_AndroidOpenALSoftAudioRenderer.cpp similarity index 100% rename from engine/src/openal-soft-native/android/com_jme3_audio_android_AndroidOpenALSoftAudioRenderer.cpp rename to jme3-android-native/src/native/android/com_jme3_audio_android_AndroidOpenALSoftAudioRenderer.cpp diff --git a/engine/src/openal-soft-native/android/com_jme3_audio_android_AndroidOpenALSoftAudioRenderer.h b/jme3-android-native/src/native/android/com_jme3_audio_android_AndroidOpenALSoftAudioRenderer.h similarity index 100% rename from engine/src/openal-soft-native/android/com_jme3_audio_android_AndroidOpenALSoftAudioRenderer.h rename to jme3-android-native/src/native/android/com_jme3_audio_android_AndroidOpenALSoftAudioRenderer.h diff --git a/engine/src/openal-soft-native/android/config.h b/jme3-android-native/src/native/android/config.h similarity index 100% rename from engine/src/openal-soft-native/android/config.h rename to jme3-android-native/src/native/android/config.h diff --git a/jme3-android-native/src/native/libs/armeabi-v7a/libopenalsoftjme.so b/jme3-android-native/src/native/libs/armeabi-v7a/libopenalsoftjme.so new file mode 100644 index 000000000..04d4fd48f Binary files /dev/null and b/jme3-android-native/src/native/libs/armeabi-v7a/libopenalsoftjme.so differ diff --git a/jme3-android-native/src/native/libs/armeabi/libopenalsoftjme.so b/jme3-android-native/src/native/libs/armeabi/libopenalsoftjme.so new file mode 100644 index 000000000..ff561809c Binary files /dev/null and b/jme3-android-native/src/native/libs/armeabi/libopenalsoftjme.so differ diff --git a/jme3-android-native/src/native/libs/mips/libopenalsoftjme.so b/jme3-android-native/src/native/libs/mips/libopenalsoftjme.so new file mode 100644 index 000000000..24f07dd22 Binary files /dev/null and b/jme3-android-native/src/native/libs/mips/libopenalsoftjme.so differ diff --git a/jme3-android-native/src/native/libs/x86/libopenalsoftjme.so b/jme3-android-native/src/native/libs/x86/libopenalsoftjme.so new file mode 100644 index 000000000..93e2029ad Binary files /dev/null and b/jme3-android-native/src/native/libs/x86/libopenalsoftjme.so differ diff --git a/jme3-android/build.gradle b/jme3-android/build.gradle new file mode 100644 index 000000000..417273d39 --- /dev/null +++ b/jme3-android/build.gradle @@ -0,0 +1,9 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +dependencies { + compile project(':jme3-core') + compile project(':jme3-plugins') + compile 'com.google.android:android:4.1.1.4' +} diff --git a/engine/src/android/com/jme3/app/AndroidHarness.java b/jme3-android/src/main/java/com/jme3/app/AndroidHarness.java similarity index 100% rename from engine/src/android/com/jme3/app/AndroidHarness.java rename to jme3-android/src/main/java/com/jme3/app/AndroidHarness.java diff --git a/engine/src/android/com/jme3/app/R.java b/jme3-android/src/main/java/com/jme3/app/R.java similarity index 100% rename from engine/src/android/com/jme3/app/R.java rename to jme3-android/src/main/java/com/jme3/app/R.java diff --git a/engine/src/android/com/jme3/asset/AndroidAssetManager.java b/jme3-android/src/main/java/com/jme3/asset/AndroidAssetManager.java similarity index 100% rename from engine/src/android/com/jme3/asset/AndroidAssetManager.java rename to jme3-android/src/main/java/com/jme3/asset/AndroidAssetManager.java diff --git a/engine/src/android/com/jme3/asset/AndroidImageInfo.java b/jme3-android/src/main/java/com/jme3/asset/AndroidImageInfo.java similarity index 100% rename from engine/src/android/com/jme3/asset/AndroidImageInfo.java rename to jme3-android/src/main/java/com/jme3/asset/AndroidImageInfo.java diff --git a/engine/src/android/com/jme3/asset/plugins/AndroidLocator.java b/jme3-android/src/main/java/com/jme3/asset/plugins/AndroidLocator.java similarity index 100% rename from engine/src/android/com/jme3/asset/plugins/AndroidLocator.java rename to jme3-android/src/main/java/com/jme3/asset/plugins/AndroidLocator.java diff --git a/engine/src/android/com/jme3/audio/android/AL.java b/jme3-android/src/main/java/com/jme3/audio/android/AL.java similarity index 100% rename from engine/src/android/com/jme3/audio/android/AL.java rename to jme3-android/src/main/java/com/jme3/audio/android/AL.java diff --git a/engine/src/android/com/jme3/audio/android/AndroidAudioData.java b/jme3-android/src/main/java/com/jme3/audio/android/AndroidAudioData.java similarity index 100% rename from engine/src/android/com/jme3/audio/android/AndroidAudioData.java rename to jme3-android/src/main/java/com/jme3/audio/android/AndroidAudioData.java diff --git a/engine/src/android/com/jme3/audio/android/AndroidAudioRenderer.java b/jme3-android/src/main/java/com/jme3/audio/android/AndroidAudioRenderer.java similarity index 100% rename from engine/src/android/com/jme3/audio/android/AndroidAudioRenderer.java rename to jme3-android/src/main/java/com/jme3/audio/android/AndroidAudioRenderer.java diff --git a/engine/src/android/com/jme3/audio/android/AndroidMediaPlayerAudioRenderer.java b/jme3-android/src/main/java/com/jme3/audio/android/AndroidMediaPlayerAudioRenderer.java similarity index 100% rename from engine/src/android/com/jme3/audio/android/AndroidMediaPlayerAudioRenderer.java rename to jme3-android/src/main/java/com/jme3/audio/android/AndroidMediaPlayerAudioRenderer.java diff --git a/engine/src/android/com/jme3/audio/android/AndroidOpenALSoftAudioRenderer.java b/jme3-android/src/main/java/com/jme3/audio/android/AndroidOpenALSoftAudioRenderer.java similarity index 100% rename from engine/src/android/com/jme3/audio/android/AndroidOpenALSoftAudioRenderer.java rename to jme3-android/src/main/java/com/jme3/audio/android/AndroidOpenALSoftAudioRenderer.java diff --git a/engine/src/android/com/jme3/audio/plugins/AndroidAudioLoader.java b/jme3-android/src/main/java/com/jme3/audio/plugins/AndroidAudioLoader.java similarity index 100% rename from engine/src/android/com/jme3/audio/plugins/AndroidAudioLoader.java rename to jme3-android/src/main/java/com/jme3/audio/plugins/AndroidAudioLoader.java diff --git a/engine/src/android/com/jme3/input/android/AndroidGestureHandler.java b/jme3-android/src/main/java/com/jme3/input/android/AndroidGestureHandler.java similarity index 100% rename from engine/src/android/com/jme3/input/android/AndroidGestureHandler.java rename to jme3-android/src/main/java/com/jme3/input/android/AndroidGestureHandler.java diff --git a/engine/src/android/com/jme3/input/android/AndroidInput.java b/jme3-android/src/main/java/com/jme3/input/android/AndroidInput.java similarity index 100% rename from engine/src/android/com/jme3/input/android/AndroidInput.java rename to jme3-android/src/main/java/com/jme3/input/android/AndroidInput.java diff --git a/engine/src/android/com/jme3/input/android/AndroidInputHandler.java b/jme3-android/src/main/java/com/jme3/input/android/AndroidInputHandler.java similarity index 100% rename from engine/src/android/com/jme3/input/android/AndroidInputHandler.java rename to jme3-android/src/main/java/com/jme3/input/android/AndroidInputHandler.java diff --git a/engine/src/android/com/jme3/input/android/AndroidKeyHandler.java b/jme3-android/src/main/java/com/jme3/input/android/AndroidKeyHandler.java similarity index 100% rename from engine/src/android/com/jme3/input/android/AndroidKeyHandler.java rename to jme3-android/src/main/java/com/jme3/input/android/AndroidKeyHandler.java diff --git a/engine/src/android/com/jme3/input/android/AndroidKeyMapping.java b/jme3-android/src/main/java/com/jme3/input/android/AndroidKeyMapping.java similarity index 100% rename from engine/src/android/com/jme3/input/android/AndroidKeyMapping.java rename to jme3-android/src/main/java/com/jme3/input/android/AndroidKeyMapping.java diff --git a/engine/src/android/com/jme3/input/android/AndroidSensorJoyInput.java b/jme3-android/src/main/java/com/jme3/input/android/AndroidSensorJoyInput.java similarity index 100% rename from engine/src/android/com/jme3/input/android/AndroidSensorJoyInput.java rename to jme3-android/src/main/java/com/jme3/input/android/AndroidSensorJoyInput.java diff --git a/engine/src/android/com/jme3/input/android/AndroidTouchHandler.java b/jme3-android/src/main/java/com/jme3/input/android/AndroidTouchHandler.java similarity index 100% rename from engine/src/android/com/jme3/input/android/AndroidTouchHandler.java rename to jme3-android/src/main/java/com/jme3/input/android/AndroidTouchHandler.java diff --git a/engine/src/android/com/jme3/input/android/AndroidTouchHandler14.java b/jme3-android/src/main/java/com/jme3/input/android/AndroidTouchHandler14.java similarity index 100% rename from engine/src/android/com/jme3/input/android/AndroidTouchHandler14.java rename to jme3-android/src/main/java/com/jme3/input/android/AndroidTouchHandler14.java diff --git a/engine/src/android/com/jme3/input/android/TouchEventPool.java b/jme3-android/src/main/java/com/jme3/input/android/TouchEventPool.java similarity index 100% rename from engine/src/android/com/jme3/input/android/TouchEventPool.java rename to jme3-android/src/main/java/com/jme3/input/android/TouchEventPool.java diff --git a/engine/src/android/com/jme3/renderer/android/Android22Workaround.java b/jme3-android/src/main/java/com/jme3/renderer/android/Android22Workaround.java similarity index 100% rename from engine/src/android/com/jme3/renderer/android/Android22Workaround.java rename to jme3-android/src/main/java/com/jme3/renderer/android/Android22Workaround.java diff --git a/engine/src/android/com/jme3/renderer/android/AndroidGLSurfaceView.java b/jme3-android/src/main/java/com/jme3/renderer/android/AndroidGLSurfaceView.java similarity index 100% rename from engine/src/android/com/jme3/renderer/android/AndroidGLSurfaceView.java rename to jme3-android/src/main/java/com/jme3/renderer/android/AndroidGLSurfaceView.java diff --git a/engine/src/android/com/jme3/renderer/android/OGLESShaderRenderer.java b/jme3-android/src/main/java/com/jme3/renderer/android/OGLESShaderRenderer.java similarity index 100% rename from engine/src/android/com/jme3/renderer/android/OGLESShaderRenderer.java rename to jme3-android/src/main/java/com/jme3/renderer/android/OGLESShaderRenderer.java diff --git a/engine/src/android/com/jme3/renderer/android/RendererUtil.java b/jme3-android/src/main/java/com/jme3/renderer/android/RendererUtil.java similarity index 100% rename from engine/src/android/com/jme3/renderer/android/RendererUtil.java rename to jme3-android/src/main/java/com/jme3/renderer/android/RendererUtil.java diff --git a/engine/src/android/com/jme3/renderer/android/TextureUtil.java b/jme3-android/src/main/java/com/jme3/renderer/android/TextureUtil.java similarity index 100% rename from engine/src/android/com/jme3/renderer/android/TextureUtil.java rename to jme3-android/src/main/java/com/jme3/renderer/android/TextureUtil.java diff --git a/engine/src/android/com/jme3/system/android/AndroidConfigChooser.java b/jme3-android/src/main/java/com/jme3/system/android/AndroidConfigChooser.java similarity index 100% rename from engine/src/android/com/jme3/system/android/AndroidConfigChooser.java rename to jme3-android/src/main/java/com/jme3/system/android/AndroidConfigChooser.java diff --git a/engine/src/android/com/jme3/system/android/AndroidTimer.java b/jme3-android/src/main/java/com/jme3/system/android/AndroidTimer.java similarity index 100% rename from engine/src/android/com/jme3/system/android/AndroidTimer.java rename to jme3-android/src/main/java/com/jme3/system/android/AndroidTimer.java diff --git a/engine/src/android/com/jme3/system/android/JmeAndroidSystem.java b/jme3-android/src/main/java/com/jme3/system/android/JmeAndroidSystem.java similarity index 100% rename from engine/src/android/com/jme3/system/android/JmeAndroidSystem.java rename to jme3-android/src/main/java/com/jme3/system/android/JmeAndroidSystem.java diff --git a/engine/src/android/com/jme3/system/android/OGLESContext.java b/jme3-android/src/main/java/com/jme3/system/android/OGLESContext.java similarity index 100% rename from engine/src/android/com/jme3/system/android/OGLESContext.java rename to jme3-android/src/main/java/com/jme3/system/android/OGLESContext.java diff --git a/engine/src/android/com/jme3/texture/plugins/AndroidImageLoader.java b/jme3-android/src/main/java/com/jme3/texture/plugins/AndroidImageLoader.java similarity index 100% rename from engine/src/android/com/jme3/texture/plugins/AndroidImageLoader.java rename to jme3-android/src/main/java/com/jme3/texture/plugins/AndroidImageLoader.java diff --git a/engine/src/android/com/jme3/util/AndroidLogHandler.java b/jme3-android/src/main/java/com/jme3/util/AndroidLogHandler.java similarity index 100% rename from engine/src/android/com/jme3/util/AndroidLogHandler.java rename to jme3-android/src/main/java/com/jme3/util/AndroidLogHandler.java diff --git a/engine/src/android/com/jme3/util/AndroidScreenshots.java b/jme3-android/src/main/java/com/jme3/util/AndroidScreenshots.java similarity index 100% rename from engine/src/android/com/jme3/util/AndroidScreenshots.java rename to jme3-android/src/main/java/com/jme3/util/AndroidScreenshots.java diff --git a/engine/src/android/com/jme3/util/RingBuffer.java b/jme3-android/src/main/java/com/jme3/util/RingBuffer.java similarity index 100% rename from engine/src/android/com/jme3/util/RingBuffer.java rename to jme3-android/src/main/java/com/jme3/util/RingBuffer.java diff --git a/engine/src/android/jme3test/android/AndroidManifest.xml b/jme3-android/src/main/java/jme3test/android/AndroidManifest.xml similarity index 100% rename from engine/src/android/jme3test/android/AndroidManifest.xml rename to jme3-android/src/main/java/jme3test/android/AndroidManifest.xml diff --git a/engine/src/android/jme3test/android/DemoAndroidHarness.java b/jme3-android/src/main/java/jme3test/android/DemoAndroidHarness.java similarity index 100% rename from engine/src/android/jme3test/android/DemoAndroidHarness.java rename to jme3-android/src/main/java/jme3test/android/DemoAndroidHarness.java diff --git a/engine/src/android/jme3test/android/DemoLaunchAdapter.java b/jme3-android/src/main/java/jme3test/android/DemoLaunchAdapter.java similarity index 100% rename from engine/src/android/jme3test/android/DemoLaunchAdapter.java rename to jme3-android/src/main/java/jme3test/android/DemoLaunchAdapter.java diff --git a/engine/src/android/jme3test/android/DemoLaunchEntry.java b/jme3-android/src/main/java/jme3test/android/DemoLaunchEntry.java similarity index 100% rename from engine/src/android/jme3test/android/DemoLaunchEntry.java rename to jme3-android/src/main/java/jme3test/android/DemoLaunchEntry.java diff --git a/engine/src/android/jme3test/android/DemoMainActivity.java b/jme3-android/src/main/java/jme3test/android/DemoMainActivity.java similarity index 100% rename from engine/src/android/jme3test/android/DemoMainActivity.java rename to jme3-android/src/main/java/jme3test/android/DemoMainActivity.java diff --git a/engine/src/android/jme3test/android/R.java b/jme3-android/src/main/java/jme3test/android/R.java similarity index 100% rename from engine/src/android/jme3test/android/R.java rename to jme3-android/src/main/java/jme3test/android/R.java diff --git a/engine/src/android/jme3test/android/SimpleSoundTest.java b/jme3-android/src/main/java/jme3test/android/SimpleSoundTest.java similarity index 100% rename from engine/src/android/jme3test/android/SimpleSoundTest.java rename to jme3-android/src/main/java/jme3test/android/SimpleSoundTest.java diff --git a/engine/src/android/jme3test/android/SimpleTexturedTest.java b/jme3-android/src/main/java/jme3test/android/SimpleTexturedTest.java similarity index 100% rename from engine/src/android/jme3test/android/SimpleTexturedTest.java rename to jme3-android/src/main/java/jme3test/android/SimpleTexturedTest.java diff --git a/engine/src/android/jme3test/android/TestAmbient.java b/jme3-android/src/main/java/jme3test/android/TestAmbient.java similarity index 100% rename from engine/src/android/jme3test/android/TestAmbient.java rename to jme3-android/src/main/java/jme3test/android/TestAmbient.java diff --git a/engine/src/android/jme3test/android/TestBumpModel.java b/jme3-android/src/main/java/jme3test/android/TestBumpModel.java similarity index 100% rename from engine/src/android/jme3test/android/TestBumpModel.java rename to jme3-android/src/main/java/jme3test/android/TestBumpModel.java diff --git a/engine/src/android/jme3test/android/TestMovingParticle.java b/jme3-android/src/main/java/jme3test/android/TestMovingParticle.java similarity index 100% rename from engine/src/android/jme3test/android/TestMovingParticle.java rename to jme3-android/src/main/java/jme3test/android/TestMovingParticle.java diff --git a/engine/src/android/jme3test/android/TestNormalMapping.java b/jme3-android/src/main/java/jme3test/android/TestNormalMapping.java similarity index 100% rename from engine/src/android/jme3test/android/TestNormalMapping.java rename to jme3-android/src/main/java/jme3test/android/TestNormalMapping.java diff --git a/engine/src/android/jme3test/android/TestSkyLoadingLagoon.java b/jme3-android/src/main/java/jme3test/android/TestSkyLoadingLagoon.java similarity index 100% rename from engine/src/android/jme3test/android/TestSkyLoadingLagoon.java rename to jme3-android/src/main/java/jme3test/android/TestSkyLoadingLagoon.java diff --git a/engine/src/android/jme3test/android/TestSkyLoadingPrimitives.java b/jme3-android/src/main/java/jme3test/android/TestSkyLoadingPrimitives.java similarity index 100% rename from engine/src/android/jme3test/android/TestSkyLoadingPrimitives.java rename to jme3-android/src/main/java/jme3test/android/TestSkyLoadingPrimitives.java diff --git a/engine/src/android/jme3test/android/TestUnshadedModel.java b/jme3-android/src/main/java/jme3test/android/TestUnshadedModel.java similarity index 100% rename from engine/src/android/jme3test/android/TestUnshadedModel.java rename to jme3-android/src/main/java/jme3test/android/TestUnshadedModel.java diff --git a/engine/src/android/res/layout/about.xml b/jme3-android/src/main/resources/res/layout/about.xml similarity index 100% rename from engine/src/android/res/layout/about.xml rename to jme3-android/src/main/resources/res/layout/about.xml diff --git a/engine/src/android/res/layout/tests.xml b/jme3-android/src/main/resources/res/layout/tests.xml similarity index 100% rename from engine/src/android/res/layout/tests.xml rename to jme3-android/src/main/resources/res/layout/tests.xml diff --git a/engine/src/android/res/menu/options.xml b/jme3-android/src/main/resources/res/menu/options.xml similarity index 100% rename from engine/src/android/res/menu/options.xml rename to jme3-android/src/main/resources/res/menu/options.xml diff --git a/engine/src/android/res/values/strings.xml b/jme3-android/src/main/resources/res/values/strings.xml similarity index 100% rename from engine/src/android/res/values/strings.xml rename to jme3-android/src/main/resources/res/values/strings.xml diff --git a/jme3-blender/build.gradle b/jme3-blender/build.gradle new file mode 100644 index 000000000..96a71cb5c --- /dev/null +++ b/jme3-blender/build.gradle @@ -0,0 +1,8 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +dependencies { + compile project(':jme3-core') + compile project(':jme3-desktop') +} diff --git a/engine/src/blender/com/jme3/asset/BlenderKey.java b/jme3-blender/src/main/java/com/jme3/asset/BlenderKey.java similarity index 100% rename from engine/src/blender/com/jme3/asset/BlenderKey.java rename to jme3-blender/src/main/java/com/jme3/asset/BlenderKey.java diff --git a/engine/src/blender/com/jme3/asset/GeneratedTextureKey.java b/jme3-blender/src/main/java/com/jme3/asset/GeneratedTextureKey.java similarity index 100% rename from engine/src/blender/com/jme3/asset/GeneratedTextureKey.java rename to jme3-blender/src/main/java/com/jme3/asset/GeneratedTextureKey.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/AbstractBlenderHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/AbstractBlenderHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/AbstractBlenderHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/AbstractBlenderHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/BlenderContext.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/BlenderContext.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/BlenderContext.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/BlenderContext.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/BlenderLoader.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/BlenderLoader.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/BlenderLoader.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/BlenderLoader.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/BlenderModelLoader.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/BlenderModelLoader.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/BlenderModelLoader.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/BlenderModelLoader.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/animations/AnimationHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/animations/AnimationHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/animations/AnimationHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/animations/AnimationHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/animations/BoneContext.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/animations/BoneContext.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/animations/BoneContext.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/animations/BoneContext.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/animations/Ipo.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/animations/Ipo.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/animations/Ipo.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/animations/Ipo.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/cameras/CameraHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/cameras/CameraHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/cameras/CameraHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/cameras/CameraHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/BoneConstraint.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/BoneConstraint.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/BoneConstraint.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/BoneConstraint.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/Constraint.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/Constraint.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/Constraint.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/Constraint.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/ConstraintHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/ConstraintHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/ConstraintHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/ConstraintHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/SimulationNode.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/SimulationNode.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/SimulationNode.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/SimulationNode.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/SkeletonConstraint.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/SkeletonConstraint.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/SkeletonConstraint.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/SkeletonConstraint.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/SpatialConstraint.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/SpatialConstraint.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/SpatialConstraint.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/SpatialConstraint.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/VirtualTrack.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/VirtualTrack.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/VirtualTrack.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/VirtualTrack.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinition.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinition.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinition.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinition.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionDistLimit.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionDistLimit.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionDistLimit.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionDistLimit.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionFactory.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionFactory.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionFactory.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionFactory.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionIK.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionIK.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionIK.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionIK.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionLocLike.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionLocLike.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionLocLike.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionLocLike.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionLocLimit.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionLocLimit.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionLocLimit.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionLocLimit.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionMaintainVolume.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionMaintainVolume.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionMaintainVolume.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionMaintainVolume.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionNull.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionNull.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionNull.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionNull.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionRotLike.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionRotLike.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionRotLike.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionRotLike.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionRotLimit.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionRotLimit.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionRotLimit.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionRotLimit.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionSizeLike.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionSizeLike.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionSizeLike.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionSizeLike.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionSizeLimit.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionSizeLimit.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionSizeLimit.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionSizeLimit.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionTransLike.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionTransLike.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionTransLike.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/ConstraintDefinitionTransLike.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/UnsupportedConstraintDefinition.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/UnsupportedConstraintDefinition.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/constraints/definitions/UnsupportedConstraintDefinition.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/definitions/UnsupportedConstraintDefinition.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/curves/BezierCurve.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/curves/BezierCurve.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/curves/BezierCurve.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/curves/BezierCurve.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/curves/CurvesHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/curves/CurvesHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/curves/CurvesHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/curves/CurvesHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/file/BlenderFileException.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/BlenderFileException.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/file/BlenderFileException.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/BlenderFileException.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/file/BlenderInputStream.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/BlenderInputStream.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/file/BlenderInputStream.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/BlenderInputStream.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/file/DnaBlockData.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/DnaBlockData.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/file/DnaBlockData.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/DnaBlockData.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/file/DynamicArray.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/DynamicArray.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/file/DynamicArray.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/DynamicArray.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/file/Field.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/Field.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/file/Field.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/Field.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/file/FileBlockHeader.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/FileBlockHeader.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/file/FileBlockHeader.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/FileBlockHeader.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/file/Pointer.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/Pointer.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/file/Pointer.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/Pointer.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/file/Structure.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/Structure.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/file/Structure.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/Structure.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/landscape/LandscapeHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/landscape/LandscapeHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/landscape/LandscapeHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/landscape/LandscapeHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/lights/LightHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/lights/LightHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/lights/LightHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/lights/LightHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/materials/IAlphaMask.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/materials/IAlphaMask.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/materials/IAlphaMask.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/materials/IAlphaMask.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/materials/MaterialContext.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/materials/MaterialContext.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/materials/MaterialContext.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/materials/MaterialContext.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/materials/MaterialHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/materials/MaterialHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/materials/MaterialHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/materials/MaterialHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/meshes/MeshContext.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/MeshContext.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/meshes/MeshContext.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/MeshContext.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/meshes/MeshHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/MeshHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/meshes/MeshHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/MeshHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/meshes/builders/FaceMeshBuilder.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/builders/FaceMeshBuilder.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/meshes/builders/FaceMeshBuilder.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/builders/FaceMeshBuilder.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/meshes/builders/LineMeshBuilder.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/builders/LineMeshBuilder.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/meshes/builders/LineMeshBuilder.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/builders/LineMeshBuilder.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/meshes/builders/MeshBuilder.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/builders/MeshBuilder.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/meshes/builders/MeshBuilder.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/builders/MeshBuilder.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/meshes/builders/PointMeshBuilder.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/builders/PointMeshBuilder.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/meshes/builders/PointMeshBuilder.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/builders/PointMeshBuilder.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/modifiers/ArmatureModifier.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/ArmatureModifier.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/modifiers/ArmatureModifier.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/ArmatureModifier.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/modifiers/ArrayModifier.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/ArrayModifier.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/modifiers/ArrayModifier.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/ArrayModifier.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/modifiers/MirrorModifier.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/MirrorModifier.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/modifiers/MirrorModifier.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/MirrorModifier.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/modifiers/Modifier.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/Modifier.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/modifiers/Modifier.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/Modifier.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/modifiers/ModifierHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/ModifierHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/modifiers/ModifierHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/ModifierHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/modifiers/ParticlesModifier.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/ParticlesModifier.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/modifiers/ParticlesModifier.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/ParticlesModifier.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/objects/ObjectHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/objects/ObjectHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/objects/ObjectHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/objects/ObjectHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/objects/Properties.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/objects/Properties.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/objects/Properties.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/objects/Properties.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/particles/ParticlesHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/particles/ParticlesHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/particles/ParticlesHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/particles/ParticlesHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/ColorBand.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ColorBand.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/ColorBand.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ColorBand.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/CombinedTexture.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/CombinedTexture.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/CombinedTexture.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/CombinedTexture.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/DDSTexelData.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/DDSTexelData.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/DDSTexelData.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/DDSTexelData.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/GeneratedTexture.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/GeneratedTexture.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/GeneratedTexture.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/GeneratedTexture.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/ImageLoader.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ImageLoader.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/ImageLoader.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ImageLoader.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/ImageUtils.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ImageUtils.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/ImageUtils.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ImageUtils.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/TextureHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/TextureHelper.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/TextureHelper.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/TextureHelper.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/TexturePixel.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/TexturePixel.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/TexturePixel.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/TexturePixel.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/TriangulatedTexture.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/TriangulatedTexture.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/TriangulatedTexture.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/TriangulatedTexture.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/UVCoordinatesGenerator.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/UVCoordinatesGenerator.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/UVCoordinatesGenerator.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/UVCoordinatesGenerator.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/UVProjectionGenerator.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/UVProjectionGenerator.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/UVProjectionGenerator.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/UVProjectionGenerator.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/UserUVCollection.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/UserUVCollection.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/UserUVCollection.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/UserUVCollection.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/AbstractTextureBlender.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/AbstractTextureBlender.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/AbstractTextureBlender.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/AbstractTextureBlender.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/TextureBlender.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlender.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/TextureBlender.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlender.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderAWT.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderAWT.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderAWT.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderAWT.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderDDS.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderDDS.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderDDS.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderDDS.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderFactory.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderFactory.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderFactory.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderFactory.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderLuminance.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderLuminance.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderLuminance.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderLuminance.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/NoiseGenerator.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/NoiseGenerator.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/NoiseGenerator.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/NoiseGenerator.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGenerator.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGenerator.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGenerator.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGenerator.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorBlend.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorBlend.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorBlend.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorBlend.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorClouds.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorClouds.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorClouds.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorClouds.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorDistnoise.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorDistnoise.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorDistnoise.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorDistnoise.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorFactory.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorFactory.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorFactory.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorFactory.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorMagic.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorMagic.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorMagic.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorMagic.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorMarble.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorMarble.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorMarble.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorMarble.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorMusgrave.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorMusgrave.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorMusgrave.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorMusgrave.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorNoise.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorNoise.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorNoise.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorNoise.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorStucci.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorStucci.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorStucci.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorStucci.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorVoronoi.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorVoronoi.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorVoronoi.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorVoronoi.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorWood.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorWood.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorWood.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/generating/TextureGeneratorWood.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/io/AWTPixelInputOutput.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/io/AWTPixelInputOutput.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/io/AWTPixelInputOutput.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/io/AWTPixelInputOutput.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/io/DDSPixelInputOutput.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/io/DDSPixelInputOutput.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/io/DDSPixelInputOutput.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/io/DDSPixelInputOutput.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/io/LuminancePixelInputOutput.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/io/LuminancePixelInputOutput.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/io/LuminancePixelInputOutput.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/io/LuminancePixelInputOutput.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/io/PixelIOFactory.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/io/PixelIOFactory.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/io/PixelIOFactory.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/io/PixelIOFactory.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/io/PixelInputOutput.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/io/PixelInputOutput.java similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/io/PixelInputOutput.java rename to jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/io/PixelInputOutput.java diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/noiseconstants.dat b/jme3-blender/src/main/resources/com/jme3/scene/plugins/blender/textures/generating/noiseconstants.dat similarity index 100% rename from engine/src/blender/com/jme3/scene/plugins/blender/textures/generating/noiseconstants.dat rename to jme3-blender/src/main/resources/com/jme3/scene/plugins/blender/textures/generating/noiseconstants.dat diff --git a/jme3-bullet-native/build.gradle b/jme3-bullet-native/build.gradle new file mode 100644 index 000000000..03ae74889 --- /dev/null +++ b/jme3-bullet-native/build.gradle @@ -0,0 +1,258 @@ +apply plugin: 'cpp' + +String bulletUrl = 'http://bullet.googlecode.com/files/bullet-2.82-r2704.zip' +String bulletFolder = 'bullet-2.82-r2704' +String bulletSrcPath = bulletFolder + '/src' +String bulletZipFile = 'bullet.zip' + +//Directories for the android ndk build. +String ndkWorkingPath = 'src/native' +String jmeAndroidPath = ndkWorkingPath + '/android' +String jmeCppPath = ndkWorkingPath + '/cpp' +String jniPath = ndkWorkingPath + '/jni' +String ndkOutputPath = ndkWorkingPath + '/libs' + +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +dependencies { + compile project(':jme3-bullet') +} + +// C++ sources for binary compilation +sources { + bulletjme { + cpp { + source { + srcDir 'src/native/cpp' + srcDir bulletSrcPath + exclude 'BulletMultiThreaded/GpuSoftBodySolvers/**' + include '**/*.cpp' + } + exportedHeaders { + srcDir 'src/native/cpp' + srcDir bulletSrcPath + include '**/*.h' + } + } + } +} + +// Java source sets for IDE acces and source jar bundling / mavenization +sourceSets { + main { + java { + srcDir 'src/native/cpp' + srcDir 'src/native/android' + } + } +} + +// Set of target platforms, will be available based on build system +targetPlatforms { +// osx_universal { // TODO: universal binary doesn't work? +// architecture 'x86_64' +// architecture 'x86' +// operatingSystem 'osx' +// } + osx_x86 { + architecture "x86" + operatingSystem "osx" + } + osx_x64 { + architecture "x86_64" + operatingSystem "osx" + } + linux_x86 { + architecture "x86" + operatingSystem "linux" + } + linux_x86_64 { + architecture "x86_64" + operatingSystem "linux" + } + windows_x86 { + architecture "x86" + operatingSystem "windows" + } + windows_x86_64 { + architecture "x86_64" + operatingSystem "windows" + } +} + +// Defines created C++ libraries +libraries { + bulletjme { + } + all { + binaries.all { + cppCompiler.args '-I', "${org.gradle.internal.jvm.Jvm.current().javaHome}/include" + if (targetPlatform.operatingSystem.name == "osx") { + cppCompiler.args '-I', "${org.gradle.internal.jvm.Jvm.current().javaHome}/include/darwin" + } else if (targetPlatform.operatingSystem.name == "linux") { + cppCompiler.args '-I', "${org.gradle.internal.jvm.Jvm.current().javaHome}/include/linux" + cppCompiler.args "-fPIC" + cppCompiler.args "-fpermissive" + cppCompiler.args "-static-libgcc" + linker.args "-static" + } else if (targetPlatform.operatingSystem.name == "windows") { + cppCompiler.args "-I${org.gradle.internal.jvm.Jvm.current().javaHome}/include/win32" +// cppCompiler.define('WIN32') +// linker.args 'Shlwapi.lib', 'Advapi32.lib' + } + } + } +} + +// Download bullet if not available +task downloadBullet(type: MyDownload) { + sourceUrl = bulletUrl + target = file(bulletZipFile) +} + +// Unzip bullet if not available +task unzipBullet(type: Copy) { + def zipFile = file(bulletZipFile) + def outputDir = file(".") + + from zipTree(zipFile) + into outputDir +} +unzipBullet.dependsOn { + def zipFilePath = project.projectDir.absolutePath + File.separator + bulletZipFile + def zipFile = new File(zipFilePath) +// println "zipFile path: " + zipFile.absolutePath +// println "zipFile exists: " + zipFile.exists() + if (!zipFile.exists()) { + downloadBullet + } +} + +compileJava.dependsOn { + def bulletUnzipDir = new File(project.projectDir.absolutePath + File.separator + bulletFolder) +// println "bulletUnzipDir path: " + bulletUnzipDir.absolutePath +// println "bulletUnzipDir exists: " + bulletUnzipDir.isDirectory() + if (!bulletUnzipDir.isDirectory()) { + unzipBullet + } +} + +//task buildAllExecutables { +// dependsOn binaries.withType(SharedLibraryBinary).matching { +// it.buildable +// } +//} + +// Adds all built binaries to java jar task +binaries.withType(SharedLibraryBinary) { binary -> + if (!buildable) { + //TODO: obtain elsewhere if not available + return + } + // Get builder of this binary + def builderTask = binary.tasks.builder + // Add output to jar file + jar.into("native/${targetPlatform.operatingSystem.name}/${targetPlatform.architecture.name}") { from builderTask.outputFile } + // Add depend on build + jar.dependsOn builderTask +} + +// Helper class to wrap ant dowload task +class MyDownload extends DefaultTask { + @Input + String sourceUrl + + @OutputFile + File target + + @TaskAction + void download() { + ant.get(src: sourceUrl, dest: target) + } +} + + +// ANDROID NDK BUILD + +// Copy Bullet files to jni directory +task copyBullet(type: Copy) { + def sourceDir = file(bulletSrcPath) + def outputDir = file(jniPath) + + from sourceDir + into outputDir +} +copyBullet.dependsOn { + def bulletUnzipDir = new File(project.projectDir.absolutePath + File.separator + bulletFolder) + if (!bulletUnzipDir.isDirectory()) { + unzipBullet + } +} + +// Copy jME cpp native files to jni directory +task copyJmeCpp(type: Copy, dependsOn:copyBullet) { + def sourceDir = file(jmeCppPath) + def outputDir = file(jniPath) + + from sourceDir + into outputDir +} + +// Copy jME android native files to jni directory +task copyJmeAndroid(type: Copy, dependsOn:copyJmeCpp) { + def sourceDir = file(jmeAndroidPath) + def outputDir = file(jniPath) + + from sourceDir + into outputDir +} + +task buildNative(type: Exec, dependsOn:copyJmeAndroid) { + String ndkBuildFile = "ndk-build" + // if windows, use ndk-build.cmd instead + if (System.properties['os.name'].toLowerCase().contains('windows')) { + ndkBuildFile = "ndk-build.cmd" + } + + String ndkBuildPath = ndkPath + File.separator + ndkBuildFile + //Use the environment variable for the NDK location if defined + if (System.env.ANDROID_NDK != null) { + ndkBuildPath = System.env.ANDROID_NDK + File.separator + ndkBuildFile + } + + // need to target android-9 so the ndk can pull in the opensl library + args 'TARGET_PLATFORM=android-9' + workingDir ndkWorkingPath + executable ndkBuildPath +} + +task jarAndroidLibs(type: Jar, dependsOn:buildNative) { + String jarName = project.name + '-android' + from ndkOutputPath + into('lib') + baseName = jarName +} +//println jar.archiveName +//println relativePath(jar.destinationDir) +//println relativePath(jar.archivePath) +//println jarAndroidLibs.archiveName +//println relativePath(jarAndroidLibs.destinationDir) +//println relativePath(jarAndroidLibs.archivePath) + +jar.dependsOn { + def ndkDir = new File(ndkPath) + if (ndkDir.isDirectory()) { + buildNative + } +} +jar.dependsOn jarAndroidLibs + +//adds files into existing jar file +//jar.into("lib") { from ndkOutputPath } + + +artifacts { + archives jarAndroidLibs +} diff --git a/jme3-bullet-native/src/native/android/Android.mk b/jme3-bullet-native/src/native/android/Android.mk new file mode 100644 index 000000000..cfa2c0012 --- /dev/null +++ b/jme3-bullet-native/src/native/android/Android.mk @@ -0,0 +1,68 @@ +# /* +# Bullet Continuous Collision Detection and Physics Library for Android NDK +# Copyright (c) 2006-2009 Noritsuna Imamura http://www.siprop.org/ +# +# This software is provided 'as-is', without any express or implied warranty. +# In no event will the authors be held liable for any damages arising from the use of this software. +# Permission is granted to anyone to use this software for any purpose, +# including commercial applications, and to alter it and redistribute it freely, +# subject to the following restrictions: +# +# 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. +# 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. +# 3. This notice may not be removed or altered from any source distribution. +# */ +LOCAL_PATH:= $(call my-dir) +JME3_PATH:= ${LOCAL_PATH}/../ +BULLET_PATH:= ${LOCAL_PATH}/../ + +include $(CLEAR_VARS) + +LOCAL_MODULE := bulletjme +LOCAL_C_INCLUDES := $(BULLET_PATH)/\ + $(BULLET_PATH)/BulletCollision\ + $(BULLET_PATH)/BulletCollision/BroadphaseCollision\ + $(BULLET_PATH)/BulletCollision/CollisionDispatch\ + $(BULLET_PATH)/BulletCollision/CollisionShapes\ + $(BULLET_PATH)/BulletCollision/NarrowPhaseCollision\ + $(BULLET_PATH)/BulletCollision/Gimpact\ + $(BULLET_PATH)/BulletDynamics\ + $(BULLET_PATH)/BulletDynamics/ConstraintSolver\ + $(BULLET_PATH)/BulletDynamics/Dynamics\ + $(BULLET_PATH)/BulletDynamics/Vehicle\ + $(BULLET_PATH)/BulletDynamics/Character\ + $(BULLET_PATH)/BulletMultiThreaded\ + $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers\ + $(BULLET_PATH)/BulletMultiThreaded/SpuNarrowPhaseCollisionTask\ + $(BULLET_PATH)/BulletMultiThreaded/SpuSampleTask\ + $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/CPU\ + $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/DX11\ + $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL\ + $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/DX11/HLSL\ + $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/AMD\ + $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/Apple\ + $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL\ + $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/NVidia\ + $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC\ + $(BULLET_PATH)/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10\ + $(BULLET_PATH)/LinearMath\ + $(BULLET_PATH)/BulletSoftBody\ + $(BULLET_PATH)/LinearMath\ + $(BULLET_PATH)/MiniCL\ + $(BULLET_PATH)/MiniCL/MiniCLTask\ + $(BULLET_PATH)/vectormath\ + $(BULLET_PATH)/vectormath/scalar\ + $(BULLET_PATH)/vectormath/sse\ + $(BULLET_PATH)/vectormath/neon + +LOCAL_CFLAGS := $(LOCAL_C_INCLUDES:%=-I%) +LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -ldl -lm -llog + +FILE_LIST := $(wildcard $(LOCAL_PATH)/*.cpp) +FILE_LIST += $(wildcard $(LOCAL_PATH)/**/*.cpp) +FILE_LIST += $(wildcard $(LOCAL_PATH)/**/**/*.cpp) +LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%) + +#LOCAL_SRC_FILES := $(JME3_PATH) + +include $(BUILD_SHARED_LIBRARY) \ No newline at end of file diff --git a/engine/src/bullet-native/android/Application.mk b/jme3-bullet-native/src/native/android/Application.mk similarity index 100% rename from engine/src/bullet-native/android/Application.mk rename to jme3-bullet-native/src/native/android/Application.mk diff --git a/engine/src/bullet-native/com_jme3_bullet_PhysicsSpace.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_PhysicsSpace.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_PhysicsSpace.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_PhysicsSpace.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_PhysicsSpace.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_PhysicsSpace.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_PhysicsSpace.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_PhysicsSpace.h diff --git a/engine/src/bullet-native/com_jme3_bullet_PhysicsSpace_BroadphaseType.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_PhysicsSpace_BroadphaseType.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_PhysicsSpace_BroadphaseType.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_PhysicsSpace_BroadphaseType.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_PhysicsCollisionEvent.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_PhysicsCollisionEvent.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_PhysicsCollisionEvent.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_PhysicsCollisionEvent.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_PhysicsCollisionEvent.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_PhysicsCollisionEvent.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_PhysicsCollisionEvent.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_PhysicsCollisionEvent.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_PhysicsCollisionObject.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_PhysicsCollisionObject.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_PhysicsCollisionObject.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_PhysicsCollisionObject.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_PhysicsCollisionObject.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_PhysicsCollisionObject.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_PhysicsCollisionObject.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_PhysicsCollisionObject.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_BoxCollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_BoxCollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_BoxCollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_BoxCollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_BoxCollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_BoxCollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_BoxCollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_BoxCollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_CapsuleCollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CapsuleCollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_CapsuleCollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CapsuleCollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_CapsuleCollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CapsuleCollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_CapsuleCollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CapsuleCollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_CollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_CollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_CollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_CollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_CompoundCollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CompoundCollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_CompoundCollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CompoundCollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_CompoundCollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CompoundCollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_CompoundCollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CompoundCollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_ConeCollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_ConeCollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_ConeCollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_ConeCollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_ConeCollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_ConeCollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_ConeCollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_ConeCollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_CylinderCollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CylinderCollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_CylinderCollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CylinderCollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_CylinderCollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CylinderCollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_CylinderCollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_CylinderCollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_GImpactCollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_GImpactCollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_GImpactCollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_GImpactCollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_GImpactCollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_GImpactCollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_GImpactCollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_GImpactCollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_HeightfieldCollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_HeightfieldCollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_HeightfieldCollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_HeightfieldCollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_HeightfieldCollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_HeightfieldCollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_HeightfieldCollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_HeightfieldCollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_HullCollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_HullCollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_HullCollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_HullCollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_HullCollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_HullCollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_HullCollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_HullCollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_MeshCollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_MeshCollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_MeshCollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_MeshCollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_MeshCollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_MeshCollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_MeshCollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_MeshCollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_PlaneCollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_PlaneCollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_PlaneCollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_PlaneCollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_PlaneCollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_PlaneCollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_PlaneCollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_PlaneCollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_SimplexCollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_SimplexCollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_SimplexCollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_SimplexCollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_SimplexCollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_SimplexCollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_SimplexCollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_SimplexCollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_SphereCollisionShape.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_SphereCollisionShape.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_SphereCollisionShape.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_SphereCollisionShape.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_collision_shapes_SphereCollisionShape.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_SphereCollisionShape.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_collision_shapes_SphereCollisionShape.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_collision_shapes_SphereCollisionShape.h diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_ConeJoint.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_ConeJoint.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_ConeJoint.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_ConeJoint.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_ConeJoint.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_ConeJoint.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_ConeJoint.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_ConeJoint.h diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_HingeJoint.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_HingeJoint.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_HingeJoint.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_HingeJoint.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_HingeJoint.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_HingeJoint.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_HingeJoint.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_HingeJoint.h diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_PhysicsJoint.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_PhysicsJoint.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_PhysicsJoint.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_PhysicsJoint.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_PhysicsJoint.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_PhysicsJoint.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_PhysicsJoint.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_PhysicsJoint.h diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_Point2PointJoint.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_Point2PointJoint.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_Point2PointJoint.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_Point2PointJoint.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_Point2PointJoint.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_Point2PointJoint.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_Point2PointJoint.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_Point2PointJoint.h diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_SixDofJoint.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_SixDofJoint.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_SixDofJoint.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_SixDofJoint.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_SixDofJoint.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_SixDofJoint.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_SixDofJoint.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_SixDofJoint.h diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_SixDofSpringJoint.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_SixDofSpringJoint.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_SixDofSpringJoint.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_SixDofSpringJoint.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_SixDofSpringJoint.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_SixDofSpringJoint.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_SixDofSpringJoint.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_SixDofSpringJoint.h diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_SliderJoint.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_SliderJoint.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_SliderJoint.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_SliderJoint.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_SliderJoint.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_SliderJoint.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_SliderJoint.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_SliderJoint.h diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_motors_RotationalLimitMotor.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_motors_RotationalLimitMotor.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_motors_RotationalLimitMotor.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_motors_RotationalLimitMotor.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_motors_RotationalLimitMotor.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_motors_RotationalLimitMotor.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_motors_RotationalLimitMotor.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_motors_RotationalLimitMotor.h diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_motors_TranslationalLimitMotor.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_motors_TranslationalLimitMotor.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_motors_TranslationalLimitMotor.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_motors_TranslationalLimitMotor.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_joints_motors_TranslationalLimitMotor.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_motors_TranslationalLimitMotor.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_joints_motors_TranslationalLimitMotor.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_joints_motors_TranslationalLimitMotor.h diff --git a/engine/src/bullet-native/com_jme3_bullet_objects_PhysicsCharacter.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsCharacter.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_objects_PhysicsCharacter.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsCharacter.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_objects_PhysicsCharacter.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsCharacter.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_objects_PhysicsCharacter.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsCharacter.h diff --git a/engine/src/bullet-native/com_jme3_bullet_objects_PhysicsGhostObject.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsGhostObject.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_objects_PhysicsGhostObject.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsGhostObject.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_objects_PhysicsGhostObject.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsGhostObject.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_objects_PhysicsGhostObject.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsGhostObject.h diff --git a/engine/src/bullet-native/com_jme3_bullet_objects_PhysicsRigidBody.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsRigidBody.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_objects_PhysicsRigidBody.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsRigidBody.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_objects_PhysicsRigidBody.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsRigidBody.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_objects_PhysicsRigidBody.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsRigidBody.h diff --git a/engine/src/bullet-native/com_jme3_bullet_objects_PhysicsVehicle.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsVehicle.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_objects_PhysicsVehicle.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsVehicle.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_objects_PhysicsVehicle.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsVehicle.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_objects_PhysicsVehicle.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_PhysicsVehicle.h diff --git a/engine/src/bullet-native/com_jme3_bullet_objects_VehicleWheel.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_VehicleWheel.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_objects_VehicleWheel.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_VehicleWheel.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_objects_VehicleWheel.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_VehicleWheel.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_objects_VehicleWheel.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_VehicleWheel.h diff --git a/engine/src/bullet-native/com_jme3_bullet_objects_infos_RigidBodyMotionState.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_infos_RigidBodyMotionState.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_objects_infos_RigidBodyMotionState.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_infos_RigidBodyMotionState.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_objects_infos_RigidBodyMotionState.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_infos_RigidBodyMotionState.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_objects_infos_RigidBodyMotionState.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_objects_infos_RigidBodyMotionState.h diff --git a/engine/src/bullet-native/com_jme3_bullet_util_DebugShapeFactory.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_util_DebugShapeFactory.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_util_DebugShapeFactory.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_util_DebugShapeFactory.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_util_DebugShapeFactory.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_util_DebugShapeFactory.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_util_DebugShapeFactory.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_util_DebugShapeFactory.h diff --git a/engine/src/bullet-native/com_jme3_bullet_util_NativeMeshUtil.cpp b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_util_NativeMeshUtil.cpp similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_util_NativeMeshUtil.cpp rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_util_NativeMeshUtil.cpp diff --git a/engine/src/bullet-native/com_jme3_bullet_util_NativeMeshUtil.h b/jme3-bullet-native/src/native/cpp/com_jme3_bullet_util_NativeMeshUtil.h similarity index 100% rename from engine/src/bullet-native/com_jme3_bullet_util_NativeMeshUtil.h rename to jme3-bullet-native/src/native/cpp/com_jme3_bullet_util_NativeMeshUtil.h diff --git a/engine/src/bullet-native/jmeBulletUtil.cpp b/jme3-bullet-native/src/native/cpp/jmeBulletUtil.cpp similarity index 100% rename from engine/src/bullet-native/jmeBulletUtil.cpp rename to jme3-bullet-native/src/native/cpp/jmeBulletUtil.cpp diff --git a/engine/src/bullet-native/jmeBulletUtil.h b/jme3-bullet-native/src/native/cpp/jmeBulletUtil.h similarity index 100% rename from engine/src/bullet-native/jmeBulletUtil.h rename to jme3-bullet-native/src/native/cpp/jmeBulletUtil.h diff --git a/engine/src/bullet-native/jmeClasses.cpp b/jme3-bullet-native/src/native/cpp/jmeClasses.cpp similarity index 100% rename from engine/src/bullet-native/jmeClasses.cpp rename to jme3-bullet-native/src/native/cpp/jmeClasses.cpp diff --git a/engine/src/bullet-native/jmeClasses.h b/jme3-bullet-native/src/native/cpp/jmeClasses.h similarity index 100% rename from engine/src/bullet-native/jmeClasses.h rename to jme3-bullet-native/src/native/cpp/jmeClasses.h diff --git a/engine/src/bullet-native/jmeMotionState.cpp b/jme3-bullet-native/src/native/cpp/jmeMotionState.cpp similarity index 100% rename from engine/src/bullet-native/jmeMotionState.cpp rename to jme3-bullet-native/src/native/cpp/jmeMotionState.cpp diff --git a/engine/src/bullet-native/jmeMotionState.h b/jme3-bullet-native/src/native/cpp/jmeMotionState.h similarity index 100% rename from engine/src/bullet-native/jmeMotionState.h rename to jme3-bullet-native/src/native/cpp/jmeMotionState.h diff --git a/engine/src/bullet-native/jmePhysicsSpace.cpp b/jme3-bullet-native/src/native/cpp/jmePhysicsSpace.cpp similarity index 100% rename from engine/src/bullet-native/jmePhysicsSpace.cpp rename to jme3-bullet-native/src/native/cpp/jmePhysicsSpace.cpp diff --git a/engine/src/bullet-native/jmePhysicsSpace.h b/jme3-bullet-native/src/native/cpp/jmePhysicsSpace.h similarity index 100% rename from engine/src/bullet-native/jmePhysicsSpace.h rename to jme3-bullet-native/src/native/cpp/jmePhysicsSpace.h diff --git a/jme3-bullet/build.gradle b/jme3-bullet/build.gradle new file mode 100644 index 000000000..bcb1d50cc --- /dev/null +++ b/jme3-bullet/build.gradle @@ -0,0 +1,17 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +sourceSets { + main { + java { + srcDir 'src/main/java' + srcDir 'src/common/java' + } + } +} + +dependencies { + compile project(':jme3-core') + compile project(':jme3-terrain') +} diff --git a/engine/src/bullet-common/com/jme3/bullet/BulletAppState.java b/jme3-bullet/src/common/java/com/jme3/bullet/BulletAppState.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/BulletAppState.java rename to jme3-bullet/src/common/java/com/jme3/bullet/BulletAppState.java diff --git a/engine/src/bullet-common/com/jme3/bullet/PhysicsTickListener.java b/jme3-bullet/src/common/java/com/jme3/bullet/PhysicsTickListener.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/PhysicsTickListener.java rename to jme3-bullet/src/common/java/com/jme3/bullet/PhysicsTickListener.java diff --git a/engine/src/bullet-common/com/jme3/bullet/collision/PhysicsCollisionGroupListener.java b/jme3-bullet/src/common/java/com/jme3/bullet/collision/PhysicsCollisionGroupListener.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/collision/PhysicsCollisionGroupListener.java rename to jme3-bullet/src/common/java/com/jme3/bullet/collision/PhysicsCollisionGroupListener.java diff --git a/engine/src/bullet-common/com/jme3/bullet/collision/PhysicsCollisionListener.java b/jme3-bullet/src/common/java/com/jme3/bullet/collision/PhysicsCollisionListener.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/collision/PhysicsCollisionListener.java rename to jme3-bullet/src/common/java/com/jme3/bullet/collision/PhysicsCollisionListener.java diff --git a/engine/src/bullet-common/com/jme3/bullet/collision/RagdollCollisionListener.java b/jme3-bullet/src/common/java/com/jme3/bullet/collision/RagdollCollisionListener.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/collision/RagdollCollisionListener.java rename to jme3-bullet/src/common/java/com/jme3/bullet/collision/RagdollCollisionListener.java diff --git a/engine/src/bullet-common/com/jme3/bullet/collision/shapes/infos/ChildCollisionShape.java b/jme3-bullet/src/common/java/com/jme3/bullet/collision/shapes/infos/ChildCollisionShape.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/collision/shapes/infos/ChildCollisionShape.java rename to jme3-bullet/src/common/java/com/jme3/bullet/collision/shapes/infos/ChildCollisionShape.java diff --git a/engine/src/bullet-common/com/jme3/bullet/control/AbstractPhysicsControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/AbstractPhysicsControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/control/AbstractPhysicsControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/control/AbstractPhysicsControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/control/BetterCharacterControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/BetterCharacterControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/control/BetterCharacterControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/control/BetterCharacterControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/control/CharacterControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/CharacterControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/control/CharacterControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/control/CharacterControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/control/GhostControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/GhostControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/control/GhostControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/control/GhostControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/control/KinematicRagdollControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/KinematicRagdollControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/control/KinematicRagdollControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/control/KinematicRagdollControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/control/PhysicsControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/PhysicsControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/control/PhysicsControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/control/PhysicsControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/control/RigidBodyControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/RigidBodyControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/control/RigidBodyControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/control/RigidBodyControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/control/VehicleControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/VehicleControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/control/VehicleControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/control/VehicleControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/control/ragdoll/HumanoidRagdollPreset.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/ragdoll/HumanoidRagdollPreset.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/control/ragdoll/HumanoidRagdollPreset.java rename to jme3-bullet/src/common/java/com/jme3/bullet/control/ragdoll/HumanoidRagdollPreset.java diff --git a/engine/src/bullet-common/com/jme3/bullet/control/ragdoll/RagdollPreset.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/ragdoll/RagdollPreset.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/control/ragdoll/RagdollPreset.java rename to jme3-bullet/src/common/java/com/jme3/bullet/control/ragdoll/RagdollPreset.java diff --git a/engine/src/bullet-common/com/jme3/bullet/control/ragdoll/RagdollUtils.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/ragdoll/RagdollUtils.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/control/ragdoll/RagdollUtils.java rename to jme3-bullet/src/common/java/com/jme3/bullet/control/ragdoll/RagdollUtils.java diff --git a/engine/src/bullet-common/com/jme3/bullet/debug/AbstractPhysicsDebugControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/debug/AbstractPhysicsDebugControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/debug/AbstractPhysicsDebugControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/debug/AbstractPhysicsDebugControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/debug/BulletCharacterDebugControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/debug/BulletCharacterDebugControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/debug/BulletCharacterDebugControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/debug/BulletCharacterDebugControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/debug/BulletDebugAppState.java b/jme3-bullet/src/common/java/com/jme3/bullet/debug/BulletDebugAppState.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/debug/BulletDebugAppState.java rename to jme3-bullet/src/common/java/com/jme3/bullet/debug/BulletDebugAppState.java diff --git a/engine/src/bullet-common/com/jme3/bullet/debug/BulletGhostObjectDebugControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/debug/BulletGhostObjectDebugControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/debug/BulletGhostObjectDebugControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/debug/BulletGhostObjectDebugControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/debug/BulletJointDebugControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/debug/BulletJointDebugControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/debug/BulletJointDebugControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/debug/BulletJointDebugControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/debug/BulletRigidBodyDebugControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/debug/BulletRigidBodyDebugControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/debug/BulletRigidBodyDebugControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/debug/BulletRigidBodyDebugControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/debug/BulletVehicleDebugControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/debug/BulletVehicleDebugControl.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/debug/BulletVehicleDebugControl.java rename to jme3-bullet/src/common/java/com/jme3/bullet/debug/BulletVehicleDebugControl.java diff --git a/engine/src/bullet-common/com/jme3/bullet/debug/DebugTools.java b/jme3-bullet/src/common/java/com/jme3/bullet/debug/DebugTools.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/debug/DebugTools.java rename to jme3-bullet/src/common/java/com/jme3/bullet/debug/DebugTools.java diff --git a/engine/src/bullet-common/com/jme3/bullet/util/CollisionShapeFactory.java b/jme3-bullet/src/common/java/com/jme3/bullet/util/CollisionShapeFactory.java similarity index 100% rename from engine/src/bullet-common/com/jme3/bullet/util/CollisionShapeFactory.java rename to jme3-bullet/src/common/java/com/jme3/bullet/util/CollisionShapeFactory.java diff --git a/engine/src/bullet/com/jme3/bullet/PhysicsSpace.java b/jme3-bullet/src/main/java/com/jme3/bullet/PhysicsSpace.java similarity index 99% rename from engine/src/bullet/com/jme3/bullet/PhysicsSpace.java rename to jme3-bullet/src/main/java/com/jme3/bullet/PhysicsSpace.java index fd12dcb89..34d504744 100644 --- a/engine/src/bullet/com/jme3/bullet/PhysicsSpace.java +++ b/jme3-bullet/src/main/java/com/jme3/bullet/PhysicsSpace.java @@ -190,7 +190,6 @@ public class PhysicsSpace { private void preTick_native(float f) { AppTask task = pQueue.poll(); - task = pQueue.poll(); while (task != null) { while (task.isCancelled()) { task = pQueue.poll(); diff --git a/engine/src/bullet/com/jme3/bullet/collision/PhysicsCollisionEvent.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionEvent.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/PhysicsCollisionEvent.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionEvent.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/PhysicsCollisionEventFactory.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionEventFactory.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/PhysicsCollisionEventFactory.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionEventFactory.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/PhysicsCollisionObject.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionObject.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/PhysicsCollisionObject.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionObject.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/PhysicsRayTestResult.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsRayTestResult.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/PhysicsRayTestResult.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsRayTestResult.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/PhysicsSweepTestResult.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsSweepTestResult.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/PhysicsSweepTestResult.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsSweepTestResult.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/BoxCollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/BoxCollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/BoxCollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/BoxCollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/CapsuleCollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/CapsuleCollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/CapsuleCollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/CapsuleCollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/CollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/CollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/CollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/CollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/CompoundCollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/CompoundCollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/CompoundCollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/CompoundCollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/ConeCollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/ConeCollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/ConeCollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/ConeCollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/CylinderCollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/CylinderCollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/CylinderCollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/CylinderCollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/GImpactCollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/GImpactCollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/GImpactCollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/GImpactCollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/HeightfieldCollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/HeightfieldCollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/HeightfieldCollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/HeightfieldCollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/HullCollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/HullCollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/HullCollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/HullCollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/MeshCollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/MeshCollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/MeshCollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/MeshCollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/PlaneCollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/PlaneCollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/PlaneCollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/PlaneCollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/SimplexCollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/SimplexCollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/SimplexCollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/SimplexCollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/collision/shapes/SphereCollisionShape.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/SphereCollisionShape.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/collision/shapes/SphereCollisionShape.java rename to jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/SphereCollisionShape.java diff --git a/engine/src/bullet/com/jme3/bullet/joints/ConeJoint.java b/jme3-bullet/src/main/java/com/jme3/bullet/joints/ConeJoint.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/joints/ConeJoint.java rename to jme3-bullet/src/main/java/com/jme3/bullet/joints/ConeJoint.java diff --git a/engine/src/bullet/com/jme3/bullet/joints/HingeJoint.java b/jme3-bullet/src/main/java/com/jme3/bullet/joints/HingeJoint.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/joints/HingeJoint.java rename to jme3-bullet/src/main/java/com/jme3/bullet/joints/HingeJoint.java diff --git a/engine/src/bullet/com/jme3/bullet/joints/PhysicsJoint.java b/jme3-bullet/src/main/java/com/jme3/bullet/joints/PhysicsJoint.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/joints/PhysicsJoint.java rename to jme3-bullet/src/main/java/com/jme3/bullet/joints/PhysicsJoint.java diff --git a/engine/src/bullet/com/jme3/bullet/joints/Point2PointJoint.java b/jme3-bullet/src/main/java/com/jme3/bullet/joints/Point2PointJoint.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/joints/Point2PointJoint.java rename to jme3-bullet/src/main/java/com/jme3/bullet/joints/Point2PointJoint.java diff --git a/engine/src/bullet/com/jme3/bullet/joints/SixDofJoint.java b/jme3-bullet/src/main/java/com/jme3/bullet/joints/SixDofJoint.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/joints/SixDofJoint.java rename to jme3-bullet/src/main/java/com/jme3/bullet/joints/SixDofJoint.java diff --git a/engine/src/bullet/com/jme3/bullet/joints/SixDofSpringJoint.java b/jme3-bullet/src/main/java/com/jme3/bullet/joints/SixDofSpringJoint.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/joints/SixDofSpringJoint.java rename to jme3-bullet/src/main/java/com/jme3/bullet/joints/SixDofSpringJoint.java diff --git a/engine/src/bullet/com/jme3/bullet/joints/SliderJoint.java b/jme3-bullet/src/main/java/com/jme3/bullet/joints/SliderJoint.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/joints/SliderJoint.java rename to jme3-bullet/src/main/java/com/jme3/bullet/joints/SliderJoint.java diff --git a/engine/src/bullet/com/jme3/bullet/joints/motors/RotationalLimitMotor.java b/jme3-bullet/src/main/java/com/jme3/bullet/joints/motors/RotationalLimitMotor.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/joints/motors/RotationalLimitMotor.java rename to jme3-bullet/src/main/java/com/jme3/bullet/joints/motors/RotationalLimitMotor.java diff --git a/engine/src/bullet/com/jme3/bullet/joints/motors/TranslationalLimitMotor.java b/jme3-bullet/src/main/java/com/jme3/bullet/joints/motors/TranslationalLimitMotor.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/joints/motors/TranslationalLimitMotor.java rename to jme3-bullet/src/main/java/com/jme3/bullet/joints/motors/TranslationalLimitMotor.java diff --git a/engine/src/bullet/com/jme3/bullet/objects/PhysicsCharacter.java b/jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsCharacter.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/objects/PhysicsCharacter.java rename to jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsCharacter.java diff --git a/engine/src/bullet/com/jme3/bullet/objects/PhysicsGhostObject.java b/jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsGhostObject.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/objects/PhysicsGhostObject.java rename to jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsGhostObject.java diff --git a/engine/src/bullet/com/jme3/bullet/objects/PhysicsRigidBody.java b/jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsRigidBody.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/objects/PhysicsRigidBody.java rename to jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsRigidBody.java diff --git a/engine/src/bullet/com/jme3/bullet/objects/PhysicsVehicle.java b/jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsVehicle.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/objects/PhysicsVehicle.java rename to jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsVehicle.java diff --git a/engine/src/bullet/com/jme3/bullet/objects/VehicleWheel.java b/jme3-bullet/src/main/java/com/jme3/bullet/objects/VehicleWheel.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/objects/VehicleWheel.java rename to jme3-bullet/src/main/java/com/jme3/bullet/objects/VehicleWheel.java diff --git a/engine/src/bullet/com/jme3/bullet/objects/infos/RigidBodyMotionState.java b/jme3-bullet/src/main/java/com/jme3/bullet/objects/infos/RigidBodyMotionState.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/objects/infos/RigidBodyMotionState.java rename to jme3-bullet/src/main/java/com/jme3/bullet/objects/infos/RigidBodyMotionState.java diff --git a/engine/src/bullet/com/jme3/bullet/objects/infos/VehicleTuning.java b/jme3-bullet/src/main/java/com/jme3/bullet/objects/infos/VehicleTuning.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/objects/infos/VehicleTuning.java rename to jme3-bullet/src/main/java/com/jme3/bullet/objects/infos/VehicleTuning.java diff --git a/engine/src/bullet/com/jme3/bullet/util/DebugMeshCallback.java b/jme3-bullet/src/main/java/com/jme3/bullet/util/DebugMeshCallback.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/util/DebugMeshCallback.java rename to jme3-bullet/src/main/java/com/jme3/bullet/util/DebugMeshCallback.java diff --git a/engine/src/bullet/com/jme3/bullet/util/DebugShapeFactory.java b/jme3-bullet/src/main/java/com/jme3/bullet/util/DebugShapeFactory.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/util/DebugShapeFactory.java rename to jme3-bullet/src/main/java/com/jme3/bullet/util/DebugShapeFactory.java diff --git a/engine/src/bullet/com/jme3/bullet/util/NativeMeshUtil.java b/jme3-bullet/src/main/java/com/jme3/bullet/util/NativeMeshUtil.java similarity index 100% rename from engine/src/bullet/com/jme3/bullet/util/NativeMeshUtil.java rename to jme3-bullet/src/main/java/com/jme3/bullet/util/NativeMeshUtil.java diff --git a/jme3-core/build.gradle b/jme3-core/build.gradle new file mode 100644 index 000000000..c5d2b7d2a --- /dev/null +++ b/jme3-core/build.gradle @@ -0,0 +1,16 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +sourceSets { + main { + java { + srcDir 'src/main/java' + srcDir 'src/plugins/java' + srcDir 'src/tools/java' + } + } +} + +dependencies { +} diff --git a/engine/src/core/checkers/quals/DefaultLocation.java b/jme3-core/src/main/java/checkers/quals/DefaultLocation.java similarity index 100% rename from engine/src/core/checkers/quals/DefaultLocation.java rename to jme3-core/src/main/java/checkers/quals/DefaultLocation.java diff --git a/engine/src/core/checkers/quals/DefaultQualifier.java b/jme3-core/src/main/java/checkers/quals/DefaultQualifier.java similarity index 100% rename from engine/src/core/checkers/quals/DefaultQualifier.java rename to jme3-core/src/main/java/checkers/quals/DefaultQualifier.java diff --git a/engine/src/core/checkers/quals/DefaultQualifierInHierarchy.java b/jme3-core/src/main/java/checkers/quals/DefaultQualifierInHierarchy.java similarity index 100% rename from engine/src/core/checkers/quals/DefaultQualifierInHierarchy.java rename to jme3-core/src/main/java/checkers/quals/DefaultQualifierInHierarchy.java diff --git a/engine/src/core/checkers/quals/DefaultQualifiers.java b/jme3-core/src/main/java/checkers/quals/DefaultQualifiers.java similarity index 100% rename from engine/src/core/checkers/quals/DefaultQualifiers.java rename to jme3-core/src/main/java/checkers/quals/DefaultQualifiers.java diff --git a/engine/src/core/checkers/quals/Dependent.java b/jme3-core/src/main/java/checkers/quals/Dependent.java similarity index 100% rename from engine/src/core/checkers/quals/Dependent.java rename to jme3-core/src/main/java/checkers/quals/Dependent.java diff --git a/engine/src/core/checkers/quals/SubtypeOf.java b/jme3-core/src/main/java/checkers/quals/SubtypeOf.java similarity index 100% rename from engine/src/core/checkers/quals/SubtypeOf.java rename to jme3-core/src/main/java/checkers/quals/SubtypeOf.java diff --git a/engine/src/core/checkers/quals/TypeQualifier.java b/jme3-core/src/main/java/checkers/quals/TypeQualifier.java similarity index 100% rename from engine/src/core/checkers/quals/TypeQualifier.java rename to jme3-core/src/main/java/checkers/quals/TypeQualifier.java diff --git a/engine/src/core/checkers/quals/Unqualified.java b/jme3-core/src/main/java/checkers/quals/Unqualified.java similarity index 100% rename from engine/src/core/checkers/quals/Unqualified.java rename to jme3-core/src/main/java/checkers/quals/Unqualified.java diff --git a/engine/src/core/checkers/quals/Unused.java b/jme3-core/src/main/java/checkers/quals/Unused.java similarity index 100% rename from engine/src/core/checkers/quals/Unused.java rename to jme3-core/src/main/java/checkers/quals/Unused.java diff --git a/engine/src/core/checkers/quals/package-info.java b/jme3-core/src/main/java/checkers/quals/package-info.java similarity index 100% rename from engine/src/core/checkers/quals/package-info.java rename to jme3-core/src/main/java/checkers/quals/package-info.java diff --git a/engine/src/core/com/jme3/animation/AnimChannel.java b/jme3-core/src/main/java/com/jme3/animation/AnimChannel.java similarity index 100% rename from engine/src/core/com/jme3/animation/AnimChannel.java rename to jme3-core/src/main/java/com/jme3/animation/AnimChannel.java diff --git a/engine/src/core/com/jme3/animation/AnimControl.java b/jme3-core/src/main/java/com/jme3/animation/AnimControl.java similarity index 100% rename from engine/src/core/com/jme3/animation/AnimControl.java rename to jme3-core/src/main/java/com/jme3/animation/AnimControl.java diff --git a/engine/src/core/com/jme3/animation/AnimEventListener.java b/jme3-core/src/main/java/com/jme3/animation/AnimEventListener.java similarity index 100% rename from engine/src/core/com/jme3/animation/AnimEventListener.java rename to jme3-core/src/main/java/com/jme3/animation/AnimEventListener.java diff --git a/engine/src/core/com/jme3/animation/Animation.java b/jme3-core/src/main/java/com/jme3/animation/Animation.java similarity index 100% rename from engine/src/core/com/jme3/animation/Animation.java rename to jme3-core/src/main/java/com/jme3/animation/Animation.java diff --git a/engine/src/core/com/jme3/animation/AnimationFactory.java b/jme3-core/src/main/java/com/jme3/animation/AnimationFactory.java similarity index 100% rename from engine/src/core/com/jme3/animation/AnimationFactory.java rename to jme3-core/src/main/java/com/jme3/animation/AnimationFactory.java diff --git a/engine/src/core/com/jme3/animation/AnimationUtils.java b/jme3-core/src/main/java/com/jme3/animation/AnimationUtils.java similarity index 100% rename from engine/src/core/com/jme3/animation/AnimationUtils.java rename to jme3-core/src/main/java/com/jme3/animation/AnimationUtils.java diff --git a/engine/src/core/com/jme3/animation/AudioTrack.java b/jme3-core/src/main/java/com/jme3/animation/AudioTrack.java similarity index 100% rename from engine/src/core/com/jme3/animation/AudioTrack.java rename to jme3-core/src/main/java/com/jme3/animation/AudioTrack.java diff --git a/engine/src/core/com/jme3/animation/Bone.java b/jme3-core/src/main/java/com/jme3/animation/Bone.java similarity index 100% rename from engine/src/core/com/jme3/animation/Bone.java rename to jme3-core/src/main/java/com/jme3/animation/Bone.java diff --git a/engine/src/core/com/jme3/animation/BoneAnimation.java b/jme3-core/src/main/java/com/jme3/animation/BoneAnimation.java similarity index 100% rename from engine/src/core/com/jme3/animation/BoneAnimation.java rename to jme3-core/src/main/java/com/jme3/animation/BoneAnimation.java diff --git a/engine/src/core/com/jme3/animation/BoneTrack.java b/jme3-core/src/main/java/com/jme3/animation/BoneTrack.java similarity index 100% rename from engine/src/core/com/jme3/animation/BoneTrack.java rename to jme3-core/src/main/java/com/jme3/animation/BoneTrack.java diff --git a/engine/src/core/com/jme3/animation/ClonableTrack.java b/jme3-core/src/main/java/com/jme3/animation/ClonableTrack.java similarity index 100% rename from engine/src/core/com/jme3/animation/ClonableTrack.java rename to jme3-core/src/main/java/com/jme3/animation/ClonableTrack.java diff --git a/engine/src/core/com/jme3/animation/CompactArray.java b/jme3-core/src/main/java/com/jme3/animation/CompactArray.java similarity index 100% rename from engine/src/core/com/jme3/animation/CompactArray.java rename to jme3-core/src/main/java/com/jme3/animation/CompactArray.java diff --git a/engine/src/core/com/jme3/animation/CompactQuaternionArray.java b/jme3-core/src/main/java/com/jme3/animation/CompactQuaternionArray.java similarity index 100% rename from engine/src/core/com/jme3/animation/CompactQuaternionArray.java rename to jme3-core/src/main/java/com/jme3/animation/CompactQuaternionArray.java diff --git a/engine/src/core/com/jme3/animation/CompactVector3Array.java b/jme3-core/src/main/java/com/jme3/animation/CompactVector3Array.java similarity index 100% rename from engine/src/core/com/jme3/animation/CompactVector3Array.java rename to jme3-core/src/main/java/com/jme3/animation/CompactVector3Array.java diff --git a/engine/src/core/com/jme3/animation/EffectTrack.java b/jme3-core/src/main/java/com/jme3/animation/EffectTrack.java similarity index 100% rename from engine/src/core/com/jme3/animation/EffectTrack.java rename to jme3-core/src/main/java/com/jme3/animation/EffectTrack.java diff --git a/engine/src/core/com/jme3/animation/LoopMode.java b/jme3-core/src/main/java/com/jme3/animation/LoopMode.java similarity index 100% rename from engine/src/core/com/jme3/animation/LoopMode.java rename to jme3-core/src/main/java/com/jme3/animation/LoopMode.java diff --git a/engine/src/core/com/jme3/animation/Pose.java b/jme3-core/src/main/java/com/jme3/animation/Pose.java similarity index 100% rename from engine/src/core/com/jme3/animation/Pose.java rename to jme3-core/src/main/java/com/jme3/animation/Pose.java diff --git a/engine/src/core/com/jme3/animation/PoseTrack.java b/jme3-core/src/main/java/com/jme3/animation/PoseTrack.java similarity index 100% rename from engine/src/core/com/jme3/animation/PoseTrack.java rename to jme3-core/src/main/java/com/jme3/animation/PoseTrack.java diff --git a/engine/src/core/com/jme3/animation/Skeleton.java b/jme3-core/src/main/java/com/jme3/animation/Skeleton.java similarity index 100% rename from engine/src/core/com/jme3/animation/Skeleton.java rename to jme3-core/src/main/java/com/jme3/animation/Skeleton.java diff --git a/engine/src/core/com/jme3/animation/SkeletonControl.java b/jme3-core/src/main/java/com/jme3/animation/SkeletonControl.java similarity index 100% rename from engine/src/core/com/jme3/animation/SkeletonControl.java rename to jme3-core/src/main/java/com/jme3/animation/SkeletonControl.java diff --git a/engine/src/core/com/jme3/animation/SpatialAnimation.java b/jme3-core/src/main/java/com/jme3/animation/SpatialAnimation.java similarity index 100% rename from engine/src/core/com/jme3/animation/SpatialAnimation.java rename to jme3-core/src/main/java/com/jme3/animation/SpatialAnimation.java diff --git a/engine/src/core/com/jme3/animation/SpatialTrack.java b/jme3-core/src/main/java/com/jme3/animation/SpatialTrack.java similarity index 100% rename from engine/src/core/com/jme3/animation/SpatialTrack.java rename to jme3-core/src/main/java/com/jme3/animation/SpatialTrack.java diff --git a/engine/src/core/com/jme3/animation/Track.java b/jme3-core/src/main/java/com/jme3/animation/Track.java similarity index 100% rename from engine/src/core/com/jme3/animation/Track.java rename to jme3-core/src/main/java/com/jme3/animation/Track.java diff --git a/engine/src/core/com/jme3/animation/TrackInfo.java b/jme3-core/src/main/java/com/jme3/animation/TrackInfo.java similarity index 100% rename from engine/src/core/com/jme3/animation/TrackInfo.java rename to jme3-core/src/main/java/com/jme3/animation/TrackInfo.java diff --git a/engine/src/core/com/jme3/animation/package.html b/jme3-core/src/main/java/com/jme3/animation/package.html similarity index 100% rename from engine/src/core/com/jme3/animation/package.html rename to jme3-core/src/main/java/com/jme3/animation/package.html diff --git a/engine/src/core/com/jme3/app/AppTask.java b/jme3-core/src/main/java/com/jme3/app/AppTask.java similarity index 100% rename from engine/src/core/com/jme3/app/AppTask.java rename to jme3-core/src/main/java/com/jme3/app/AppTask.java diff --git a/engine/src/core/com/jme3/app/Application.java b/jme3-core/src/main/java/com/jme3/app/Application.java similarity index 100% rename from engine/src/core/com/jme3/app/Application.java rename to jme3-core/src/main/java/com/jme3/app/Application.java diff --git a/engine/src/core/com/jme3/app/ChaseCameraAppState.java b/jme3-core/src/main/java/com/jme3/app/ChaseCameraAppState.java similarity index 100% rename from engine/src/core/com/jme3/app/ChaseCameraAppState.java rename to jme3-core/src/main/java/com/jme3/app/ChaseCameraAppState.java diff --git a/engine/src/core/com/jme3/app/DebugKeysAppState.java b/jme3-core/src/main/java/com/jme3/app/DebugKeysAppState.java similarity index 100% rename from engine/src/core/com/jme3/app/DebugKeysAppState.java rename to jme3-core/src/main/java/com/jme3/app/DebugKeysAppState.java diff --git a/engine/src/core/com/jme3/app/FlyCamAppState.java b/jme3-core/src/main/java/com/jme3/app/FlyCamAppState.java similarity index 100% rename from engine/src/core/com/jme3/app/FlyCamAppState.java rename to jme3-core/src/main/java/com/jme3/app/FlyCamAppState.java diff --git a/engine/src/core/com/jme3/app/ResetStatsState.java b/jme3-core/src/main/java/com/jme3/app/ResetStatsState.java similarity index 100% rename from engine/src/core/com/jme3/app/ResetStatsState.java rename to jme3-core/src/main/java/com/jme3/app/ResetStatsState.java diff --git a/engine/src/core/com/jme3/app/SimpleApplication.java b/jme3-core/src/main/java/com/jme3/app/SimpleApplication.java similarity index 100% rename from engine/src/core/com/jme3/app/SimpleApplication.java rename to jme3-core/src/main/java/com/jme3/app/SimpleApplication.java diff --git a/engine/src/core/com/jme3/app/StatsAppState.java b/jme3-core/src/main/java/com/jme3/app/StatsAppState.java similarity index 100% rename from engine/src/core/com/jme3/app/StatsAppState.java rename to jme3-core/src/main/java/com/jme3/app/StatsAppState.java diff --git a/engine/src/core/com/jme3/app/StatsView.java b/jme3-core/src/main/java/com/jme3/app/StatsView.java similarity index 100% rename from engine/src/core/com/jme3/app/StatsView.java rename to jme3-core/src/main/java/com/jme3/app/StatsView.java diff --git a/engine/src/core/com/jme3/app/package.html b/jme3-core/src/main/java/com/jme3/app/package.html similarity index 100% rename from engine/src/core/com/jme3/app/package.html rename to jme3-core/src/main/java/com/jme3/app/package.html diff --git a/engine/src/core/com/jme3/app/state/AbstractAppState.java b/jme3-core/src/main/java/com/jme3/app/state/AbstractAppState.java similarity index 100% rename from engine/src/core/com/jme3/app/state/AbstractAppState.java rename to jme3-core/src/main/java/com/jme3/app/state/AbstractAppState.java diff --git a/engine/src/core/com/jme3/app/state/AppState.java b/jme3-core/src/main/java/com/jme3/app/state/AppState.java similarity index 100% rename from engine/src/core/com/jme3/app/state/AppState.java rename to jme3-core/src/main/java/com/jme3/app/state/AppState.java diff --git a/engine/src/core/com/jme3/app/state/AppStateManager.java b/jme3-core/src/main/java/com/jme3/app/state/AppStateManager.java similarity index 100% rename from engine/src/core/com/jme3/app/state/AppStateManager.java rename to jme3-core/src/main/java/com/jme3/app/state/AppStateManager.java diff --git a/engine/src/core/com/jme3/app/state/ScreenshotAppState.java b/jme3-core/src/main/java/com/jme3/app/state/ScreenshotAppState.java similarity index 100% rename from engine/src/core/com/jme3/app/state/ScreenshotAppState.java rename to jme3-core/src/main/java/com/jme3/app/state/ScreenshotAppState.java diff --git a/engine/src/core/com/jme3/app/state/package.html b/jme3-core/src/main/java/com/jme3/app/state/package.html similarity index 100% rename from engine/src/core/com/jme3/app/state/package.html rename to jme3-core/src/main/java/com/jme3/app/state/package.html diff --git a/engine/src/core/com/jme3/asset/AssetConfig.java b/jme3-core/src/main/java/com/jme3/asset/AssetConfig.java similarity index 100% rename from engine/src/core/com/jme3/asset/AssetConfig.java rename to jme3-core/src/main/java/com/jme3/asset/AssetConfig.java diff --git a/engine/src/core/com/jme3/asset/AssetEventListener.java b/jme3-core/src/main/java/com/jme3/asset/AssetEventListener.java similarity index 100% rename from engine/src/core/com/jme3/asset/AssetEventListener.java rename to jme3-core/src/main/java/com/jme3/asset/AssetEventListener.java diff --git a/engine/src/core/com/jme3/asset/AssetInfo.java b/jme3-core/src/main/java/com/jme3/asset/AssetInfo.java similarity index 100% rename from engine/src/core/com/jme3/asset/AssetInfo.java rename to jme3-core/src/main/java/com/jme3/asset/AssetInfo.java diff --git a/engine/src/core/com/jme3/asset/AssetKey.java b/jme3-core/src/main/java/com/jme3/asset/AssetKey.java similarity index 100% rename from engine/src/core/com/jme3/asset/AssetKey.java rename to jme3-core/src/main/java/com/jme3/asset/AssetKey.java diff --git a/engine/src/core/com/jme3/asset/AssetLoadException.java b/jme3-core/src/main/java/com/jme3/asset/AssetLoadException.java similarity index 100% rename from engine/src/core/com/jme3/asset/AssetLoadException.java rename to jme3-core/src/main/java/com/jme3/asset/AssetLoadException.java diff --git a/engine/src/core/com/jme3/asset/AssetLoader.java b/jme3-core/src/main/java/com/jme3/asset/AssetLoader.java similarity index 100% rename from engine/src/core/com/jme3/asset/AssetLoader.java rename to jme3-core/src/main/java/com/jme3/asset/AssetLoader.java diff --git a/engine/src/core/com/jme3/asset/AssetLocator.java b/jme3-core/src/main/java/com/jme3/asset/AssetLocator.java similarity index 100% rename from engine/src/core/com/jme3/asset/AssetLocator.java rename to jme3-core/src/main/java/com/jme3/asset/AssetLocator.java diff --git a/engine/src/core/com/jme3/asset/AssetManager.java b/jme3-core/src/main/java/com/jme3/asset/AssetManager.java similarity index 100% rename from engine/src/core/com/jme3/asset/AssetManager.java rename to jme3-core/src/main/java/com/jme3/asset/AssetManager.java diff --git a/engine/src/core/com/jme3/asset/AssetNotFoundException.java b/jme3-core/src/main/java/com/jme3/asset/AssetNotFoundException.java similarity index 100% rename from engine/src/core/com/jme3/asset/AssetNotFoundException.java rename to jme3-core/src/main/java/com/jme3/asset/AssetNotFoundException.java diff --git a/engine/src/core/com/jme3/asset/AssetProcessor.java b/jme3-core/src/main/java/com/jme3/asset/AssetProcessor.java similarity index 100% rename from engine/src/core/com/jme3/asset/AssetProcessor.java rename to jme3-core/src/main/java/com/jme3/asset/AssetProcessor.java diff --git a/engine/src/core/com/jme3/asset/CloneableAssetProcessor.java b/jme3-core/src/main/java/com/jme3/asset/CloneableAssetProcessor.java similarity index 100% rename from engine/src/core/com/jme3/asset/CloneableAssetProcessor.java rename to jme3-core/src/main/java/com/jme3/asset/CloneableAssetProcessor.java diff --git a/engine/src/core/com/jme3/asset/CloneableSmartAsset.java b/jme3-core/src/main/java/com/jme3/asset/CloneableSmartAsset.java similarity index 100% rename from engine/src/core/com/jme3/asset/CloneableSmartAsset.java rename to jme3-core/src/main/java/com/jme3/asset/CloneableSmartAsset.java diff --git a/engine/src/core/com/jme3/asset/DesktopAssetManager.java b/jme3-core/src/main/java/com/jme3/asset/DesktopAssetManager.java similarity index 100% rename from engine/src/core/com/jme3/asset/DesktopAssetManager.java rename to jme3-core/src/main/java/com/jme3/asset/DesktopAssetManager.java diff --git a/engine/src/core/com/jme3/asset/FilterKey.java b/jme3-core/src/main/java/com/jme3/asset/FilterKey.java similarity index 100% rename from engine/src/core/com/jme3/asset/FilterKey.java rename to jme3-core/src/main/java/com/jme3/asset/FilterKey.java diff --git a/engine/src/core/com/jme3/asset/ImplHandler.java b/jme3-core/src/main/java/com/jme3/asset/ImplHandler.java similarity index 100% rename from engine/src/core/com/jme3/asset/ImplHandler.java rename to jme3-core/src/main/java/com/jme3/asset/ImplHandler.java diff --git a/engine/src/core/com/jme3/asset/MaterialKey.java b/jme3-core/src/main/java/com/jme3/asset/MaterialKey.java similarity index 100% rename from engine/src/core/com/jme3/asset/MaterialKey.java rename to jme3-core/src/main/java/com/jme3/asset/MaterialKey.java diff --git a/engine/src/core/com/jme3/asset/ModelKey.java b/jme3-core/src/main/java/com/jme3/asset/ModelKey.java similarity index 100% rename from engine/src/core/com/jme3/asset/ModelKey.java rename to jme3-core/src/main/java/com/jme3/asset/ModelKey.java diff --git a/engine/src/core/com/jme3/asset/ShaderNodeDefinitionKey.java b/jme3-core/src/main/java/com/jme3/asset/ShaderNodeDefinitionKey.java similarity index 100% rename from engine/src/core/com/jme3/asset/ShaderNodeDefinitionKey.java rename to jme3-core/src/main/java/com/jme3/asset/ShaderNodeDefinitionKey.java diff --git a/engine/src/core/com/jme3/asset/TextureKey.java b/jme3-core/src/main/java/com/jme3/asset/TextureKey.java similarity index 100% rename from engine/src/core/com/jme3/asset/TextureKey.java rename to jme3-core/src/main/java/com/jme3/asset/TextureKey.java diff --git a/engine/src/core/com/jme3/asset/ThreadingManager.java b/jme3-core/src/main/java/com/jme3/asset/ThreadingManager.java similarity index 100% rename from engine/src/core/com/jme3/asset/ThreadingManager.java rename to jme3-core/src/main/java/com/jme3/asset/ThreadingManager.java diff --git a/engine/src/core/com/jme3/asset/cache/AssetCache.java b/jme3-core/src/main/java/com/jme3/asset/cache/AssetCache.java similarity index 100% rename from engine/src/core/com/jme3/asset/cache/AssetCache.java rename to jme3-core/src/main/java/com/jme3/asset/cache/AssetCache.java diff --git a/engine/src/core/com/jme3/asset/cache/SimpleAssetCache.java b/jme3-core/src/main/java/com/jme3/asset/cache/SimpleAssetCache.java similarity index 100% rename from engine/src/core/com/jme3/asset/cache/SimpleAssetCache.java rename to jme3-core/src/main/java/com/jme3/asset/cache/SimpleAssetCache.java diff --git a/engine/src/core/com/jme3/asset/cache/WeakRefAssetCache.java b/jme3-core/src/main/java/com/jme3/asset/cache/WeakRefAssetCache.java similarity index 100% rename from engine/src/core/com/jme3/asset/cache/WeakRefAssetCache.java rename to jme3-core/src/main/java/com/jme3/asset/cache/WeakRefAssetCache.java diff --git a/engine/src/core/com/jme3/asset/cache/WeakRefCloneAssetCache.java b/jme3-core/src/main/java/com/jme3/asset/cache/WeakRefCloneAssetCache.java similarity index 100% rename from engine/src/core/com/jme3/asset/cache/WeakRefCloneAssetCache.java rename to jme3-core/src/main/java/com/jme3/asset/cache/WeakRefCloneAssetCache.java diff --git a/engine/src/core/com/jme3/asset/package.html b/jme3-core/src/main/java/com/jme3/asset/package.html similarity index 100% rename from engine/src/core/com/jme3/asset/package.html rename to jme3-core/src/main/java/com/jme3/asset/package.html diff --git a/engine/src/core/com/jme3/audio/AudioBuffer.java b/jme3-core/src/main/java/com/jme3/audio/AudioBuffer.java similarity index 100% rename from engine/src/core/com/jme3/audio/AudioBuffer.java rename to jme3-core/src/main/java/com/jme3/audio/AudioBuffer.java diff --git a/engine/src/core/com/jme3/audio/AudioContext.java b/jme3-core/src/main/java/com/jme3/audio/AudioContext.java similarity index 100% rename from engine/src/core/com/jme3/audio/AudioContext.java rename to jme3-core/src/main/java/com/jme3/audio/AudioContext.java diff --git a/engine/src/core/com/jme3/audio/AudioData.java b/jme3-core/src/main/java/com/jme3/audio/AudioData.java similarity index 100% rename from engine/src/core/com/jme3/audio/AudioData.java rename to jme3-core/src/main/java/com/jme3/audio/AudioData.java diff --git a/engine/src/core/com/jme3/audio/AudioKey.java b/jme3-core/src/main/java/com/jme3/audio/AudioKey.java similarity index 100% rename from engine/src/core/com/jme3/audio/AudioKey.java rename to jme3-core/src/main/java/com/jme3/audio/AudioKey.java diff --git a/engine/src/core/com/jme3/audio/AudioNode.java b/jme3-core/src/main/java/com/jme3/audio/AudioNode.java similarity index 100% rename from engine/src/core/com/jme3/audio/AudioNode.java rename to jme3-core/src/main/java/com/jme3/audio/AudioNode.java diff --git a/engine/src/core/com/jme3/audio/AudioParam.java b/jme3-core/src/main/java/com/jme3/audio/AudioParam.java similarity index 100% rename from engine/src/core/com/jme3/audio/AudioParam.java rename to jme3-core/src/main/java/com/jme3/audio/AudioParam.java diff --git a/engine/src/core/com/jme3/audio/AudioRenderer.java b/jme3-core/src/main/java/com/jme3/audio/AudioRenderer.java similarity index 100% rename from engine/src/core/com/jme3/audio/AudioRenderer.java rename to jme3-core/src/main/java/com/jme3/audio/AudioRenderer.java diff --git a/engine/src/core/com/jme3/audio/AudioSource.java b/jme3-core/src/main/java/com/jme3/audio/AudioSource.java similarity index 100% rename from engine/src/core/com/jme3/audio/AudioSource.java rename to jme3-core/src/main/java/com/jme3/audio/AudioSource.java diff --git a/engine/src/core/com/jme3/audio/AudioStream.java b/jme3-core/src/main/java/com/jme3/audio/AudioStream.java similarity index 100% rename from engine/src/core/com/jme3/audio/AudioStream.java rename to jme3-core/src/main/java/com/jme3/audio/AudioStream.java diff --git a/engine/src/core/com/jme3/audio/Environment.java b/jme3-core/src/main/java/com/jme3/audio/Environment.java similarity index 100% rename from engine/src/core/com/jme3/audio/Environment.java rename to jme3-core/src/main/java/com/jme3/audio/Environment.java diff --git a/engine/src/core/com/jme3/audio/Filter.java b/jme3-core/src/main/java/com/jme3/audio/Filter.java similarity index 100% rename from engine/src/core/com/jme3/audio/Filter.java rename to jme3-core/src/main/java/com/jme3/audio/Filter.java diff --git a/engine/src/core/com/jme3/audio/Listener.java b/jme3-core/src/main/java/com/jme3/audio/Listener.java similarity index 100% rename from engine/src/core/com/jme3/audio/Listener.java rename to jme3-core/src/main/java/com/jme3/audio/Listener.java diff --git a/engine/src/core/com/jme3/audio/ListenerParam.java b/jme3-core/src/main/java/com/jme3/audio/ListenerParam.java similarity index 100% rename from engine/src/core/com/jme3/audio/ListenerParam.java rename to jme3-core/src/main/java/com/jme3/audio/ListenerParam.java diff --git a/engine/src/core/com/jme3/audio/LowPassFilter.java b/jme3-core/src/main/java/com/jme3/audio/LowPassFilter.java similarity index 100% rename from engine/src/core/com/jme3/audio/LowPassFilter.java rename to jme3-core/src/main/java/com/jme3/audio/LowPassFilter.java diff --git a/engine/src/core/com/jme3/audio/SeekableStream.java b/jme3-core/src/main/java/com/jme3/audio/SeekableStream.java similarity index 100% rename from engine/src/core/com/jme3/audio/SeekableStream.java rename to jme3-core/src/main/java/com/jme3/audio/SeekableStream.java diff --git a/engine/src/core/com/jme3/bounding/BoundingBox.java b/jme3-core/src/main/java/com/jme3/bounding/BoundingBox.java similarity index 100% rename from engine/src/core/com/jme3/bounding/BoundingBox.java rename to jme3-core/src/main/java/com/jme3/bounding/BoundingBox.java diff --git a/engine/src/core/com/jme3/bounding/BoundingSphere.java b/jme3-core/src/main/java/com/jme3/bounding/BoundingSphere.java similarity index 100% rename from engine/src/core/com/jme3/bounding/BoundingSphere.java rename to jme3-core/src/main/java/com/jme3/bounding/BoundingSphere.java diff --git a/engine/src/core/com/jme3/bounding/BoundingVolume.java b/jme3-core/src/main/java/com/jme3/bounding/BoundingVolume.java similarity index 100% rename from engine/src/core/com/jme3/bounding/BoundingVolume.java rename to jme3-core/src/main/java/com/jme3/bounding/BoundingVolume.java diff --git a/engine/src/core/com/jme3/bounding/Intersection.java b/jme3-core/src/main/java/com/jme3/bounding/Intersection.java similarity index 100% rename from engine/src/core/com/jme3/bounding/Intersection.java rename to jme3-core/src/main/java/com/jme3/bounding/Intersection.java diff --git a/engine/src/core/com/jme3/bounding/OrientedBoundingBox.java b/jme3-core/src/main/java/com/jme3/bounding/OrientedBoundingBox.java similarity index 100% rename from engine/src/core/com/jme3/bounding/OrientedBoundingBox.java rename to jme3-core/src/main/java/com/jme3/bounding/OrientedBoundingBox.java diff --git a/engine/src/core/com/jme3/cinematic/Cinematic.java b/jme3-core/src/main/java/com/jme3/cinematic/Cinematic.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/Cinematic.java rename to jme3-core/src/main/java/com/jme3/cinematic/Cinematic.java diff --git a/engine/src/core/com/jme3/cinematic/KeyFrame.java b/jme3-core/src/main/java/com/jme3/cinematic/KeyFrame.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/KeyFrame.java rename to jme3-core/src/main/java/com/jme3/cinematic/KeyFrame.java diff --git a/engine/src/core/com/jme3/cinematic/MotionPath.java b/jme3-core/src/main/java/com/jme3/cinematic/MotionPath.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/MotionPath.java rename to jme3-core/src/main/java/com/jme3/cinematic/MotionPath.java diff --git a/engine/src/core/com/jme3/cinematic/MotionPathListener.java b/jme3-core/src/main/java/com/jme3/cinematic/MotionPathListener.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/MotionPathListener.java rename to jme3-core/src/main/java/com/jme3/cinematic/MotionPathListener.java diff --git a/engine/src/core/com/jme3/cinematic/PlayState.java b/jme3-core/src/main/java/com/jme3/cinematic/PlayState.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/PlayState.java rename to jme3-core/src/main/java/com/jme3/cinematic/PlayState.java diff --git a/engine/src/core/com/jme3/cinematic/TimeLine.java b/jme3-core/src/main/java/com/jme3/cinematic/TimeLine.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/TimeLine.java rename to jme3-core/src/main/java/com/jme3/cinematic/TimeLine.java diff --git a/engine/src/core/com/jme3/cinematic/events/AbstractCinematicEvent.java b/jme3-core/src/main/java/com/jme3/cinematic/events/AbstractCinematicEvent.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/events/AbstractCinematicEvent.java rename to jme3-core/src/main/java/com/jme3/cinematic/events/AbstractCinematicEvent.java diff --git a/engine/src/core/com/jme3/cinematic/events/AnimationEvent.java b/jme3-core/src/main/java/com/jme3/cinematic/events/AnimationEvent.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/events/AnimationEvent.java rename to jme3-core/src/main/java/com/jme3/cinematic/events/AnimationEvent.java diff --git a/engine/src/core/com/jme3/cinematic/events/AnimationTrack.java b/jme3-core/src/main/java/com/jme3/cinematic/events/AnimationTrack.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/events/AnimationTrack.java rename to jme3-core/src/main/java/com/jme3/cinematic/events/AnimationTrack.java diff --git a/engine/src/core/com/jme3/cinematic/events/CinematicEvent.java b/jme3-core/src/main/java/com/jme3/cinematic/events/CinematicEvent.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/events/CinematicEvent.java rename to jme3-core/src/main/java/com/jme3/cinematic/events/CinematicEvent.java diff --git a/engine/src/core/com/jme3/cinematic/events/CinematicEventListener.java b/jme3-core/src/main/java/com/jme3/cinematic/events/CinematicEventListener.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/events/CinematicEventListener.java rename to jme3-core/src/main/java/com/jme3/cinematic/events/CinematicEventListener.java diff --git a/engine/src/core/com/jme3/cinematic/events/MotionEvent.java b/jme3-core/src/main/java/com/jme3/cinematic/events/MotionEvent.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/events/MotionEvent.java rename to jme3-core/src/main/java/com/jme3/cinematic/events/MotionEvent.java diff --git a/engine/src/core/com/jme3/cinematic/events/MotionTrack.java b/jme3-core/src/main/java/com/jme3/cinematic/events/MotionTrack.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/events/MotionTrack.java rename to jme3-core/src/main/java/com/jme3/cinematic/events/MotionTrack.java diff --git a/engine/src/core/com/jme3/cinematic/events/SoundEvent.java b/jme3-core/src/main/java/com/jme3/cinematic/events/SoundEvent.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/events/SoundEvent.java rename to jme3-core/src/main/java/com/jme3/cinematic/events/SoundEvent.java diff --git a/engine/src/core/com/jme3/cinematic/events/SoundTrack.java b/jme3-core/src/main/java/com/jme3/cinematic/events/SoundTrack.java similarity index 100% rename from engine/src/core/com/jme3/cinematic/events/SoundTrack.java rename to jme3-core/src/main/java/com/jme3/cinematic/events/SoundTrack.java diff --git a/engine/src/core/com/jme3/collision/Collidable.java b/jme3-core/src/main/java/com/jme3/collision/Collidable.java similarity index 100% rename from engine/src/core/com/jme3/collision/Collidable.java rename to jme3-core/src/main/java/com/jme3/collision/Collidable.java diff --git a/engine/src/core/com/jme3/collision/CollisionResult.java b/jme3-core/src/main/java/com/jme3/collision/CollisionResult.java similarity index 100% rename from engine/src/core/com/jme3/collision/CollisionResult.java rename to jme3-core/src/main/java/com/jme3/collision/CollisionResult.java diff --git a/engine/src/core/com/jme3/collision/CollisionResults.java b/jme3-core/src/main/java/com/jme3/collision/CollisionResults.java similarity index 100% rename from engine/src/core/com/jme3/collision/CollisionResults.java rename to jme3-core/src/main/java/com/jme3/collision/CollisionResults.java diff --git a/engine/src/core/com/jme3/collision/MotionAllowedListener.java b/jme3-core/src/main/java/com/jme3/collision/MotionAllowedListener.java similarity index 100% rename from engine/src/core/com/jme3/collision/MotionAllowedListener.java rename to jme3-core/src/main/java/com/jme3/collision/MotionAllowedListener.java diff --git a/engine/src/core/com/jme3/collision/SweepSphere.java b/jme3-core/src/main/java/com/jme3/collision/SweepSphere.java similarity index 100% rename from engine/src/core/com/jme3/collision/SweepSphere.java rename to jme3-core/src/main/java/com/jme3/collision/SweepSphere.java diff --git a/engine/src/core/com/jme3/collision/UnsupportedCollisionException.java b/jme3-core/src/main/java/com/jme3/collision/UnsupportedCollisionException.java similarity index 100% rename from engine/src/core/com/jme3/collision/UnsupportedCollisionException.java rename to jme3-core/src/main/java/com/jme3/collision/UnsupportedCollisionException.java diff --git a/engine/src/core/com/jme3/collision/bih/BIHNode.java b/jme3-core/src/main/java/com/jme3/collision/bih/BIHNode.java similarity index 100% rename from engine/src/core/com/jme3/collision/bih/BIHNode.java rename to jme3-core/src/main/java/com/jme3/collision/bih/BIHNode.java diff --git a/engine/src/core/com/jme3/collision/bih/BIHTree.java b/jme3-core/src/main/java/com/jme3/collision/bih/BIHTree.java similarity index 100% rename from engine/src/core/com/jme3/collision/bih/BIHTree.java rename to jme3-core/src/main/java/com/jme3/collision/bih/BIHTree.java diff --git a/engine/src/core/com/jme3/collision/bih/BIHTriangle.java b/jme3-core/src/main/java/com/jme3/collision/bih/BIHTriangle.java similarity index 100% rename from engine/src/core/com/jme3/collision/bih/BIHTriangle.java rename to jme3-core/src/main/java/com/jme3/collision/bih/BIHTriangle.java diff --git a/engine/src/core/com/jme3/collision/bih/TriangleAxisComparator.java b/jme3-core/src/main/java/com/jme3/collision/bih/TriangleAxisComparator.java similarity index 100% rename from engine/src/core/com/jme3/collision/bih/TriangleAxisComparator.java rename to jme3-core/src/main/java/com/jme3/collision/bih/TriangleAxisComparator.java diff --git a/engine/src/core/com/jme3/effect/Particle.java b/jme3-core/src/main/java/com/jme3/effect/Particle.java similarity index 100% rename from engine/src/core/com/jme3/effect/Particle.java rename to jme3-core/src/main/java/com/jme3/effect/Particle.java diff --git a/engine/src/core/com/jme3/effect/ParticleComparator.java b/jme3-core/src/main/java/com/jme3/effect/ParticleComparator.java similarity index 100% rename from engine/src/core/com/jme3/effect/ParticleComparator.java rename to jme3-core/src/main/java/com/jme3/effect/ParticleComparator.java diff --git a/engine/src/core/com/jme3/effect/ParticleEmitter.java b/jme3-core/src/main/java/com/jme3/effect/ParticleEmitter.java similarity index 100% rename from engine/src/core/com/jme3/effect/ParticleEmitter.java rename to jme3-core/src/main/java/com/jme3/effect/ParticleEmitter.java diff --git a/engine/src/core/com/jme3/effect/ParticleMesh.java b/jme3-core/src/main/java/com/jme3/effect/ParticleMesh.java similarity index 100% rename from engine/src/core/com/jme3/effect/ParticleMesh.java rename to jme3-core/src/main/java/com/jme3/effect/ParticleMesh.java diff --git a/engine/src/core/com/jme3/effect/ParticlePointMesh.java b/jme3-core/src/main/java/com/jme3/effect/ParticlePointMesh.java similarity index 100% rename from engine/src/core/com/jme3/effect/ParticlePointMesh.java rename to jme3-core/src/main/java/com/jme3/effect/ParticlePointMesh.java diff --git a/engine/src/core/com/jme3/effect/ParticleTriMesh.java b/jme3-core/src/main/java/com/jme3/effect/ParticleTriMesh.java similarity index 100% rename from engine/src/core/com/jme3/effect/ParticleTriMesh.java rename to jme3-core/src/main/java/com/jme3/effect/ParticleTriMesh.java diff --git a/engine/src/core/com/jme3/effect/influencers/DefaultParticleInfluencer.java b/jme3-core/src/main/java/com/jme3/effect/influencers/DefaultParticleInfluencer.java similarity index 100% rename from engine/src/core/com/jme3/effect/influencers/DefaultParticleInfluencer.java rename to jme3-core/src/main/java/com/jme3/effect/influencers/DefaultParticleInfluencer.java diff --git a/engine/src/core/com/jme3/effect/influencers/EmptyParticleInfluencer.java b/jme3-core/src/main/java/com/jme3/effect/influencers/EmptyParticleInfluencer.java similarity index 100% rename from engine/src/core/com/jme3/effect/influencers/EmptyParticleInfluencer.java rename to jme3-core/src/main/java/com/jme3/effect/influencers/EmptyParticleInfluencer.java diff --git a/engine/src/core/com/jme3/effect/influencers/NewtonianParticleInfluencer.java b/jme3-core/src/main/java/com/jme3/effect/influencers/NewtonianParticleInfluencer.java similarity index 100% rename from engine/src/core/com/jme3/effect/influencers/NewtonianParticleInfluencer.java rename to jme3-core/src/main/java/com/jme3/effect/influencers/NewtonianParticleInfluencer.java diff --git a/engine/src/core/com/jme3/effect/influencers/ParticleInfluencer.java b/jme3-core/src/main/java/com/jme3/effect/influencers/ParticleInfluencer.java similarity index 100% rename from engine/src/core/com/jme3/effect/influencers/ParticleInfluencer.java rename to jme3-core/src/main/java/com/jme3/effect/influencers/ParticleInfluencer.java diff --git a/engine/src/core/com/jme3/effect/influencers/RadialParticleInfluencer.java b/jme3-core/src/main/java/com/jme3/effect/influencers/RadialParticleInfluencer.java similarity index 100% rename from engine/src/core/com/jme3/effect/influencers/RadialParticleInfluencer.java rename to jme3-core/src/main/java/com/jme3/effect/influencers/RadialParticleInfluencer.java diff --git a/engine/src/core/com/jme3/effect/package.html b/jme3-core/src/main/java/com/jme3/effect/package.html similarity index 100% rename from engine/src/core/com/jme3/effect/package.html rename to jme3-core/src/main/java/com/jme3/effect/package.html diff --git a/engine/src/core/com/jme3/effect/shapes/EmitterBoxShape.java b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterBoxShape.java similarity index 100% rename from engine/src/core/com/jme3/effect/shapes/EmitterBoxShape.java rename to jme3-core/src/main/java/com/jme3/effect/shapes/EmitterBoxShape.java diff --git a/engine/src/core/com/jme3/effect/shapes/EmitterMeshConvexHullShape.java b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshConvexHullShape.java similarity index 100% rename from engine/src/core/com/jme3/effect/shapes/EmitterMeshConvexHullShape.java rename to jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshConvexHullShape.java diff --git a/engine/src/core/com/jme3/effect/shapes/EmitterMeshFaceShape.java b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshFaceShape.java similarity index 100% rename from engine/src/core/com/jme3/effect/shapes/EmitterMeshFaceShape.java rename to jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshFaceShape.java diff --git a/engine/src/core/com/jme3/effect/shapes/EmitterMeshVertexShape.java b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshVertexShape.java similarity index 100% rename from engine/src/core/com/jme3/effect/shapes/EmitterMeshVertexShape.java rename to jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshVertexShape.java diff --git a/engine/src/core/com/jme3/effect/shapes/EmitterPointShape.java b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterPointShape.java similarity index 100% rename from engine/src/core/com/jme3/effect/shapes/EmitterPointShape.java rename to jme3-core/src/main/java/com/jme3/effect/shapes/EmitterPointShape.java diff --git a/engine/src/core/com/jme3/effect/shapes/EmitterShape.java b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterShape.java similarity index 100% rename from engine/src/core/com/jme3/effect/shapes/EmitterShape.java rename to jme3-core/src/main/java/com/jme3/effect/shapes/EmitterShape.java diff --git a/engine/src/core/com/jme3/effect/shapes/EmitterSphereShape.java b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterSphereShape.java similarity index 100% rename from engine/src/core/com/jme3/effect/shapes/EmitterSphereShape.java rename to jme3-core/src/main/java/com/jme3/effect/shapes/EmitterSphereShape.java diff --git a/engine/src/core/com/jme3/export/FormatVersion.java b/jme3-core/src/main/java/com/jme3/export/FormatVersion.java similarity index 100% rename from engine/src/core/com/jme3/export/FormatVersion.java rename to jme3-core/src/main/java/com/jme3/export/FormatVersion.java diff --git a/engine/src/core/com/jme3/export/InputCapsule.java b/jme3-core/src/main/java/com/jme3/export/InputCapsule.java similarity index 100% rename from engine/src/core/com/jme3/export/InputCapsule.java rename to jme3-core/src/main/java/com/jme3/export/InputCapsule.java diff --git a/engine/src/core/com/jme3/export/JmeExporter.java b/jme3-core/src/main/java/com/jme3/export/JmeExporter.java similarity index 100% rename from engine/src/core/com/jme3/export/JmeExporter.java rename to jme3-core/src/main/java/com/jme3/export/JmeExporter.java diff --git a/engine/src/core/com/jme3/export/JmeImporter.java b/jme3-core/src/main/java/com/jme3/export/JmeImporter.java similarity index 100% rename from engine/src/core/com/jme3/export/JmeImporter.java rename to jme3-core/src/main/java/com/jme3/export/JmeImporter.java diff --git a/engine/src/core/com/jme3/export/NullSavable.java b/jme3-core/src/main/java/com/jme3/export/NullSavable.java similarity index 100% rename from engine/src/core/com/jme3/export/NullSavable.java rename to jme3-core/src/main/java/com/jme3/export/NullSavable.java diff --git a/engine/src/core/com/jme3/export/OutputCapsule.java b/jme3-core/src/main/java/com/jme3/export/OutputCapsule.java similarity index 100% rename from engine/src/core/com/jme3/export/OutputCapsule.java rename to jme3-core/src/main/java/com/jme3/export/OutputCapsule.java diff --git a/engine/src/core/com/jme3/export/ReadListener.java b/jme3-core/src/main/java/com/jme3/export/ReadListener.java similarity index 100% rename from engine/src/core/com/jme3/export/ReadListener.java rename to jme3-core/src/main/java/com/jme3/export/ReadListener.java diff --git a/engine/src/core/com/jme3/export/Savable.java b/jme3-core/src/main/java/com/jme3/export/Savable.java similarity index 100% rename from engine/src/core/com/jme3/export/Savable.java rename to jme3-core/src/main/java/com/jme3/export/Savable.java diff --git a/engine/src/core/com/jme3/export/SavableClassUtil.java b/jme3-core/src/main/java/com/jme3/export/SavableClassUtil.java similarity index 100% rename from engine/src/core/com/jme3/export/SavableClassUtil.java rename to jme3-core/src/main/java/com/jme3/export/SavableClassUtil.java diff --git a/engine/src/core/com/jme3/font/BitmapCharacter.java b/jme3-core/src/main/java/com/jme3/font/BitmapCharacter.java similarity index 100% rename from engine/src/core/com/jme3/font/BitmapCharacter.java rename to jme3-core/src/main/java/com/jme3/font/BitmapCharacter.java diff --git a/engine/src/core/com/jme3/font/BitmapCharacterSet.java b/jme3-core/src/main/java/com/jme3/font/BitmapCharacterSet.java similarity index 100% rename from engine/src/core/com/jme3/font/BitmapCharacterSet.java rename to jme3-core/src/main/java/com/jme3/font/BitmapCharacterSet.java diff --git a/engine/src/core/com/jme3/font/BitmapFont.java b/jme3-core/src/main/java/com/jme3/font/BitmapFont.java similarity index 100% rename from engine/src/core/com/jme3/font/BitmapFont.java rename to jme3-core/src/main/java/com/jme3/font/BitmapFont.java diff --git a/engine/src/core/com/jme3/font/BitmapText.java b/jme3-core/src/main/java/com/jme3/font/BitmapText.java similarity index 100% rename from engine/src/core/com/jme3/font/BitmapText.java rename to jme3-core/src/main/java/com/jme3/font/BitmapText.java diff --git a/engine/src/core/com/jme3/font/BitmapTextPage.java b/jme3-core/src/main/java/com/jme3/font/BitmapTextPage.java similarity index 100% rename from engine/src/core/com/jme3/font/BitmapTextPage.java rename to jme3-core/src/main/java/com/jme3/font/BitmapTextPage.java diff --git a/engine/src/core/com/jme3/font/ColorTags.java b/jme3-core/src/main/java/com/jme3/font/ColorTags.java similarity index 100% rename from engine/src/core/com/jme3/font/ColorTags.java rename to jme3-core/src/main/java/com/jme3/font/ColorTags.java diff --git a/engine/src/core/com/jme3/font/Kerning.java b/jme3-core/src/main/java/com/jme3/font/Kerning.java similarity index 100% rename from engine/src/core/com/jme3/font/Kerning.java rename to jme3-core/src/main/java/com/jme3/font/Kerning.java diff --git a/engine/src/core/com/jme3/font/LetterQuad.java b/jme3-core/src/main/java/com/jme3/font/LetterQuad.java similarity index 100% rename from engine/src/core/com/jme3/font/LetterQuad.java rename to jme3-core/src/main/java/com/jme3/font/LetterQuad.java diff --git a/engine/src/core/com/jme3/font/Letters.java b/jme3-core/src/main/java/com/jme3/font/Letters.java similarity index 100% rename from engine/src/core/com/jme3/font/Letters.java rename to jme3-core/src/main/java/com/jme3/font/Letters.java diff --git a/engine/src/core/com/jme3/font/LineWrapMode.java b/jme3-core/src/main/java/com/jme3/font/LineWrapMode.java similarity index 100% rename from engine/src/core/com/jme3/font/LineWrapMode.java rename to jme3-core/src/main/java/com/jme3/font/LineWrapMode.java diff --git a/engine/src/core/com/jme3/font/Rectangle.java b/jme3-core/src/main/java/com/jme3/font/Rectangle.java similarity index 100% rename from engine/src/core/com/jme3/font/Rectangle.java rename to jme3-core/src/main/java/com/jme3/font/Rectangle.java diff --git a/engine/src/core/com/jme3/font/StringBlock.java b/jme3-core/src/main/java/com/jme3/font/StringBlock.java similarity index 100% rename from engine/src/core/com/jme3/font/StringBlock.java rename to jme3-core/src/main/java/com/jme3/font/StringBlock.java diff --git a/engine/src/core/com/jme3/input/AbstractJoystick.java b/jme3-core/src/main/java/com/jme3/input/AbstractJoystick.java similarity index 100% rename from engine/src/core/com/jme3/input/AbstractJoystick.java rename to jme3-core/src/main/java/com/jme3/input/AbstractJoystick.java diff --git a/engine/src/core/com/jme3/input/CameraInput.java b/jme3-core/src/main/java/com/jme3/input/CameraInput.java similarity index 100% rename from engine/src/core/com/jme3/input/CameraInput.java rename to jme3-core/src/main/java/com/jme3/input/CameraInput.java diff --git a/engine/src/core/com/jme3/input/ChaseCamera.java b/jme3-core/src/main/java/com/jme3/input/ChaseCamera.java similarity index 100% rename from engine/src/core/com/jme3/input/ChaseCamera.java rename to jme3-core/src/main/java/com/jme3/input/ChaseCamera.java diff --git a/engine/src/core/com/jme3/input/DefaultJoystickAxis.java b/jme3-core/src/main/java/com/jme3/input/DefaultJoystickAxis.java similarity index 100% rename from engine/src/core/com/jme3/input/DefaultJoystickAxis.java rename to jme3-core/src/main/java/com/jme3/input/DefaultJoystickAxis.java diff --git a/engine/src/core/com/jme3/input/DefaultJoystickButton.java b/jme3-core/src/main/java/com/jme3/input/DefaultJoystickButton.java similarity index 100% rename from engine/src/core/com/jme3/input/DefaultJoystickButton.java rename to jme3-core/src/main/java/com/jme3/input/DefaultJoystickButton.java diff --git a/engine/src/core/com/jme3/input/FlyByCamera.java b/jme3-core/src/main/java/com/jme3/input/FlyByCamera.java similarity index 100% rename from engine/src/core/com/jme3/input/FlyByCamera.java rename to jme3-core/src/main/java/com/jme3/input/FlyByCamera.java diff --git a/engine/src/core/com/jme3/input/Input.java b/jme3-core/src/main/java/com/jme3/input/Input.java similarity index 100% rename from engine/src/core/com/jme3/input/Input.java rename to jme3-core/src/main/java/com/jme3/input/Input.java diff --git a/engine/src/core/com/jme3/input/InputManager.java b/jme3-core/src/main/java/com/jme3/input/InputManager.java similarity index 100% rename from engine/src/core/com/jme3/input/InputManager.java rename to jme3-core/src/main/java/com/jme3/input/InputManager.java diff --git a/engine/src/core/com/jme3/input/JoyInput.java b/jme3-core/src/main/java/com/jme3/input/JoyInput.java similarity index 100% rename from engine/src/core/com/jme3/input/JoyInput.java rename to jme3-core/src/main/java/com/jme3/input/JoyInput.java diff --git a/engine/src/core/com/jme3/input/Joystick.java b/jme3-core/src/main/java/com/jme3/input/Joystick.java similarity index 100% rename from engine/src/core/com/jme3/input/Joystick.java rename to jme3-core/src/main/java/com/jme3/input/Joystick.java diff --git a/engine/src/core/com/jme3/input/JoystickAxis.java b/jme3-core/src/main/java/com/jme3/input/JoystickAxis.java similarity index 100% rename from engine/src/core/com/jme3/input/JoystickAxis.java rename to jme3-core/src/main/java/com/jme3/input/JoystickAxis.java diff --git a/engine/src/core/com/jme3/input/JoystickButton.java b/jme3-core/src/main/java/com/jme3/input/JoystickButton.java similarity index 100% rename from engine/src/core/com/jme3/input/JoystickButton.java rename to jme3-core/src/main/java/com/jme3/input/JoystickButton.java diff --git a/engine/src/core/com/jme3/input/JoystickCompatibilityMappings.java b/jme3-core/src/main/java/com/jme3/input/JoystickCompatibilityMappings.java similarity index 100% rename from engine/src/core/com/jme3/input/JoystickCompatibilityMappings.java rename to jme3-core/src/main/java/com/jme3/input/JoystickCompatibilityMappings.java diff --git a/engine/src/core/com/jme3/input/KeyInput.java b/jme3-core/src/main/java/com/jme3/input/KeyInput.java similarity index 100% rename from engine/src/core/com/jme3/input/KeyInput.java rename to jme3-core/src/main/java/com/jme3/input/KeyInput.java diff --git a/engine/src/core/com/jme3/input/KeyNames.java b/jme3-core/src/main/java/com/jme3/input/KeyNames.java similarity index 100% rename from engine/src/core/com/jme3/input/KeyNames.java rename to jme3-core/src/main/java/com/jme3/input/KeyNames.java diff --git a/engine/src/core/com/jme3/input/MouseInput.java b/jme3-core/src/main/java/com/jme3/input/MouseInput.java similarity index 100% rename from engine/src/core/com/jme3/input/MouseInput.java rename to jme3-core/src/main/java/com/jme3/input/MouseInput.java diff --git a/engine/src/core/com/jme3/input/RawInputListener.java b/jme3-core/src/main/java/com/jme3/input/RawInputListener.java similarity index 100% rename from engine/src/core/com/jme3/input/RawInputListener.java rename to jme3-core/src/main/java/com/jme3/input/RawInputListener.java diff --git a/engine/src/core/com/jme3/input/SensorJoystickAxis.java b/jme3-core/src/main/java/com/jme3/input/SensorJoystickAxis.java similarity index 100% rename from engine/src/core/com/jme3/input/SensorJoystickAxis.java rename to jme3-core/src/main/java/com/jme3/input/SensorJoystickAxis.java diff --git a/engine/src/core/com/jme3/input/SoftTextDialogInput.java b/jme3-core/src/main/java/com/jme3/input/SoftTextDialogInput.java similarity index 100% rename from engine/src/core/com/jme3/input/SoftTextDialogInput.java rename to jme3-core/src/main/java/com/jme3/input/SoftTextDialogInput.java diff --git a/engine/src/core/com/jme3/input/TouchInput.java b/jme3-core/src/main/java/com/jme3/input/TouchInput.java similarity index 100% rename from engine/src/core/com/jme3/input/TouchInput.java rename to jme3-core/src/main/java/com/jme3/input/TouchInput.java diff --git a/engine/src/core/com/jme3/input/controls/ActionListener.java b/jme3-core/src/main/java/com/jme3/input/controls/ActionListener.java similarity index 100% rename from engine/src/core/com/jme3/input/controls/ActionListener.java rename to jme3-core/src/main/java/com/jme3/input/controls/ActionListener.java diff --git a/engine/src/core/com/jme3/input/controls/AnalogListener.java b/jme3-core/src/main/java/com/jme3/input/controls/AnalogListener.java similarity index 100% rename from engine/src/core/com/jme3/input/controls/AnalogListener.java rename to jme3-core/src/main/java/com/jme3/input/controls/AnalogListener.java diff --git a/engine/src/core/com/jme3/input/controls/InputListener.java b/jme3-core/src/main/java/com/jme3/input/controls/InputListener.java similarity index 100% rename from engine/src/core/com/jme3/input/controls/InputListener.java rename to jme3-core/src/main/java/com/jme3/input/controls/InputListener.java diff --git a/engine/src/core/com/jme3/input/controls/JoyAxisTrigger.java b/jme3-core/src/main/java/com/jme3/input/controls/JoyAxisTrigger.java similarity index 100% rename from engine/src/core/com/jme3/input/controls/JoyAxisTrigger.java rename to jme3-core/src/main/java/com/jme3/input/controls/JoyAxisTrigger.java diff --git a/engine/src/core/com/jme3/input/controls/JoyButtonTrigger.java b/jme3-core/src/main/java/com/jme3/input/controls/JoyButtonTrigger.java similarity index 100% rename from engine/src/core/com/jme3/input/controls/JoyButtonTrigger.java rename to jme3-core/src/main/java/com/jme3/input/controls/JoyButtonTrigger.java diff --git a/engine/src/core/com/jme3/input/controls/KeyTrigger.java b/jme3-core/src/main/java/com/jme3/input/controls/KeyTrigger.java similarity index 100% rename from engine/src/core/com/jme3/input/controls/KeyTrigger.java rename to jme3-core/src/main/java/com/jme3/input/controls/KeyTrigger.java diff --git a/engine/src/core/com/jme3/input/controls/MouseAxisTrigger.java b/jme3-core/src/main/java/com/jme3/input/controls/MouseAxisTrigger.java similarity index 100% rename from engine/src/core/com/jme3/input/controls/MouseAxisTrigger.java rename to jme3-core/src/main/java/com/jme3/input/controls/MouseAxisTrigger.java diff --git a/engine/src/core/com/jme3/input/controls/MouseButtonTrigger.java b/jme3-core/src/main/java/com/jme3/input/controls/MouseButtonTrigger.java similarity index 100% rename from engine/src/core/com/jme3/input/controls/MouseButtonTrigger.java rename to jme3-core/src/main/java/com/jme3/input/controls/MouseButtonTrigger.java diff --git a/engine/src/core/com/jme3/input/controls/SoftTextDialogInputListener.java b/jme3-core/src/main/java/com/jme3/input/controls/SoftTextDialogInputListener.java similarity index 100% rename from engine/src/core/com/jme3/input/controls/SoftTextDialogInputListener.java rename to jme3-core/src/main/java/com/jme3/input/controls/SoftTextDialogInputListener.java diff --git a/engine/src/core/com/jme3/input/controls/TouchListener.java b/jme3-core/src/main/java/com/jme3/input/controls/TouchListener.java similarity index 100% rename from engine/src/core/com/jme3/input/controls/TouchListener.java rename to jme3-core/src/main/java/com/jme3/input/controls/TouchListener.java diff --git a/engine/src/core/com/jme3/input/controls/TouchTrigger.java b/jme3-core/src/main/java/com/jme3/input/controls/TouchTrigger.java similarity index 100% rename from engine/src/core/com/jme3/input/controls/TouchTrigger.java rename to jme3-core/src/main/java/com/jme3/input/controls/TouchTrigger.java diff --git a/engine/src/core/com/jme3/input/controls/Trigger.java b/jme3-core/src/main/java/com/jme3/input/controls/Trigger.java similarity index 100% rename from engine/src/core/com/jme3/input/controls/Trigger.java rename to jme3-core/src/main/java/com/jme3/input/controls/Trigger.java diff --git a/engine/src/core/com/jme3/input/controls/package.html b/jme3-core/src/main/java/com/jme3/input/controls/package.html similarity index 100% rename from engine/src/core/com/jme3/input/controls/package.html rename to jme3-core/src/main/java/com/jme3/input/controls/package.html diff --git a/engine/src/core/com/jme3/input/dummy/DummyInput.java b/jme3-core/src/main/java/com/jme3/input/dummy/DummyInput.java similarity index 100% rename from engine/src/core/com/jme3/input/dummy/DummyInput.java rename to jme3-core/src/main/java/com/jme3/input/dummy/DummyInput.java diff --git a/engine/src/core/com/jme3/input/dummy/DummyKeyInput.java b/jme3-core/src/main/java/com/jme3/input/dummy/DummyKeyInput.java similarity index 100% rename from engine/src/core/com/jme3/input/dummy/DummyKeyInput.java rename to jme3-core/src/main/java/com/jme3/input/dummy/DummyKeyInput.java diff --git a/engine/src/core/com/jme3/input/dummy/DummyMouseInput.java b/jme3-core/src/main/java/com/jme3/input/dummy/DummyMouseInput.java similarity index 100% rename from engine/src/core/com/jme3/input/dummy/DummyMouseInput.java rename to jme3-core/src/main/java/com/jme3/input/dummy/DummyMouseInput.java diff --git a/engine/src/core/com/jme3/input/dummy/package.html b/jme3-core/src/main/java/com/jme3/input/dummy/package.html similarity index 100% rename from engine/src/core/com/jme3/input/dummy/package.html rename to jme3-core/src/main/java/com/jme3/input/dummy/package.html diff --git a/engine/src/core/com/jme3/input/event/InputEvent.java b/jme3-core/src/main/java/com/jme3/input/event/InputEvent.java similarity index 100% rename from engine/src/core/com/jme3/input/event/InputEvent.java rename to jme3-core/src/main/java/com/jme3/input/event/InputEvent.java diff --git a/engine/src/core/com/jme3/input/event/JoyAxisEvent.java b/jme3-core/src/main/java/com/jme3/input/event/JoyAxisEvent.java similarity index 100% rename from engine/src/core/com/jme3/input/event/JoyAxisEvent.java rename to jme3-core/src/main/java/com/jme3/input/event/JoyAxisEvent.java diff --git a/engine/src/core/com/jme3/input/event/JoyButtonEvent.java b/jme3-core/src/main/java/com/jme3/input/event/JoyButtonEvent.java similarity index 100% rename from engine/src/core/com/jme3/input/event/JoyButtonEvent.java rename to jme3-core/src/main/java/com/jme3/input/event/JoyButtonEvent.java diff --git a/engine/src/core/com/jme3/input/event/KeyInputEvent.java b/jme3-core/src/main/java/com/jme3/input/event/KeyInputEvent.java similarity index 100% rename from engine/src/core/com/jme3/input/event/KeyInputEvent.java rename to jme3-core/src/main/java/com/jme3/input/event/KeyInputEvent.java diff --git a/engine/src/core/com/jme3/input/event/MouseButtonEvent.java b/jme3-core/src/main/java/com/jme3/input/event/MouseButtonEvent.java similarity index 100% rename from engine/src/core/com/jme3/input/event/MouseButtonEvent.java rename to jme3-core/src/main/java/com/jme3/input/event/MouseButtonEvent.java diff --git a/engine/src/core/com/jme3/input/event/MouseMotionEvent.java b/jme3-core/src/main/java/com/jme3/input/event/MouseMotionEvent.java similarity index 100% rename from engine/src/core/com/jme3/input/event/MouseMotionEvent.java rename to jme3-core/src/main/java/com/jme3/input/event/MouseMotionEvent.java diff --git a/engine/src/core/com/jme3/input/event/TouchEvent.java b/jme3-core/src/main/java/com/jme3/input/event/TouchEvent.java similarity index 100% rename from engine/src/core/com/jme3/input/event/TouchEvent.java rename to jme3-core/src/main/java/com/jme3/input/event/TouchEvent.java diff --git a/engine/src/core/com/jme3/input/event/package.html b/jme3-core/src/main/java/com/jme3/input/event/package.html similarity index 100% rename from engine/src/core/com/jme3/input/event/package.html rename to jme3-core/src/main/java/com/jme3/input/event/package.html diff --git a/engine/src/core/com/jme3/input/package.html b/jme3-core/src/main/java/com/jme3/input/package.html similarity index 100% rename from engine/src/core/com/jme3/input/package.html rename to jme3-core/src/main/java/com/jme3/input/package.html diff --git a/engine/src/core/com/jme3/light/AmbientLight.java b/jme3-core/src/main/java/com/jme3/light/AmbientLight.java similarity index 100% rename from engine/src/core/com/jme3/light/AmbientLight.java rename to jme3-core/src/main/java/com/jme3/light/AmbientLight.java diff --git a/engine/src/core/com/jme3/light/DirectionalLight.java b/jme3-core/src/main/java/com/jme3/light/DirectionalLight.java similarity index 100% rename from engine/src/core/com/jme3/light/DirectionalLight.java rename to jme3-core/src/main/java/com/jme3/light/DirectionalLight.java diff --git a/engine/src/core/com/jme3/light/Light.java b/jme3-core/src/main/java/com/jme3/light/Light.java similarity index 100% rename from engine/src/core/com/jme3/light/Light.java rename to jme3-core/src/main/java/com/jme3/light/Light.java diff --git a/engine/src/core/com/jme3/light/LightList.java b/jme3-core/src/main/java/com/jme3/light/LightList.java similarity index 100% rename from engine/src/core/com/jme3/light/LightList.java rename to jme3-core/src/main/java/com/jme3/light/LightList.java diff --git a/engine/src/core/com/jme3/light/PointLight.java b/jme3-core/src/main/java/com/jme3/light/PointLight.java similarity index 100% rename from engine/src/core/com/jme3/light/PointLight.java rename to jme3-core/src/main/java/com/jme3/light/PointLight.java diff --git a/engine/src/core/com/jme3/light/SpotLight.java b/jme3-core/src/main/java/com/jme3/light/SpotLight.java similarity index 100% rename from engine/src/core/com/jme3/light/SpotLight.java rename to jme3-core/src/main/java/com/jme3/light/SpotLight.java diff --git a/engine/src/core/com/jme3/light/package.html b/jme3-core/src/main/java/com/jme3/light/package.html similarity index 100% rename from engine/src/core/com/jme3/light/package.html rename to jme3-core/src/main/java/com/jme3/light/package.html diff --git a/engine/src/core/com/jme3/material/FixedFuncBinding.java b/jme3-core/src/main/java/com/jme3/material/FixedFuncBinding.java similarity index 100% rename from engine/src/core/com/jme3/material/FixedFuncBinding.java rename to jme3-core/src/main/java/com/jme3/material/FixedFuncBinding.java diff --git a/engine/src/core/com/jme3/material/MatParam.java b/jme3-core/src/main/java/com/jme3/material/MatParam.java similarity index 100% rename from engine/src/core/com/jme3/material/MatParam.java rename to jme3-core/src/main/java/com/jme3/material/MatParam.java diff --git a/engine/src/core/com/jme3/material/MatParamTexture.java b/jme3-core/src/main/java/com/jme3/material/MatParamTexture.java similarity index 100% rename from engine/src/core/com/jme3/material/MatParamTexture.java rename to jme3-core/src/main/java/com/jme3/material/MatParamTexture.java diff --git a/engine/src/core/com/jme3/material/Material.java b/jme3-core/src/main/java/com/jme3/material/Material.java similarity index 100% rename from engine/src/core/com/jme3/material/Material.java rename to jme3-core/src/main/java/com/jme3/material/Material.java diff --git a/engine/src/core/com/jme3/material/MaterialDef.java b/jme3-core/src/main/java/com/jme3/material/MaterialDef.java similarity index 100% rename from engine/src/core/com/jme3/material/MaterialDef.java rename to jme3-core/src/main/java/com/jme3/material/MaterialDef.java diff --git a/engine/src/core/com/jme3/material/MaterialList.java b/jme3-core/src/main/java/com/jme3/material/MaterialList.java similarity index 100% rename from engine/src/core/com/jme3/material/MaterialList.java rename to jme3-core/src/main/java/com/jme3/material/MaterialList.java diff --git a/engine/src/core/com/jme3/material/MaterialProcessor.java b/jme3-core/src/main/java/com/jme3/material/MaterialProcessor.java similarity index 100% rename from engine/src/core/com/jme3/material/MaterialProcessor.java rename to jme3-core/src/main/java/com/jme3/material/MaterialProcessor.java diff --git a/engine/src/core/com/jme3/material/RenderState.java b/jme3-core/src/main/java/com/jme3/material/RenderState.java similarity index 100% rename from engine/src/core/com/jme3/material/RenderState.java rename to jme3-core/src/main/java/com/jme3/material/RenderState.java diff --git a/engine/src/core/com/jme3/material/ShaderGenerationInfo.java b/jme3-core/src/main/java/com/jme3/material/ShaderGenerationInfo.java similarity index 100% rename from engine/src/core/com/jme3/material/ShaderGenerationInfo.java rename to jme3-core/src/main/java/com/jme3/material/ShaderGenerationInfo.java diff --git a/engine/src/core/com/jme3/material/Technique.java b/jme3-core/src/main/java/com/jme3/material/Technique.java similarity index 100% rename from engine/src/core/com/jme3/material/Technique.java rename to jme3-core/src/main/java/com/jme3/material/Technique.java diff --git a/engine/src/core/com/jme3/material/TechniqueDef.java b/jme3-core/src/main/java/com/jme3/material/TechniqueDef.java similarity index 100% rename from engine/src/core/com/jme3/material/TechniqueDef.java rename to jme3-core/src/main/java/com/jme3/material/TechniqueDef.java diff --git a/engine/src/core/com/jme3/material/package.html b/jme3-core/src/main/java/com/jme3/material/package.html similarity index 100% rename from engine/src/core/com/jme3/material/package.html rename to jme3-core/src/main/java/com/jme3/material/package.html diff --git a/engine/src/core/com/jme3/math/AbstractTriangle.java b/jme3-core/src/main/java/com/jme3/math/AbstractTriangle.java similarity index 100% rename from engine/src/core/com/jme3/math/AbstractTriangle.java rename to jme3-core/src/main/java/com/jme3/math/AbstractTriangle.java diff --git a/engine/src/core/com/jme3/math/ColorRGBA.java b/jme3-core/src/main/java/com/jme3/math/ColorRGBA.java similarity index 100% rename from engine/src/core/com/jme3/math/ColorRGBA.java rename to jme3-core/src/main/java/com/jme3/math/ColorRGBA.java diff --git a/engine/src/core/com/jme3/math/CurveAndSurfaceMath.java b/jme3-core/src/main/java/com/jme3/math/CurveAndSurfaceMath.java similarity index 100% rename from engine/src/core/com/jme3/math/CurveAndSurfaceMath.java rename to jme3-core/src/main/java/com/jme3/math/CurveAndSurfaceMath.java diff --git a/engine/src/core/com/jme3/math/Eigen3f.java b/jme3-core/src/main/java/com/jme3/math/Eigen3f.java similarity index 100% rename from engine/src/core/com/jme3/math/Eigen3f.java rename to jme3-core/src/main/java/com/jme3/math/Eigen3f.java diff --git a/engine/src/core/com/jme3/math/FastMath.java b/jme3-core/src/main/java/com/jme3/math/FastMath.java similarity index 100% rename from engine/src/core/com/jme3/math/FastMath.java rename to jme3-core/src/main/java/com/jme3/math/FastMath.java diff --git a/engine/src/core/com/jme3/math/Line.java b/jme3-core/src/main/java/com/jme3/math/Line.java similarity index 100% rename from engine/src/core/com/jme3/math/Line.java rename to jme3-core/src/main/java/com/jme3/math/Line.java diff --git a/engine/src/core/com/jme3/math/LineSegment.java b/jme3-core/src/main/java/com/jme3/math/LineSegment.java similarity index 100% rename from engine/src/core/com/jme3/math/LineSegment.java rename to jme3-core/src/main/java/com/jme3/math/LineSegment.java diff --git a/engine/src/core/com/jme3/math/Matrix3f.java b/jme3-core/src/main/java/com/jme3/math/Matrix3f.java similarity index 100% rename from engine/src/core/com/jme3/math/Matrix3f.java rename to jme3-core/src/main/java/com/jme3/math/Matrix3f.java diff --git a/engine/src/core/com/jme3/math/Matrix4f.java b/jme3-core/src/main/java/com/jme3/math/Matrix4f.java similarity index 100% rename from engine/src/core/com/jme3/math/Matrix4f.java rename to jme3-core/src/main/java/com/jme3/math/Matrix4f.java diff --git a/engine/src/core/com/jme3/math/Plane.java b/jme3-core/src/main/java/com/jme3/math/Plane.java similarity index 100% rename from engine/src/core/com/jme3/math/Plane.java rename to jme3-core/src/main/java/com/jme3/math/Plane.java diff --git a/engine/src/core/com/jme3/math/Quaternion.java b/jme3-core/src/main/java/com/jme3/math/Quaternion.java similarity index 96% rename from engine/src/core/com/jme3/math/Quaternion.java rename to jme3-core/src/main/java/com/jme3/math/Quaternion.java index 1ee1305d2..1591a13a0 100644 --- a/engine/src/core/com/jme3/math/Quaternion.java +++ b/jme3-core/src/main/java/com/jme3/math/Quaternion.java @@ -462,10 +462,7 @@ public final class Quaternion implements Savable, Cloneable, java.io.Serializabl * @return the rotation matrix representation of this quaternion. */ public Matrix4f toRotationMatrix(Matrix4f result) { - TempVars tempv = TempVars.get(); - Vector3f originalScale = tempv.vect1; - - result.toScaleVector(originalScale); + Vector3f originalScale = result.toScaleVector(); result.setScale(1, 1, 1); float norm = norm(); // we explicitly test norm against one here, saving a division @@ -499,9 +496,6 @@ public final class Quaternion implements Savable, Cloneable, java.io.Serializabl result.m22 = 1 - (xx + yy); result.setScale(originalScale); - - tempv.release(); - return result; } diff --git a/engine/src/core/com/jme3/math/Ray.java b/jme3-core/src/main/java/com/jme3/math/Ray.java similarity index 100% rename from engine/src/core/com/jme3/math/Ray.java rename to jme3-core/src/main/java/com/jme3/math/Ray.java diff --git a/engine/src/core/com/jme3/math/Rectangle.java b/jme3-core/src/main/java/com/jme3/math/Rectangle.java similarity index 100% rename from engine/src/core/com/jme3/math/Rectangle.java rename to jme3-core/src/main/java/com/jme3/math/Rectangle.java diff --git a/engine/src/core/com/jme3/math/Ring.java b/jme3-core/src/main/java/com/jme3/math/Ring.java similarity index 100% rename from engine/src/core/com/jme3/math/Ring.java rename to jme3-core/src/main/java/com/jme3/math/Ring.java diff --git a/engine/src/core/com/jme3/math/Spline.java b/jme3-core/src/main/java/com/jme3/math/Spline.java similarity index 100% rename from engine/src/core/com/jme3/math/Spline.java rename to jme3-core/src/main/java/com/jme3/math/Spline.java diff --git a/engine/src/core/com/jme3/math/Transform.java b/jme3-core/src/main/java/com/jme3/math/Transform.java similarity index 100% rename from engine/src/core/com/jme3/math/Transform.java rename to jme3-core/src/main/java/com/jme3/math/Transform.java diff --git a/engine/src/core/com/jme3/math/Triangle.java b/jme3-core/src/main/java/com/jme3/math/Triangle.java similarity index 100% rename from engine/src/core/com/jme3/math/Triangle.java rename to jme3-core/src/main/java/com/jme3/math/Triangle.java diff --git a/engine/src/core/com/jme3/math/Vector2f.java b/jme3-core/src/main/java/com/jme3/math/Vector2f.java similarity index 100% rename from engine/src/core/com/jme3/math/Vector2f.java rename to jme3-core/src/main/java/com/jme3/math/Vector2f.java diff --git a/engine/src/core/com/jme3/math/Vector3f.java b/jme3-core/src/main/java/com/jme3/math/Vector3f.java similarity index 100% rename from engine/src/core/com/jme3/math/Vector3f.java rename to jme3-core/src/main/java/com/jme3/math/Vector3f.java diff --git a/engine/src/core/com/jme3/math/Vector4f.java b/jme3-core/src/main/java/com/jme3/math/Vector4f.java similarity index 100% rename from engine/src/core/com/jme3/math/Vector4f.java rename to jme3-core/src/main/java/com/jme3/math/Vector4f.java diff --git a/engine/src/core/com/jme3/math/package.html b/jme3-core/src/main/java/com/jme3/math/package.html similarity index 100% rename from engine/src/core/com/jme3/math/package.html rename to jme3-core/src/main/java/com/jme3/math/package.html diff --git a/engine/src/core/com/jme3/post/Filter.java b/jme3-core/src/main/java/com/jme3/post/Filter.java similarity index 94% rename from engine/src/core/com/jme3/post/Filter.java rename to jme3-core/src/main/java/com/jme3/post/Filter.java index a7cb93d37..c6b35d85f 100644 --- a/engine/src/core/com/jme3/post/Filter.java +++ b/jme3-core/src/main/java/com/jme3/post/Filter.java @@ -64,8 +64,8 @@ public abstract class Filter implements Savable { private String name; - protected Pass defaultPass; - protected List postRenderPasses; + protected Filter.Pass defaultPass; + protected List postRenderPasses; protected Material material; protected boolean enabled = true; protected FilterPostProcessor processor; @@ -234,7 +234,7 @@ public abstract class Filter implements Savable { */ protected final void init(AssetManager manager, RenderManager renderManager, ViewPort vp, int w, int h) { // cleanup(renderManager.getRenderer()); - defaultPass = new Pass(); + defaultPass = new Filter.Pass(); defaultPass.init(renderManager.getRenderer(), w, h, getDefaultPassTextureFormat(), getDefaultPassDepthFormat()); initFilter(manager, renderManager, vp, w, h); } @@ -249,8 +249,8 @@ public abstract class Filter implements Savable { defaultPass.cleanup(r); } if (postRenderPasses != null) { - for (Iterator it = postRenderPasses.iterator(); it.hasNext();) { - Pass pass = it.next(); + for (Iterator it = postRenderPasses.iterator(); it.hasNext();) { + Filter.Pass pass = it.next(); pass.cleanup(r); } } @@ -411,7 +411,7 @@ public abstract class Filter implements Savable { * returns the list of the postRender passes * @return */ - protected List getPostRenderPasses() { + protected List getPostRenderPasses() { return postRenderPasses; } diff --git a/engine/src/core/com/jme3/post/FilterPostProcessor.java b/jme3-core/src/main/java/com/jme3/post/FilterPostProcessor.java similarity index 100% rename from engine/src/core/com/jme3/post/FilterPostProcessor.java rename to jme3-core/src/main/java/com/jme3/post/FilterPostProcessor.java diff --git a/engine/src/core/com/jme3/post/HDRRenderer.java b/jme3-core/src/main/java/com/jme3/post/HDRRenderer.java similarity index 100% rename from engine/src/core/com/jme3/post/HDRRenderer.java rename to jme3-core/src/main/java/com/jme3/post/HDRRenderer.java diff --git a/engine/src/core/com/jme3/post/PreDepthProcessor.java b/jme3-core/src/main/java/com/jme3/post/PreDepthProcessor.java similarity index 100% rename from engine/src/core/com/jme3/post/PreDepthProcessor.java rename to jme3-core/src/main/java/com/jme3/post/PreDepthProcessor.java diff --git a/engine/src/core/com/jme3/post/SceneProcessor.java b/jme3-core/src/main/java/com/jme3/post/SceneProcessor.java similarity index 100% rename from engine/src/core/com/jme3/post/SceneProcessor.java rename to jme3-core/src/main/java/com/jme3/post/SceneProcessor.java diff --git a/engine/src/core/com/jme3/post/package.html b/jme3-core/src/main/java/com/jme3/post/package.html similarity index 100% rename from engine/src/core/com/jme3/post/package.html rename to jme3-core/src/main/java/com/jme3/post/package.html diff --git a/engine/src/core/com/jme3/renderer/Camera.java b/jme3-core/src/main/java/com/jme3/renderer/Camera.java similarity index 100% rename from engine/src/core/com/jme3/renderer/Camera.java rename to jme3-core/src/main/java/com/jme3/renderer/Camera.java diff --git a/engine/src/core/com/jme3/renderer/Caps.java b/jme3-core/src/main/java/com/jme3/renderer/Caps.java similarity index 100% rename from engine/src/core/com/jme3/renderer/Caps.java rename to jme3-core/src/main/java/com/jme3/renderer/Caps.java diff --git a/engine/src/core/com/jme3/renderer/GL1Renderer.java b/jme3-core/src/main/java/com/jme3/renderer/GL1Renderer.java similarity index 100% rename from engine/src/core/com/jme3/renderer/GL1Renderer.java rename to jme3-core/src/main/java/com/jme3/renderer/GL1Renderer.java diff --git a/engine/src/core/com/jme3/renderer/IDList.java b/jme3-core/src/main/java/com/jme3/renderer/IDList.java similarity index 100% rename from engine/src/core/com/jme3/renderer/IDList.java rename to jme3-core/src/main/java/com/jme3/renderer/IDList.java diff --git a/engine/src/core/com/jme3/renderer/RenderContext.java b/jme3-core/src/main/java/com/jme3/renderer/RenderContext.java similarity index 100% rename from engine/src/core/com/jme3/renderer/RenderContext.java rename to jme3-core/src/main/java/com/jme3/renderer/RenderContext.java diff --git a/engine/src/core/com/jme3/renderer/RenderManager.java b/jme3-core/src/main/java/com/jme3/renderer/RenderManager.java similarity index 100% rename from engine/src/core/com/jme3/renderer/RenderManager.java rename to jme3-core/src/main/java/com/jme3/renderer/RenderManager.java diff --git a/engine/src/core/com/jme3/renderer/Renderer.java b/jme3-core/src/main/java/com/jme3/renderer/Renderer.java similarity index 100% rename from engine/src/core/com/jme3/renderer/Renderer.java rename to jme3-core/src/main/java/com/jme3/renderer/Renderer.java diff --git a/engine/src/core/com/jme3/renderer/RendererException.java b/jme3-core/src/main/java/com/jme3/renderer/RendererException.java similarity index 100% rename from engine/src/core/com/jme3/renderer/RendererException.java rename to jme3-core/src/main/java/com/jme3/renderer/RendererException.java diff --git a/engine/src/core/com/jme3/renderer/Statistics.java b/jme3-core/src/main/java/com/jme3/renderer/Statistics.java similarity index 100% rename from engine/src/core/com/jme3/renderer/Statistics.java rename to jme3-core/src/main/java/com/jme3/renderer/Statistics.java diff --git a/engine/src/core/com/jme3/renderer/ViewPort.java b/jme3-core/src/main/java/com/jme3/renderer/ViewPort.java similarity index 100% rename from engine/src/core/com/jme3/renderer/ViewPort.java rename to jme3-core/src/main/java/com/jme3/renderer/ViewPort.java diff --git a/engine/src/core/com/jme3/renderer/package.html b/jme3-core/src/main/java/com/jme3/renderer/package.html similarity index 100% rename from engine/src/core/com/jme3/renderer/package.html rename to jme3-core/src/main/java/com/jme3/renderer/package.html diff --git a/engine/src/core/com/jme3/renderer/queue/GeometryComparator.java b/jme3-core/src/main/java/com/jme3/renderer/queue/GeometryComparator.java similarity index 100% rename from engine/src/core/com/jme3/renderer/queue/GeometryComparator.java rename to jme3-core/src/main/java/com/jme3/renderer/queue/GeometryComparator.java diff --git a/engine/src/core/com/jme3/renderer/queue/GeometryList.java b/jme3-core/src/main/java/com/jme3/renderer/queue/GeometryList.java similarity index 100% rename from engine/src/core/com/jme3/renderer/queue/GeometryList.java rename to jme3-core/src/main/java/com/jme3/renderer/queue/GeometryList.java diff --git a/engine/src/core/com/jme3/renderer/queue/GuiComparator.java b/jme3-core/src/main/java/com/jme3/renderer/queue/GuiComparator.java similarity index 100% rename from engine/src/core/com/jme3/renderer/queue/GuiComparator.java rename to jme3-core/src/main/java/com/jme3/renderer/queue/GuiComparator.java diff --git a/engine/src/core/com/jme3/renderer/queue/NullComparator.java b/jme3-core/src/main/java/com/jme3/renderer/queue/NullComparator.java similarity index 100% rename from engine/src/core/com/jme3/renderer/queue/NullComparator.java rename to jme3-core/src/main/java/com/jme3/renderer/queue/NullComparator.java diff --git a/engine/src/core/com/jme3/renderer/queue/OpaqueComparator.java b/jme3-core/src/main/java/com/jme3/renderer/queue/OpaqueComparator.java similarity index 100% rename from engine/src/core/com/jme3/renderer/queue/OpaqueComparator.java rename to jme3-core/src/main/java/com/jme3/renderer/queue/OpaqueComparator.java diff --git a/engine/src/core/com/jme3/renderer/queue/RenderQueue.java b/jme3-core/src/main/java/com/jme3/renderer/queue/RenderQueue.java similarity index 100% rename from engine/src/core/com/jme3/renderer/queue/RenderQueue.java rename to jme3-core/src/main/java/com/jme3/renderer/queue/RenderQueue.java diff --git a/engine/src/core/com/jme3/renderer/queue/TransparentComparator.java b/jme3-core/src/main/java/com/jme3/renderer/queue/TransparentComparator.java similarity index 100% rename from engine/src/core/com/jme3/renderer/queue/TransparentComparator.java rename to jme3-core/src/main/java/com/jme3/renderer/queue/TransparentComparator.java diff --git a/engine/src/core/com/jme3/scene/AssetLinkNode.java b/jme3-core/src/main/java/com/jme3/scene/AssetLinkNode.java similarity index 100% rename from engine/src/core/com/jme3/scene/AssetLinkNode.java rename to jme3-core/src/main/java/com/jme3/scene/AssetLinkNode.java diff --git a/engine/src/core/com/jme3/scene/BatchNode.java b/jme3-core/src/main/java/com/jme3/scene/BatchNode.java similarity index 100% rename from engine/src/core/com/jme3/scene/BatchNode.java rename to jme3-core/src/main/java/com/jme3/scene/BatchNode.java diff --git a/engine/src/core/com/jme3/scene/CameraNode.java b/jme3-core/src/main/java/com/jme3/scene/CameraNode.java similarity index 100% rename from engine/src/core/com/jme3/scene/CameraNode.java rename to jme3-core/src/main/java/com/jme3/scene/CameraNode.java diff --git a/engine/src/core/com/jme3/scene/CollisionData.java b/jme3-core/src/main/java/com/jme3/scene/CollisionData.java similarity index 100% rename from engine/src/core/com/jme3/scene/CollisionData.java rename to jme3-core/src/main/java/com/jme3/scene/CollisionData.java diff --git a/engine/src/core/com/jme3/scene/Geometry.java b/jme3-core/src/main/java/com/jme3/scene/Geometry.java similarity index 100% rename from engine/src/core/com/jme3/scene/Geometry.java rename to jme3-core/src/main/java/com/jme3/scene/Geometry.java diff --git a/engine/src/core/com/jme3/scene/LightNode.java b/jme3-core/src/main/java/com/jme3/scene/LightNode.java similarity index 100% rename from engine/src/core/com/jme3/scene/LightNode.java rename to jme3-core/src/main/java/com/jme3/scene/LightNode.java diff --git a/engine/src/core/com/jme3/scene/Mesh.java b/jme3-core/src/main/java/com/jme3/scene/Mesh.java similarity index 100% rename from engine/src/core/com/jme3/scene/Mesh.java rename to jme3-core/src/main/java/com/jme3/scene/Mesh.java diff --git a/engine/src/core/com/jme3/scene/Node.java b/jme3-core/src/main/java/com/jme3/scene/Node.java similarity index 100% rename from engine/src/core/com/jme3/scene/Node.java rename to jme3-core/src/main/java/com/jme3/scene/Node.java diff --git a/engine/src/core/com/jme3/scene/SceneGraphVisitor.java b/jme3-core/src/main/java/com/jme3/scene/SceneGraphVisitor.java similarity index 100% rename from engine/src/core/com/jme3/scene/SceneGraphVisitor.java rename to jme3-core/src/main/java/com/jme3/scene/SceneGraphVisitor.java diff --git a/engine/src/core/com/jme3/scene/SceneGraphVisitorAdapter.java b/jme3-core/src/main/java/com/jme3/scene/SceneGraphVisitorAdapter.java similarity index 100% rename from engine/src/core/com/jme3/scene/SceneGraphVisitorAdapter.java rename to jme3-core/src/main/java/com/jme3/scene/SceneGraphVisitorAdapter.java diff --git a/engine/src/core/com/jme3/scene/SimpleBatchNode.java b/jme3-core/src/main/java/com/jme3/scene/SimpleBatchNode.java similarity index 100% rename from engine/src/core/com/jme3/scene/SimpleBatchNode.java rename to jme3-core/src/main/java/com/jme3/scene/SimpleBatchNode.java diff --git a/engine/src/core/com/jme3/scene/Spatial.java b/jme3-core/src/main/java/com/jme3/scene/Spatial.java similarity index 100% rename from engine/src/core/com/jme3/scene/Spatial.java rename to jme3-core/src/main/java/com/jme3/scene/Spatial.java diff --git a/engine/src/core/com/jme3/scene/UserData.java b/jme3-core/src/main/java/com/jme3/scene/UserData.java similarity index 100% rename from engine/src/core/com/jme3/scene/UserData.java rename to jme3-core/src/main/java/com/jme3/scene/UserData.java diff --git a/engine/src/core/com/jme3/scene/VertexBuffer.java b/jme3-core/src/main/java/com/jme3/scene/VertexBuffer.java similarity index 100% rename from engine/src/core/com/jme3/scene/VertexBuffer.java rename to jme3-core/src/main/java/com/jme3/scene/VertexBuffer.java diff --git a/engine/src/core/com/jme3/scene/control/AbstractControl.java b/jme3-core/src/main/java/com/jme3/scene/control/AbstractControl.java similarity index 100% rename from engine/src/core/com/jme3/scene/control/AbstractControl.java rename to jme3-core/src/main/java/com/jme3/scene/control/AbstractControl.java diff --git a/engine/src/core/com/jme3/scene/control/AreaUtils.java b/jme3-core/src/main/java/com/jme3/scene/control/AreaUtils.java similarity index 100% rename from engine/src/core/com/jme3/scene/control/AreaUtils.java rename to jme3-core/src/main/java/com/jme3/scene/control/AreaUtils.java diff --git a/engine/src/core/com/jme3/scene/control/BillboardControl.java b/jme3-core/src/main/java/com/jme3/scene/control/BillboardControl.java similarity index 100% rename from engine/src/core/com/jme3/scene/control/BillboardControl.java rename to jme3-core/src/main/java/com/jme3/scene/control/BillboardControl.java diff --git a/engine/src/core/com/jme3/scene/control/CameraControl.java b/jme3-core/src/main/java/com/jme3/scene/control/CameraControl.java similarity index 100% rename from engine/src/core/com/jme3/scene/control/CameraControl.java rename to jme3-core/src/main/java/com/jme3/scene/control/CameraControl.java diff --git a/engine/src/core/com/jme3/scene/control/Control.java b/jme3-core/src/main/java/com/jme3/scene/control/Control.java similarity index 100% rename from engine/src/core/com/jme3/scene/control/Control.java rename to jme3-core/src/main/java/com/jme3/scene/control/Control.java diff --git a/engine/src/core/com/jme3/scene/control/LightControl.java b/jme3-core/src/main/java/com/jme3/scene/control/LightControl.java similarity index 100% rename from engine/src/core/com/jme3/scene/control/LightControl.java rename to jme3-core/src/main/java/com/jme3/scene/control/LightControl.java diff --git a/engine/src/core/com/jme3/scene/control/LodControl.java b/jme3-core/src/main/java/com/jme3/scene/control/LodControl.java similarity index 100% rename from engine/src/core/com/jme3/scene/control/LodControl.java rename to jme3-core/src/main/java/com/jme3/scene/control/LodControl.java diff --git a/engine/src/core/com/jme3/scene/control/UpdateControl.java b/jme3-core/src/main/java/com/jme3/scene/control/UpdateControl.java similarity index 100% rename from engine/src/core/com/jme3/scene/control/UpdateControl.java rename to jme3-core/src/main/java/com/jme3/scene/control/UpdateControl.java diff --git a/engine/src/core/com/jme3/scene/control/package.html b/jme3-core/src/main/java/com/jme3/scene/control/package.html similarity index 100% rename from engine/src/core/com/jme3/scene/control/package.html rename to jme3-core/src/main/java/com/jme3/scene/control/package.html diff --git a/engine/src/core/com/jme3/scene/debug/Arrow.java b/jme3-core/src/main/java/com/jme3/scene/debug/Arrow.java similarity index 100% rename from engine/src/core/com/jme3/scene/debug/Arrow.java rename to jme3-core/src/main/java/com/jme3/scene/debug/Arrow.java diff --git a/engine/src/core/com/jme3/scene/debug/Grid.java b/jme3-core/src/main/java/com/jme3/scene/debug/Grid.java similarity index 100% rename from engine/src/core/com/jme3/scene/debug/Grid.java rename to jme3-core/src/main/java/com/jme3/scene/debug/Grid.java diff --git a/engine/src/core/com/jme3/scene/debug/SkeletonDebugger.java b/jme3-core/src/main/java/com/jme3/scene/debug/SkeletonDebugger.java similarity index 100% rename from engine/src/core/com/jme3/scene/debug/SkeletonDebugger.java rename to jme3-core/src/main/java/com/jme3/scene/debug/SkeletonDebugger.java diff --git a/engine/src/core/com/jme3/scene/debug/SkeletonInterBoneWire.java b/jme3-core/src/main/java/com/jme3/scene/debug/SkeletonInterBoneWire.java similarity index 100% rename from engine/src/core/com/jme3/scene/debug/SkeletonInterBoneWire.java rename to jme3-core/src/main/java/com/jme3/scene/debug/SkeletonInterBoneWire.java diff --git a/engine/src/core/com/jme3/scene/debug/SkeletonPoints.java b/jme3-core/src/main/java/com/jme3/scene/debug/SkeletonPoints.java similarity index 100% rename from engine/src/core/com/jme3/scene/debug/SkeletonPoints.java rename to jme3-core/src/main/java/com/jme3/scene/debug/SkeletonPoints.java diff --git a/engine/src/core/com/jme3/scene/debug/SkeletonWire.java b/jme3-core/src/main/java/com/jme3/scene/debug/SkeletonWire.java similarity index 100% rename from engine/src/core/com/jme3/scene/debug/SkeletonWire.java rename to jme3-core/src/main/java/com/jme3/scene/debug/SkeletonWire.java diff --git a/engine/src/core/com/jme3/scene/debug/WireBox.java b/jme3-core/src/main/java/com/jme3/scene/debug/WireBox.java similarity index 100% rename from engine/src/core/com/jme3/scene/debug/WireBox.java rename to jme3-core/src/main/java/com/jme3/scene/debug/WireBox.java diff --git a/engine/src/core/com/jme3/scene/debug/WireFrustum.java b/jme3-core/src/main/java/com/jme3/scene/debug/WireFrustum.java similarity index 100% rename from engine/src/core/com/jme3/scene/debug/WireFrustum.java rename to jme3-core/src/main/java/com/jme3/scene/debug/WireFrustum.java diff --git a/engine/src/core/com/jme3/scene/debug/WireSphere.java b/jme3-core/src/main/java/com/jme3/scene/debug/WireSphere.java similarity index 100% rename from engine/src/core/com/jme3/scene/debug/WireSphere.java rename to jme3-core/src/main/java/com/jme3/scene/debug/WireSphere.java diff --git a/engine/src/core/com/jme3/scene/mesh/IndexBuffer.java b/jme3-core/src/main/java/com/jme3/scene/mesh/IndexBuffer.java similarity index 100% rename from engine/src/core/com/jme3/scene/mesh/IndexBuffer.java rename to jme3-core/src/main/java/com/jme3/scene/mesh/IndexBuffer.java diff --git a/engine/src/core/com/jme3/scene/mesh/IndexByteBuffer.java b/jme3-core/src/main/java/com/jme3/scene/mesh/IndexByteBuffer.java similarity index 100% rename from engine/src/core/com/jme3/scene/mesh/IndexByteBuffer.java rename to jme3-core/src/main/java/com/jme3/scene/mesh/IndexByteBuffer.java diff --git a/engine/src/core/com/jme3/scene/mesh/IndexIntBuffer.java b/jme3-core/src/main/java/com/jme3/scene/mesh/IndexIntBuffer.java similarity index 100% rename from engine/src/core/com/jme3/scene/mesh/IndexIntBuffer.java rename to jme3-core/src/main/java/com/jme3/scene/mesh/IndexIntBuffer.java diff --git a/engine/src/core/com/jme3/scene/mesh/IndexShortBuffer.java b/jme3-core/src/main/java/com/jme3/scene/mesh/IndexShortBuffer.java similarity index 100% rename from engine/src/core/com/jme3/scene/mesh/IndexShortBuffer.java rename to jme3-core/src/main/java/com/jme3/scene/mesh/IndexShortBuffer.java diff --git a/engine/src/core/com/jme3/scene/mesh/VirtualIndexBuffer.java b/jme3-core/src/main/java/com/jme3/scene/mesh/VirtualIndexBuffer.java similarity index 100% rename from engine/src/core/com/jme3/scene/mesh/VirtualIndexBuffer.java rename to jme3-core/src/main/java/com/jme3/scene/mesh/VirtualIndexBuffer.java diff --git a/engine/src/core/com/jme3/scene/mesh/WrappedIndexBuffer.java b/jme3-core/src/main/java/com/jme3/scene/mesh/WrappedIndexBuffer.java similarity index 100% rename from engine/src/core/com/jme3/scene/mesh/WrappedIndexBuffer.java rename to jme3-core/src/main/java/com/jme3/scene/mesh/WrappedIndexBuffer.java diff --git a/engine/src/core/com/jme3/scene/mesh/package.html b/jme3-core/src/main/java/com/jme3/scene/mesh/package.html similarity index 100% rename from engine/src/core/com/jme3/scene/mesh/package.html rename to jme3-core/src/main/java/com/jme3/scene/mesh/package.html diff --git a/engine/src/core/com/jme3/scene/package.html b/jme3-core/src/main/java/com/jme3/scene/package.html similarity index 100% rename from engine/src/core/com/jme3/scene/package.html rename to jme3-core/src/main/java/com/jme3/scene/package.html diff --git a/engine/src/core/com/jme3/scene/shape/AbstractBox.java b/jme3-core/src/main/java/com/jme3/scene/shape/AbstractBox.java similarity index 100% rename from engine/src/core/com/jme3/scene/shape/AbstractBox.java rename to jme3-core/src/main/java/com/jme3/scene/shape/AbstractBox.java diff --git a/engine/src/core/com/jme3/scene/shape/Box.java b/jme3-core/src/main/java/com/jme3/scene/shape/Box.java similarity index 100% rename from engine/src/core/com/jme3/scene/shape/Box.java rename to jme3-core/src/main/java/com/jme3/scene/shape/Box.java diff --git a/engine/src/core/com/jme3/scene/shape/Curve.java b/jme3-core/src/main/java/com/jme3/scene/shape/Curve.java similarity index 100% rename from engine/src/core/com/jme3/scene/shape/Curve.java rename to jme3-core/src/main/java/com/jme3/scene/shape/Curve.java diff --git a/engine/src/core/com/jme3/scene/shape/Cylinder.java b/jme3-core/src/main/java/com/jme3/scene/shape/Cylinder.java similarity index 100% rename from engine/src/core/com/jme3/scene/shape/Cylinder.java rename to jme3-core/src/main/java/com/jme3/scene/shape/Cylinder.java diff --git a/engine/src/core/com/jme3/scene/shape/Dome.java b/jme3-core/src/main/java/com/jme3/scene/shape/Dome.java similarity index 100% rename from engine/src/core/com/jme3/scene/shape/Dome.java rename to jme3-core/src/main/java/com/jme3/scene/shape/Dome.java diff --git a/engine/src/core/com/jme3/scene/shape/Line.java b/jme3-core/src/main/java/com/jme3/scene/shape/Line.java similarity index 100% rename from engine/src/core/com/jme3/scene/shape/Line.java rename to jme3-core/src/main/java/com/jme3/scene/shape/Line.java diff --git a/engine/src/core/com/jme3/scene/shape/PQTorus.java b/jme3-core/src/main/java/com/jme3/scene/shape/PQTorus.java similarity index 100% rename from engine/src/core/com/jme3/scene/shape/PQTorus.java rename to jme3-core/src/main/java/com/jme3/scene/shape/PQTorus.java diff --git a/engine/src/core/com/jme3/scene/shape/Quad.java b/jme3-core/src/main/java/com/jme3/scene/shape/Quad.java similarity index 100% rename from engine/src/core/com/jme3/scene/shape/Quad.java rename to jme3-core/src/main/java/com/jme3/scene/shape/Quad.java diff --git a/engine/src/core/com/jme3/scene/shape/Sphere.java b/jme3-core/src/main/java/com/jme3/scene/shape/Sphere.java similarity index 100% rename from engine/src/core/com/jme3/scene/shape/Sphere.java rename to jme3-core/src/main/java/com/jme3/scene/shape/Sphere.java diff --git a/engine/src/core/com/jme3/scene/shape/StripBox.java b/jme3-core/src/main/java/com/jme3/scene/shape/StripBox.java similarity index 100% rename from engine/src/core/com/jme3/scene/shape/StripBox.java rename to jme3-core/src/main/java/com/jme3/scene/shape/StripBox.java diff --git a/engine/src/core/com/jme3/scene/shape/Surface.java b/jme3-core/src/main/java/com/jme3/scene/shape/Surface.java similarity index 100% rename from engine/src/core/com/jme3/scene/shape/Surface.java rename to jme3-core/src/main/java/com/jme3/scene/shape/Surface.java diff --git a/engine/src/core/com/jme3/scene/shape/Torus.java b/jme3-core/src/main/java/com/jme3/scene/shape/Torus.java similarity index 100% rename from engine/src/core/com/jme3/scene/shape/Torus.java rename to jme3-core/src/main/java/com/jme3/scene/shape/Torus.java diff --git a/engine/src/core/com/jme3/shader/Attribute.java b/jme3-core/src/main/java/com/jme3/shader/Attribute.java similarity index 100% rename from engine/src/core/com/jme3/shader/Attribute.java rename to jme3-core/src/main/java/com/jme3/shader/Attribute.java diff --git a/engine/src/core/com/jme3/shader/DefineList.java b/jme3-core/src/main/java/com/jme3/shader/DefineList.java similarity index 100% rename from engine/src/core/com/jme3/shader/DefineList.java rename to jme3-core/src/main/java/com/jme3/shader/DefineList.java diff --git a/engine/src/core/com/jme3/shader/Glsl100ShaderGenerator.java b/jme3-core/src/main/java/com/jme3/shader/Glsl100ShaderGenerator.java similarity index 100% rename from engine/src/core/com/jme3/shader/Glsl100ShaderGenerator.java rename to jme3-core/src/main/java/com/jme3/shader/Glsl100ShaderGenerator.java diff --git a/engine/src/core/com/jme3/shader/Glsl150ShaderGenerator.java b/jme3-core/src/main/java/com/jme3/shader/Glsl150ShaderGenerator.java similarity index 100% rename from engine/src/core/com/jme3/shader/Glsl150ShaderGenerator.java rename to jme3-core/src/main/java/com/jme3/shader/Glsl150ShaderGenerator.java diff --git a/engine/src/core/com/jme3/shader/Shader.java b/jme3-core/src/main/java/com/jme3/shader/Shader.java similarity index 100% rename from engine/src/core/com/jme3/shader/Shader.java rename to jme3-core/src/main/java/com/jme3/shader/Shader.java diff --git a/engine/src/core/com/jme3/shader/ShaderGenerator.java b/jme3-core/src/main/java/com/jme3/shader/ShaderGenerator.java similarity index 100% rename from engine/src/core/com/jme3/shader/ShaderGenerator.java rename to jme3-core/src/main/java/com/jme3/shader/ShaderGenerator.java diff --git a/engine/src/core/com/jme3/shader/ShaderKey.java b/jme3-core/src/main/java/com/jme3/shader/ShaderKey.java similarity index 100% rename from engine/src/core/com/jme3/shader/ShaderKey.java rename to jme3-core/src/main/java/com/jme3/shader/ShaderKey.java diff --git a/engine/src/core/com/jme3/shader/ShaderNode.java b/jme3-core/src/main/java/com/jme3/shader/ShaderNode.java similarity index 100% rename from engine/src/core/com/jme3/shader/ShaderNode.java rename to jme3-core/src/main/java/com/jme3/shader/ShaderNode.java diff --git a/engine/src/core/com/jme3/shader/ShaderNodeDefinition.java b/jme3-core/src/main/java/com/jme3/shader/ShaderNodeDefinition.java similarity index 100% rename from engine/src/core/com/jme3/shader/ShaderNodeDefinition.java rename to jme3-core/src/main/java/com/jme3/shader/ShaderNodeDefinition.java diff --git a/engine/src/core/com/jme3/shader/ShaderNodeVariable.java b/jme3-core/src/main/java/com/jme3/shader/ShaderNodeVariable.java similarity index 100% rename from engine/src/core/com/jme3/shader/ShaderNodeVariable.java rename to jme3-core/src/main/java/com/jme3/shader/ShaderNodeVariable.java diff --git a/engine/src/core/com/jme3/shader/ShaderUtils.java b/jme3-core/src/main/java/com/jme3/shader/ShaderUtils.java similarity index 100% rename from engine/src/core/com/jme3/shader/ShaderUtils.java rename to jme3-core/src/main/java/com/jme3/shader/ShaderUtils.java diff --git a/engine/src/core/com/jme3/shader/ShaderVariable.java b/jme3-core/src/main/java/com/jme3/shader/ShaderVariable.java similarity index 100% rename from engine/src/core/com/jme3/shader/ShaderVariable.java rename to jme3-core/src/main/java/com/jme3/shader/ShaderVariable.java diff --git a/engine/src/core/com/jme3/shader/Uniform.java b/jme3-core/src/main/java/com/jme3/shader/Uniform.java similarity index 100% rename from engine/src/core/com/jme3/shader/Uniform.java rename to jme3-core/src/main/java/com/jme3/shader/Uniform.java diff --git a/engine/src/core/com/jme3/shader/UniformBinding.java b/jme3-core/src/main/java/com/jme3/shader/UniformBinding.java similarity index 100% rename from engine/src/core/com/jme3/shader/UniformBinding.java rename to jme3-core/src/main/java/com/jme3/shader/UniformBinding.java diff --git a/engine/src/core/com/jme3/shader/UniformBindingManager.java b/jme3-core/src/main/java/com/jme3/shader/UniformBindingManager.java similarity index 100% rename from engine/src/core/com/jme3/shader/UniformBindingManager.java rename to jme3-core/src/main/java/com/jme3/shader/UniformBindingManager.java diff --git a/engine/src/core/com/jme3/shader/VarType.java b/jme3-core/src/main/java/com/jme3/shader/VarType.java similarity index 100% rename from engine/src/core/com/jme3/shader/VarType.java rename to jme3-core/src/main/java/com/jme3/shader/VarType.java diff --git a/engine/src/core/com/jme3/shader/VariableMapping.java b/jme3-core/src/main/java/com/jme3/shader/VariableMapping.java similarity index 100% rename from engine/src/core/com/jme3/shader/VariableMapping.java rename to jme3-core/src/main/java/com/jme3/shader/VariableMapping.java diff --git a/engine/src/core/com/jme3/shadow/AbstractShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowFilter.java similarity index 100% rename from engine/src/core/com/jme3/shadow/AbstractShadowFilter.java rename to jme3-core/src/main/java/com/jme3/shadow/AbstractShadowFilter.java diff --git a/engine/src/core/com/jme3/shadow/AbstractShadowRenderer.java b/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowRenderer.java similarity index 97% rename from engine/src/core/com/jme3/shadow/AbstractShadowRenderer.java rename to jme3-core/src/main/java/com/jme3/shadow/AbstractShadowRenderer.java index c81fab22a..76f27db0d 100644 --- a/engine/src/core/com/jme3/shadow/AbstractShadowRenderer.java +++ b/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowRenderer.java @@ -608,7 +608,7 @@ public abstract class AbstractShadowRenderer implements SceneProcessor, Savable } /** - * Returns true if this shadow renderer flushes the shadow queues. + * returns true if the shadow renderer flushes the shadow queues * * @return flushQueues */ diff --git a/engine/src/core/com/jme3/shadow/BasicShadowRenderer.java b/jme3-core/src/main/java/com/jme3/shadow/BasicShadowRenderer.java similarity index 100% rename from engine/src/core/com/jme3/shadow/BasicShadowRenderer.java rename to jme3-core/src/main/java/com/jme3/shadow/BasicShadowRenderer.java diff --git a/engine/src/core/com/jme3/shadow/CompareMode.java b/jme3-core/src/main/java/com/jme3/shadow/CompareMode.java similarity index 100% rename from engine/src/core/com/jme3/shadow/CompareMode.java rename to jme3-core/src/main/java/com/jme3/shadow/CompareMode.java diff --git a/engine/src/core/com/jme3/shadow/DirectionalLightShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/DirectionalLightShadowFilter.java similarity index 100% rename from engine/src/core/com/jme3/shadow/DirectionalLightShadowFilter.java rename to jme3-core/src/main/java/com/jme3/shadow/DirectionalLightShadowFilter.java diff --git a/engine/src/core/com/jme3/shadow/DirectionalLightShadowRenderer.java b/jme3-core/src/main/java/com/jme3/shadow/DirectionalLightShadowRenderer.java similarity index 100% rename from engine/src/core/com/jme3/shadow/DirectionalLightShadowRenderer.java rename to jme3-core/src/main/java/com/jme3/shadow/DirectionalLightShadowRenderer.java diff --git a/engine/src/core/com/jme3/shadow/EdgeFilteringMode.java b/jme3-core/src/main/java/com/jme3/shadow/EdgeFilteringMode.java similarity index 100% rename from engine/src/core/com/jme3/shadow/EdgeFilteringMode.java rename to jme3-core/src/main/java/com/jme3/shadow/EdgeFilteringMode.java diff --git a/engine/src/core/com/jme3/shadow/PointLightShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowFilter.java similarity index 100% rename from engine/src/core/com/jme3/shadow/PointLightShadowFilter.java rename to jme3-core/src/main/java/com/jme3/shadow/PointLightShadowFilter.java diff --git a/engine/src/core/com/jme3/shadow/PointLightShadowRenderer.java b/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowRenderer.java similarity index 100% rename from engine/src/core/com/jme3/shadow/PointLightShadowRenderer.java rename to jme3-core/src/main/java/com/jme3/shadow/PointLightShadowRenderer.java diff --git a/engine/src/core/com/jme3/shadow/PssmShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/PssmShadowFilter.java similarity index 100% rename from engine/src/core/com/jme3/shadow/PssmShadowFilter.java rename to jme3-core/src/main/java/com/jme3/shadow/PssmShadowFilter.java diff --git a/engine/src/core/com/jme3/shadow/PssmShadowRenderer.java b/jme3-core/src/main/java/com/jme3/shadow/PssmShadowRenderer.java similarity index 100% rename from engine/src/core/com/jme3/shadow/PssmShadowRenderer.java rename to jme3-core/src/main/java/com/jme3/shadow/PssmShadowRenderer.java diff --git a/engine/src/core/com/jme3/shadow/PssmShadowUtil.java b/jme3-core/src/main/java/com/jme3/shadow/PssmShadowUtil.java similarity index 100% rename from engine/src/core/com/jme3/shadow/PssmShadowUtil.java rename to jme3-core/src/main/java/com/jme3/shadow/PssmShadowUtil.java diff --git a/engine/src/core/com/jme3/shadow/ShadowUtil.java b/jme3-core/src/main/java/com/jme3/shadow/ShadowUtil.java similarity index 100% rename from engine/src/core/com/jme3/shadow/ShadowUtil.java rename to jme3-core/src/main/java/com/jme3/shadow/ShadowUtil.java diff --git a/engine/src/core/com/jme3/shadow/SpotLightShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowFilter.java similarity index 100% rename from engine/src/core/com/jme3/shadow/SpotLightShadowFilter.java rename to jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowFilter.java diff --git a/engine/src/core/com/jme3/shadow/SpotLightShadowRenderer.java b/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowRenderer.java similarity index 100% rename from engine/src/core/com/jme3/shadow/SpotLightShadowRenderer.java rename to jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowRenderer.java diff --git a/engine/src/core/com/jme3/system/Annotations.java b/jme3-core/src/main/java/com/jme3/system/Annotations.java similarity index 100% rename from engine/src/core/com/jme3/system/Annotations.java rename to jme3-core/src/main/java/com/jme3/system/Annotations.java diff --git a/engine/src/core/com/jme3/system/AppSettings.java b/jme3-core/src/main/java/com/jme3/system/AppSettings.java similarity index 100% rename from engine/src/core/com/jme3/system/AppSettings.java rename to jme3-core/src/main/java/com/jme3/system/AppSettings.java diff --git a/engine/src/core/com/jme3/system/JmeContext.java b/jme3-core/src/main/java/com/jme3/system/JmeContext.java similarity index 100% rename from engine/src/core/com/jme3/system/JmeContext.java rename to jme3-core/src/main/java/com/jme3/system/JmeContext.java diff --git a/engine/src/core/com/jme3/system/JmeSystem.java b/jme3-core/src/main/java/com/jme3/system/JmeSystem.java similarity index 100% rename from engine/src/core/com/jme3/system/JmeSystem.java rename to jme3-core/src/main/java/com/jme3/system/JmeSystem.java diff --git a/engine/src/core/com/jme3/system/JmeSystemDelegate.java b/jme3-core/src/main/java/com/jme3/system/JmeSystemDelegate.java similarity index 100% rename from engine/src/core/com/jme3/system/JmeSystemDelegate.java rename to jme3-core/src/main/java/com/jme3/system/JmeSystemDelegate.java diff --git a/engine/src/core/com/jme3/system/JmeVersion.java b/jme3-core/src/main/java/com/jme3/system/JmeVersion.java similarity index 100% rename from engine/src/core/com/jme3/system/JmeVersion.java rename to jme3-core/src/main/java/com/jme3/system/JmeVersion.java diff --git a/engine/src/core/com/jme3/system/NanoTimer.java b/jme3-core/src/main/java/com/jme3/system/NanoTimer.java similarity index 100% rename from engine/src/core/com/jme3/system/NanoTimer.java rename to jme3-core/src/main/java/com/jme3/system/NanoTimer.java diff --git a/engine/src/core/com/jme3/system/NullContext.java b/jme3-core/src/main/java/com/jme3/system/NullContext.java similarity index 100% rename from engine/src/core/com/jme3/system/NullContext.java rename to jme3-core/src/main/java/com/jme3/system/NullContext.java diff --git a/engine/src/core/com/jme3/system/NullRenderer.java b/jme3-core/src/main/java/com/jme3/system/NullRenderer.java similarity index 100% rename from engine/src/core/com/jme3/system/NullRenderer.java rename to jme3-core/src/main/java/com/jme3/system/NullRenderer.java diff --git a/engine/src/core/com/jme3/system/Platform.java b/jme3-core/src/main/java/com/jme3/system/Platform.java similarity index 100% rename from engine/src/core/com/jme3/system/Platform.java rename to jme3-core/src/main/java/com/jme3/system/Platform.java diff --git a/engine/src/core/com/jme3/system/SystemListener.java b/jme3-core/src/main/java/com/jme3/system/SystemListener.java similarity index 100% rename from engine/src/core/com/jme3/system/SystemListener.java rename to jme3-core/src/main/java/com/jme3/system/SystemListener.java diff --git a/engine/src/core/com/jme3/system/Timer.java b/jme3-core/src/main/java/com/jme3/system/Timer.java similarity index 100% rename from engine/src/core/com/jme3/system/Timer.java rename to jme3-core/src/main/java/com/jme3/system/Timer.java diff --git a/engine/src/core/com/jme3/texture/FrameBuffer.java b/jme3-core/src/main/java/com/jme3/texture/FrameBuffer.java similarity index 100% rename from engine/src/core/com/jme3/texture/FrameBuffer.java rename to jme3-core/src/main/java/com/jme3/texture/FrameBuffer.java diff --git a/engine/src/core/com/jme3/texture/Image.java b/jme3-core/src/main/java/com/jme3/texture/Image.java similarity index 100% rename from engine/src/core/com/jme3/texture/Image.java rename to jme3-core/src/main/java/com/jme3/texture/Image.java diff --git a/engine/src/core/com/jme3/texture/Texture.java b/jme3-core/src/main/java/com/jme3/texture/Texture.java similarity index 100% rename from engine/src/core/com/jme3/texture/Texture.java rename to jme3-core/src/main/java/com/jme3/texture/Texture.java diff --git a/engine/src/core/com/jme3/texture/Texture2D.java b/jme3-core/src/main/java/com/jme3/texture/Texture2D.java similarity index 100% rename from engine/src/core/com/jme3/texture/Texture2D.java rename to jme3-core/src/main/java/com/jme3/texture/Texture2D.java diff --git a/engine/src/core/com/jme3/texture/Texture3D.java b/jme3-core/src/main/java/com/jme3/texture/Texture3D.java similarity index 100% rename from engine/src/core/com/jme3/texture/Texture3D.java rename to jme3-core/src/main/java/com/jme3/texture/Texture3D.java diff --git a/engine/src/core/com/jme3/texture/TextureArray.java b/jme3-core/src/main/java/com/jme3/texture/TextureArray.java similarity index 100% rename from engine/src/core/com/jme3/texture/TextureArray.java rename to jme3-core/src/main/java/com/jme3/texture/TextureArray.java diff --git a/engine/src/core/com/jme3/texture/TextureCubeMap.java b/jme3-core/src/main/java/com/jme3/texture/TextureCubeMap.java similarity index 100% rename from engine/src/core/com/jme3/texture/TextureCubeMap.java rename to jme3-core/src/main/java/com/jme3/texture/TextureCubeMap.java diff --git a/engine/src/core/com/jme3/texture/TextureProcessor.java b/jme3-core/src/main/java/com/jme3/texture/TextureProcessor.java similarity index 100% rename from engine/src/core/com/jme3/texture/TextureProcessor.java rename to jme3-core/src/main/java/com/jme3/texture/TextureProcessor.java diff --git a/engine/src/core/com/jme3/texture/image/BitMaskImageCodec.java b/jme3-core/src/main/java/com/jme3/texture/image/BitMaskImageCodec.java similarity index 100% rename from engine/src/core/com/jme3/texture/image/BitMaskImageCodec.java rename to jme3-core/src/main/java/com/jme3/texture/image/BitMaskImageCodec.java diff --git a/engine/src/core/com/jme3/texture/image/ByteAlignedImageCodec.java b/jme3-core/src/main/java/com/jme3/texture/image/ByteAlignedImageCodec.java similarity index 100% rename from engine/src/core/com/jme3/texture/image/ByteAlignedImageCodec.java rename to jme3-core/src/main/java/com/jme3/texture/image/ByteAlignedImageCodec.java diff --git a/engine/src/core/com/jme3/texture/image/ByteOffsetImageCodec.java b/jme3-core/src/main/java/com/jme3/texture/image/ByteOffsetImageCodec.java similarity index 100% rename from engine/src/core/com/jme3/texture/image/ByteOffsetImageCodec.java rename to jme3-core/src/main/java/com/jme3/texture/image/ByteOffsetImageCodec.java diff --git a/engine/src/core/com/jme3/texture/image/DefaultImageRaster.java b/jme3-core/src/main/java/com/jme3/texture/image/DefaultImageRaster.java similarity index 100% rename from engine/src/core/com/jme3/texture/image/DefaultImageRaster.java rename to jme3-core/src/main/java/com/jme3/texture/image/DefaultImageRaster.java diff --git a/engine/src/core/com/jme3/texture/image/ImageCodec.java b/jme3-core/src/main/java/com/jme3/texture/image/ImageCodec.java similarity index 100% rename from engine/src/core/com/jme3/texture/image/ImageCodec.java rename to jme3-core/src/main/java/com/jme3/texture/image/ImageCodec.java diff --git a/engine/src/core/com/jme3/texture/image/ImageRaster.java b/jme3-core/src/main/java/com/jme3/texture/image/ImageRaster.java similarity index 100% rename from engine/src/core/com/jme3/texture/image/ImageRaster.java rename to jme3-core/src/main/java/com/jme3/texture/image/ImageRaster.java diff --git a/engine/src/core/com/jme3/ui/Picture.java b/jme3-core/src/main/java/com/jme3/ui/Picture.java similarity index 100% rename from engine/src/core/com/jme3/ui/Picture.java rename to jme3-core/src/main/java/com/jme3/ui/Picture.java diff --git a/engine/src/core/com/jme3/util/BufferUtils.java b/jme3-core/src/main/java/com/jme3/util/BufferUtils.java similarity index 100% rename from engine/src/core/com/jme3/util/BufferUtils.java rename to jme3-core/src/main/java/com/jme3/util/BufferUtils.java diff --git a/engine/src/core/com/jme3/util/IntMap.java b/jme3-core/src/main/java/com/jme3/util/IntMap.java similarity index 100% rename from engine/src/core/com/jme3/util/IntMap.java rename to jme3-core/src/main/java/com/jme3/util/IntMap.java diff --git a/engine/src/core/com/jme3/util/JmeFormatter.java b/jme3-core/src/main/java/com/jme3/util/JmeFormatter.java similarity index 100% rename from engine/src/core/com/jme3/util/JmeFormatter.java rename to jme3-core/src/main/java/com/jme3/util/JmeFormatter.java diff --git a/engine/src/core/com/jme3/util/ListMap.java b/jme3-core/src/main/java/com/jme3/util/ListMap.java similarity index 100% rename from engine/src/core/com/jme3/util/ListMap.java rename to jme3-core/src/main/java/com/jme3/util/ListMap.java diff --git a/engine/src/core/com/jme3/util/ListSort.java b/jme3-core/src/main/java/com/jme3/util/ListSort.java similarity index 100% rename from engine/src/core/com/jme3/util/ListSort.java rename to jme3-core/src/main/java/com/jme3/util/ListSort.java diff --git a/engine/src/core/com/jme3/util/LittleEndien.java b/jme3-core/src/main/java/com/jme3/util/LittleEndien.java similarity index 100% rename from engine/src/core/com/jme3/util/LittleEndien.java rename to jme3-core/src/main/java/com/jme3/util/LittleEndien.java diff --git a/engine/src/core/com/jme3/util/MemoryUtils.java b/jme3-core/src/main/java/com/jme3/util/MemoryUtils.java similarity index 100% rename from engine/src/core/com/jme3/util/MemoryUtils.java rename to jme3-core/src/main/java/com/jme3/util/MemoryUtils.java diff --git a/engine/src/core/com/jme3/util/NativeObject.java b/jme3-core/src/main/java/com/jme3/util/NativeObject.java similarity index 100% rename from engine/src/core/com/jme3/util/NativeObject.java rename to jme3-core/src/main/java/com/jme3/util/NativeObject.java diff --git a/engine/src/core/com/jme3/util/NativeObjectManager.java b/jme3-core/src/main/java/com/jme3/util/NativeObjectManager.java similarity index 100% rename from engine/src/core/com/jme3/util/NativeObjectManager.java rename to jme3-core/src/main/java/com/jme3/util/NativeObjectManager.java diff --git a/engine/src/core/com/jme3/util/PlaceholderAssets.java b/jme3-core/src/main/java/com/jme3/util/PlaceholderAssets.java similarity index 100% rename from engine/src/core/com/jme3/util/PlaceholderAssets.java rename to jme3-core/src/main/java/com/jme3/util/PlaceholderAssets.java diff --git a/engine/src/core/com/jme3/util/SafeArrayList.java b/jme3-core/src/main/java/com/jme3/util/SafeArrayList.java similarity index 100% rename from engine/src/core/com/jme3/util/SafeArrayList.java rename to jme3-core/src/main/java/com/jme3/util/SafeArrayList.java diff --git a/engine/src/core/com/jme3/util/SkyFactory.java b/jme3-core/src/main/java/com/jme3/util/SkyFactory.java similarity index 100% rename from engine/src/core/com/jme3/util/SkyFactory.java rename to jme3-core/src/main/java/com/jme3/util/SkyFactory.java diff --git a/engine/src/core/com/jme3/util/SortUtil.java b/jme3-core/src/main/java/com/jme3/util/SortUtil.java similarity index 100% rename from engine/src/core/com/jme3/util/SortUtil.java rename to jme3-core/src/main/java/com/jme3/util/SortUtil.java diff --git a/engine/src/core/com/jme3/util/TangentBinormalGenerator.java b/jme3-core/src/main/java/com/jme3/util/TangentBinormalGenerator.java similarity index 100% rename from engine/src/core/com/jme3/util/TangentBinormalGenerator.java rename to jme3-core/src/main/java/com/jme3/util/TangentBinormalGenerator.java diff --git a/engine/src/core/com/jme3/util/TempVars.java b/jme3-core/src/main/java/com/jme3/util/TempVars.java similarity index 100% rename from engine/src/core/com/jme3/util/TempVars.java rename to jme3-core/src/main/java/com/jme3/util/TempVars.java diff --git a/engine/src/core/com/jme3/util/blockparser/BlockLanguageParser.java b/jme3-core/src/main/java/com/jme3/util/blockparser/BlockLanguageParser.java similarity index 100% rename from engine/src/core/com/jme3/util/blockparser/BlockLanguageParser.java rename to jme3-core/src/main/java/com/jme3/util/blockparser/BlockLanguageParser.java diff --git a/engine/src/core/com/jme3/util/blockparser/Statement.java b/jme3-core/src/main/java/com/jme3/util/blockparser/Statement.java similarity index 100% rename from engine/src/core/com/jme3/util/blockparser/Statement.java rename to jme3-core/src/main/java/com/jme3/util/blockparser/Statement.java diff --git a/engine/src/core/com/jme3/util/xml/SAXUtil.java b/jme3-core/src/main/java/com/jme3/util/xml/SAXUtil.java similarity index 100% rename from engine/src/core/com/jme3/util/xml/SAXUtil.java rename to jme3-core/src/main/java/com/jme3/util/xml/SAXUtil.java diff --git a/engine/src/core-data/10000.monkeyz b/jme3-core/src/main/resources/10000.monkeyz similarity index 100% rename from engine/src/core-data/10000.monkeyz rename to jme3-core/src/main/resources/10000.monkeyz diff --git a/engine/src/core-data/Common/MatDefs/Blur/HGaussianBlur.frag b/jme3-core/src/main/resources/Common/MatDefs/Blur/HGaussianBlur.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Blur/HGaussianBlur.frag rename to jme3-core/src/main/resources/Common/MatDefs/Blur/HGaussianBlur.frag diff --git a/engine/src/core-data/Common/MatDefs/Blur/HGaussianBlur.j3md b/jme3-core/src/main/resources/Common/MatDefs/Blur/HGaussianBlur.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Blur/HGaussianBlur.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Blur/HGaussianBlur.j3md diff --git a/engine/src/core-data/Common/MatDefs/Blur/RadialBlur.frag b/jme3-core/src/main/resources/Common/MatDefs/Blur/RadialBlur.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Blur/RadialBlur.frag rename to jme3-core/src/main/resources/Common/MatDefs/Blur/RadialBlur.frag diff --git a/engine/src/core-data/Common/MatDefs/Blur/RadialBlur.j3md b/jme3-core/src/main/resources/Common/MatDefs/Blur/RadialBlur.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Blur/RadialBlur.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Blur/RadialBlur.j3md diff --git a/engine/src/core-data/Common/MatDefs/Blur/RadialBlur15.frag b/jme3-core/src/main/resources/Common/MatDefs/Blur/RadialBlur15.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Blur/RadialBlur15.frag rename to jme3-core/src/main/resources/Common/MatDefs/Blur/RadialBlur15.frag diff --git a/engine/src/core-data/Common/MatDefs/Blur/VGaussianBlur.frag b/jme3-core/src/main/resources/Common/MatDefs/Blur/VGaussianBlur.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Blur/VGaussianBlur.frag rename to jme3-core/src/main/resources/Common/MatDefs/Blur/VGaussianBlur.frag diff --git a/engine/src/core-data/Common/MatDefs/Blur/VGaussianBlur.j3md b/jme3-core/src/main/resources/Common/MatDefs/Blur/VGaussianBlur.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Blur/VGaussianBlur.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Blur/VGaussianBlur.j3md diff --git a/engine/src/core-data/Common/MatDefs/Gui/Gui.frag b/jme3-core/src/main/resources/Common/MatDefs/Gui/Gui.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Gui/Gui.frag rename to jme3-core/src/main/resources/Common/MatDefs/Gui/Gui.frag diff --git a/engine/src/core-data/Common/MatDefs/Gui/Gui.j3md b/jme3-core/src/main/resources/Common/MatDefs/Gui/Gui.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Gui/Gui.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Gui/Gui.j3md diff --git a/engine/src/core-data/Common/MatDefs/Gui/Gui.vert b/jme3-core/src/main/resources/Common/MatDefs/Gui/Gui.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Gui/Gui.vert rename to jme3-core/src/main/resources/Common/MatDefs/Gui/Gui.vert diff --git a/engine/src/core-data/Common/MatDefs/Hdr/LogLum.frag b/jme3-core/src/main/resources/Common/MatDefs/Hdr/LogLum.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Hdr/LogLum.frag rename to jme3-core/src/main/resources/Common/MatDefs/Hdr/LogLum.frag diff --git a/engine/src/core-data/Common/MatDefs/Hdr/LogLum.j3md b/jme3-core/src/main/resources/Common/MatDefs/Hdr/LogLum.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Hdr/LogLum.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Hdr/LogLum.j3md diff --git a/engine/src/core-data/Common/MatDefs/Hdr/ToneMap.frag b/jme3-core/src/main/resources/Common/MatDefs/Hdr/ToneMap.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Hdr/ToneMap.frag rename to jme3-core/src/main/resources/Common/MatDefs/Hdr/ToneMap.frag diff --git a/engine/src/core-data/Common/MatDefs/Hdr/ToneMap.j3md b/jme3-core/src/main/resources/Common/MatDefs/Hdr/ToneMap.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Hdr/ToneMap.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Hdr/ToneMap.j3md diff --git a/engine/src/core-data/Common/MatDefs/Light/Deferred.frag b/jme3-core/src/main/resources/Common/MatDefs/Light/Deferred.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Light/Deferred.frag rename to jme3-core/src/main/resources/Common/MatDefs/Light/Deferred.frag diff --git a/engine/src/core-data/Common/MatDefs/Light/Deferred.j3md b/jme3-core/src/main/resources/Common/MatDefs/Light/Deferred.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Light/Deferred.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Light/Deferred.j3md diff --git a/engine/src/core-data/Common/MatDefs/Light/Deferred.vert b/jme3-core/src/main/resources/Common/MatDefs/Light/Deferred.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Light/Deferred.vert rename to jme3-core/src/main/resources/Common/MatDefs/Light/Deferred.vert diff --git a/engine/src/core-data/Common/MatDefs/Light/GBuf.frag b/jme3-core/src/main/resources/Common/MatDefs/Light/GBuf.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Light/GBuf.frag rename to jme3-core/src/main/resources/Common/MatDefs/Light/GBuf.frag diff --git a/engine/src/core-data/Common/MatDefs/Light/GBuf.vert b/jme3-core/src/main/resources/Common/MatDefs/Light/GBuf.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Light/GBuf.vert rename to jme3-core/src/main/resources/Common/MatDefs/Light/GBuf.vert diff --git a/engine/src/core-data/Common/MatDefs/Light/Glow.frag b/jme3-core/src/main/resources/Common/MatDefs/Light/Glow.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Light/Glow.frag rename to jme3-core/src/main/resources/Common/MatDefs/Light/Glow.frag diff --git a/engine/src/core-data/Common/MatDefs/Light/Lighting.frag b/jme3-core/src/main/resources/Common/MatDefs/Light/Lighting.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Light/Lighting.frag rename to jme3-core/src/main/resources/Common/MatDefs/Light/Lighting.frag diff --git a/engine/src/core-data/Common/MatDefs/Light/Lighting.j3md b/jme3-core/src/main/resources/Common/MatDefs/Light/Lighting.j3md similarity index 91% rename from engine/src/core-data/Common/MatDefs/Light/Lighting.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Light/Lighting.j3md index 625aa9fde..daad21612 100644 --- a/engine/src/core-data/Common/MatDefs/Light/Lighting.j3md +++ b/jme3-core/src/main/resources/Common/MatDefs/Light/Lighting.j3md @@ -283,25 +283,6 @@ MaterialDef Phong Lighting { } - - Technique PreNormalPassDerivative { - - VertexShader GLSL100 : Common/MatDefs/MSSAO/normal.vert - FragmentShader GLSL100 : Common/MatDefs/MSSAO/normal.frag - - WorldParameters { - WorldViewProjectionMatrix - WorldViewMatrix - NormalMatrix - } - - Defines { - DIFFUSEMAP_ALPHA : DiffuseMap - NUM_BONES : NumberOfBones - } - - } - Technique GBuf { VertexShader GLSL100: Common/MatDefs/Light/GBuf.vert diff --git a/engine/src/core-data/Common/MatDefs/Light/Lighting.vert b/jme3-core/src/main/resources/Common/MatDefs/Light/Lighting.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Light/Lighting.vert rename to jme3-core/src/main/resources/Common/MatDefs/Light/Lighting.vert diff --git a/engine/src/core-data/Common/MatDefs/Misc/ColoredTextured.frag b/jme3-core/src/main/resources/Common/MatDefs/Misc/ColoredTextured.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/ColoredTextured.frag rename to jme3-core/src/main/resources/Common/MatDefs/Misc/ColoredTextured.frag diff --git a/engine/src/core-data/Common/MatDefs/Misc/ColoredTextured.j3md b/jme3-core/src/main/resources/Common/MatDefs/Misc/ColoredTextured.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/ColoredTextured.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Misc/ColoredTextured.j3md diff --git a/engine/src/core-data/Common/MatDefs/Misc/ColoredTextured.vert b/jme3-core/src/main/resources/Common/MatDefs/Misc/ColoredTextured.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/ColoredTextured.vert rename to jme3-core/src/main/resources/Common/MatDefs/Misc/ColoredTextured.vert diff --git a/engine/src/core-data/Common/MatDefs/Misc/Particle.frag b/jme3-core/src/main/resources/Common/MatDefs/Misc/Particle.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/Particle.frag rename to jme3-core/src/main/resources/Common/MatDefs/Misc/Particle.frag diff --git a/engine/src/core-data/Common/MatDefs/Misc/Particle.j3md b/jme3-core/src/main/resources/Common/MatDefs/Misc/Particle.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/Particle.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Misc/Particle.j3md diff --git a/engine/src/core-data/Common/MatDefs/Misc/Particle.vert b/jme3-core/src/main/resources/Common/MatDefs/Misc/Particle.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/Particle.vert rename to jme3-core/src/main/resources/Common/MatDefs/Misc/Particle.vert diff --git a/engine/src/core-data/Common/MatDefs/Misc/ShowNormals.frag b/jme3-core/src/main/resources/Common/MatDefs/Misc/ShowNormals.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/ShowNormals.frag rename to jme3-core/src/main/resources/Common/MatDefs/Misc/ShowNormals.frag diff --git a/engine/src/core-data/Common/MatDefs/Misc/ShowNormals.j3md b/jme3-core/src/main/resources/Common/MatDefs/Misc/ShowNormals.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/ShowNormals.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Misc/ShowNormals.j3md diff --git a/engine/src/core-data/Common/MatDefs/Misc/ShowNormals.vert b/jme3-core/src/main/resources/Common/MatDefs/Misc/ShowNormals.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/ShowNormals.vert rename to jme3-core/src/main/resources/Common/MatDefs/Misc/ShowNormals.vert diff --git a/engine/src/core-data/Common/MatDefs/Misc/Sky.frag b/jme3-core/src/main/resources/Common/MatDefs/Misc/Sky.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/Sky.frag rename to jme3-core/src/main/resources/Common/MatDefs/Misc/Sky.frag diff --git a/engine/src/core-data/Common/MatDefs/Misc/Sky.j3md b/jme3-core/src/main/resources/Common/MatDefs/Misc/Sky.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/Sky.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Misc/Sky.j3md diff --git a/engine/src/core-data/Common/MatDefs/Misc/Sky.vert b/jme3-core/src/main/resources/Common/MatDefs/Misc/Sky.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/Sky.vert rename to jme3-core/src/main/resources/Common/MatDefs/Misc/Sky.vert diff --git a/engine/src/core-data/Common/MatDefs/Misc/SoftParticle.frag b/jme3-core/src/main/resources/Common/MatDefs/Misc/SoftParticle.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/SoftParticle.frag rename to jme3-core/src/main/resources/Common/MatDefs/Misc/SoftParticle.frag diff --git a/engine/src/core-data/Common/MatDefs/Misc/SoftParticle.vert b/jme3-core/src/main/resources/Common/MatDefs/Misc/SoftParticle.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/SoftParticle.vert rename to jme3-core/src/main/resources/Common/MatDefs/Misc/SoftParticle.vert diff --git a/engine/src/core-data/Common/MatDefs/Misc/SoftParticle15.frag b/jme3-core/src/main/resources/Common/MatDefs/Misc/SoftParticle15.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/SoftParticle15.frag rename to jme3-core/src/main/resources/Common/MatDefs/Misc/SoftParticle15.frag diff --git a/engine/src/core-data/Common/MatDefs/Misc/Unshaded.frag b/jme3-core/src/main/resources/Common/MatDefs/Misc/Unshaded.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/Unshaded.frag rename to jme3-core/src/main/resources/Common/MatDefs/Misc/Unshaded.frag diff --git a/engine/src/core-data/Common/MatDefs/Misc/Unshaded.j3md b/jme3-core/src/main/resources/Common/MatDefs/Misc/Unshaded.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/Unshaded.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Misc/Unshaded.j3md diff --git a/engine/src/core-data/Common/MatDefs/Misc/Unshaded.vert b/jme3-core/src/main/resources/Common/MatDefs/Misc/Unshaded.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/Unshaded.vert rename to jme3-core/src/main/resources/Common/MatDefs/Misc/Unshaded.vert diff --git a/engine/src/core-data/Common/MatDefs/Misc/UnshadedNodes.j3md b/jme3-core/src/main/resources/Common/MatDefs/Misc/UnshadedNodes.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Misc/UnshadedNodes.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Misc/UnshadedNodes.j3md diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/AlphaDiscard.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/AlphaDiscard.j3sn similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/AlphaDiscard.j3sn rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/AlphaDiscard.j3sn diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/AttributeToVarying.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/AttributeToVarying.j3sn similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/AttributeToVarying.j3sn rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/AttributeToVarying.j3sn diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/ColorMix.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/ColorMix.j3sn similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/ColorMix.j3sn rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/ColorMix.j3sn diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/ColorMult.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/ColorMult.j3sn similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/ColorMult.j3sn rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/ColorMult.j3sn diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/TextureFetch.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/TextureFetch.j3sn similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/TextureFetch.j3sn rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/TextureFetch.j3sn diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/TransformPosition.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/TransformPosition.j3sn similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/TransformPosition.j3sn rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/TransformPosition.j3sn diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/alphaDiscard.frag b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/alphaDiscard.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/alphaDiscard.frag rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/alphaDiscard.frag diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/colorMix.frag b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/colorMix.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/colorMix.frag rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/colorMix.frag diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/colorMult.frag b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/colorMult.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/colorMult.frag rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/colorMult.frag diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/null.vert b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/null.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/null.vert rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/null.vert diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/texture.frag b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/texture.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/texture.frag rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/texture.frag diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/transformPosition.vert b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/transformPosition.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Basic/transformPosition.vert rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/transformPosition.vert diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Common/CommonVert.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Common/CommonVert.j3sn similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Common/CommonVert.j3sn rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Common/CommonVert.j3sn diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Common/Unshaded.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Common/Unshaded.j3sn similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Common/Unshaded.j3sn rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Common/Unshaded.j3sn diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Common/commonVert.vert b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Common/commonVert.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Common/commonVert.vert rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Common/commonVert.vert diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Common/unshaded.frag b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Common/unshaded.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Common/unshaded.frag rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Common/unshaded.frag diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Fog/Fog.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Fog/Fog.j3sn similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Fog/Fog.j3sn rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Fog/Fog.j3sn diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Fog/fogFactor.vert b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Fog/fogFactor.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Fog/fogFactor.vert rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Fog/fogFactor.vert diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/Fog/fogOutput.frag b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Fog/fogOutput.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/Fog/fogOutput.frag rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Fog/fogOutput.frag diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/HardwareSkinning/HardwareSkinning.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/HardwareSkinning/HardwareSkinning.j3sn similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/HardwareSkinning/HardwareSkinning.j3sn rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/HardwareSkinning/HardwareSkinning.j3sn diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/HardwareSkinning/basicGpuSkinning.vert b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/HardwareSkinning/basicGpuSkinning.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/HardwareSkinning/basicGpuSkinning.vert rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/HardwareSkinning/basicGpuSkinning.vert diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/HardwareSkinning/fullGpuSkinning.vert b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/HardwareSkinning/fullGpuSkinning.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/HardwareSkinning/fullGpuSkinning.vert rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/HardwareSkinning/fullGpuSkinning.vert diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/LightMapping/LightMapping.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/LightMapping/LightMapping.j3sn similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/LightMapping/LightMapping.j3sn rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/LightMapping/LightMapping.j3sn diff --git a/engine/src/core-data/Common/MatDefs/ShaderNodes/LightMapping/lightMap.frag b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/LightMapping/lightMap.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/ShaderNodes/LightMapping/lightMap.frag rename to jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/LightMapping/lightMap.frag diff --git a/engine/src/core-data/Common/MatDefs/Shadow/BasicPostShadow.frag b/jme3-core/src/main/resources/Common/MatDefs/Shadow/BasicPostShadow.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/BasicPostShadow.frag rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/BasicPostShadow.frag diff --git a/engine/src/core-data/Common/MatDefs/Shadow/BasicPostShadow.j3md b/jme3-core/src/main/resources/Common/MatDefs/Shadow/BasicPostShadow.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/BasicPostShadow.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/BasicPostShadow.j3md diff --git a/engine/src/core-data/Common/MatDefs/Shadow/BasicPostShadow.vert b/jme3-core/src/main/resources/Common/MatDefs/Shadow/BasicPostShadow.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/BasicPostShadow.vert rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/BasicPostShadow.vert diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PostShadow.frag b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadow.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PostShadow.frag rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadow.frag diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PostShadow.j3md b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadow.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PostShadow.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadow.j3md diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PostShadow.vert b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadow.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PostShadow.vert rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadow.vert diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PostShadow15.frag b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadow15.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PostShadow15.frag rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadow15.frag diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PostShadow15.vert b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadow15.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PostShadow15.vert rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadow15.vert diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PostShadowFilter.frag b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadowFilter.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PostShadowFilter.frag rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadowFilter.frag diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PostShadowFilter.j3md b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadowFilter.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PostShadowFilter.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadowFilter.j3md diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PostShadowFilter.vert b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadowFilter.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PostShadowFilter.vert rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadowFilter.vert diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PostShadowFilter15.frag b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadowFilter15.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PostShadowFilter15.frag rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadowFilter15.frag diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PostShadowFilter15.vert b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadowFilter15.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PostShadowFilter15.vert rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PostShadowFilter15.vert diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PreShadow.frag b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PreShadow.frag similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PreShadow.frag rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PreShadow.frag diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PreShadow.j3md b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PreShadow.j3md similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PreShadow.j3md rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PreShadow.j3md diff --git a/engine/src/core-data/Common/MatDefs/Shadow/PreShadow.vert b/jme3-core/src/main/resources/Common/MatDefs/Shadow/PreShadow.vert similarity index 100% rename from engine/src/core-data/Common/MatDefs/Shadow/PreShadow.vert rename to jme3-core/src/main/resources/Common/MatDefs/Shadow/PreShadow.vert diff --git a/engine/src/core-data/Common/Materials/RedColor.j3m b/jme3-core/src/main/resources/Common/Materials/RedColor.j3m similarity index 100% rename from engine/src/core-data/Common/Materials/RedColor.j3m rename to jme3-core/src/main/resources/Common/Materials/RedColor.j3m diff --git a/engine/src/core-data/Common/Materials/VertexColor.j3m b/jme3-core/src/main/resources/Common/Materials/VertexColor.j3m similarity index 100% rename from engine/src/core-data/Common/Materials/VertexColor.j3m rename to jme3-core/src/main/resources/Common/Materials/VertexColor.j3m diff --git a/engine/src/core-data/Common/Materials/WhiteColor.j3m b/jme3-core/src/main/resources/Common/Materials/WhiteColor.j3m similarity index 100% rename from engine/src/core-data/Common/Materials/WhiteColor.j3m rename to jme3-core/src/main/resources/Common/Materials/WhiteColor.j3m diff --git a/engine/src/core-data/Common/ShaderLib/BasicShadow.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/BasicShadow.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/BasicShadow.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/BasicShadow.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Bump.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Bump.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Bump.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Bump.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Common.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Common.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Common.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Common.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Fog.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Fog.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Fog.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Fog.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Hdr.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Hdr.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Hdr.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Hdr.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Lighting.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Lighting.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Lighting.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Lighting.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Math.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Math.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Math.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Math.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/MultiSample.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/MultiSample.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/MultiSample.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/MultiSample.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Optics.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Optics.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Optics.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Optics.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Parallax.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Parallax.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Parallax.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Parallax.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Shadows.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Shadows.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Shadows.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Shadows.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Shadows15.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Shadows15.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Shadows15.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Shadows15.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Skinning.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Skinning.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Skinning.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Skinning.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Splatting.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Splatting.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Splatting.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Splatting.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Tangent.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Tangent.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Tangent.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Tangent.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Texture.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Texture.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Texture.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Texture.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/Ubo.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Ubo.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/Ubo.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/Ubo.glsllib diff --git a/engine/src/core-data/Common/ShaderLib/WaterUtil.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/WaterUtil.glsllib similarity index 100% rename from engine/src/core-data/Common/ShaderLib/WaterUtil.glsllib rename to jme3-core/src/main/resources/Common/ShaderLib/WaterUtil.glsllib diff --git a/engine/src/core-data/Interface/Fonts/Console.fnt b/jme3-core/src/main/resources/Interface/Fonts/Console.fnt similarity index 100% rename from engine/src/core-data/Interface/Fonts/Console.fnt rename to jme3-core/src/main/resources/Interface/Fonts/Console.fnt diff --git a/engine/src/core-data/Interface/Fonts/Console.png b/jme3-core/src/main/resources/Interface/Fonts/Console.png similarity index 100% rename from engine/src/core-data/Interface/Fonts/Console.png rename to jme3-core/src/main/resources/Interface/Fonts/Console.png diff --git a/engine/src/core-data/Interface/Fonts/Default.fnt b/jme3-core/src/main/resources/Interface/Fonts/Default.fnt similarity index 100% rename from engine/src/core-data/Interface/Fonts/Default.fnt rename to jme3-core/src/main/resources/Interface/Fonts/Default.fnt diff --git a/engine/src/core-data/Interface/Fonts/Default.png b/jme3-core/src/main/resources/Interface/Fonts/Default.png similarity index 100% rename from engine/src/core-data/Interface/Fonts/Default.png rename to jme3-core/src/main/resources/Interface/Fonts/Default.png diff --git a/engine/src/core/com/jme3/asset/Desktop.cfg b/jme3-core/src/main/resources/com/jme3/asset/Desktop.cfg similarity index 100% rename from engine/src/core/com/jme3/asset/Desktop.cfg rename to jme3-core/src/main/resources/com/jme3/asset/Desktop.cfg diff --git a/engine/src/core-data/joystick-mapping.properties b/jme3-core/src/main/resources/joystick-mapping.properties similarity index 100% rename from engine/src/core-data/joystick-mapping.properties rename to jme3-core/src/main/resources/joystick-mapping.properties diff --git a/engine/src/core-plugins/com/jme3/asset/plugins/ClasspathLocator.java b/jme3-core/src/plugins/java/com/jme3/asset/plugins/ClasspathLocator.java similarity index 100% rename from engine/src/core-plugins/com/jme3/asset/plugins/ClasspathLocator.java rename to jme3-core/src/plugins/java/com/jme3/asset/plugins/ClasspathLocator.java diff --git a/engine/src/core-plugins/com/jme3/asset/plugins/FileLocator.java b/jme3-core/src/plugins/java/com/jme3/asset/plugins/FileLocator.java similarity index 100% rename from engine/src/core-plugins/com/jme3/asset/plugins/FileLocator.java rename to jme3-core/src/plugins/java/com/jme3/asset/plugins/FileLocator.java diff --git a/engine/src/core-plugins/com/jme3/asset/plugins/HttpZipLocator.java b/jme3-core/src/plugins/java/com/jme3/asset/plugins/HttpZipLocator.java similarity index 100% rename from engine/src/core-plugins/com/jme3/asset/plugins/HttpZipLocator.java rename to jme3-core/src/plugins/java/com/jme3/asset/plugins/HttpZipLocator.java diff --git a/engine/src/core-plugins/com/jme3/asset/plugins/UrlAssetInfo.java b/jme3-core/src/plugins/java/com/jme3/asset/plugins/UrlAssetInfo.java similarity index 100% rename from engine/src/core-plugins/com/jme3/asset/plugins/UrlAssetInfo.java rename to jme3-core/src/plugins/java/com/jme3/asset/plugins/UrlAssetInfo.java diff --git a/engine/src/core-plugins/com/jme3/asset/plugins/UrlLocator.java b/jme3-core/src/plugins/java/com/jme3/asset/plugins/UrlLocator.java similarity index 100% rename from engine/src/core-plugins/com/jme3/asset/plugins/UrlLocator.java rename to jme3-core/src/plugins/java/com/jme3/asset/plugins/UrlLocator.java diff --git a/engine/src/core-plugins/com/jme3/asset/plugins/ZipLocator.java b/jme3-core/src/plugins/java/com/jme3/asset/plugins/ZipLocator.java similarity index 100% rename from engine/src/core-plugins/com/jme3/asset/plugins/ZipLocator.java rename to jme3-core/src/plugins/java/com/jme3/asset/plugins/ZipLocator.java diff --git a/engine/src/core-plugins/com/jme3/audio/plugins/WAVLoader.java b/jme3-core/src/plugins/java/com/jme3/audio/plugins/WAVLoader.java similarity index 100% rename from engine/src/core-plugins/com/jme3/audio/plugins/WAVLoader.java rename to jme3-core/src/plugins/java/com/jme3/audio/plugins/WAVLoader.java diff --git a/engine/src/core-plugins/com/jme3/cursors/plugins/JmeCursor.java b/jme3-core/src/plugins/java/com/jme3/cursors/plugins/JmeCursor.java similarity index 100% rename from engine/src/core-plugins/com/jme3/cursors/plugins/JmeCursor.java rename to jme3-core/src/plugins/java/com/jme3/cursors/plugins/JmeCursor.java diff --git a/engine/src/core-plugins/com/jme3/export/binary/BinaryClassField.java b/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryClassField.java similarity index 100% rename from engine/src/core-plugins/com/jme3/export/binary/BinaryClassField.java rename to jme3-core/src/plugins/java/com/jme3/export/binary/BinaryClassField.java diff --git a/engine/src/core-plugins/com/jme3/export/binary/BinaryClassObject.java b/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryClassObject.java similarity index 100% rename from engine/src/core-plugins/com/jme3/export/binary/BinaryClassObject.java rename to jme3-core/src/plugins/java/com/jme3/export/binary/BinaryClassObject.java diff --git a/engine/src/core-plugins/com/jme3/export/binary/BinaryExporter.java b/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryExporter.java similarity index 100% rename from engine/src/core-plugins/com/jme3/export/binary/BinaryExporter.java rename to jme3-core/src/plugins/java/com/jme3/export/binary/BinaryExporter.java diff --git a/engine/src/core-plugins/com/jme3/export/binary/BinaryIdContentPair.java b/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryIdContentPair.java similarity index 100% rename from engine/src/core-plugins/com/jme3/export/binary/BinaryIdContentPair.java rename to jme3-core/src/plugins/java/com/jme3/export/binary/BinaryIdContentPair.java diff --git a/engine/src/core-plugins/com/jme3/export/binary/BinaryImporter.java b/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryImporter.java similarity index 100% rename from engine/src/core-plugins/com/jme3/export/binary/BinaryImporter.java rename to jme3-core/src/plugins/java/com/jme3/export/binary/BinaryImporter.java diff --git a/engine/src/core-plugins/com/jme3/export/binary/BinaryInputCapsule.java b/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryInputCapsule.java similarity index 100% rename from engine/src/core-plugins/com/jme3/export/binary/BinaryInputCapsule.java rename to jme3-core/src/plugins/java/com/jme3/export/binary/BinaryInputCapsule.java diff --git a/engine/src/core-plugins/com/jme3/export/binary/BinaryOutputCapsule.java b/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryOutputCapsule.java similarity index 100% rename from engine/src/core-plugins/com/jme3/export/binary/BinaryOutputCapsule.java rename to jme3-core/src/plugins/java/com/jme3/export/binary/BinaryOutputCapsule.java diff --git a/engine/src/core-plugins/com/jme3/export/binary/ByteUtils.java b/jme3-core/src/plugins/java/com/jme3/export/binary/ByteUtils.java similarity index 100% rename from engine/src/core-plugins/com/jme3/export/binary/ByteUtils.java rename to jme3-core/src/plugins/java/com/jme3/export/binary/ByteUtils.java diff --git a/engine/src/core-plugins/com/jme3/font/plugins/BitmapFontLoader.java b/jme3-core/src/plugins/java/com/jme3/font/plugins/BitmapFontLoader.java similarity index 100% rename from engine/src/core-plugins/com/jme3/font/plugins/BitmapFontLoader.java rename to jme3-core/src/plugins/java/com/jme3/font/plugins/BitmapFontLoader.java diff --git a/engine/src/core-plugins/com/jme3/material/plugins/ConditionParser.java b/jme3-core/src/plugins/java/com/jme3/material/plugins/ConditionParser.java similarity index 100% rename from engine/src/core-plugins/com/jme3/material/plugins/ConditionParser.java rename to jme3-core/src/plugins/java/com/jme3/material/plugins/ConditionParser.java diff --git a/engine/src/core-plugins/com/jme3/material/plugins/J3MLoader.java b/jme3-core/src/plugins/java/com/jme3/material/plugins/J3MLoader.java similarity index 100% rename from engine/src/core-plugins/com/jme3/material/plugins/J3MLoader.java rename to jme3-core/src/plugins/java/com/jme3/material/plugins/J3MLoader.java diff --git a/engine/src/core-plugins/com/jme3/material/plugins/MatParseException.java b/jme3-core/src/plugins/java/com/jme3/material/plugins/MatParseException.java similarity index 100% rename from engine/src/core-plugins/com/jme3/material/plugins/MatParseException.java rename to jme3-core/src/plugins/java/com/jme3/material/plugins/MatParseException.java diff --git a/engine/src/core-plugins/com/jme3/material/plugins/ShaderNodeDefinitionLoader.java b/jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeDefinitionLoader.java similarity index 100% rename from engine/src/core-plugins/com/jme3/material/plugins/ShaderNodeDefinitionLoader.java rename to jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeDefinitionLoader.java diff --git a/engine/src/core-plugins/com/jme3/material/plugins/ShaderNodeLoaderDelegate.java b/jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeLoaderDelegate.java similarity index 100% rename from engine/src/core-plugins/com/jme3/material/plugins/ShaderNodeLoaderDelegate.java rename to jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeLoaderDelegate.java diff --git a/engine/src/core-plugins/com/jme3/scene/plugins/MTLLoader.java b/jme3-core/src/plugins/java/com/jme3/scene/plugins/MTLLoader.java similarity index 100% rename from engine/src/core-plugins/com/jme3/scene/plugins/MTLLoader.java rename to jme3-core/src/plugins/java/com/jme3/scene/plugins/MTLLoader.java diff --git a/engine/src/core-plugins/com/jme3/scene/plugins/OBJLoader.java b/jme3-core/src/plugins/java/com/jme3/scene/plugins/OBJLoader.java similarity index 100% rename from engine/src/core-plugins/com/jme3/scene/plugins/OBJLoader.java rename to jme3-core/src/plugins/java/com/jme3/scene/plugins/OBJLoader.java diff --git a/engine/src/core-plugins/com/jme3/shader/plugins/GLSLLoader.java b/jme3-core/src/plugins/java/com/jme3/shader/plugins/GLSLLoader.java similarity index 100% rename from engine/src/core-plugins/com/jme3/shader/plugins/GLSLLoader.java rename to jme3-core/src/plugins/java/com/jme3/shader/plugins/GLSLLoader.java diff --git a/engine/src/core-plugins/com/jme3/shader/plugins/ShaderDependencyNode.java b/jme3-core/src/plugins/java/com/jme3/shader/plugins/ShaderDependencyNode.java similarity index 100% rename from engine/src/core-plugins/com/jme3/shader/plugins/ShaderDependencyNode.java rename to jme3-core/src/plugins/java/com/jme3/shader/plugins/ShaderDependencyNode.java diff --git a/engine/src/core-plugins/com/jme3/texture/plugins/DDSLoader.java b/jme3-core/src/plugins/java/com/jme3/texture/plugins/DDSLoader.java similarity index 100% rename from engine/src/core-plugins/com/jme3/texture/plugins/DDSLoader.java rename to jme3-core/src/plugins/java/com/jme3/texture/plugins/DDSLoader.java diff --git a/engine/src/core-plugins/com/jme3/texture/plugins/DXTFlipper.java b/jme3-core/src/plugins/java/com/jme3/texture/plugins/DXTFlipper.java similarity index 100% rename from engine/src/core-plugins/com/jme3/texture/plugins/DXTFlipper.java rename to jme3-core/src/plugins/java/com/jme3/texture/plugins/DXTFlipper.java diff --git a/engine/src/core-plugins/com/jme3/texture/plugins/HDRLoader.java b/jme3-core/src/plugins/java/com/jme3/texture/plugins/HDRLoader.java similarity index 100% rename from engine/src/core-plugins/com/jme3/texture/plugins/HDRLoader.java rename to jme3-core/src/plugins/java/com/jme3/texture/plugins/HDRLoader.java diff --git a/engine/src/core-plugins/com/jme3/texture/plugins/ImageFlipper.java b/jme3-core/src/plugins/java/com/jme3/texture/plugins/ImageFlipper.java similarity index 100% rename from engine/src/core-plugins/com/jme3/texture/plugins/ImageFlipper.java rename to jme3-core/src/plugins/java/com/jme3/texture/plugins/ImageFlipper.java diff --git a/engine/src/core-plugins/com/jme3/texture/plugins/PFMLoader.java b/jme3-core/src/plugins/java/com/jme3/texture/plugins/PFMLoader.java similarity index 100% rename from engine/src/core-plugins/com/jme3/texture/plugins/PFMLoader.java rename to jme3-core/src/plugins/java/com/jme3/texture/plugins/PFMLoader.java diff --git a/engine/src/core-plugins/com/jme3/texture/plugins/TGALoader.java b/jme3-core/src/plugins/java/com/jme3/texture/plugins/TGALoader.java similarity index 100% rename from engine/src/core-plugins/com/jme3/texture/plugins/TGALoader.java rename to jme3-core/src/plugins/java/com/jme3/texture/plugins/TGALoader.java diff --git a/engine/src/tools/jme3tools/converters/Converter.java b/jme3-core/src/tools/java/jme3tools/converters/Converter.java similarity index 100% rename from engine/src/tools/jme3tools/converters/Converter.java rename to jme3-core/src/tools/java/jme3tools/converters/Converter.java diff --git a/engine/src/tools/jme3tools/converters/FolderConverter.java b/jme3-core/src/tools/java/jme3tools/converters/FolderConverter.java similarity index 100% rename from engine/src/tools/jme3tools/converters/FolderConverter.java rename to jme3-core/src/tools/java/jme3tools/converters/FolderConverter.java diff --git a/engine/src/tools/jme3tools/converters/RGB565.java b/jme3-core/src/tools/java/jme3tools/converters/RGB565.java similarity index 100% rename from engine/src/tools/jme3tools/converters/RGB565.java rename to jme3-core/src/tools/java/jme3tools/converters/RGB565.java diff --git a/engine/src/tools/jme3tools/converters/model/FloatToFixed.java b/jme3-core/src/tools/java/jme3tools/converters/model/FloatToFixed.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/FloatToFixed.java rename to jme3-core/src/tools/java/jme3tools/converters/model/FloatToFixed.java diff --git a/engine/src/tools/jme3tools/converters/model/ModelConverter.java b/jme3-core/src/tools/java/jme3tools/converters/model/ModelConverter.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/ModelConverter.java rename to jme3-core/src/tools/java/jme3tools/converters/model/ModelConverter.java diff --git a/engine/src/tools/jme3tools/converters/model/strip/EdgeInfo.java b/jme3-core/src/tools/java/jme3tools/converters/model/strip/EdgeInfo.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/strip/EdgeInfo.java rename to jme3-core/src/tools/java/jme3tools/converters/model/strip/EdgeInfo.java diff --git a/engine/src/tools/jme3tools/converters/model/strip/EdgeInfoVec.java b/jme3-core/src/tools/java/jme3tools/converters/model/strip/EdgeInfoVec.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/strip/EdgeInfoVec.java rename to jme3-core/src/tools/java/jme3tools/converters/model/strip/EdgeInfoVec.java diff --git a/engine/src/tools/jme3tools/converters/model/strip/FaceInfo.java b/jme3-core/src/tools/java/jme3tools/converters/model/strip/FaceInfo.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/strip/FaceInfo.java rename to jme3-core/src/tools/java/jme3tools/converters/model/strip/FaceInfo.java diff --git a/engine/src/tools/jme3tools/converters/model/strip/FaceInfoVec.java b/jme3-core/src/tools/java/jme3tools/converters/model/strip/FaceInfoVec.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/strip/FaceInfoVec.java rename to jme3-core/src/tools/java/jme3tools/converters/model/strip/FaceInfoVec.java diff --git a/engine/src/tools/jme3tools/converters/model/strip/IntVec.java b/jme3-core/src/tools/java/jme3tools/converters/model/strip/IntVec.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/strip/IntVec.java rename to jme3-core/src/tools/java/jme3tools/converters/model/strip/IntVec.java diff --git a/engine/src/tools/jme3tools/converters/model/strip/PrimitiveGroup.java b/jme3-core/src/tools/java/jme3tools/converters/model/strip/PrimitiveGroup.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/strip/PrimitiveGroup.java rename to jme3-core/src/tools/java/jme3tools/converters/model/strip/PrimitiveGroup.java diff --git a/engine/src/tools/jme3tools/converters/model/strip/StripInfo.java b/jme3-core/src/tools/java/jme3tools/converters/model/strip/StripInfo.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/strip/StripInfo.java rename to jme3-core/src/tools/java/jme3tools/converters/model/strip/StripInfo.java diff --git a/engine/src/tools/jme3tools/converters/model/strip/StripInfoVec.java b/jme3-core/src/tools/java/jme3tools/converters/model/strip/StripInfoVec.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/strip/StripInfoVec.java rename to jme3-core/src/tools/java/jme3tools/converters/model/strip/StripInfoVec.java diff --git a/engine/src/tools/jme3tools/converters/model/strip/StripStartInfo.java b/jme3-core/src/tools/java/jme3tools/converters/model/strip/StripStartInfo.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/strip/StripStartInfo.java rename to jme3-core/src/tools/java/jme3tools/converters/model/strip/StripStartInfo.java diff --git a/engine/src/tools/jme3tools/converters/model/strip/Stripifier.java b/jme3-core/src/tools/java/jme3tools/converters/model/strip/Stripifier.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/strip/Stripifier.java rename to jme3-core/src/tools/java/jme3tools/converters/model/strip/Stripifier.java diff --git a/engine/src/tools/jme3tools/converters/model/strip/TriStrip.java b/jme3-core/src/tools/java/jme3tools/converters/model/strip/TriStrip.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/strip/TriStrip.java rename to jme3-core/src/tools/java/jme3tools/converters/model/strip/TriStrip.java diff --git a/engine/src/tools/jme3tools/converters/model/strip/VertexCache.java b/jme3-core/src/tools/java/jme3tools/converters/model/strip/VertexCache.java similarity index 100% rename from engine/src/tools/jme3tools/converters/model/strip/VertexCache.java rename to jme3-core/src/tools/java/jme3tools/converters/model/strip/VertexCache.java diff --git a/engine/src/tools/jme3tools/optimize/GeometryBatchFactory.java b/jme3-core/src/tools/java/jme3tools/optimize/GeometryBatchFactory.java similarity index 100% rename from engine/src/tools/jme3tools/optimize/GeometryBatchFactory.java rename to jme3-core/src/tools/java/jme3tools/optimize/GeometryBatchFactory.java diff --git a/engine/src/tools/jme3tools/optimize/LodGenerator.java b/jme3-core/src/tools/java/jme3tools/optimize/LodGenerator.java similarity index 100% rename from engine/src/tools/jme3tools/optimize/LodGenerator.java rename to jme3-core/src/tools/java/jme3tools/optimize/LodGenerator.java diff --git a/engine/src/tools/jme3tools/optimize/TextureAtlas.java b/jme3-core/src/tools/java/jme3tools/optimize/TextureAtlas.java similarity index 100% rename from engine/src/tools/jme3tools/optimize/TextureAtlas.java rename to jme3-core/src/tools/java/jme3tools/optimize/TextureAtlas.java diff --git a/engine/src/tools/jme3tools/savegame/SaveGame.java b/jme3-core/src/tools/java/jme3tools/savegame/SaveGame.java similarity index 100% rename from engine/src/tools/jme3tools/savegame/SaveGame.java rename to jme3-core/src/tools/java/jme3tools/savegame/SaveGame.java diff --git a/engine/src/tools/jme3tools/shader/ShaderDebug.java b/jme3-core/src/tools/java/jme3tools/shader/ShaderDebug.java similarity index 100% rename from engine/src/tools/jme3tools/shader/ShaderDebug.java rename to jme3-core/src/tools/java/jme3tools/shader/ShaderDebug.java diff --git a/engine/src/tools/jme3tools/shadercheck/CgcValidator.java b/jme3-core/src/tools/java/jme3tools/shadercheck/CgcValidator.java similarity index 100% rename from engine/src/tools/jme3tools/shadercheck/CgcValidator.java rename to jme3-core/src/tools/java/jme3tools/shadercheck/CgcValidator.java diff --git a/engine/src/tools/jme3tools/shadercheck/GpuAnalyzerValidator.java b/jme3-core/src/tools/java/jme3tools/shadercheck/GpuAnalyzerValidator.java similarity index 100% rename from engine/src/tools/jme3tools/shadercheck/GpuAnalyzerValidator.java rename to jme3-core/src/tools/java/jme3tools/shadercheck/GpuAnalyzerValidator.java diff --git a/engine/src/tools/jme3tools/shadercheck/ShaderCheck.java b/jme3-core/src/tools/java/jme3tools/shadercheck/ShaderCheck.java similarity index 100% rename from engine/src/tools/jme3tools/shadercheck/ShaderCheck.java rename to jme3-core/src/tools/java/jme3tools/shadercheck/ShaderCheck.java diff --git a/engine/src/tools/jme3tools/shadercheck/Validator.java b/jme3-core/src/tools/java/jme3tools/shadercheck/Validator.java similarity index 100% rename from engine/src/tools/jme3tools/shadercheck/Validator.java rename to jme3-core/src/tools/java/jme3tools/shadercheck/Validator.java diff --git a/jme3-desktop/build.gradle b/jme3-desktop/build.gradle new file mode 100644 index 000000000..0a77d7d72 --- /dev/null +++ b/jme3-desktop/build.gradle @@ -0,0 +1,7 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +dependencies { + compile project(':jme3-core') +} diff --git a/engine/src/desktop/com/jme3/app/AppletHarness.java b/jme3-desktop/src/main/java/com/jme3/app/AppletHarness.java similarity index 100% rename from engine/src/desktop/com/jme3/app/AppletHarness.java rename to jme3-desktop/src/main/java/com/jme3/app/AppletHarness.java diff --git a/engine/src/desktop/com/jme3/app/SettingsDialog.java b/jme3-desktop/src/main/java/com/jme3/app/SettingsDialog.java similarity index 100% rename from engine/src/desktop/com/jme3/app/SettingsDialog.java rename to jme3-desktop/src/main/java/com/jme3/app/SettingsDialog.java diff --git a/engine/src/desktop/com/jme3/app/state/MjpegFileWriter.java b/jme3-desktop/src/main/java/com/jme3/app/state/MjpegFileWriter.java similarity index 100% rename from engine/src/desktop/com/jme3/app/state/MjpegFileWriter.java rename to jme3-desktop/src/main/java/com/jme3/app/state/MjpegFileWriter.java diff --git a/engine/src/desktop/com/jme3/app/state/VideoRecorderAppState.java b/jme3-desktop/src/main/java/com/jme3/app/state/VideoRecorderAppState.java similarity index 100% rename from engine/src/desktop/com/jme3/app/state/VideoRecorderAppState.java rename to jme3-desktop/src/main/java/com/jme3/app/state/VideoRecorderAppState.java diff --git a/engine/src/desktop/com/jme3/cursors/plugins/CursorLoader.java b/jme3-desktop/src/main/java/com/jme3/cursors/plugins/CursorLoader.java similarity index 100% rename from engine/src/desktop/com/jme3/cursors/plugins/CursorLoader.java rename to jme3-desktop/src/main/java/com/jme3/cursors/plugins/CursorLoader.java diff --git a/engine/src/desktop/com/jme3/input/awt/AwtKeyInput.java b/jme3-desktop/src/main/java/com/jme3/input/awt/AwtKeyInput.java similarity index 100% rename from engine/src/desktop/com/jme3/input/awt/AwtKeyInput.java rename to jme3-desktop/src/main/java/com/jme3/input/awt/AwtKeyInput.java diff --git a/engine/src/desktop/com/jme3/input/awt/AwtMouseInput.java b/jme3-desktop/src/main/java/com/jme3/input/awt/AwtMouseInput.java similarity index 100% rename from engine/src/desktop/com/jme3/input/awt/AwtMouseInput.java rename to jme3-desktop/src/main/java/com/jme3/input/awt/AwtMouseInput.java diff --git a/engine/src/desktop/com/jme3/system/JmeCanvasContext.java b/jme3-desktop/src/main/java/com/jme3/system/JmeCanvasContext.java similarity index 100% rename from engine/src/desktop/com/jme3/system/JmeCanvasContext.java rename to jme3-desktop/src/main/java/com/jme3/system/JmeCanvasContext.java diff --git a/engine/src/desktop/com/jme3/system/JmeDesktopSystem.java b/jme3-desktop/src/main/java/com/jme3/system/JmeDesktopSystem.java similarity index 100% rename from engine/src/desktop/com/jme3/system/JmeDesktopSystem.java rename to jme3-desktop/src/main/java/com/jme3/system/JmeDesktopSystem.java diff --git a/engine/src/desktop/com/jme3/system/Natives.java b/jme3-desktop/src/main/java/com/jme3/system/Natives.java similarity index 100% rename from engine/src/desktop/com/jme3/system/Natives.java rename to jme3-desktop/src/main/java/com/jme3/system/Natives.java diff --git a/engine/src/desktop/com/jme3/system/awt/AwtPanel.java b/jme3-desktop/src/main/java/com/jme3/system/awt/AwtPanel.java similarity index 100% rename from engine/src/desktop/com/jme3/system/awt/AwtPanel.java rename to jme3-desktop/src/main/java/com/jme3/system/awt/AwtPanel.java diff --git a/engine/src/desktop/com/jme3/system/awt/AwtPanelsContext.java b/jme3-desktop/src/main/java/com/jme3/system/awt/AwtPanelsContext.java similarity index 100% rename from engine/src/desktop/com/jme3/system/awt/AwtPanelsContext.java rename to jme3-desktop/src/main/java/com/jme3/system/awt/AwtPanelsContext.java diff --git a/engine/src/desktop/com/jme3/system/awt/PaintMode.java b/jme3-desktop/src/main/java/com/jme3/system/awt/PaintMode.java similarity index 100% rename from engine/src/desktop/com/jme3/system/awt/PaintMode.java rename to jme3-desktop/src/main/java/com/jme3/system/awt/PaintMode.java diff --git a/engine/src/desktop/com/jme3/texture/plugins/AWTLoader.java b/jme3-desktop/src/main/java/com/jme3/texture/plugins/AWTLoader.java similarity index 100% rename from engine/src/desktop/com/jme3/texture/plugins/AWTLoader.java rename to jme3-desktop/src/main/java/com/jme3/texture/plugins/AWTLoader.java diff --git a/engine/src/desktop/com/jme3/util/Screenshots.java b/jme3-desktop/src/main/java/com/jme3/util/Screenshots.java similarity index 100% rename from engine/src/desktop/com/jme3/util/Screenshots.java rename to jme3-desktop/src/main/java/com/jme3/util/Screenshots.java diff --git a/engine/src/desktop/jme3tools/converters/ImageToAwt.java b/jme3-desktop/src/main/java/jme3tools/converters/ImageToAwt.java similarity index 97% rename from engine/src/desktop/jme3tools/converters/ImageToAwt.java rename to jme3-desktop/src/main/java/jme3tools/converters/ImageToAwt.java index 897047215..1006438cd 100644 --- a/engine/src/desktop/jme3tools/converters/ImageToAwt.java +++ b/jme3-desktop/src/main/java/jme3tools/converters/ImageToAwt.java @@ -1,486 +1,486 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package jme3tools.converters; - -import com.jme3.texture.Image; -import com.jme3.texture.Image.Format; -import com.jme3.texture.plugins.AWTLoader; -import com.jme3.util.BufferUtils; -import java.awt.Transparency; -import java.awt.color.ColorSpace; -import java.awt.image.*; -import java.nio.ByteBuffer; -import java.nio.ByteOrder; -import java.util.EnumMap; - -public class ImageToAwt { - - private static final EnumMap params - = new EnumMap(Format.class); - - private static class DecodeParams { - - final int bpp, am, rm, gm, bm, as, rs, gs, bs, im, is; - - public DecodeParams(int bpp, int am, int rm, int gm, int bm, int as, int rs, int gs, int bs, int im, int is) { - this.bpp = bpp; - this.am = am; - this.rm = rm; - this.gm = gm; - this.bm = bm; - this.as = as; - this.rs = rs; - this.gs = gs; - this.bs = bs; - this.im = im; - this.is = is; - } - - public DecodeParams(int bpp, int rm, int rs, int im, int is, boolean alpha){ - this.bpp = bpp; - if (alpha){ - this.am = rm; - this.as = rs; - this.rm = 0; - this.rs = 0; - }else{ - this.rm = rm; - this.rs = rs; - this.am = 0; - this.as = 0; - } - - this.gm = 0; - this.bm = 0; - this.gs = 0; - this.bs = 0; - this.im = im; - this.is = is; - } - - public DecodeParams(int bpp, int rm, int rs, int im, int is){ - this(bpp, rm, rs, im, is, false); - } - } - - static { - final int mx___ = 0xff000000; - final int m_x__ = 0x00ff0000; - final int m__x_ = 0x0000ff00; - final int m___x = 0x000000ff; - final int sx___ = 24; - final int s_x__ = 16; - final int s__x_ = 8; - final int s___x = 0; - final int mxxxx = 0xffffffff; - final int sxxxx = 0; - - final int m4x___ = 0xf000; - final int m4_x__ = 0x0f00; - final int m4__x_ = 0x00f0; - final int m4___x = 0x000f; - final int s4x___ = 12; - final int s4_x__ = 8; - final int s4__x_ = 4; - final int s4___x = 0; - - final int m5___ = 0xf800; - final int m_5__ = 0x07c0; - final int m__5_ = 0x003e; - final int m___1 = 0x0001; - - final int s5___ = 11; - final int s_5__ = 6; - final int s__5_ = 1; - final int s___1 = 0; - - final int m5__ = 0xf800; - final int m_6_ = 0x07e0; - final int m__5 = 0x001f; - - final int s5__ = 11; - final int s_6_ = 5; - final int s__5 = 0; - - final int mxx__ = 0xffff0000; - final int sxx__ = 32; - final int m__xx = 0x0000ffff; - final int s__xx = 0; - - // note: compressed, depth, or floating point formats not included here.. - - params.put(Format.ABGR8, new DecodeParams(4, mx___, m___x, m__x_, m_x__, - sx___, s___x, s__x_, s_x__, - mxxxx, sxxxx)); - params.put(Format.ARGB4444, new DecodeParams(2, m4x___, m4_x__, m4__x_, m4___x, - s4x___, s4_x__, s4__x_, s4___x, - mxxxx, sxxxx)); - params.put(Format.Alpha16, new DecodeParams(2, mxxxx, sxxxx, mxxxx, sxxxx, true)); - params.put(Format.Alpha8, new DecodeParams(1, mxxxx, sxxxx, mxxxx, sxxxx, true)); - params.put(Format.BGR8, new DecodeParams(3, 0, m___x, m__x_, m_x__, - 0, s___x, s__x_, s_x__, - mxxxx, sxxxx)); - params.put(Format.Luminance16, new DecodeParams(2, mxxxx, sxxxx, mxxxx, sxxxx, false)); - params.put(Format.Luminance8, new DecodeParams(1, mxxxx, sxxxx, mxxxx, sxxxx, false)); - params.put(Format.Luminance16Alpha16, new DecodeParams(4, m__xx, mxx__, 0, 0, - s__xx, sxx__, 0, 0, - mxxxx, sxxxx)); - params.put(Format.Luminance16F, new DecodeParams(2, mxxxx, sxxxx, mxxxx, sxxxx, false)); - params.put(Format.Luminance16FAlpha16F, new DecodeParams(4, m__xx, mxx__, 0, 0, - s__xx, sxx__, 0, 0, - mxxxx, sxxxx)); - params.put(Format.Luminance32F, new DecodeParams(4, mxxxx, sxxxx, mxxxx, sxxxx, false)); - params.put(Format.Luminance8, new DecodeParams(1, mxxxx, sxxxx, mxxxx, sxxxx, false)); - params.put(Format.RGB5A1, new DecodeParams(2, m___1, m5___, m_5__, m__5_, - s___1, s5___, s_5__, s__5_, - mxxxx, sxxxx)); - params.put(Format.RGB565, new DecodeParams(2, 0, m5__ , m_6_ , m__5, - 0, s5__ , s_6_ , s__5, - mxxxx, sxxxx)); - params.put(Format.RGB8, new DecodeParams(3, 0, m_x__, m__x_, m___x, - 0, s_x__, s__x_, s___x, - mxxxx, sxxxx)); - params.put(Format.RGBA8, new DecodeParams(4, m___x, mx___, m_x__, m__x_, - s___x, sx___, s_x__, s__x_, - mxxxx, sxxxx)); - params.put(Format.BGRA8, new DecodeParams(4, m___x, m__x_, m_x__, mx___, - s___x, s__x_, s_x__, sx___, - mxxxx, sxxxx)); - - params.put(Format.ARGB8, new DecodeParams(4, mx___, m_x__, m__x_, m___x, - sx___, s_x__, s__x_, s___x, - mxxxx, sxxxx)); - - } - - private static int Ix(int x, int y, int w){ - return y * w + x; - } - - private static int readPixel(ByteBuffer buf, int idx, int bpp){ - buf.position(idx); - int original = buf.get() & 0xff; - while ((--bpp) > 0){ - original = (original << 8) | (buf.get() & 0xff); - } - return original; - } - - private static void writePixel(ByteBuffer buf, int idx, int pixel, int bpp){ - buf.position(idx); - while ((--bpp) >= 0){ -// pixel = pixel >> 8; - byte bt = (byte) ((pixel >> (bpp * 8)) & 0xff); -// buf.put( (byte) (pixel & 0xff) ); - buf.put(bt); - } - } - - - /** - * Convert an AWT image to jME image. - */ - public static void convert(BufferedImage image, Format format, ByteBuffer buf){ - DecodeParams p = params.get(format); - if (p == null) - throw new UnsupportedOperationException("Image format " + format + " is not supported"); - - int width = image.getWidth(); - int height = image.getHeight(); - - boolean alpha = true; - boolean luminance = false; - - int reductionA = 8 - Integer.bitCount(p.am); - int reductionR = 8 - Integer.bitCount(p.rm); - int reductionG = 8 - Integer.bitCount(p.gm); - int reductionB = 8 - Integer.bitCount(p.bm); - - int initialPos = buf.position(); - for (int y = 0; y < height; y++){ - for (int x = 0; x < width; x++){ - // Get ARGB - int argb = image.getRGB(x, y); - - // Extract color components - int a = (argb & 0xff000000) >> 24; - int r = (argb & 0x00ff0000) >> 16; - int g = (argb & 0x0000ff00) >> 8; - int b = (argb & 0x000000ff); - - // Remove anything after 8 bits - a = a & 0xff; - r = r & 0xff; - g = g & 0xff; - b = b & 0xff; - - // Set full alpha if target image has no alpha - if (!alpha) - a = 0xff; - - // Convert color to luminance if target - // image is in luminance format - if (luminance){ - // convert RGB to luminance - } - - // Do bit reduction, assumes proper rounding has already been - // done. - a = a >> reductionA; - r = r >> reductionR; - g = g >> reductionG; - b = b >> reductionB; - - // Put components into appropriate positions - a = (a << p.as) & p.am; - r = (r << p.rs) & p.rm; - g = (g << p.gs) & p.gm; - b = (b << p.bs) & p.bm; - - int outputPixel = ((a | r | g | b) << p.is) & p.im; - int i = initialPos + (Ix(x,y,width) * p.bpp); - writePixel(buf, i, outputPixel, p.bpp); - } - } - } - - private static final double LOG2 = Math.log(2); - - public static void createData(Image image, boolean mipmaps){ - int bpp = image.getFormat().getBitsPerPixel(); - int w = image.getWidth(); - int h = image.getHeight(); - if (!mipmaps){ - image.setData(BufferUtils.createByteBuffer(w*h*bpp/8)); - return; - } - int expectedMipmaps = 1 + (int) Math.ceil(Math.log(Math.max(h, w)) / LOG2); - int[] mipMapSizes = new int[expectedMipmaps]; - int total = 0; - for (int i = 0; i < mipMapSizes.length; i++){ - int size = (w * h * bpp) / 8; - total += size; - mipMapSizes[i] = size; - w /= 2; - h /= 2; - } - image.setMipMapSizes(mipMapSizes); - image.setData(BufferUtils.createByteBuffer(total)); - } - - /** - * Convert the image from the given format to the output format. - * It is assumed that both images have buffers with the appropriate - * number of elements and that both have the same dimensions. - * - * @param input - * @param output - */ - public static void convert(Image input, Image output){ - DecodeParams inParams = params.get(input.getFormat()); - DecodeParams outParams = params.get(output.getFormat()); - - if (inParams == null || outParams == null) - throw new UnsupportedOperationException(); - - int width = input.getWidth(); - int height = input.getHeight(); - - if (width != output.getWidth() || height != output.getHeight()) - throw new IllegalArgumentException(); - - ByteBuffer inData = input.getData(0); - - boolean inAlpha = false; - boolean inLum = false; - boolean inRGB = false; - if (inParams.am != 0) { - inAlpha = true; - } - - if (inParams.rm != 0 && inParams.gm == 0 && inParams.bm == 0) { - inLum = true; - } else if (inParams.rm != 0 && inParams.gm != 0 && inParams.bm != 0) { - inRGB = true; - } - - int expansionA = 8 - Integer.bitCount(inParams.am); - int expansionR = 8 - Integer.bitCount(inParams.rm); - int expansionG = 8 - Integer.bitCount(inParams.gm); - int expansionB = 8 - Integer.bitCount(inParams.bm); - - int inputPixel; - for (int y = 0; y < height; y++){ - for (int x = 0; x < width; x++){ - int i = Ix(x, y, width) * inParams.bpp; - inputPixel = (readPixel(inData, i, inParams.bpp) & inParams.im) >> inParams.is; - - int a = (inputPixel & inParams.am) >> inParams.as; - int r = (inputPixel & inParams.rm) >> inParams.rs; - int g = (inputPixel & inParams.gm) >> inParams.gs; - int b = (inputPixel & inParams.bm) >> inParams.bs; - - r = r & 0xff; - g = g & 0xff; - b = b & 0xff; - a = a & 0xff; - - a = a << expansionA; - r = r << expansionR; - g = g << expansionG; - b = b << expansionB; - - if (inLum) - b = g = r; - - if (!inAlpha) - a = 0xff; - -// int argb = (a << 24) | (r << 16) | (g << 8) | b; -// out.setRGB(x, y, argb); - } - } - } - - public static BufferedImage convert(Image image, boolean do16bit, boolean fullalpha, int mipLevel){ - Format format = image.getFormat(); - DecodeParams p = params.get(image.getFormat()); - if (p == null) - throw new UnsupportedOperationException(); - - int width = image.getWidth(); - int height = image.getHeight(); - - int level = mipLevel; - while (--level >= 0){ - width /= 2; - height /= 2; - } - - ByteBuffer buf = image.getData(0); - buf.order(ByteOrder.LITTLE_ENDIAN); - - BufferedImage out; - - boolean alpha = false; - boolean luminance = false; - boolean rgb = false; - if (p.am != 0) - alpha = true; - - if (p.rm != 0 && p.gm == 0 && p.bm == 0) - luminance = true; - else if (p.rm != 0 && p.gm != 0 && p.bm != 0) - rgb = true; - - // alpha OR luminance but not both - if ( (alpha && !rgb && !luminance) || (luminance && !alpha && !rgb) ){ - out = new BufferedImage(width, height, BufferedImage.TYPE_BYTE_GRAY); - }else if ( (rgb && alpha) || (luminance && alpha) ){ - if (do16bit){ - if (fullalpha){ - ColorModel model = AWTLoader.AWT_RGBA4444; - WritableRaster raster = model.createCompatibleWritableRaster(width, width); - out = new BufferedImage(model, raster, false, null); - }else{ - // RGB5_A1 - ColorSpace cs = ColorSpace.getInstance(ColorSpace.CS_sRGB); - int[] nBits = {5, 5, 5, 1}; - int[] bOffs = {0, 1, 2, 3}; - ColorModel colorModel = new ComponentColorModel(cs, nBits, true, false, - Transparency.BITMASK, - DataBuffer.TYPE_BYTE); - WritableRaster raster = Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, - width, height, - width*2, 2, - bOffs, null); - out = new BufferedImage(colorModel, raster, false, null); - } - }else{ - out = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB); - } - }else{ - if (do16bit){ - out = new BufferedImage(width, height, BufferedImage.TYPE_USHORT_565_RGB); - }else{ - out = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); - } - } - - int expansionA = 8 - Integer.bitCount(p.am); - int expansionR = 8 - Integer.bitCount(p.rm); - int expansionG = 8 - Integer.bitCount(p.gm); - int expansionB = 8 - Integer.bitCount(p.bm); - - if (expansionR < 0){ - expansionR = 0; - } - - int mipPos = 0; - for (int i = 0; i < mipLevel; i++){ - mipPos += image.getMipMapSizes()[i]; - } - int inputPixel; - for (int y = 0; y < height; y++){ - for (int x = 0; x < width; x++){ - int i = mipPos + (Ix(x,y,width) * p.bpp); - inputPixel = (readPixel(buf,i,p.bpp) & p.im) >> p.is; - int a = (inputPixel & p.am) >> p.as; - int r = (inputPixel & p.rm) >> p.rs; - int g = (inputPixel & p.gm) >> p.gs; - int b = (inputPixel & p.bm) >> p.bs; - - r = r & 0xff; - g = g & 0xff; - b = b & 0xff; - a = a & 0xff; - - a = a << expansionA; - r = r << expansionR; - g = g << expansionG; - b = b << expansionB; - - if (luminance) - b = g = r; - - if (!alpha) - a = 0xff; - - int argb = (a << 24) | (r << 16) | (g << 8) | b; - out.setRGB(x, y, argb); - } - } - - return out; - } - -} +/* + * Copyright (c) 2009-2012 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'jMonkeyEngine' nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package jme3tools.converters; + +import com.jme3.texture.Image; +import com.jme3.texture.Image.Format; +import com.jme3.texture.plugins.AWTLoader; +import com.jme3.util.BufferUtils; +import java.awt.Transparency; +import java.awt.color.ColorSpace; +import java.awt.image.*; +import java.nio.ByteBuffer; +import java.nio.ByteOrder; +import java.util.EnumMap; + +public class ImageToAwt { + + private static final EnumMap params + = new EnumMap(Format.class); + + private static class DecodeParams { + + final int bpp, am, rm, gm, bm, as, rs, gs, bs, im, is; + + public DecodeParams(int bpp, int am, int rm, int gm, int bm, int as, int rs, int gs, int bs, int im, int is) { + this.bpp = bpp; + this.am = am; + this.rm = rm; + this.gm = gm; + this.bm = bm; + this.as = as; + this.rs = rs; + this.gs = gs; + this.bs = bs; + this.im = im; + this.is = is; + } + + public DecodeParams(int bpp, int rm, int rs, int im, int is, boolean alpha){ + this.bpp = bpp; + if (alpha){ + this.am = rm; + this.as = rs; + this.rm = 0; + this.rs = 0; + }else{ + this.rm = rm; + this.rs = rs; + this.am = 0; + this.as = 0; + } + + this.gm = 0; + this.bm = 0; + this.gs = 0; + this.bs = 0; + this.im = im; + this.is = is; + } + + public DecodeParams(int bpp, int rm, int rs, int im, int is){ + this(bpp, rm, rs, im, is, false); + } + } + + static { + final int mx___ = 0xff000000; + final int m_x__ = 0x00ff0000; + final int m__x_ = 0x0000ff00; + final int m___x = 0x000000ff; + final int sx___ = 24; + final int s_x__ = 16; + final int s__x_ = 8; + final int s___x = 0; + final int mxxxx = 0xffffffff; + final int sxxxx = 0; + + final int m4x___ = 0xf000; + final int m4_x__ = 0x0f00; + final int m4__x_ = 0x00f0; + final int m4___x = 0x000f; + final int s4x___ = 12; + final int s4_x__ = 8; + final int s4__x_ = 4; + final int s4___x = 0; + + final int m5___ = 0xf800; + final int m_5__ = 0x07c0; + final int m__5_ = 0x003e; + final int m___1 = 0x0001; + + final int s5___ = 11; + final int s_5__ = 6; + final int s__5_ = 1; + final int s___1 = 0; + + final int m5__ = 0xf800; + final int m_6_ = 0x07e0; + final int m__5 = 0x001f; + + final int s5__ = 11; + final int s_6_ = 5; + final int s__5 = 0; + + final int mxx__ = 0xffff0000; + final int sxx__ = 32; + final int m__xx = 0x0000ffff; + final int s__xx = 0; + + // note: compressed, depth, or floating point formats not included here.. + + params.put(Format.ABGR8, new DecodeParams(4, mx___, m___x, m__x_, m_x__, + sx___, s___x, s__x_, s_x__, + mxxxx, sxxxx)); + params.put(Format.ARGB4444, new DecodeParams(2, m4x___, m4_x__, m4__x_, m4___x, + s4x___, s4_x__, s4__x_, s4___x, + mxxxx, sxxxx)); + params.put(Format.Alpha16, new DecodeParams(2, mxxxx, sxxxx, mxxxx, sxxxx, true)); + params.put(Format.Alpha8, new DecodeParams(1, mxxxx, sxxxx, mxxxx, sxxxx, true)); + params.put(Format.BGR8, new DecodeParams(3, 0, m___x, m__x_, m_x__, + 0, s___x, s__x_, s_x__, + mxxxx, sxxxx)); + params.put(Format.Luminance16, new DecodeParams(2, mxxxx, sxxxx, mxxxx, sxxxx, false)); + params.put(Format.Luminance8, new DecodeParams(1, mxxxx, sxxxx, mxxxx, sxxxx, false)); + params.put(Format.Luminance16Alpha16, new DecodeParams(4, m__xx, mxx__, 0, 0, + s__xx, sxx__, 0, 0, + mxxxx, sxxxx)); + params.put(Format.Luminance16F, new DecodeParams(2, mxxxx, sxxxx, mxxxx, sxxxx, false)); + params.put(Format.Luminance16FAlpha16F, new DecodeParams(4, m__xx, mxx__, 0, 0, + s__xx, sxx__, 0, 0, + mxxxx, sxxxx)); + params.put(Format.Luminance32F, new DecodeParams(4, mxxxx, sxxxx, mxxxx, sxxxx, false)); + params.put(Format.Luminance8, new DecodeParams(1, mxxxx, sxxxx, mxxxx, sxxxx, false)); + params.put(Format.RGB5A1, new DecodeParams(2, m___1, m5___, m_5__, m__5_, + s___1, s5___, s_5__, s__5_, + mxxxx, sxxxx)); + params.put(Format.RGB565, new DecodeParams(2, 0, m5__ , m_6_ , m__5, + 0, s5__ , s_6_ , s__5, + mxxxx, sxxxx)); + params.put(Format.RGB8, new DecodeParams(3, 0, m_x__, m__x_, m___x, + 0, s_x__, s__x_, s___x, + mxxxx, sxxxx)); + params.put(Format.RGBA8, new DecodeParams(4, m___x, mx___, m_x__, m__x_, + s___x, sx___, s_x__, s__x_, + mxxxx, sxxxx)); + params.put(Format.BGRA8, new DecodeParams(4, m___x, m__x_, m_x__, mx___, + s___x, s__x_, s_x__, sx___, + mxxxx, sxxxx)); + + params.put(Format.ARGB8, new DecodeParams(4, mx___, m_x__, m__x_, m___x, + sx___, s_x__, s__x_, s___x, + mxxxx, sxxxx)); + + } + + private static int Ix(int x, int y, int w){ + return y * w + x; + } + + private static int readPixel(ByteBuffer buf, int idx, int bpp){ + buf.position(idx); + int original = buf.get() & 0xff; + while ((--bpp) > 0){ + original = (original << 8) | (buf.get() & 0xff); + } + return original; + } + + private static void writePixel(ByteBuffer buf, int idx, int pixel, int bpp){ + buf.position(idx); + while ((--bpp) >= 0){ +// pixel = pixel >> 8; + byte bt = (byte) ((pixel >> (bpp * 8)) & 0xff); +// buf.put( (byte) (pixel & 0xff) ); + buf.put(bt); + } + } + + + /** + * Convert an AWT image to jME image. + */ + public static void convert(BufferedImage image, Format format, ByteBuffer buf){ + DecodeParams p = params.get(format); + if (p == null) + throw new UnsupportedOperationException("Image format " + format + " is not supported"); + + int width = image.getWidth(); + int height = image.getHeight(); + + boolean alpha = true; + boolean luminance = false; + + int reductionA = 8 - Integer.bitCount(p.am); + int reductionR = 8 - Integer.bitCount(p.rm); + int reductionG = 8 - Integer.bitCount(p.gm); + int reductionB = 8 - Integer.bitCount(p.bm); + + int initialPos = buf.position(); + for (int y = 0; y < height; y++){ + for (int x = 0; x < width; x++){ + // Get ARGB + int argb = image.getRGB(x, y); + + // Extract color components + int a = (argb & 0xff000000) >> 24; + int r = (argb & 0x00ff0000) >> 16; + int g = (argb & 0x0000ff00) >> 8; + int b = (argb & 0x000000ff); + + // Remove anything after 8 bits + a = a & 0xff; + r = r & 0xff; + g = g & 0xff; + b = b & 0xff; + + // Set full alpha if target image has no alpha + if (!alpha) + a = 0xff; + + // Convert color to luminance if target + // image is in luminance format + if (luminance){ + // convert RGB to luminance + } + + // Do bit reduction, assumes proper rounding has already been + // done. + a = a >> reductionA; + r = r >> reductionR; + g = g >> reductionG; + b = b >> reductionB; + + // Put components into appropriate positions + a = (a << p.as) & p.am; + r = (r << p.rs) & p.rm; + g = (g << p.gs) & p.gm; + b = (b << p.bs) & p.bm; + + int outputPixel = ((a | r | g | b) << p.is) & p.im; + int i = initialPos + (Ix(x,y,width) * p.bpp); + writePixel(buf, i, outputPixel, p.bpp); + } + } + } + + private static final double LOG2 = Math.log(2); + + public static void createData(Image image, boolean mipmaps){ + int bpp = image.getFormat().getBitsPerPixel(); + int w = image.getWidth(); + int h = image.getHeight(); + if (!mipmaps){ + image.setData(BufferUtils.createByteBuffer(w*h*bpp/8)); + return; + } + int expectedMipmaps = 1 + (int) Math.ceil(Math.log(Math.max(h, w)) / LOG2); + int[] mipMapSizes = new int[expectedMipmaps]; + int total = 0; + for (int i = 0; i < mipMapSizes.length; i++){ + int size = (w * h * bpp) / 8; + total += size; + mipMapSizes[i] = size; + w /= 2; + h /= 2; + } + image.setMipMapSizes(mipMapSizes); + image.setData(BufferUtils.createByteBuffer(total)); + } + + /** + * Convert the image from the given format to the output format. + * It is assumed that both images have buffers with the appropriate + * number of elements and that both have the same dimensions. + * + * @param input + * @param output + */ + public static void convert(Image input, Image output){ + DecodeParams inParams = params.get(input.getFormat()); + DecodeParams outParams = params.get(output.getFormat()); + + if (inParams == null || outParams == null) + throw new UnsupportedOperationException(); + + int width = input.getWidth(); + int height = input.getHeight(); + + if (width != output.getWidth() || height != output.getHeight()) + throw new IllegalArgumentException(); + + ByteBuffer inData = input.getData(0); + + boolean inAlpha = false; + boolean inLum = false; + boolean inRGB = false; + if (inParams.am != 0) { + inAlpha = true; + } + + if (inParams.rm != 0 && inParams.gm == 0 && inParams.bm == 0) { + inLum = true; + } else if (inParams.rm != 0 && inParams.gm != 0 && inParams.bm != 0) { + inRGB = true; + } + + int expansionA = 8 - Integer.bitCount(inParams.am); + int expansionR = 8 - Integer.bitCount(inParams.rm); + int expansionG = 8 - Integer.bitCount(inParams.gm); + int expansionB = 8 - Integer.bitCount(inParams.bm); + + int inputPixel; + for (int y = 0; y < height; y++){ + for (int x = 0; x < width; x++){ + int i = Ix(x, y, width) * inParams.bpp; + inputPixel = (readPixel(inData, i, inParams.bpp) & inParams.im) >> inParams.is; + + int a = (inputPixel & inParams.am) >> inParams.as; + int r = (inputPixel & inParams.rm) >> inParams.rs; + int g = (inputPixel & inParams.gm) >> inParams.gs; + int b = (inputPixel & inParams.bm) >> inParams.bs; + + r = r & 0xff; + g = g & 0xff; + b = b & 0xff; + a = a & 0xff; + + a = a << expansionA; + r = r << expansionR; + g = g << expansionG; + b = b << expansionB; + + if (inLum) + b = g = r; + + if (!inAlpha) + a = 0xff; + +// int argb = (a << 24) | (r << 16) | (g << 8) | b; +// out.setRGB(x, y, argb); + } + } + } + + public static BufferedImage convert(Image image, boolean do16bit, boolean fullalpha, int mipLevel){ + Format format = image.getFormat(); + DecodeParams p = params.get(image.getFormat()); + if (p == null) + throw new UnsupportedOperationException(); + + int width = image.getWidth(); + int height = image.getHeight(); + + int level = mipLevel; + while (--level >= 0){ + width /= 2; + height /= 2; + } + + ByteBuffer buf = image.getData(0); + buf.order(ByteOrder.LITTLE_ENDIAN); + + BufferedImage out; + + boolean alpha = false; + boolean luminance = false; + boolean rgb = false; + if (p.am != 0) + alpha = true; + + if (p.rm != 0 && p.gm == 0 && p.bm == 0) + luminance = true; + else if (p.rm != 0 && p.gm != 0 && p.bm != 0) + rgb = true; + + // alpha OR luminance but not both + if ( (alpha && !rgb && !luminance) || (luminance && !alpha && !rgb) ){ + out = new BufferedImage(width, height, BufferedImage.TYPE_BYTE_GRAY); + }else if ( (rgb && alpha) || (luminance && alpha) ){ + if (do16bit){ + if (fullalpha){ + ColorModel model = AWTLoader.AWT_RGBA4444; + WritableRaster raster = model.createCompatibleWritableRaster(width, width); + out = new BufferedImage(model, raster, false, null); + }else{ + // RGB5_A1 + ColorSpace cs = ColorSpace.getInstance(ColorSpace.CS_sRGB); + int[] nBits = {5, 5, 5, 1}; + int[] bOffs = {0, 1, 2, 3}; + ColorModel colorModel = new ComponentColorModel(cs, nBits, true, false, + Transparency.BITMASK, + DataBuffer.TYPE_BYTE); + WritableRaster raster = Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, + width, height, + width*2, 2, + bOffs, null); + out = new BufferedImage(colorModel, raster, false, null); + } + }else{ + out = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB); + } + }else{ + if (do16bit){ + out = new BufferedImage(width, height, BufferedImage.TYPE_USHORT_565_RGB); + }else{ + out = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); + } + } + + int expansionA = 8 - Integer.bitCount(p.am); + int expansionR = 8 - Integer.bitCount(p.rm); + int expansionG = 8 - Integer.bitCount(p.gm); + int expansionB = 8 - Integer.bitCount(p.bm); + + if (expansionR < 0){ + expansionR = 0; + } + + int mipPos = 0; + for (int i = 0; i < mipLevel; i++){ + mipPos += image.getMipMapSizes()[i]; + } + int inputPixel; + for (int y = 0; y < height; y++){ + for (int x = 0; x < width; x++){ + int i = mipPos + (Ix(x,y,width) * p.bpp); + inputPixel = (readPixel(buf,i,p.bpp) & p.im) >> p.is; + int a = (inputPixel & p.am) >> p.as; + int r = (inputPixel & p.rm) >> p.rs; + int g = (inputPixel & p.gm) >> p.gs; + int b = (inputPixel & p.bm) >> p.bs; + + r = r & 0xff; + g = g & 0xff; + b = b & 0xff; + a = a & 0xff; + + a = a << expansionA; + r = r << expansionR; + g = g << expansionG; + b = b << expansionB; + + if (luminance) + b = g = r; + + if (!alpha) + a = 0xff; + + int argb = (a << 24) | (r << 16) | (g << 8) | b; + out.setRGB(x, y, argb); + } + } + + return out; + } + +} diff --git a/engine/src/desktop/jme3tools/converters/MipMapGenerator.java b/jme3-desktop/src/main/java/jme3tools/converters/MipMapGenerator.java similarity index 100% rename from engine/src/desktop/jme3tools/converters/MipMapGenerator.java rename to jme3-desktop/src/main/java/jme3tools/converters/MipMapGenerator.java diff --git a/engine/src/desktop/jme3tools/navigation/Coordinate.java b/jme3-desktop/src/main/java/jme3tools/navigation/Coordinate.java similarity index 100% rename from engine/src/desktop/jme3tools/navigation/Coordinate.java rename to jme3-desktop/src/main/java/jme3tools/navigation/Coordinate.java diff --git a/engine/src/desktop/jme3tools/navigation/GCSailing.java b/jme3-desktop/src/main/java/jme3tools/navigation/GCSailing.java similarity index 100% rename from engine/src/desktop/jme3tools/navigation/GCSailing.java rename to jme3-desktop/src/main/java/jme3tools/navigation/GCSailing.java diff --git a/engine/src/desktop/jme3tools/navigation/InvalidPositionException.java b/jme3-desktop/src/main/java/jme3tools/navigation/InvalidPositionException.java similarity index 100% rename from engine/src/desktop/jme3tools/navigation/InvalidPositionException.java rename to jme3-desktop/src/main/java/jme3tools/navigation/InvalidPositionException.java diff --git a/engine/src/desktop/jme3tools/navigation/MapModel2D.java b/jme3-desktop/src/main/java/jme3tools/navigation/MapModel2D.java similarity index 100% rename from engine/src/desktop/jme3tools/navigation/MapModel2D.java rename to jme3-desktop/src/main/java/jme3tools/navigation/MapModel2D.java diff --git a/engine/src/desktop/jme3tools/navigation/MapModel3D.java b/jme3-desktop/src/main/java/jme3tools/navigation/MapModel3D.java similarity index 100% rename from engine/src/desktop/jme3tools/navigation/MapModel3D.java rename to jme3-desktop/src/main/java/jme3tools/navigation/MapModel3D.java diff --git a/engine/src/desktop/jme3tools/navigation/NavCalculator.java b/jme3-desktop/src/main/java/jme3tools/navigation/NavCalculator.java similarity index 100% rename from engine/src/desktop/jme3tools/navigation/NavCalculator.java rename to jme3-desktop/src/main/java/jme3tools/navigation/NavCalculator.java diff --git a/engine/src/desktop/jme3tools/navigation/NumUtil.java b/jme3-desktop/src/main/java/jme3tools/navigation/NumUtil.java similarity index 100% rename from engine/src/desktop/jme3tools/navigation/NumUtil.java rename to jme3-desktop/src/main/java/jme3tools/navigation/NumUtil.java diff --git a/engine/src/desktop/jme3tools/navigation/Position.java b/jme3-desktop/src/main/java/jme3tools/navigation/Position.java similarity index 100% rename from engine/src/desktop/jme3tools/navigation/Position.java rename to jme3-desktop/src/main/java/jme3tools/navigation/Position.java diff --git a/engine/src/desktop/jme3tools/navigation/RLSailing.java b/jme3-desktop/src/main/java/jme3tools/navigation/RLSailing.java similarity index 100% rename from engine/src/desktop/jme3tools/navigation/RLSailing.java rename to jme3-desktop/src/main/java/jme3tools/navigation/RLSailing.java diff --git a/engine/src/desktop/jme3tools/navigation/StringUtil.java b/jme3-desktop/src/main/java/jme3tools/navigation/StringUtil.java similarity index 100% rename from engine/src/desktop/jme3tools/navigation/StringUtil.java rename to jme3-desktop/src/main/java/jme3tools/navigation/StringUtil.java diff --git a/engine/src/desktop/com/jme3/app/Monkey.png b/jme3-desktop/src/main/resources/com/jme3/app/Monkey.png similarity index 100% rename from engine/src/desktop/com/jme3/app/Monkey.png rename to jme3-desktop/src/main/resources/com/jme3/app/Monkey.png diff --git a/engine/src/desktop/com/jme3/app/SettingsDialog.properties b/jme3-desktop/src/main/resources/com/jme3/app/SettingsDialog.properties similarity index 100% rename from engine/src/desktop/com/jme3/app/SettingsDialog.properties rename to jme3-desktop/src/main/resources/com/jme3/app/SettingsDialog.properties diff --git a/jme3-effects/build.gradle b/jme3-effects/build.gradle new file mode 100644 index 000000000..0a77d7d72 --- /dev/null +++ b/jme3-effects/build.gradle @@ -0,0 +1,7 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +dependencies { + compile project(':jme3-core') +} diff --git a/engine/src/core-effects/com/jme3/post/filters/BloomFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/BloomFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/BloomFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/BloomFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/CartoonEdgeFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/CartoonEdgeFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/CartoonEdgeFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/CartoonEdgeFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/ColorOverlayFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/ColorOverlayFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/ColorOverlayFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/ColorOverlayFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/ComposeFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/ComposeFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/ComposeFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/ComposeFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/CrossHatchFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/CrossHatchFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/CrossHatchFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/CrossHatchFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/DepthOfFieldFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/DepthOfFieldFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/DepthOfFieldFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/DepthOfFieldFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/FXAAFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/FXAAFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/FXAAFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/FXAAFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/FadeFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/FadeFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/FadeFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/FadeFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/FogFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/FogFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/FogFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/FogFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/GammaCorrectionFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/GammaCorrectionFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/GammaCorrectionFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/GammaCorrectionFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/LightScatteringFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/LightScatteringFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/LightScatteringFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/LightScatteringFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/PosterizationFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/PosterizationFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/PosterizationFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/PosterizationFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/RadialBlurFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/RadialBlurFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/RadialBlurFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/RadialBlurFilter.java diff --git a/engine/src/core-effects/com/jme3/post/filters/TranslucentBucketFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/TranslucentBucketFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/filters/TranslucentBucketFilter.java rename to jme3-effects/src/main/java/com/jme3/post/filters/TranslucentBucketFilter.java diff --git a/engine/src/core-effects/com/jme3/post/ssao/SSAOFilter.java b/jme3-effects/src/main/java/com/jme3/post/ssao/SSAOFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/post/ssao/SSAOFilter.java rename to jme3-effects/src/main/java/com/jme3/post/ssao/SSAOFilter.java diff --git a/engine/src/core-effects/com/jme3/water/ReflectionProcessor.java b/jme3-effects/src/main/java/com/jme3/water/ReflectionProcessor.java similarity index 100% rename from engine/src/core-effects/com/jme3/water/ReflectionProcessor.java rename to jme3-effects/src/main/java/com/jme3/water/ReflectionProcessor.java diff --git a/engine/src/core-effects/com/jme3/water/SimpleWaterProcessor.java b/jme3-effects/src/main/java/com/jme3/water/SimpleWaterProcessor.java similarity index 100% rename from engine/src/core-effects/com/jme3/water/SimpleWaterProcessor.java rename to jme3-effects/src/main/java/com/jme3/water/SimpleWaterProcessor.java diff --git a/engine/src/core-effects/com/jme3/water/WaterFilter.java b/jme3-effects/src/main/java/com/jme3/water/WaterFilter.java similarity index 100% rename from engine/src/core-effects/com/jme3/water/WaterFilter.java rename to jme3-effects/src/main/java/com/jme3/water/WaterFilter.java diff --git a/engine/src/core-effects/com/jme3/water/WaterUtils.java b/jme3-effects/src/main/java/com/jme3/water/WaterUtils.java similarity index 100% rename from engine/src/core-effects/com/jme3/water/WaterUtils.java rename to jme3-effects/src/main/java/com/jme3/water/WaterUtils.java diff --git a/engine/src/core-effects/Common/MatDefs/Post/BloomExtract.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/BloomExtract.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/BloomExtract.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/BloomExtract.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/BloomFinal.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/BloomFinal.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/BloomFinal.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/BloomFinal.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/CartoonEdge.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/CartoonEdge.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/CartoonEdge.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/CartoonEdge.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/CartoonEdge.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/CartoonEdge.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/CartoonEdge.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/CartoonEdge.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/CartoonEdge15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/CartoonEdge15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/CartoonEdge15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/CartoonEdge15.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/Compose.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/Compose.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Compose.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Compose.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/Compose.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/Compose.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Compose.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Compose.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/Compose15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/Compose15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Compose15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Compose15.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/CrossHatch.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/CrossHatch.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/CrossHatch.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/CrossHatch.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/CrossHatch.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/CrossHatch.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/CrossHatch.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/CrossHatch.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/CrossHatch15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/CrossHatch15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/CrossHatch15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/CrossHatch15.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/DepthOfField.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/DepthOfField.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/DepthOfField.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/DepthOfField.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/DepthOfField15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/DepthOfField15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField15.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/FXAA.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/FXAA.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/FXAA.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/FXAA.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/FXAA.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/FXAA.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/FXAA.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/FXAA.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/FXAA.vert b/jme3-effects/src/main/resources/Common/MatDefs/Post/FXAA.vert similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/FXAA.vert rename to jme3-effects/src/main/resources/Common/MatDefs/Post/FXAA.vert diff --git a/engine/src/core-effects/Common/MatDefs/Post/Fade.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/Fade.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Fade.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Fade.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/Fade.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/Fade.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Fade.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Fade.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/Fade15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/Fade15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Fade15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Fade15.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/Fog.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/Fog.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Fog.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Fog.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/Fog.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/Fog.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Fog.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Fog.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/Fog15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/Fog15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Fog15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Fog15.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/GammaCorrection.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/GammaCorrection.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/GammaCorrection.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/GammaCorrection.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/GammaCorrection.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/GammaCorrection.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/GammaCorrection.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/GammaCorrection.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/GammaCorrection15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/GammaCorrection15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/GammaCorrection15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/GammaCorrection15.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/LightScattering.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/LightScattering.frag similarity index 95% rename from engine/src/core-effects/Common/MatDefs/Post/LightScattering.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/LightScattering.frag index bc85142e0..8f5957ca6 100644 --- a/engine/src/core-effects/Common/MatDefs/Post/LightScattering.frag +++ b/jme3-effects/src/main/resources/Common/MatDefs/Post/LightScattering.frag @@ -30,7 +30,7 @@ void main(void) //Blend the original color with the averaged pixels float mean = (res.r + res.g + res.b)/3; - fragColor =mix(colorRes ,mix( colorRes, res, m_LightDensity),mean); + fragColor =mix(colorRes ,mix( colorRes, res, m_LightDensity),mean); }else{ gl_FragColor= texture2D(m_Texture,texCoord); } diff --git a/engine/src/core-effects/Common/MatDefs/Post/LightScattering.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/LightScattering.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/LightScattering.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/LightScattering.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/LightScattering15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/LightScattering15.frag similarity index 93% rename from engine/src/core-effects/Common/MatDefs/Post/LightScattering15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/LightScattering15.frag index 57547ea1a..8db6d9b04 100644 --- a/engine/src/core-effects/Common/MatDefs/Post/LightScattering15.frag +++ b/jme3-effects/src/main/resources/Common/MatDefs/Post/LightScattering15.frag @@ -28,13 +28,13 @@ void main(void) scaledCoord=texCoo*scale + m_LightPosition.xy; if(fetchTextureSample(m_DepthTexture, scaledCoord,0).r==1.0){ res += fetchTextureSample(m_Texture,scaledCoord,0); - } } + } res /= m_NbSamples; - + //Blend the original color with the averaged pixels float mean = (res.r + res.g + res.b)/3; - fragColor =mix(colorRes ,mix( colorRes, res, m_LightDensity),mean); + fragColor =mix(colorRes ,mix( colorRes, res, m_LightDensity),mean); }else{ fragColor = getColor(m_Texture,texCoord); } diff --git a/engine/src/core-effects/Common/MatDefs/Post/LightScattering15.vert b/jme3-effects/src/main/resources/Common/MatDefs/Post/LightScattering15.vert similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/LightScattering15.vert rename to jme3-effects/src/main/resources/Common/MatDefs/Post/LightScattering15.vert diff --git a/engine/src/core-effects/Common/MatDefs/Post/Overlay.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/Overlay.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Overlay.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Overlay.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/Overlay.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/Overlay.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Overlay.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Overlay.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/Overlay15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/Overlay15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Overlay15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Overlay15.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/Post.vert b/jme3-effects/src/main/resources/Common/MatDefs/Post/Post.vert similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Post.vert rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Post.vert diff --git a/engine/src/core-effects/Common/MatDefs/Post/Post15.vert b/jme3-effects/src/main/resources/Common/MatDefs/Post/Post15.vert similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Post15.vert rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Post15.vert diff --git a/engine/src/core-effects/Common/MatDefs/Post/Posterization.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/Posterization.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Posterization.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Posterization.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/Posterization.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/Posterization.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Posterization.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Posterization.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Post/Posterization15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/Posterization15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/Posterization15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/Posterization15.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/bloomExtract.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/bloomExtract.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/bloomExtract.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/bloomExtract.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/bloomExtract15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/bloomExtract15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/bloomExtract15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/bloomExtract15.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/bloomFinal.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/bloomFinal.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/bloomFinal.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/bloomFinal.frag diff --git a/engine/src/core-effects/Common/MatDefs/Post/bloomFinal15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/bloomFinal15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Post/bloomFinal15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Post/bloomFinal15.frag diff --git a/engine/src/core-effects/Common/MatDefs/SSAO/Textures/random.png b/jme3-effects/src/main/resources/Common/MatDefs/SSAO/Textures/random.png similarity index 100% rename from engine/src/core-effects/Common/MatDefs/SSAO/Textures/random.png rename to jme3-effects/src/main/resources/Common/MatDefs/SSAO/Textures/random.png diff --git a/engine/src/core-effects/Common/MatDefs/SSAO/normal.frag b/jme3-effects/src/main/resources/Common/MatDefs/SSAO/normal.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/SSAO/normal.frag rename to jme3-effects/src/main/resources/Common/MatDefs/SSAO/normal.frag diff --git a/engine/src/core-effects/Common/MatDefs/SSAO/normal.vert b/jme3-effects/src/main/resources/Common/MatDefs/SSAO/normal.vert similarity index 100% rename from engine/src/core-effects/Common/MatDefs/SSAO/normal.vert rename to jme3-effects/src/main/resources/Common/MatDefs/SSAO/normal.vert diff --git a/engine/src/core-effects/Common/MatDefs/SSAO/ssao.frag b/jme3-effects/src/main/resources/Common/MatDefs/SSAO/ssao.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/SSAO/ssao.frag rename to jme3-effects/src/main/resources/Common/MatDefs/SSAO/ssao.frag diff --git a/engine/src/core-effects/Common/MatDefs/SSAO/ssao.j3md b/jme3-effects/src/main/resources/Common/MatDefs/SSAO/ssao.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/SSAO/ssao.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/SSAO/ssao.j3md diff --git a/engine/src/core-effects/Common/MatDefs/SSAO/ssao15.frag b/jme3-effects/src/main/resources/Common/MatDefs/SSAO/ssao15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/SSAO/ssao15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/SSAO/ssao15.frag diff --git a/engine/src/core-effects/Common/MatDefs/SSAO/ssaoBlur.frag b/jme3-effects/src/main/resources/Common/MatDefs/SSAO/ssaoBlur.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/SSAO/ssaoBlur.frag rename to jme3-effects/src/main/resources/Common/MatDefs/SSAO/ssaoBlur.frag diff --git a/engine/src/core-effects/Common/MatDefs/SSAO/ssaoBlur.j3md b/jme3-effects/src/main/resources/Common/MatDefs/SSAO/ssaoBlur.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/SSAO/ssaoBlur.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/SSAO/ssaoBlur.j3md diff --git a/engine/src/core-effects/Common/MatDefs/SSAO/ssaoBlur15.frag b/jme3-effects/src/main/resources/Common/MatDefs/SSAO/ssaoBlur15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/SSAO/ssaoBlur15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/SSAO/ssaoBlur15.frag diff --git a/engine/src/core-effects/Common/MatDefs/Water/SimpleWater.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Water/SimpleWater.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/SimpleWater.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Water/SimpleWater.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Water/Textures/caustics.jpg b/jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/caustics.jpg similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/Textures/caustics.jpg rename to jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/caustics.jpg diff --git a/engine/src/core-effects/Common/MatDefs/Water/Textures/dudv_map.jpg b/jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/dudv_map.jpg similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/Textures/dudv_map.jpg rename to jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/dudv_map.jpg diff --git a/engine/src/core-effects/Common/MatDefs/Water/Textures/foam.jpg b/jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/foam.jpg similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/Textures/foam.jpg rename to jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/foam.jpg diff --git a/engine/src/core-effects/Common/MatDefs/Water/Textures/foam2.jpg b/jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/foam2.jpg similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/Textures/foam2.jpg rename to jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/foam2.jpg diff --git a/engine/src/core-effects/Common/MatDefs/Water/Textures/foam3.jpg b/jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/foam3.jpg similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/Textures/foam3.jpg rename to jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/foam3.jpg diff --git a/engine/src/core-effects/Common/MatDefs/Water/Textures/heightmap.jpg b/jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/heightmap.jpg similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/Textures/heightmap.jpg rename to jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/heightmap.jpg diff --git a/engine/src/core-effects/Common/MatDefs/Water/Textures/water_normalmap.dds b/jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/water_normalmap.dds similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/Textures/water_normalmap.dds rename to jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/water_normalmap.dds diff --git a/engine/src/core-effects/Common/MatDefs/Water/Textures/water_normalmap.png b/jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/water_normalmap.png similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/Textures/water_normalmap.png rename to jme3-effects/src/main/resources/Common/MatDefs/Water/Textures/water_normalmap.png diff --git a/engine/src/core-effects/Common/MatDefs/Water/Water.frag b/jme3-effects/src/main/resources/Common/MatDefs/Water/Water.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/Water.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Water/Water.frag diff --git a/engine/src/core-effects/Common/MatDefs/Water/Water.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Water/Water.j3md similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/Water.j3md rename to jme3-effects/src/main/resources/Common/MatDefs/Water/Water.j3md diff --git a/engine/src/core-effects/Common/MatDefs/Water/Water15.frag b/jme3-effects/src/main/resources/Common/MatDefs/Water/Water15.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/Water15.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Water/Water15.frag diff --git a/engine/src/core-effects/Common/MatDefs/Water/simple_water.frag b/jme3-effects/src/main/resources/Common/MatDefs/Water/simple_water.frag similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/simple_water.frag rename to jme3-effects/src/main/resources/Common/MatDefs/Water/simple_water.frag diff --git a/engine/src/core-effects/Common/MatDefs/Water/simple_water.vert b/jme3-effects/src/main/resources/Common/MatDefs/Water/simple_water.vert similarity index 100% rename from engine/src/core-effects/Common/MatDefs/Water/simple_water.vert rename to jme3-effects/src/main/resources/Common/MatDefs/Water/simple_water.vert diff --git a/jme3-examples/build.gradle b/jme3-examples/build.gradle new file mode 100644 index 000000000..9288c8a1c --- /dev/null +++ b/jme3-examples/build.gradle @@ -0,0 +1,95 @@ +//apply plugin:'application' + +if (!hasProperty('mainClass')) { + ext.mainClass = 'jme3test.TestChooser' +} + +//mainClassName = ext.mainClass + +dependencies { + compile project(':jme3-blender') + compile project(':jme3-core') + compile project(':jme3-desktop') + compile project(':jme3-effects') +// compile project(':jme3-bullet') + compile project(':jme3-jbullet') + compile project(':jme3-jogg') +// compile project(':jme3-jogl') + compile project(':jme3-lwjgl') + compile project(':jme3-networking') + compile project(':jme3-niftygui') + compile project(':jme3-plugins') + compile project(':jme3-terrain') + compile project(':jme3-testdata') +} + +jar.doFirst{ + manifest { + attributes('Manifest-Version' : '1.0', +// 'Created-By' : vendor, +// 'Specification-Title' : appName, +// 'Specification-Version' : jmeVersion, +// 'Specification-Vendor' : "jMonkeyEngine", +// 'Implementation-Title' : appName, +// 'Implementation-Version' : version, +// 'Implementation-Vendor' : vendor, + 'Main-Class' : getProperty('mainClass'), + // Add dependencies to manifest, remove version + 'Class-Path' : configurations.compile.resolvedConfiguration.resolvedArtifacts.collect { + 'lib/' + + it.name + + it.classifier != null ? '-' + it.classifier : '' + + '.' + it.extension }.join(' ') + ) + } +} + +task dist (dependsOn: ['build', ':jme3-jogl:jar', ':jme3-bullet:jar']){ + // Copy all dependencies to ../dist/lib, remove versions from jar files + configurations.compile.resolvedConfiguration.resolvedArtifacts.each { artifact -> + copy { + from artifact.file + into '../dist/lib' + if(artifact.classifier != null){ + rename { "${artifact.name}-${artifact.classifier}.${artifact.extension}" } + } else{ + rename { "${artifact.name}.${artifact.extension}" } + } + } + } + copy { + from jar.archivePath + into '../dist' + rename { "jMonkeyEngine3.jar" } + } + // Copy JOGL packages, remove version + def config = project(':jme3-jogl').configurations.runtime.copyRecursive({ !(it instanceof ProjectDependency); }) + config.resolvedConfiguration.resolvedArtifacts.each {artifact -> + copy{ + from artifact.file + into '../dist/opt/jogl/lib' + if(artifact.classifier != null){ + rename { "${artifact.name}-${artifact.classifier}.${artifact.extension}" } + } else{ + rename { "${artifact.name}.${artifact.extension}" } + } + } + } + copy { + from project(':jme3-jogl').jar.archivePath + into '../dist/opt/jogl' + rename {project(':jme3-jogl').name+".jar"} + } + + // Copy bullet packages, remove version + copy { + from project(':jme3-bullet').jar.archivePath + into '../dist/opt/native-bullet' + rename {project(':jme3-bullet').name+".jar"} + } + copy { + from project(':jme3-bullet-native').jar.archivePath + into '../dist/opt/native-bullet' + rename {"jme3-bullet-natives.jar"} + } +} diff --git a/engine/src/test/jme3test/TestChooser.java b/jme3-examples/src/main/java/jme3test/TestChooser.java similarity index 100% rename from engine/src/test/jme3test/TestChooser.java rename to jme3-examples/src/main/java/jme3test/TestChooser.java diff --git a/engine/src/test/jme3test/animation/SubtitleTrack.java b/jme3-examples/src/main/java/jme3test/animation/SubtitleTrack.java similarity index 100% rename from engine/src/test/jme3test/animation/SubtitleTrack.java rename to jme3-examples/src/main/java/jme3test/animation/SubtitleTrack.java diff --git a/engine/src/test/jme3test/animation/TestCameraMotionPath.java b/jme3-examples/src/main/java/jme3test/animation/TestCameraMotionPath.java similarity index 100% rename from engine/src/test/jme3test/animation/TestCameraMotionPath.java rename to jme3-examples/src/main/java/jme3test/animation/TestCameraMotionPath.java diff --git a/engine/src/test/jme3test/animation/TestCinematic.java b/jme3-examples/src/main/java/jme3test/animation/TestCinematic.java similarity index 100% rename from engine/src/test/jme3test/animation/TestCinematic.java rename to jme3-examples/src/main/java/jme3test/animation/TestCinematic.java diff --git a/engine/src/test/jme3test/animation/TestJaime.java b/jme3-examples/src/main/java/jme3test/animation/TestJaime.java similarity index 100% rename from engine/src/test/jme3test/animation/TestJaime.java rename to jme3-examples/src/main/java/jme3test/animation/TestJaime.java diff --git a/engine/src/test/jme3test/animation/TestMotionPath.java b/jme3-examples/src/main/java/jme3test/animation/TestMotionPath.java similarity index 100% rename from engine/src/test/jme3test/animation/TestMotionPath.java rename to jme3-examples/src/main/java/jme3test/animation/TestMotionPath.java diff --git a/engine/src/test/jme3test/app/TestAppStateLifeCycle.java b/jme3-examples/src/main/java/jme3test/app/TestAppStateLifeCycle.java similarity index 100% rename from engine/src/test/jme3test/app/TestAppStateLifeCycle.java rename to jme3-examples/src/main/java/jme3test/app/TestAppStateLifeCycle.java diff --git a/engine/src/test/jme3test/app/TestApplication.java b/jme3-examples/src/main/java/jme3test/app/TestApplication.java similarity index 100% rename from engine/src/test/jme3test/app/TestApplication.java rename to jme3-examples/src/main/java/jme3test/app/TestApplication.java diff --git a/engine/src/test/jme3test/app/TestBareBonesApp.java b/jme3-examples/src/main/java/jme3test/app/TestBareBonesApp.java similarity index 100% rename from engine/src/test/jme3test/app/TestBareBonesApp.java rename to jme3-examples/src/main/java/jme3test/app/TestBareBonesApp.java diff --git a/engine/src/test/jme3test/app/TestChangeAppIcon.java b/jme3-examples/src/main/java/jme3test/app/TestChangeAppIcon.java similarity index 100% rename from engine/src/test/jme3test/app/TestChangeAppIcon.java rename to jme3-examples/src/main/java/jme3test/app/TestChangeAppIcon.java diff --git a/engine/src/test/jme3test/app/TestContextRestart.java b/jme3-examples/src/main/java/jme3test/app/TestContextRestart.java similarity index 100% rename from engine/src/test/jme3test/app/TestContextRestart.java rename to jme3-examples/src/main/java/jme3test/app/TestContextRestart.java diff --git a/engine/src/test/jme3test/app/TestCustomAppSettings.java b/jme3-examples/src/main/java/jme3test/app/TestCustomAppSettings.java similarity index 100% rename from engine/src/test/jme3test/app/TestCustomAppSettings.java rename to jme3-examples/src/main/java/jme3test/app/TestCustomAppSettings.java diff --git a/engine/src/test/jme3test/app/TestIDList.java b/jme3-examples/src/main/java/jme3test/app/TestIDList.java similarity index 100% rename from engine/src/test/jme3test/app/TestIDList.java rename to jme3-examples/src/main/java/jme3test/app/TestIDList.java diff --git a/engine/src/test/jme3test/app/TestReleaseDirectMemory.java b/jme3-examples/src/main/java/jme3test/app/TestReleaseDirectMemory.java similarity index 100% rename from engine/src/test/jme3test/app/TestReleaseDirectMemory.java rename to jme3-examples/src/main/java/jme3test/app/TestReleaseDirectMemory.java diff --git a/engine/src/test/jme3test/app/TestTempVars.java b/jme3-examples/src/main/java/jme3test/app/TestTempVars.java similarity index 100% rename from engine/src/test/jme3test/app/TestTempVars.java rename to jme3-examples/src/main/java/jme3test/app/TestTempVars.java diff --git a/engine/src/test/jme3test/app/TestUseAfterFree.java b/jme3-examples/src/main/java/jme3test/app/TestUseAfterFree.java similarity index 100% rename from engine/src/test/jme3test/app/TestUseAfterFree.java rename to jme3-examples/src/main/java/jme3test/app/TestUseAfterFree.java diff --git a/engine/src/test/jme3test/app/state/RootNodeState.java b/jme3-examples/src/main/java/jme3test/app/state/RootNodeState.java similarity index 100% rename from engine/src/test/jme3test/app/state/RootNodeState.java rename to jme3-examples/src/main/java/jme3test/app/state/RootNodeState.java diff --git a/engine/src/test/jme3test/app/state/TestAppStates.java b/jme3-examples/src/main/java/jme3test/app/state/TestAppStates.java similarity index 100% rename from engine/src/test/jme3test/app/state/TestAppStates.java rename to jme3-examples/src/main/java/jme3test/app/state/TestAppStates.java diff --git a/engine/src/test/jme3test/asset/TestAbsoluteLocators.java b/jme3-examples/src/main/java/jme3test/asset/TestAbsoluteLocators.java similarity index 100% rename from engine/src/test/jme3test/asset/TestAbsoluteLocators.java rename to jme3-examples/src/main/java/jme3test/asset/TestAbsoluteLocators.java diff --git a/engine/src/test/jme3test/asset/TestAssetCache.java b/jme3-examples/src/main/java/jme3test/asset/TestAssetCache.java similarity index 100% rename from engine/src/test/jme3test/asset/TestAssetCache.java rename to jme3-examples/src/main/java/jme3test/asset/TestAssetCache.java diff --git a/engine/src/test/jme3test/asset/TestCustomLoader.java b/jme3-examples/src/main/java/jme3test/asset/TestCustomLoader.java similarity index 100% rename from engine/src/test/jme3test/asset/TestCustomLoader.java rename to jme3-examples/src/main/java/jme3test/asset/TestCustomLoader.java diff --git a/engine/src/test/jme3test/asset/TestManyLocators.java b/jme3-examples/src/main/java/jme3test/asset/TestManyLocators.java similarity index 100% rename from engine/src/test/jme3test/asset/TestManyLocators.java rename to jme3-examples/src/main/java/jme3test/asset/TestManyLocators.java diff --git a/engine/src/test/jme3test/asset/TestOnlineJar.java b/jme3-examples/src/main/java/jme3test/asset/TestOnlineJar.java similarity index 100% rename from engine/src/test/jme3test/asset/TestOnlineJar.java rename to jme3-examples/src/main/java/jme3test/asset/TestOnlineJar.java diff --git a/engine/src/test/jme3test/asset/TestUrlLoading.java b/jme3-examples/src/main/java/jme3test/asset/TestUrlLoading.java similarity index 100% rename from engine/src/test/jme3test/asset/TestUrlLoading.java rename to jme3-examples/src/main/java/jme3test/asset/TestUrlLoading.java diff --git a/engine/src/test/jme3test/asset/TextLoader.java b/jme3-examples/src/main/java/jme3test/asset/TextLoader.java similarity index 100% rename from engine/src/test/jme3test/asset/TextLoader.java rename to jme3-examples/src/main/java/jme3test/asset/TextLoader.java diff --git a/engine/src/test/jme3test/audio/TestAmbient.java b/jme3-examples/src/main/java/jme3test/audio/TestAmbient.java similarity index 100% rename from engine/src/test/jme3test/audio/TestAmbient.java rename to jme3-examples/src/main/java/jme3test/audio/TestAmbient.java diff --git a/engine/src/test/jme3test/audio/TestDoppler.java b/jme3-examples/src/main/java/jme3test/audio/TestDoppler.java similarity index 100% rename from engine/src/test/jme3test/audio/TestDoppler.java rename to jme3-examples/src/main/java/jme3test/audio/TestDoppler.java diff --git a/engine/src/test/jme3test/audio/TestMusicPlayer.form b/jme3-examples/src/main/java/jme3test/audio/TestMusicPlayer.form similarity index 100% rename from engine/src/test/jme3test/audio/TestMusicPlayer.form rename to jme3-examples/src/main/java/jme3test/audio/TestMusicPlayer.form diff --git a/engine/src/test/jme3test/audio/TestMusicPlayer.java b/jme3-examples/src/main/java/jme3test/audio/TestMusicPlayer.java similarity index 100% rename from engine/src/test/jme3test/audio/TestMusicPlayer.java rename to jme3-examples/src/main/java/jme3test/audio/TestMusicPlayer.java diff --git a/engine/src/test/jme3test/audio/TestMusicStreaming.java b/jme3-examples/src/main/java/jme3test/audio/TestMusicStreaming.java similarity index 100% rename from engine/src/test/jme3test/audio/TestMusicStreaming.java rename to jme3-examples/src/main/java/jme3test/audio/TestMusicStreaming.java diff --git a/engine/src/test/jme3test/audio/TestOgg.java b/jme3-examples/src/main/java/jme3test/audio/TestOgg.java similarity index 100% rename from engine/src/test/jme3test/audio/TestOgg.java rename to jme3-examples/src/main/java/jme3test/audio/TestOgg.java diff --git a/engine/src/test/jme3test/audio/TestReverb.java b/jme3-examples/src/main/java/jme3test/audio/TestReverb.java similarity index 100% rename from engine/src/test/jme3test/audio/TestReverb.java rename to jme3-examples/src/main/java/jme3test/audio/TestReverb.java diff --git a/engine/src/test/jme3test/audio/TestWav.java b/jme3-examples/src/main/java/jme3test/audio/TestWav.java similarity index 100% rename from engine/src/test/jme3test/audio/TestWav.java rename to jme3-examples/src/main/java/jme3test/audio/TestWav.java diff --git a/engine/src/test/jme3test/awt/AppHarness.java b/jme3-examples/src/main/java/jme3test/awt/AppHarness.java similarity index 100% rename from engine/src/test/jme3test/awt/AppHarness.java rename to jme3-examples/src/main/java/jme3test/awt/AppHarness.java diff --git a/engine/src/test/jme3test/awt/TestApplet.java b/jme3-examples/src/main/java/jme3test/awt/TestApplet.java similarity index 100% rename from engine/src/test/jme3test/awt/TestApplet.java rename to jme3-examples/src/main/java/jme3test/awt/TestApplet.java diff --git a/engine/src/test/jme3test/awt/TestAwtPanels.java b/jme3-examples/src/main/java/jme3test/awt/TestAwtPanels.java similarity index 100% rename from engine/src/test/jme3test/awt/TestAwtPanels.java rename to jme3-examples/src/main/java/jme3test/awt/TestAwtPanels.java diff --git a/engine/src/test/jme3test/awt/TestCanvas.java b/jme3-examples/src/main/java/jme3test/awt/TestCanvas.java similarity index 100% rename from engine/src/test/jme3test/awt/TestCanvas.java rename to jme3-examples/src/main/java/jme3test/awt/TestCanvas.java diff --git a/engine/src/test/jme3test/awt/TestSafeCanvas.java b/jme3-examples/src/main/java/jme3test/awt/TestSafeCanvas.java similarity index 100% rename from engine/src/test/jme3test/awt/TestSafeCanvas.java rename to jme3-examples/src/main/java/jme3test/awt/TestSafeCanvas.java diff --git a/engine/src/test/jme3test/batching/TestBatchNode.java b/jme3-examples/src/main/java/jme3test/batching/TestBatchNode.java similarity index 100% rename from engine/src/test/jme3test/batching/TestBatchNode.java rename to jme3-examples/src/main/java/jme3test/batching/TestBatchNode.java diff --git a/engine/src/test/jme3test/batching/TestBatchNodeCluster.java b/jme3-examples/src/main/java/jme3test/batching/TestBatchNodeCluster.java similarity index 100% rename from engine/src/test/jme3test/batching/TestBatchNodeCluster.java rename to jme3-examples/src/main/java/jme3test/batching/TestBatchNodeCluster.java diff --git a/engine/src/test/jme3test/batching/TestBatchNodeTower.java b/jme3-examples/src/main/java/jme3test/batching/TestBatchNodeTower.java similarity index 100% rename from engine/src/test/jme3test/batching/TestBatchNodeTower.java rename to jme3-examples/src/main/java/jme3test/batching/TestBatchNodeTower.java diff --git a/engine/src/test/jme3test/blender/TestBlenderLoader.java b/jme3-examples/src/main/java/jme3test/blender/TestBlenderLoader.java similarity index 100% rename from engine/src/test/jme3test/blender/TestBlenderLoader.java rename to jme3-examples/src/main/java/jme3test/blender/TestBlenderLoader.java diff --git a/engine/src/test/jme3test/bounding/TestRayCollision.java b/jme3-examples/src/main/java/jme3test/bounding/TestRayCollision.java similarity index 100% rename from engine/src/test/jme3test/bounding/TestRayCollision.java rename to jme3-examples/src/main/java/jme3test/bounding/TestRayCollision.java diff --git a/engine/src/test/jme3test/bullet/BombControl.java b/jme3-examples/src/main/java/jme3test/bullet/BombControl.java similarity index 100% rename from engine/src/test/jme3test/bullet/BombControl.java rename to jme3-examples/src/main/java/jme3test/bullet/BombControl.java diff --git a/engine/src/test/jme3test/bullet/PhysicsHoverControl.java b/jme3-examples/src/main/java/jme3test/bullet/PhysicsHoverControl.java similarity index 100% rename from engine/src/test/jme3test/bullet/PhysicsHoverControl.java rename to jme3-examples/src/main/java/jme3test/bullet/PhysicsHoverControl.java diff --git a/engine/src/test/jme3test/bullet/PhysicsTestHelper.java b/jme3-examples/src/main/java/jme3test/bullet/PhysicsTestHelper.java similarity index 100% rename from engine/src/test/jme3test/bullet/PhysicsTestHelper.java rename to jme3-examples/src/main/java/jme3test/bullet/PhysicsTestHelper.java diff --git a/engine/src/test/jme3test/bullet/TestAttachDriver.java b/jme3-examples/src/main/java/jme3test/bullet/TestAttachDriver.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestAttachDriver.java rename to jme3-examples/src/main/java/jme3test/bullet/TestAttachDriver.java diff --git a/engine/src/test/jme3test/bullet/TestAttachGhostObject.java b/jme3-examples/src/main/java/jme3test/bullet/TestAttachGhostObject.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestAttachGhostObject.java rename to jme3-examples/src/main/java/jme3test/bullet/TestAttachGhostObject.java diff --git a/engine/src/test/jme3test/bullet/TestBetterCharacter.java b/jme3-examples/src/main/java/jme3test/bullet/TestBetterCharacter.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestBetterCharacter.java rename to jme3-examples/src/main/java/jme3test/bullet/TestBetterCharacter.java diff --git a/engine/src/test/jme3test/bullet/TestBoneRagdoll.java b/jme3-examples/src/main/java/jme3test/bullet/TestBoneRagdoll.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestBoneRagdoll.java rename to jme3-examples/src/main/java/jme3test/bullet/TestBoneRagdoll.java diff --git a/engine/src/test/jme3test/bullet/TestBrickTower.java b/jme3-examples/src/main/java/jme3test/bullet/TestBrickTower.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestBrickTower.java rename to jme3-examples/src/main/java/jme3test/bullet/TestBrickTower.java diff --git a/engine/src/test/jme3test/bullet/TestBrickWall.java b/jme3-examples/src/main/java/jme3test/bullet/TestBrickWall.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestBrickWall.java rename to jme3-examples/src/main/java/jme3test/bullet/TestBrickWall.java diff --git a/engine/src/test/jme3test/bullet/TestCcd.java b/jme3-examples/src/main/java/jme3test/bullet/TestCcd.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestCcd.java rename to jme3-examples/src/main/java/jme3test/bullet/TestCcd.java diff --git a/engine/src/test/jme3test/bullet/TestCollisionGroups.java b/jme3-examples/src/main/java/jme3test/bullet/TestCollisionGroups.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestCollisionGroups.java rename to jme3-examples/src/main/java/jme3test/bullet/TestCollisionGroups.java diff --git a/engine/src/test/jme3test/bullet/TestCollisionListener.java b/jme3-examples/src/main/java/jme3test/bullet/TestCollisionListener.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestCollisionListener.java rename to jme3-examples/src/main/java/jme3test/bullet/TestCollisionListener.java diff --git a/engine/src/test/jme3test/bullet/TestCollisionShapeFactory.java b/jme3-examples/src/main/java/jme3test/bullet/TestCollisionShapeFactory.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestCollisionShapeFactory.java rename to jme3-examples/src/main/java/jme3test/bullet/TestCollisionShapeFactory.java diff --git a/engine/src/test/jme3test/bullet/TestFancyCar.java b/jme3-examples/src/main/java/jme3test/bullet/TestFancyCar.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestFancyCar.java rename to jme3-examples/src/main/java/jme3test/bullet/TestFancyCar.java diff --git a/engine/src/test/jme3test/bullet/TestGhostObject.java b/jme3-examples/src/main/java/jme3test/bullet/TestGhostObject.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestGhostObject.java rename to jme3-examples/src/main/java/jme3test/bullet/TestGhostObject.java diff --git a/engine/src/test/jme3test/bullet/TestHoveringTank.java b/jme3-examples/src/main/java/jme3test/bullet/TestHoveringTank.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestHoveringTank.java rename to jme3-examples/src/main/java/jme3test/bullet/TestHoveringTank.java diff --git a/engine/src/test/jme3test/bullet/TestKinematicAddToPhysicsSpaceIssue.java b/jme3-examples/src/main/java/jme3test/bullet/TestKinematicAddToPhysicsSpaceIssue.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestKinematicAddToPhysicsSpaceIssue.java rename to jme3-examples/src/main/java/jme3test/bullet/TestKinematicAddToPhysicsSpaceIssue.java diff --git a/engine/src/test/jme3test/bullet/TestLocalPhysics.java b/jme3-examples/src/main/java/jme3test/bullet/TestLocalPhysics.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestLocalPhysics.java rename to jme3-examples/src/main/java/jme3test/bullet/TestLocalPhysics.java diff --git a/engine/src/test/jme3test/bullet/TestPhysicsCar.java b/jme3-examples/src/main/java/jme3test/bullet/TestPhysicsCar.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestPhysicsCar.java rename to jme3-examples/src/main/java/jme3test/bullet/TestPhysicsCar.java diff --git a/engine/src/test/jme3test/bullet/TestPhysicsCharacter.java b/jme3-examples/src/main/java/jme3test/bullet/TestPhysicsCharacter.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestPhysicsCharacter.java rename to jme3-examples/src/main/java/jme3test/bullet/TestPhysicsCharacter.java diff --git a/engine/src/test/jme3test/bullet/TestPhysicsHingeJoint.java b/jme3-examples/src/main/java/jme3test/bullet/TestPhysicsHingeJoint.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestPhysicsHingeJoint.java rename to jme3-examples/src/main/java/jme3test/bullet/TestPhysicsHingeJoint.java diff --git a/engine/src/test/jme3test/bullet/TestPhysicsRayCast.java b/jme3-examples/src/main/java/jme3test/bullet/TestPhysicsRayCast.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestPhysicsRayCast.java rename to jme3-examples/src/main/java/jme3test/bullet/TestPhysicsRayCast.java diff --git a/engine/src/test/jme3test/bullet/TestPhysicsReadWrite.java b/jme3-examples/src/main/java/jme3test/bullet/TestPhysicsReadWrite.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestPhysicsReadWrite.java rename to jme3-examples/src/main/java/jme3test/bullet/TestPhysicsReadWrite.java diff --git a/engine/src/test/jme3test/bullet/TestQ3.java b/jme3-examples/src/main/java/jme3test/bullet/TestQ3.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestQ3.java rename to jme3-examples/src/main/java/jme3test/bullet/TestQ3.java diff --git a/engine/src/test/jme3test/bullet/TestRagDoll.java b/jme3-examples/src/main/java/jme3test/bullet/TestRagDoll.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestRagDoll.java rename to jme3-examples/src/main/java/jme3test/bullet/TestRagDoll.java diff --git a/engine/src/test/jme3test/bullet/TestRagdollCharacter.java b/jme3-examples/src/main/java/jme3test/bullet/TestRagdollCharacter.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestRagdollCharacter.java rename to jme3-examples/src/main/java/jme3test/bullet/TestRagdollCharacter.java diff --git a/engine/src/test/jme3test/bullet/TestSimplePhysics.java b/jme3-examples/src/main/java/jme3test/bullet/TestSimplePhysics.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestSimplePhysics.java rename to jme3-examples/src/main/java/jme3test/bullet/TestSimplePhysics.java diff --git a/engine/src/test/jme3test/bullet/TestSweepTest.java b/jme3-examples/src/main/java/jme3test/bullet/TestSweepTest.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestSweepTest.java rename to jme3-examples/src/main/java/jme3test/bullet/TestSweepTest.java diff --git a/engine/src/test/jme3test/bullet/TestWalkingChar.java b/jme3-examples/src/main/java/jme3test/bullet/TestWalkingChar.java similarity index 100% rename from engine/src/test/jme3test/bullet/TestWalkingChar.java rename to jme3-examples/src/main/java/jme3test/bullet/TestWalkingChar.java diff --git a/engine/src/test/jme3test/collision/RayTrace.java b/jme3-examples/src/main/java/jme3test/collision/RayTrace.java similarity index 100% rename from engine/src/test/jme3test/collision/RayTrace.java rename to jme3-examples/src/main/java/jme3test/collision/RayTrace.java diff --git a/engine/src/test/jme3test/collision/TestMousePick.java b/jme3-examples/src/main/java/jme3test/collision/TestMousePick.java similarity index 100% rename from engine/src/test/jme3test/collision/TestMousePick.java rename to jme3-examples/src/main/java/jme3test/collision/TestMousePick.java diff --git a/engine/src/test/jme3test/collision/TestRayCasting.java b/jme3-examples/src/main/java/jme3test/collision/TestRayCasting.java similarity index 100% rename from engine/src/test/jme3test/collision/TestRayCasting.java rename to jme3-examples/src/main/java/jme3test/collision/TestRayCasting.java diff --git a/engine/src/test/jme3test/collision/TestTriangleCollision.java b/jme3-examples/src/main/java/jme3test/collision/TestTriangleCollision.java similarity index 100% rename from engine/src/test/jme3test/collision/TestTriangleCollision.java rename to jme3-examples/src/main/java/jme3test/collision/TestTriangleCollision.java diff --git a/engine/src/test/jme3test/conversion/TestMipMapGen.java b/jme3-examples/src/main/java/jme3test/conversion/TestMipMapGen.java similarity index 100% rename from engine/src/test/jme3test/conversion/TestMipMapGen.java rename to jme3-examples/src/main/java/jme3test/conversion/TestMipMapGen.java diff --git a/engine/src/test/jme3test/conversion/TestTriangleStrip.java b/jme3-examples/src/main/java/jme3test/conversion/TestTriangleStrip.java similarity index 100% rename from engine/src/test/jme3test/conversion/TestTriangleStrip.java rename to jme3-examples/src/main/java/jme3test/conversion/TestTriangleStrip.java diff --git a/engine/src/test/jme3test/effect/TestEverything.java b/jme3-examples/src/main/java/jme3test/effect/TestEverything.java similarity index 100% rename from engine/src/test/jme3test/effect/TestEverything.java rename to jme3-examples/src/main/java/jme3test/effect/TestEverything.java diff --git a/engine/src/test/jme3test/effect/TestExplosionEffect.java b/jme3-examples/src/main/java/jme3test/effect/TestExplosionEffect.java similarity index 100% rename from engine/src/test/jme3test/effect/TestExplosionEffect.java rename to jme3-examples/src/main/java/jme3test/effect/TestExplosionEffect.java diff --git a/engine/src/test/jme3test/effect/TestMovingParticle.java b/jme3-examples/src/main/java/jme3test/effect/TestMovingParticle.java similarity index 100% rename from engine/src/test/jme3test/effect/TestMovingParticle.java rename to jme3-examples/src/main/java/jme3test/effect/TestMovingParticle.java diff --git a/engine/src/test/jme3test/effect/TestParticleExportingCloning.java b/jme3-examples/src/main/java/jme3test/effect/TestParticleExportingCloning.java similarity index 100% rename from engine/src/test/jme3test/effect/TestParticleExportingCloning.java rename to jme3-examples/src/main/java/jme3test/effect/TestParticleExportingCloning.java diff --git a/engine/src/test/jme3test/effect/TestPointSprite.java b/jme3-examples/src/main/java/jme3test/effect/TestPointSprite.java similarity index 100% rename from engine/src/test/jme3test/effect/TestPointSprite.java rename to jme3-examples/src/main/java/jme3test/effect/TestPointSprite.java diff --git a/engine/src/test/jme3test/effect/TestSoftParticles.java b/jme3-examples/src/main/java/jme3test/effect/TestSoftParticles.java similarity index 100% rename from engine/src/test/jme3test/effect/TestSoftParticles.java rename to jme3-examples/src/main/java/jme3test/effect/TestSoftParticles.java diff --git a/engine/src/test/jme3test/export/TestAssetLinkNode.java b/jme3-examples/src/main/java/jme3test/export/TestAssetLinkNode.java similarity index 100% rename from engine/src/test/jme3test/export/TestAssetLinkNode.java rename to jme3-examples/src/main/java/jme3test/export/TestAssetLinkNode.java diff --git a/engine/src/test/jme3test/export/TestOgreConvert.java b/jme3-examples/src/main/java/jme3test/export/TestOgreConvert.java similarity index 100% rename from engine/src/test/jme3test/export/TestOgreConvert.java rename to jme3-examples/src/main/java/jme3test/export/TestOgreConvert.java diff --git a/engine/src/test/jme3test/games/CubeField.java b/jme3-examples/src/main/java/jme3test/games/CubeField.java similarity index 100% rename from engine/src/test/jme3test/games/CubeField.java rename to jme3-examples/src/main/java/jme3test/games/CubeField.java diff --git a/engine/src/test/jme3test/games/WorldOfInception.java b/jme3-examples/src/main/java/jme3test/games/WorldOfInception.java similarity index 100% rename from engine/src/test/jme3test/games/WorldOfInception.java rename to jme3-examples/src/main/java/jme3test/games/WorldOfInception.java diff --git a/engine/src/test/jme3test/gui/TestBitmapFont.java b/jme3-examples/src/main/java/jme3test/gui/TestBitmapFont.java similarity index 100% rename from engine/src/test/jme3test/gui/TestBitmapFont.java rename to jme3-examples/src/main/java/jme3test/gui/TestBitmapFont.java diff --git a/engine/src/test/jme3test/gui/TestBitmapText3D.java b/jme3-examples/src/main/java/jme3test/gui/TestBitmapText3D.java similarity index 100% rename from engine/src/test/jme3test/gui/TestBitmapText3D.java rename to jme3-examples/src/main/java/jme3test/gui/TestBitmapText3D.java diff --git a/engine/src/test/jme3test/gui/TestCursor.java b/jme3-examples/src/main/java/jme3test/gui/TestCursor.java similarity index 100% rename from engine/src/test/jme3test/gui/TestCursor.java rename to jme3-examples/src/main/java/jme3test/gui/TestCursor.java diff --git a/engine/src/test/jme3test/gui/TestOrtho.java b/jme3-examples/src/main/java/jme3test/gui/TestOrtho.java similarity index 100% rename from engine/src/test/jme3test/gui/TestOrtho.java rename to jme3-examples/src/main/java/jme3test/gui/TestOrtho.java diff --git a/engine/src/test/jme3test/gui/TestSoftwareMouse.java b/jme3-examples/src/main/java/jme3test/gui/TestSoftwareMouse.java similarity index 100% rename from engine/src/test/jme3test/gui/TestSoftwareMouse.java rename to jme3-examples/src/main/java/jme3test/gui/TestSoftwareMouse.java diff --git a/engine/src/test/jme3test/gui/TestZOrder.java b/jme3-examples/src/main/java/jme3test/gui/TestZOrder.java similarity index 100% rename from engine/src/test/jme3test/gui/TestZOrder.java rename to jme3-examples/src/main/java/jme3test/gui/TestZOrder.java diff --git a/engine/src/test/jme3test/helloworld/HelloAnimation.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloAnimation.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloAnimation.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloAnimation.java diff --git a/engine/src/test/jme3test/helloworld/HelloAssets.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloAssets.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloAssets.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloAssets.java diff --git a/engine/src/test/jme3test/helloworld/HelloAudio.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloAudio.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloAudio.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloAudio.java diff --git a/engine/src/test/jme3test/helloworld/HelloCollision.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloCollision.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloCollision.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloCollision.java diff --git a/engine/src/test/jme3test/helloworld/HelloEffects.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloEffects.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloEffects.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloEffects.java diff --git a/engine/src/test/jme3test/helloworld/HelloInput.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloInput.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloInput.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloInput.java diff --git a/engine/src/test/jme3test/helloworld/HelloJME3.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloJME3.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloJME3.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloJME3.java diff --git a/engine/src/test/jme3test/helloworld/HelloLoop.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloLoop.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloLoop.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloLoop.java diff --git a/engine/src/test/jme3test/helloworld/HelloMaterial.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloMaterial.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloMaterial.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloMaterial.java diff --git a/engine/src/test/jme3test/helloworld/HelloNode.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloNode.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloNode.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloNode.java diff --git a/engine/src/test/jme3test/helloworld/HelloPhysics.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloPhysics.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloPhysics.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloPhysics.java diff --git a/engine/src/test/jme3test/helloworld/HelloPicking.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloPicking.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloPicking.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloPicking.java diff --git a/engine/src/test/jme3test/helloworld/HelloTerrain.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloTerrain.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloTerrain.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloTerrain.java diff --git a/engine/src/test/jme3test/helloworld/HelloTerrainCollision.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloTerrainCollision.java similarity index 100% rename from engine/src/test/jme3test/helloworld/HelloTerrainCollision.java rename to jme3-examples/src/main/java/jme3test/helloworld/HelloTerrainCollision.java diff --git a/engine/src/test/jme3test/input/TestCameraNode.java b/jme3-examples/src/main/java/jme3test/input/TestCameraNode.java similarity index 100% rename from engine/src/test/jme3test/input/TestCameraNode.java rename to jme3-examples/src/main/java/jme3test/input/TestCameraNode.java diff --git a/engine/src/test/jme3test/input/TestChaseCamera.java b/jme3-examples/src/main/java/jme3test/input/TestChaseCamera.java similarity index 100% rename from engine/src/test/jme3test/input/TestChaseCamera.java rename to jme3-examples/src/main/java/jme3test/input/TestChaseCamera.java diff --git a/engine/src/test/jme3test/input/TestChaseCameraAppState.java b/jme3-examples/src/main/java/jme3test/input/TestChaseCameraAppState.java similarity index 97% rename from engine/src/test/jme3test/input/TestChaseCameraAppState.java rename to jme3-examples/src/main/java/jme3test/input/TestChaseCameraAppState.java index a3db00ff2..38c3651cb 100644 --- a/engine/src/test/jme3test/input/TestChaseCameraAppState.java +++ b/jme3-examples/src/main/java/jme3test/input/TestChaseCameraAppState.java @@ -1,153 +1,153 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package jme3test.input; - -import com.jme3.app.ChaseCameraAppState; -import com.jme3.app.FlyCamAppState; -import com.jme3.app.SimpleApplication; -import com.jme3.input.KeyInput; -import com.jme3.input.controls.ActionListener; -import com.jme3.input.controls.AnalogListener; -import com.jme3.input.controls.KeyTrigger; -import com.jme3.material.Material; -import com.jme3.math.FastMath; -import com.jme3.math.Quaternion; -import com.jme3.math.Vector3f; -import com.jme3.scene.Geometry; -import com.jme3.scene.shape.Quad; - -/** A 3rd-person chase camera orbits a target (teapot). - * Follow the teapot with WASD keys, rotate by dragging the mouse. */ -public class TestChaseCameraAppState extends SimpleApplication implements AnalogListener, ActionListener { - - private Geometry teaGeom; - - public static void main(String[] args) { - TestChaseCameraAppState app = new TestChaseCameraAppState(); - app.start(); - } - - public void simpleInitApp() { - // Load a teapot model - teaGeom = (Geometry) assetManager.loadModel("Models/Teapot/Teapot.obj"); - Material mat_tea = new Material(assetManager, "Common/MatDefs/Misc/ShowNormals.j3md"); - teaGeom.setMaterial(mat_tea); - rootNode.attachChild(teaGeom); - - // Load a floor model - Material mat_ground = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md"); - mat_ground.setTexture("ColorMap", assetManager.loadTexture("Interface/Logo/Monkey.jpg")); - Geometry ground = new Geometry("ground", new Quad(50, 50)); - ground.setLocalRotation(new Quaternion().fromAngleAxis(-FastMath.HALF_PI, Vector3f.UNIT_X)); - ground.setLocalTranslation(-25, -1, 25); - ground.setMaterial(mat_ground); - rootNode.attachChild(ground); - - //disable the flyCam - stateManager.detach(stateManager.getState(FlyCamAppState.class)); - - // Enable a chase cam - ChaseCameraAppState chaseCamAS = new ChaseCameraAppState(); - chaseCamAS.setTarget(teaGeom); - stateManager.attach(chaseCamAS); - - //Uncomment this to invert the camera's vertical rotation Axis - //chaseCamAS.setInvertVerticalAxis(true); - - //Uncomment this to invert the camera's horizontal rotation Axis - //chaseCamAS.setInvertHorizontalAxis(true); - - //Uncomment this to enable rotation when the middle mouse button is pressed (like Blender) - //WARNING : setting this trigger disable the rotation on right and left mouse button click - //chaseCamAS.setToggleRotationTrigger(new MouseButtonTrigger(MouseInput.BUTTON_MIDDLE)); - - //Uncomment this to set mutiple triggers to enable rotation of the cam - //Here space bar and middle mouse button - //chaseCamAS.setToggleRotationTrigger(new MouseButtonTrigger(MouseInput.BUTTON_MIDDLE),new KeyTrigger(KeyInput.KEY_SPACE)); - - //registering inputs for target's movement - registerInput(); - - } - - public void registerInput() { - inputManager.addMapping("moveForward", new KeyTrigger(KeyInput.KEY_UP), new KeyTrigger(KeyInput.KEY_W)); - inputManager.addMapping("moveBackward", new KeyTrigger(KeyInput.KEY_DOWN), new KeyTrigger(KeyInput.KEY_S)); - inputManager.addMapping("moveRight", new KeyTrigger(KeyInput.KEY_RIGHT), new KeyTrigger(KeyInput.KEY_D)); - inputManager.addMapping("moveLeft", new KeyTrigger(KeyInput.KEY_LEFT), new KeyTrigger(KeyInput.KEY_A)); - inputManager.addMapping("displayPosition", new KeyTrigger(KeyInput.KEY_P)); - inputManager.addListener(this, "moveForward", "moveBackward", "moveRight", "moveLeft"); - inputManager.addListener(this, "displayPosition"); - } - - public void onAnalog(String name, float value, float tpf) { - if (name.equals("moveForward")) { - teaGeom.move(0, 0, -5 * tpf); - } - if (name.equals("moveBackward")) { - teaGeom.move(0, 0, 5 * tpf); - } - if (name.equals("moveRight")) { - teaGeom.move(5 * tpf, 0, 0); - } - if (name.equals("moveLeft")) { - teaGeom.move(-5 * tpf, 0, 0); - - } - - } - - public void onAction(String name, boolean keyPressed, float tpf) { - if (name.equals("displayPosition") && keyPressed) { - teaGeom.move(10, 10, 10); - - } - } - - @Override - public void simpleUpdate(float tpf) { - super.simpleUpdate(tpf); - - // teaGeom.move(new Vector3f(0.001f, 0, 0)); - // pivot.rotate(0, 0.00001f, 0); - // rootNode.updateGeometricState(); - } -// public void update() { -// super.update(); -//// render the viewports -// float tpf = timer.getTimePerFrame(); -// state.getRootNode().rotate(0, 0.000001f, 0); -// stateManager.update(tpf); -// stateManager.render(renderManager); -// renderManager.render(tpf); -// } -} +/* + * Copyright (c) 2009-2012 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'jMonkeyEngine' nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package jme3test.input; + +import com.jme3.app.ChaseCameraAppState; +import com.jme3.app.FlyCamAppState; +import com.jme3.app.SimpleApplication; +import com.jme3.input.KeyInput; +import com.jme3.input.controls.ActionListener; +import com.jme3.input.controls.AnalogListener; +import com.jme3.input.controls.KeyTrigger; +import com.jme3.material.Material; +import com.jme3.math.FastMath; +import com.jme3.math.Quaternion; +import com.jme3.math.Vector3f; +import com.jme3.scene.Geometry; +import com.jme3.scene.shape.Quad; + +/** A 3rd-person chase camera orbits a target (teapot). + * Follow the teapot with WASD keys, rotate by dragging the mouse. */ +public class TestChaseCameraAppState extends SimpleApplication implements AnalogListener, ActionListener { + + private Geometry teaGeom; + + public static void main(String[] args) { + TestChaseCameraAppState app = new TestChaseCameraAppState(); + app.start(); + } + + public void simpleInitApp() { + // Load a teapot model + teaGeom = (Geometry) assetManager.loadModel("Models/Teapot/Teapot.obj"); + Material mat_tea = new Material(assetManager, "Common/MatDefs/Misc/ShowNormals.j3md"); + teaGeom.setMaterial(mat_tea); + rootNode.attachChild(teaGeom); + + // Load a floor model + Material mat_ground = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md"); + mat_ground.setTexture("ColorMap", assetManager.loadTexture("Interface/Logo/Monkey.jpg")); + Geometry ground = new Geometry("ground", new Quad(50, 50)); + ground.setLocalRotation(new Quaternion().fromAngleAxis(-FastMath.HALF_PI, Vector3f.UNIT_X)); + ground.setLocalTranslation(-25, -1, 25); + ground.setMaterial(mat_ground); + rootNode.attachChild(ground); + + //disable the flyCam + stateManager.detach(stateManager.getState(FlyCamAppState.class)); + + // Enable a chase cam + ChaseCameraAppState chaseCamAS = new ChaseCameraAppState(); + chaseCamAS.setTarget(teaGeom); + stateManager.attach(chaseCamAS); + + //Uncomment this to invert the camera's vertical rotation Axis + //chaseCamAS.setInvertVerticalAxis(true); + + //Uncomment this to invert the camera's horizontal rotation Axis + //chaseCamAS.setInvertHorizontalAxis(true); + + //Uncomment this to enable rotation when the middle mouse button is pressed (like Blender) + //WARNING : setting this trigger disable the rotation on right and left mouse button click + //chaseCamAS.setToggleRotationTrigger(new MouseButtonTrigger(MouseInput.BUTTON_MIDDLE)); + + //Uncomment this to set mutiple triggers to enable rotation of the cam + //Here space bar and middle mouse button + //chaseCamAS.setToggleRotationTrigger(new MouseButtonTrigger(MouseInput.BUTTON_MIDDLE),new KeyTrigger(KeyInput.KEY_SPACE)); + + //registering inputs for target's movement + registerInput(); + + } + + public void registerInput() { + inputManager.addMapping("moveForward", new KeyTrigger(KeyInput.KEY_UP), new KeyTrigger(KeyInput.KEY_W)); + inputManager.addMapping("moveBackward", new KeyTrigger(KeyInput.KEY_DOWN), new KeyTrigger(KeyInput.KEY_S)); + inputManager.addMapping("moveRight", new KeyTrigger(KeyInput.KEY_RIGHT), new KeyTrigger(KeyInput.KEY_D)); + inputManager.addMapping("moveLeft", new KeyTrigger(KeyInput.KEY_LEFT), new KeyTrigger(KeyInput.KEY_A)); + inputManager.addMapping("displayPosition", new KeyTrigger(KeyInput.KEY_P)); + inputManager.addListener(this, "moveForward", "moveBackward", "moveRight", "moveLeft"); + inputManager.addListener(this, "displayPosition"); + } + + public void onAnalog(String name, float value, float tpf) { + if (name.equals("moveForward")) { + teaGeom.move(0, 0, -5 * tpf); + } + if (name.equals("moveBackward")) { + teaGeom.move(0, 0, 5 * tpf); + } + if (name.equals("moveRight")) { + teaGeom.move(5 * tpf, 0, 0); + } + if (name.equals("moveLeft")) { + teaGeom.move(-5 * tpf, 0, 0); + + } + + } + + public void onAction(String name, boolean keyPressed, float tpf) { + if (name.equals("displayPosition") && keyPressed) { + teaGeom.move(10, 10, 10); + + } + } + + @Override + public void simpleUpdate(float tpf) { + super.simpleUpdate(tpf); + + // teaGeom.move(new Vector3f(0.001f, 0, 0)); + // pivot.rotate(0, 0.00001f, 0); + // rootNode.updateGeometricState(); + } +// public void update() { +// super.update(); +//// render the viewports +// float tpf = timer.getTimePerFrame(); +// state.getRootNode().rotate(0, 0.000001f, 0); +// stateManager.update(tpf); +// stateManager.render(renderManager); +// renderManager.render(tpf); +// } +} diff --git a/engine/src/test/jme3test/input/TestControls.java b/jme3-examples/src/main/java/jme3test/input/TestControls.java similarity index 100% rename from engine/src/test/jme3test/input/TestControls.java rename to jme3-examples/src/main/java/jme3test/input/TestControls.java diff --git a/engine/src/test/jme3test/input/TestJoystick.java b/jme3-examples/src/main/java/jme3test/input/TestJoystick.java similarity index 100% rename from engine/src/test/jme3test/input/TestJoystick.java rename to jme3-examples/src/main/java/jme3test/input/TestJoystick.java diff --git a/engine/src/test/jme3test/input/combomoves/ComboMove.java b/jme3-examples/src/main/java/jme3test/input/combomoves/ComboMove.java similarity index 100% rename from engine/src/test/jme3test/input/combomoves/ComboMove.java rename to jme3-examples/src/main/java/jme3test/input/combomoves/ComboMove.java diff --git a/engine/src/test/jme3test/input/combomoves/ComboMoveExecution.java b/jme3-examples/src/main/java/jme3test/input/combomoves/ComboMoveExecution.java similarity index 100% rename from engine/src/test/jme3test/input/combomoves/ComboMoveExecution.java rename to jme3-examples/src/main/java/jme3test/input/combomoves/ComboMoveExecution.java diff --git a/engine/src/test/jme3test/input/combomoves/TestComboMoves.java b/jme3-examples/src/main/java/jme3test/input/combomoves/TestComboMoves.java similarity index 100% rename from engine/src/test/jme3test/input/combomoves/TestComboMoves.java rename to jme3-examples/src/main/java/jme3test/input/combomoves/TestComboMoves.java diff --git a/engine/src/test/jme3test/light/ShadowTestUIManager.java b/jme3-examples/src/main/java/jme3test/light/ShadowTestUIManager.java similarity index 100% rename from engine/src/test/jme3test/light/ShadowTestUIManager.java rename to jme3-examples/src/main/java/jme3test/light/ShadowTestUIManager.java diff --git a/engine/src/test/jme3test/light/TestDirectionalLightShadow.java b/jme3-examples/src/main/java/jme3test/light/TestDirectionalLightShadow.java similarity index 100% rename from engine/src/test/jme3test/light/TestDirectionalLightShadow.java rename to jme3-examples/src/main/java/jme3test/light/TestDirectionalLightShadow.java diff --git a/engine/src/test/jme3test/light/TestEnvironmentMapping.java b/jme3-examples/src/main/java/jme3test/light/TestEnvironmentMapping.java similarity index 100% rename from engine/src/test/jme3test/light/TestEnvironmentMapping.java rename to jme3-examples/src/main/java/jme3test/light/TestEnvironmentMapping.java diff --git a/engine/src/test/jme3test/light/TestLightNode.java b/jme3-examples/src/main/java/jme3test/light/TestLightNode.java similarity index 100% rename from engine/src/test/jme3test/light/TestLightNode.java rename to jme3-examples/src/main/java/jme3test/light/TestLightNode.java diff --git a/engine/src/test/jme3test/light/TestLightRadius.java b/jme3-examples/src/main/java/jme3test/light/TestLightRadius.java similarity index 100% rename from engine/src/test/jme3test/light/TestLightRadius.java rename to jme3-examples/src/main/java/jme3test/light/TestLightRadius.java diff --git a/engine/src/test/jme3test/light/TestManyLights.java b/jme3-examples/src/main/java/jme3test/light/TestManyLights.java similarity index 100% rename from engine/src/test/jme3test/light/TestManyLights.java rename to jme3-examples/src/main/java/jme3test/light/TestManyLights.java diff --git a/engine/src/test/jme3test/light/TestPointLightShadows.java b/jme3-examples/src/main/java/jme3test/light/TestPointLightShadows.java similarity index 100% rename from engine/src/test/jme3test/light/TestPointLightShadows.java rename to jme3-examples/src/main/java/jme3test/light/TestPointLightShadows.java diff --git a/engine/src/test/jme3test/light/TestPssmShadow.java b/jme3-examples/src/main/java/jme3test/light/TestPssmShadow.java similarity index 100% rename from engine/src/test/jme3test/light/TestPssmShadow.java rename to jme3-examples/src/main/java/jme3test/light/TestPssmShadow.java diff --git a/engine/src/test/jme3test/light/TestShadow.java b/jme3-examples/src/main/java/jme3test/light/TestShadow.java similarity index 100% rename from engine/src/test/jme3test/light/TestShadow.java rename to jme3-examples/src/main/java/jme3test/light/TestShadow.java diff --git a/engine/src/test/jme3test/light/TestShadowsPerf.java b/jme3-examples/src/main/java/jme3test/light/TestShadowsPerf.java similarity index 100% rename from engine/src/test/jme3test/light/TestShadowsPerf.java rename to jme3-examples/src/main/java/jme3test/light/TestShadowsPerf.java diff --git a/engine/src/test/jme3test/light/TestSimpleLighting.java b/jme3-examples/src/main/java/jme3test/light/TestSimpleLighting.java similarity index 100% rename from engine/src/test/jme3test/light/TestSimpleLighting.java rename to jme3-examples/src/main/java/jme3test/light/TestSimpleLighting.java diff --git a/engine/src/test/jme3test/light/TestSpotLight.java b/jme3-examples/src/main/java/jme3test/light/TestSpotLight.java similarity index 100% rename from engine/src/test/jme3test/light/TestSpotLight.java rename to jme3-examples/src/main/java/jme3test/light/TestSpotLight.java diff --git a/engine/src/test/jme3test/light/TestSpotLightShadows.java b/jme3-examples/src/main/java/jme3test/light/TestSpotLightShadows.java similarity index 100% rename from engine/src/test/jme3test/light/TestSpotLightShadows.java rename to jme3-examples/src/main/java/jme3test/light/TestSpotLightShadows.java diff --git a/engine/src/test/jme3test/light/TestSpotLightTerrain.java b/jme3-examples/src/main/java/jme3test/light/TestSpotLightTerrain.java similarity index 100% rename from engine/src/test/jme3test/light/TestSpotLightTerrain.java rename to jme3-examples/src/main/java/jme3test/light/TestSpotLightTerrain.java diff --git a/engine/src/test/jme3test/light/TestTangentGen.java b/jme3-examples/src/main/java/jme3test/light/TestTangentGen.java similarity index 100% rename from engine/src/test/jme3test/light/TestTangentGen.java rename to jme3-examples/src/main/java/jme3test/light/TestTangentGen.java diff --git a/engine/src/test/jme3test/light/TestTangentGenBadModels.java b/jme3-examples/src/main/java/jme3test/light/TestTangentGenBadModels.java similarity index 100% rename from engine/src/test/jme3test/light/TestTangentGenBadModels.java rename to jme3-examples/src/main/java/jme3test/light/TestTangentGenBadModels.java diff --git a/engine/src/test/jme3test/light/TestTangentGenBadUV.java b/jme3-examples/src/main/java/jme3test/light/TestTangentGenBadUV.java similarity index 100% rename from engine/src/test/jme3test/light/TestTangentGenBadUV.java rename to jme3-examples/src/main/java/jme3test/light/TestTangentGenBadUV.java diff --git a/engine/src/test/jme3test/light/TestTransparentShadow.java b/jme3-examples/src/main/java/jme3test/light/TestTransparentShadow.java similarity index 100% rename from engine/src/test/jme3test/light/TestTransparentShadow.java rename to jme3-examples/src/main/java/jme3test/light/TestTransparentShadow.java diff --git a/engine/src/test/jme3test/material/TestBumpModel.java b/jme3-examples/src/main/java/jme3test/material/TestBumpModel.java similarity index 100% rename from engine/src/test/jme3test/material/TestBumpModel.java rename to jme3-examples/src/main/java/jme3test/material/TestBumpModel.java diff --git a/engine/src/test/jme3test/material/TestColoredTexture.java b/jme3-examples/src/main/java/jme3test/material/TestColoredTexture.java similarity index 100% rename from engine/src/test/jme3test/material/TestColoredTexture.java rename to jme3-examples/src/main/java/jme3test/material/TestColoredTexture.java diff --git a/engine/src/test/jme3test/material/TestMaterialCompare.java b/jme3-examples/src/main/java/jme3test/material/TestMaterialCompare.java similarity index 100% rename from engine/src/test/jme3test/material/TestMaterialCompare.java rename to jme3-examples/src/main/java/jme3test/material/TestMaterialCompare.java diff --git a/engine/src/test/jme3test/material/TestNormalMapping.java b/jme3-examples/src/main/java/jme3test/material/TestNormalMapping.java similarity index 100% rename from engine/src/test/jme3test/material/TestNormalMapping.java rename to jme3-examples/src/main/java/jme3test/material/TestNormalMapping.java diff --git a/engine/src/test/jme3test/material/TestParallax.java b/jme3-examples/src/main/java/jme3test/material/TestParallax.java similarity index 100% rename from engine/src/test/jme3test/material/TestParallax.java rename to jme3-examples/src/main/java/jme3test/material/TestParallax.java diff --git a/engine/src/test/jme3test/material/TestShaderNodes.java b/jme3-examples/src/main/java/jme3test/material/TestShaderNodes.java similarity index 100% rename from engine/src/test/jme3test/material/TestShaderNodes.java rename to jme3-examples/src/main/java/jme3test/material/TestShaderNodes.java diff --git a/engine/src/test/jme3test/material/TestSimpleBumps.java b/jme3-examples/src/main/java/jme3test/material/TestSimpleBumps.java similarity index 100% rename from engine/src/test/jme3test/material/TestSimpleBumps.java rename to jme3-examples/src/main/java/jme3test/material/TestSimpleBumps.java diff --git a/engine/src/test/jme3test/material/TestUnshadedModel.java b/jme3-examples/src/main/java/jme3test/material/TestUnshadedModel.java similarity index 100% rename from engine/src/test/jme3test/material/TestUnshadedModel.java rename to jme3-examples/src/main/java/jme3test/material/TestUnshadedModel.java diff --git a/engine/src/test/jme3test/math/TestHalfFloat.java b/jme3-examples/src/main/java/jme3test/math/TestHalfFloat.java similarity index 100% rename from engine/src/test/jme3test/math/TestHalfFloat.java rename to jme3-examples/src/main/java/jme3test/math/TestHalfFloat.java diff --git a/engine/src/test/jme3test/model/TestHoverTank.java b/jme3-examples/src/main/java/jme3test/model/TestHoverTank.java similarity index 100% rename from engine/src/test/jme3test/model/TestHoverTank.java rename to jme3-examples/src/main/java/jme3test/model/TestHoverTank.java diff --git a/engine/src/test/jme3test/model/TestMonkeyHead.java b/jme3-examples/src/main/java/jme3test/model/TestMonkeyHead.java similarity index 100% rename from engine/src/test/jme3test/model/TestMonkeyHead.java rename to jme3-examples/src/main/java/jme3test/model/TestMonkeyHead.java diff --git a/engine/src/test/jme3test/model/TestObjLoading.java b/jme3-examples/src/main/java/jme3test/model/TestObjLoading.java similarity index 100% rename from engine/src/test/jme3test/model/TestObjLoading.java rename to jme3-examples/src/main/java/jme3test/model/TestObjLoading.java diff --git a/engine/src/test/jme3test/model/TestOgreLoading.java b/jme3-examples/src/main/java/jme3test/model/TestOgreLoading.java similarity index 100% rename from engine/src/test/jme3test/model/TestOgreLoading.java rename to jme3-examples/src/main/java/jme3test/model/TestOgreLoading.java diff --git a/engine/src/test/jme3test/model/anim/TestAnimBlendBug.java b/jme3-examples/src/main/java/jme3test/model/anim/TestAnimBlendBug.java similarity index 100% rename from engine/src/test/jme3test/model/anim/TestAnimBlendBug.java rename to jme3-examples/src/main/java/jme3test/model/anim/TestAnimBlendBug.java diff --git a/engine/src/test/jme3test/model/anim/TestAnimationFactory.java b/jme3-examples/src/main/java/jme3test/model/anim/TestAnimationFactory.java similarity index 100% rename from engine/src/test/jme3test/model/anim/TestAnimationFactory.java rename to jme3-examples/src/main/java/jme3test/model/anim/TestAnimationFactory.java diff --git a/engine/src/test/jme3test/model/anim/TestBlenderAnim.java b/jme3-examples/src/main/java/jme3test/model/anim/TestBlenderAnim.java similarity index 100% rename from engine/src/test/jme3test/model/anim/TestBlenderAnim.java rename to jme3-examples/src/main/java/jme3test/model/anim/TestBlenderAnim.java diff --git a/engine/src/test/jme3test/model/anim/TestBlenderObjectAnim.java b/jme3-examples/src/main/java/jme3test/model/anim/TestBlenderObjectAnim.java similarity index 100% rename from engine/src/test/jme3test/model/anim/TestBlenderObjectAnim.java rename to jme3-examples/src/main/java/jme3test/model/anim/TestBlenderObjectAnim.java diff --git a/engine/src/test/jme3test/model/anim/TestCustomAnim.java b/jme3-examples/src/main/java/jme3test/model/anim/TestCustomAnim.java similarity index 100% rename from engine/src/test/jme3test/model/anim/TestCustomAnim.java rename to jme3-examples/src/main/java/jme3test/model/anim/TestCustomAnim.java diff --git a/engine/src/test/jme3test/model/anim/TestHWSkinning.java b/jme3-examples/src/main/java/jme3test/model/anim/TestHWSkinning.java similarity index 100% rename from engine/src/test/jme3test/model/anim/TestHWSkinning.java rename to jme3-examples/src/main/java/jme3test/model/anim/TestHWSkinning.java diff --git a/engine/src/test/jme3test/model/anim/TestOgreAnim.java b/jme3-examples/src/main/java/jme3test/model/anim/TestOgreAnim.java similarity index 100% rename from engine/src/test/jme3test/model/anim/TestOgreAnim.java rename to jme3-examples/src/main/java/jme3test/model/anim/TestOgreAnim.java diff --git a/engine/src/test/jme3test/model/anim/TestOgreComplexAnim.java b/jme3-examples/src/main/java/jme3test/model/anim/TestOgreComplexAnim.java similarity index 100% rename from engine/src/test/jme3test/model/anim/TestOgreComplexAnim.java rename to jme3-examples/src/main/java/jme3test/model/anim/TestOgreComplexAnim.java diff --git a/engine/src/test/jme3test/model/anim/TestSkeletonControlRefresh.java b/jme3-examples/src/main/java/jme3test/model/anim/TestSkeletonControlRefresh.java similarity index 100% rename from engine/src/test/jme3test/model/anim/TestSkeletonControlRefresh.java rename to jme3-examples/src/main/java/jme3test/model/anim/TestSkeletonControlRefresh.java diff --git a/engine/src/test/jme3test/model/anim/TestSpatialAnim.java b/jme3-examples/src/main/java/jme3test/model/anim/TestSpatialAnim.java similarity index 100% rename from engine/src/test/jme3test/model/anim/TestSpatialAnim.java rename to jme3-examples/src/main/java/jme3test/model/anim/TestSpatialAnim.java diff --git a/engine/src/test/jme3test/model/shape/TestBillboard.java b/jme3-examples/src/main/java/jme3test/model/shape/TestBillboard.java similarity index 100% rename from engine/src/test/jme3test/model/shape/TestBillboard.java rename to jme3-examples/src/main/java/jme3test/model/shape/TestBillboard.java diff --git a/engine/src/test/jme3test/model/shape/TestBox.java b/jme3-examples/src/main/java/jme3test/model/shape/TestBox.java similarity index 100% rename from engine/src/test/jme3test/model/shape/TestBox.java rename to jme3-examples/src/main/java/jme3test/model/shape/TestBox.java diff --git a/engine/src/test/jme3test/model/shape/TestCustomMesh.java b/jme3-examples/src/main/java/jme3test/model/shape/TestCustomMesh.java similarity index 100% rename from engine/src/test/jme3test/model/shape/TestCustomMesh.java rename to jme3-examples/src/main/java/jme3test/model/shape/TestCustomMesh.java diff --git a/engine/src/test/jme3test/model/shape/TestCylinder.java b/jme3-examples/src/main/java/jme3test/model/shape/TestCylinder.java similarity index 100% rename from engine/src/test/jme3test/model/shape/TestCylinder.java rename to jme3-examples/src/main/java/jme3test/model/shape/TestCylinder.java diff --git a/engine/src/test/jme3test/model/shape/TestDebugShapes.java b/jme3-examples/src/main/java/jme3test/model/shape/TestDebugShapes.java similarity index 100% rename from engine/src/test/jme3test/model/shape/TestDebugShapes.java rename to jme3-examples/src/main/java/jme3test/model/shape/TestDebugShapes.java diff --git a/engine/src/test/jme3test/model/shape/TestExpandingTorus.java b/jme3-examples/src/main/java/jme3test/model/shape/TestExpandingTorus.java similarity index 100% rename from engine/src/test/jme3test/model/shape/TestExpandingTorus.java rename to jme3-examples/src/main/java/jme3test/model/shape/TestExpandingTorus.java diff --git a/engine/src/test/jme3test/model/shape/TestSphere.java b/jme3-examples/src/main/java/jme3test/model/shape/TestSphere.java similarity index 100% rename from engine/src/test/jme3test/model/shape/TestSphere.java rename to jme3-examples/src/main/java/jme3test/model/shape/TestSphere.java diff --git a/engine/src/test/jme3test/network/MovingAverage.java b/jme3-examples/src/main/java/jme3test/network/MovingAverage.java similarity index 100% rename from engine/src/test/jme3test/network/MovingAverage.java rename to jme3-examples/src/main/java/jme3test/network/MovingAverage.java diff --git a/engine/src/test/jme3test/network/TestChatClient.java b/jme3-examples/src/main/java/jme3test/network/TestChatClient.java similarity index 100% rename from engine/src/test/jme3test/network/TestChatClient.java rename to jme3-examples/src/main/java/jme3test/network/TestChatClient.java diff --git a/engine/src/test/jme3test/network/TestChatServer.java b/jme3-examples/src/main/java/jme3test/network/TestChatServer.java similarity index 100% rename from engine/src/test/jme3test/network/TestChatServer.java rename to jme3-examples/src/main/java/jme3test/network/TestChatServer.java diff --git a/engine/src/test/jme3test/network/TestLatency.java b/jme3-examples/src/main/java/jme3test/network/TestLatency.java similarity index 100% rename from engine/src/test/jme3test/network/TestLatency.java rename to jme3-examples/src/main/java/jme3test/network/TestLatency.java diff --git a/engine/src/test/jme3test/network/TestMessages.java b/jme3-examples/src/main/java/jme3test/network/TestMessages.java similarity index 100% rename from engine/src/test/jme3test/network/TestMessages.java rename to jme3-examples/src/main/java/jme3test/network/TestMessages.java diff --git a/engine/src/test/jme3test/network/TestNetworkStress.java b/jme3-examples/src/main/java/jme3test/network/TestNetworkStress.java similarity index 100% rename from engine/src/test/jme3test/network/TestNetworkStress.java rename to jme3-examples/src/main/java/jme3test/network/TestNetworkStress.java diff --git a/engine/src/test/jme3test/network/TestRemoteCall.java b/jme3-examples/src/main/java/jme3test/network/TestRemoteCall.java similarity index 100% rename from engine/src/test/jme3test/network/TestRemoteCall.java rename to jme3-examples/src/main/java/jme3test/network/TestRemoteCall.java diff --git a/engine/src/test/jme3test/network/TestSerialization.java b/jme3-examples/src/main/java/jme3test/network/TestSerialization.java similarity index 100% rename from engine/src/test/jme3test/network/TestSerialization.java rename to jme3-examples/src/main/java/jme3test/network/TestSerialization.java diff --git a/engine/src/test/jme3test/network/TestThroughput.java b/jme3-examples/src/main/java/jme3test/network/TestThroughput.java similarity index 100% rename from engine/src/test/jme3test/network/TestThroughput.java rename to jme3-examples/src/main/java/jme3test/network/TestThroughput.java diff --git a/engine/src/test/jme3test/niftygui/TestNiftyExamples.java b/jme3-examples/src/main/java/jme3test/niftygui/TestNiftyExamples.java similarity index 100% rename from engine/src/test/jme3test/niftygui/TestNiftyExamples.java rename to jme3-examples/src/main/java/jme3test/niftygui/TestNiftyExamples.java diff --git a/engine/src/test/jme3test/niftygui/TestNiftyGui.java b/jme3-examples/src/main/java/jme3test/niftygui/TestNiftyGui.java similarity index 100% rename from engine/src/test/jme3test/niftygui/TestNiftyGui.java rename to jme3-examples/src/main/java/jme3test/niftygui/TestNiftyGui.java diff --git a/engine/src/test/jme3test/niftygui/TestNiftyToMesh.java b/jme3-examples/src/main/java/jme3test/niftygui/TestNiftyToMesh.java similarity index 100% rename from engine/src/test/jme3test/niftygui/TestNiftyToMesh.java rename to jme3-examples/src/main/java/jme3test/niftygui/TestNiftyToMesh.java diff --git a/engine/src/test/jme3test/post/BloomUI.java b/jme3-examples/src/main/java/jme3test/post/BloomUI.java similarity index 100% rename from engine/src/test/jme3test/post/BloomUI.java rename to jme3-examples/src/main/java/jme3test/post/BloomUI.java diff --git a/engine/src/test/jme3test/post/LightScatteringUI.java b/jme3-examples/src/main/java/jme3test/post/LightScatteringUI.java similarity index 100% rename from engine/src/test/jme3test/post/LightScatteringUI.java rename to jme3-examples/src/main/java/jme3test/post/LightScatteringUI.java diff --git a/engine/src/test/jme3test/post/SSAOUI.java b/jme3-examples/src/main/java/jme3test/post/SSAOUI.java similarity index 100% rename from engine/src/test/jme3test/post/SSAOUI.java rename to jme3-examples/src/main/java/jme3test/post/SSAOUI.java diff --git a/engine/src/test/jme3test/post/TestBloom.java b/jme3-examples/src/main/java/jme3test/post/TestBloom.java similarity index 100% rename from engine/src/test/jme3test/post/TestBloom.java rename to jme3-examples/src/main/java/jme3test/post/TestBloom.java diff --git a/engine/src/test/jme3test/post/TestCartoonEdge.java b/jme3-examples/src/main/java/jme3test/post/TestCartoonEdge.java similarity index 100% rename from engine/src/test/jme3test/post/TestCartoonEdge.java rename to jme3-examples/src/main/java/jme3test/post/TestCartoonEdge.java diff --git a/engine/src/test/jme3test/post/TestCrossHatch.java b/jme3-examples/src/main/java/jme3test/post/TestCrossHatch.java similarity index 100% rename from engine/src/test/jme3test/post/TestCrossHatch.java rename to jme3-examples/src/main/java/jme3test/post/TestCrossHatch.java diff --git a/engine/src/test/jme3test/post/TestDepthOfField.java b/jme3-examples/src/main/java/jme3test/post/TestDepthOfField.java similarity index 100% rename from engine/src/test/jme3test/post/TestDepthOfField.java rename to jme3-examples/src/main/java/jme3test/post/TestDepthOfField.java diff --git a/engine/src/test/jme3test/post/TestFBOPassthrough.java b/jme3-examples/src/main/java/jme3test/post/TestFBOPassthrough.java similarity index 100% rename from engine/src/test/jme3test/post/TestFBOPassthrough.java rename to jme3-examples/src/main/java/jme3test/post/TestFBOPassthrough.java diff --git a/engine/src/test/jme3test/post/TestFog.java b/jme3-examples/src/main/java/jme3test/post/TestFog.java similarity index 100% rename from engine/src/test/jme3test/post/TestFog.java rename to jme3-examples/src/main/java/jme3test/post/TestFog.java diff --git a/engine/src/test/jme3test/post/TestHDR.java b/jme3-examples/src/main/java/jme3test/post/TestHDR.java similarity index 100% rename from engine/src/test/jme3test/post/TestHDR.java rename to jme3-examples/src/main/java/jme3test/post/TestHDR.java diff --git a/engine/src/test/jme3test/post/TestLightScattering.java b/jme3-examples/src/main/java/jme3test/post/TestLightScattering.java similarity index 100% rename from engine/src/test/jme3test/post/TestLightScattering.java rename to jme3-examples/src/main/java/jme3test/post/TestLightScattering.java diff --git a/engine/src/test/jme3test/post/TestMultiRenderTarget.java b/jme3-examples/src/main/java/jme3test/post/TestMultiRenderTarget.java similarity index 100% rename from engine/src/test/jme3test/post/TestMultiRenderTarget.java rename to jme3-examples/src/main/java/jme3test/post/TestMultiRenderTarget.java diff --git a/engine/src/test/jme3test/post/TestMultiViewsFilters.java b/jme3-examples/src/main/java/jme3test/post/TestMultiViewsFilters.java similarity index 100% rename from engine/src/test/jme3test/post/TestMultiViewsFilters.java rename to jme3-examples/src/main/java/jme3test/post/TestMultiViewsFilters.java diff --git a/engine/src/test/jme3test/post/TestMultiplesFilters.java b/jme3-examples/src/main/java/jme3test/post/TestMultiplesFilters.java similarity index 100% rename from engine/src/test/jme3test/post/TestMultiplesFilters.java rename to jme3-examples/src/main/java/jme3test/post/TestMultiplesFilters.java diff --git a/engine/src/test/jme3test/post/TestPostFilters.java b/jme3-examples/src/main/java/jme3test/post/TestPostFilters.java similarity index 100% rename from engine/src/test/jme3test/post/TestPostFilters.java rename to jme3-examples/src/main/java/jme3test/post/TestPostFilters.java diff --git a/engine/src/test/jme3test/post/TestPostFiltersCompositing.java b/jme3-examples/src/main/java/jme3test/post/TestPostFiltersCompositing.java similarity index 100% rename from engine/src/test/jme3test/post/TestPostFiltersCompositing.java rename to jme3-examples/src/main/java/jme3test/post/TestPostFiltersCompositing.java diff --git a/engine/src/test/jme3test/post/TestPosterization.java b/jme3-examples/src/main/java/jme3test/post/TestPosterization.java similarity index 100% rename from engine/src/test/jme3test/post/TestPosterization.java rename to jme3-examples/src/main/java/jme3test/post/TestPosterization.java diff --git a/engine/src/test/jme3test/post/TestRenderToCubemap.java b/jme3-examples/src/main/java/jme3test/post/TestRenderToCubemap.java similarity index 100% rename from engine/src/test/jme3test/post/TestRenderToCubemap.java rename to jme3-examples/src/main/java/jme3test/post/TestRenderToCubemap.java diff --git a/engine/src/test/jme3test/post/TestRenderToMemory.java b/jme3-examples/src/main/java/jme3test/post/TestRenderToMemory.java similarity index 100% rename from engine/src/test/jme3test/post/TestRenderToMemory.java rename to jme3-examples/src/main/java/jme3test/post/TestRenderToMemory.java diff --git a/engine/src/test/jme3test/post/TestRenderToTexture.java b/jme3-examples/src/main/java/jme3test/post/TestRenderToTexture.java similarity index 100% rename from engine/src/test/jme3test/post/TestRenderToTexture.java rename to jme3-examples/src/main/java/jme3test/post/TestRenderToTexture.java diff --git a/engine/src/test/jme3test/post/TestSSAO.java b/jme3-examples/src/main/java/jme3test/post/TestSSAO.java similarity index 100% rename from engine/src/test/jme3test/post/TestSSAO.java rename to jme3-examples/src/main/java/jme3test/post/TestSSAO.java diff --git a/engine/src/test/jme3test/post/TestTransparentCartoonEdge.java b/jme3-examples/src/main/java/jme3test/post/TestTransparentCartoonEdge.java similarity index 100% rename from engine/src/test/jme3test/post/TestTransparentCartoonEdge.java rename to jme3-examples/src/main/java/jme3test/post/TestTransparentCartoonEdge.java diff --git a/engine/src/test/jme3test/post/TestTransparentSSAO.java b/jme3-examples/src/main/java/jme3test/post/TestTransparentSSAO.java similarity index 100% rename from engine/src/test/jme3test/post/TestTransparentSSAO.java rename to jme3-examples/src/main/java/jme3test/post/TestTransparentSSAO.java diff --git a/engine/src/test/jme3test/renderer/TestDepthFuncChange.java b/jme3-examples/src/main/java/jme3test/renderer/TestDepthFuncChange.java similarity index 100% rename from engine/src/test/jme3test/renderer/TestDepthFuncChange.java rename to jme3-examples/src/main/java/jme3test/renderer/TestDepthFuncChange.java diff --git a/engine/src/test/jme3test/renderer/TestMultiViews.java b/jme3-examples/src/main/java/jme3test/renderer/TestMultiViews.java similarity index 100% rename from engine/src/test/jme3test/renderer/TestMultiViews.java rename to jme3-examples/src/main/java/jme3test/renderer/TestMultiViews.java diff --git a/engine/src/test/jme3test/renderer/TestParallelProjection.java b/jme3-examples/src/main/java/jme3test/renderer/TestParallelProjection.java similarity index 100% rename from engine/src/test/jme3test/renderer/TestParallelProjection.java rename to jme3-examples/src/main/java/jme3test/renderer/TestParallelProjection.java diff --git a/engine/src/test/jme3test/scene/TestSceneLoading.java b/jme3-examples/src/main/java/jme3test/scene/TestSceneLoading.java similarity index 100% rename from engine/src/test/jme3test/scene/TestSceneLoading.java rename to jme3-examples/src/main/java/jme3test/scene/TestSceneLoading.java diff --git a/engine/src/test/jme3test/scene/TestUserData.java b/jme3-examples/src/main/java/jme3test/scene/TestUserData.java similarity index 100% rename from engine/src/test/jme3test/scene/TestUserData.java rename to jme3-examples/src/main/java/jme3test/scene/TestUserData.java diff --git a/engine/src/test/jme3test/stress/TestBatchLod.java b/jme3-examples/src/main/java/jme3test/stress/TestBatchLod.java similarity index 100% rename from engine/src/test/jme3test/stress/TestBatchLod.java rename to jme3-examples/src/main/java/jme3test/stress/TestBatchLod.java diff --git a/engine/src/test/jme3test/stress/TestLeakingGL.java b/jme3-examples/src/main/java/jme3test/stress/TestLeakingGL.java similarity index 100% rename from engine/src/test/jme3test/stress/TestLeakingGL.java rename to jme3-examples/src/main/java/jme3test/stress/TestLeakingGL.java diff --git a/engine/src/test/jme3test/stress/TestLodGeneration.java b/jme3-examples/src/main/java/jme3test/stress/TestLodGeneration.java similarity index 100% rename from engine/src/test/jme3test/stress/TestLodGeneration.java rename to jme3-examples/src/main/java/jme3test/stress/TestLodGeneration.java diff --git a/engine/src/test/jme3test/stress/TestLodStress.java b/jme3-examples/src/main/java/jme3test/stress/TestLodStress.java similarity index 100% rename from engine/src/test/jme3test/stress/TestLodStress.java rename to jme3-examples/src/main/java/jme3test/stress/TestLodStress.java diff --git a/engine/src/test/jme3test/terrain/TerrainFractalGridTest.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainFractalGridTest.java similarity index 100% rename from engine/src/test/jme3test/terrain/TerrainFractalGridTest.java rename to jme3-examples/src/main/java/jme3test/terrain/TerrainFractalGridTest.java diff --git a/engine/src/test/jme3test/terrain/TerrainGridAlphaMapTest.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainGridAlphaMapTest.java similarity index 100% rename from engine/src/test/jme3test/terrain/TerrainGridAlphaMapTest.java rename to jme3-examples/src/main/java/jme3test/terrain/TerrainGridAlphaMapTest.java diff --git a/engine/src/test/jme3test/terrain/TerrainGridSerializationTest.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainGridSerializationTest.java similarity index 100% rename from engine/src/test/jme3test/terrain/TerrainGridSerializationTest.java rename to jme3-examples/src/main/java/jme3test/terrain/TerrainGridSerializationTest.java diff --git a/engine/src/test/jme3test/terrain/TerrainGridTest.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainGridTest.java similarity index 100% rename from engine/src/test/jme3test/terrain/TerrainGridTest.java rename to jme3-examples/src/main/java/jme3test/terrain/TerrainGridTest.java diff --git a/engine/src/test/jme3test/terrain/TerrainGridTileLoaderTest.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainGridTileLoaderTest.java similarity index 100% rename from engine/src/test/jme3test/terrain/TerrainGridTileLoaderTest.java rename to jme3-examples/src/main/java/jme3test/terrain/TerrainGridTileLoaderTest.java diff --git a/engine/src/test/jme3test/terrain/TerrainTest.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainTest.java similarity index 100% rename from engine/src/test/jme3test/terrain/TerrainTest.java rename to jme3-examples/src/main/java/jme3test/terrain/TerrainTest.java diff --git a/engine/src/test/jme3test/terrain/TerrainTestAdvanced.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainTestAdvanced.java similarity index 76% rename from engine/src/test/jme3test/terrain/TerrainTestAdvanced.java rename to jme3-examples/src/main/java/jme3test/terrain/TerrainTestAdvanced.java index afd83ac31..21f8435de 100644 --- a/engine/src/test/jme3test/terrain/TerrainTestAdvanced.java +++ b/jme3-examples/src/main/java/jme3test/terrain/TerrainTestAdvanced.java @@ -32,7 +32,6 @@ package jme3test.terrain; import com.jme3.app.SimpleApplication; -import com.jme3.asset.TextureKey; import com.jme3.bounding.BoundingBox; import com.jme3.font.BitmapText; import com.jme3.input.KeyInput; @@ -73,14 +72,9 @@ public class TerrainTestAdvanced extends SimpleApplication { protected BitmapText hintText; PointLight pl; Geometry lightMdl; + private float grassScale = 64; private float dirtScale = 16; - private float darkRockScale = 32; - private float pinkRockScale = 32; - private float riverRockScale = 80; - private float grassScale = 32; - private float brickScale = 128; - private float roadScale = 200; - + private float rockScale = 128; public static void main(String[] args) { TerrainTestAdvanced app = new TerrainTestAdvanced(); @@ -111,8 +105,7 @@ public class TerrainTestAdvanced extends SimpleApplication { // this material also supports 'AlphaMap_2', so you can get up to 12 diffuse textures // HEIGHTMAP image (for the terrain heightmap) - TextureKey hmKey = new TextureKey("Textures/Terrain/splat/mountains512.png", false); - Texture heightMapImage = assetManager.loadTexture(hmKey); + Texture heightMapImage = assetManager.loadTexture("Textures/Terrain/splat/mountains512.png"); // DIRT texture, Diffuse textures 0 to 3 use the first AlphaMap Texture dirt = assetManager.loadTexture("Textures/Terrain/splat/dirt.jpg"); @@ -120,62 +113,43 @@ public class TerrainTestAdvanced extends SimpleApplication { matTerrain.setTexture("DiffuseMap", dirt); matTerrain.setFloat("DiffuseMap_0_scale", dirtScale); - // DARK ROCK texture - Texture darkRock = assetManager.loadTexture("Textures/Terrain/Rock2/rock.jpg"); - darkRock.setWrap(WrapMode.Repeat); - matTerrain.setTexture("DiffuseMap_1", darkRock); - matTerrain.setFloat("DiffuseMap_1_scale", darkRockScale); - - // PINK ROCK texture - Texture pinkRock = assetManager.loadTexture("Textures/Terrain/Rock/Rock.PNG"); - pinkRock.setWrap(WrapMode.Repeat); - matTerrain.setTexture("DiffuseMap_2", pinkRock); - matTerrain.setFloat("DiffuseMap_2_scale", pinkRockScale); - - // RIVER ROCK texture, this texture will use the next alphaMap: AlphaMap_1 - Texture riverRock = assetManager.loadTexture("Textures/Terrain/Pond/Pond.jpg"); - riverRock.setWrap(WrapMode.Repeat); - matTerrain.setTexture("DiffuseMap_3", riverRock); - matTerrain.setFloat("DiffuseMap_3_scale", riverRockScale); - // GRASS texture Texture grass = assetManager.loadTexture("Textures/Terrain/splat/grass.jpg"); grass.setWrap(WrapMode.Repeat); - matTerrain.setTexture("DiffuseMap_4", grass); - matTerrain.setFloat("DiffuseMap_4_scale", grassScale); + matTerrain.setTexture("DiffuseMap_1", grass); + matTerrain.setFloat("DiffuseMap_1_scale", grassScale); + + // ROCK texture + Texture rock = assetManager.loadTexture("Textures/Terrain/splat/road.jpg"); + rock.setWrap(WrapMode.Repeat); + matTerrain.setTexture("DiffuseMap_2", rock); + matTerrain.setFloat("DiffuseMap_2_scale", rockScale); // BRICK texture Texture brick = assetManager.loadTexture("Textures/Terrain/BrickWall/BrickWall.jpg"); brick.setWrap(WrapMode.Repeat); - matTerrain.setTexture("DiffuseMap_5", brick); - matTerrain.setFloat("DiffuseMap_5_scale", brickScale); - - // ROAD texture - Texture road = assetManager.loadTexture("Textures/Terrain/splat/road.jpg"); - road.setWrap(WrapMode.Repeat); - matTerrain.setTexture("DiffuseMap_6", road); - matTerrain.setFloat("DiffuseMap_6_scale", roadScale); + matTerrain.setTexture("DiffuseMap_3", brick); + matTerrain.setFloat("DiffuseMap_3_scale", rockScale); + // RIVER ROCK texture, this texture will use the next alphaMap: AlphaMap_1 + Texture riverRock = assetManager.loadTexture("Textures/Terrain/Pond/Pond.jpg"); + riverRock.setWrap(WrapMode.Repeat); + matTerrain.setTexture("DiffuseMap_4", riverRock); + matTerrain.setFloat("DiffuseMap_4_scale", rockScale); - // diffuse textures 0 to 3 use AlphaMap // diffuse textures 4 to 7 use AlphaMap_1 // diffuse textures 8 to 11 use AlphaMap_2 - - // NORMAL MAPS - Texture normalMapDirt = assetManager.loadTexture("Textures/Terrain/splat/dirt_normal.png"); - normalMapDirt.setWrap(WrapMode.Repeat); - Texture normalMapPinkRock = assetManager.loadTexture("Textures/Terrain/Rock/Rock_normal.png"); - normalMapPinkRock.setWrap(WrapMode.Repeat); - Texture normalMapGrass = assetManager.loadTexture("Textures/Terrain/splat/grass_normal.jpg"); - normalMapGrass.setWrap(WrapMode.Repeat); - Texture normalMapRoad = assetManager.loadTexture("Textures/Terrain/splat/road_normal.png"); - normalMapRoad.setWrap(WrapMode.Repeat); - matTerrain.setTexture("NormalMap", normalMapDirt); - matTerrain.setTexture("NormalMap_1", normalMapPinkRock); - matTerrain.setTexture("NormalMap_2", normalMapPinkRock); - matTerrain.setTexture("NormalMap_4", normalMapGrass); - matTerrain.setTexture("NormalMap_6", normalMapRoad); + Texture normalMap0 = assetManager.loadTexture("Textures/Terrain/splat/grass_normal.jpg"); + normalMap0.setWrap(WrapMode.Repeat); + Texture normalMap1 = assetManager.loadTexture("Textures/Terrain/splat/dirt_normal.png"); + normalMap1.setWrap(WrapMode.Repeat); + Texture normalMap2 = assetManager.loadTexture("Textures/Terrain/splat/road_normal.png"); + normalMap2.setWrap(WrapMode.Repeat); + //matTerrain.setTexture("NormalMap", normalMap0); + matTerrain.setTexture("NormalMap_1", normalMap2); + matTerrain.setTexture("NormalMap_2", normalMap2); + matTerrain.setTexture("NormalMap_4", normalMap2); // WIREFRAME material (used to debug the terrain, only useful for this test case) @@ -188,7 +162,7 @@ public class TerrainTestAdvanced extends SimpleApplication { // CREATE HEIGHTMAP AbstractHeightMap heightmap = null; try { - heightmap = new ImageBasedHeightMap(heightMapImage.getImage(), 0.3f); + heightmap = new ImageBasedHeightMap(heightMapImage.getImage(), 0.5f); heightmap.load(); heightmap.smooth(0.9f, 1); @@ -203,7 +177,7 @@ public class TerrainTestAdvanced extends SimpleApplication { /** * Optimal terrain patch size is 65 (64x64). * The total size is up to you. At 1025 it ran fine for me (200+FPS), however at - * size=2049 it got really slow. But that is a jump from 2 million to 8 million triangles... + * size=2049, it got really slow. But that is a jump from 2 million to 8 million triangles... */ terrain = new TerrainQuad("terrain", 65, 513, heightmap.getHeightMap());//, new LodPerspectiveCalculatorFactory(getCamera(), 4)); // add this in to see it use entropy for LOD calculations TerrainLodControl control = new TerrainLodControl(terrain, getCamera()); @@ -265,27 +239,19 @@ public class TerrainTestAdvanced extends SimpleApplication { matTerrain.setBoolean("useTriPlanarMapping", true); // planar textures don't use the mesh's texture coordinates but real world coordinates, // so we need to convert these texture coordinate scales into real world scales so it looks - // the same when we switch to/from tr-planar mode (1024f is the alphamap size) - matTerrain.setFloat("DiffuseMap_0_scale", 1f / (float) (1024f / dirtScale)); - matTerrain.setFloat("DiffuseMap_1_scale", 1f / (float) (1024f / darkRockScale)); - matTerrain.setFloat("DiffuseMap_2_scale", 1f / (float) (1024f / pinkRockScale)); - matTerrain.setFloat("DiffuseMap_3_scale", 1f / (float) (1024f / riverRockScale)); - matTerrain.setFloat("DiffuseMap_4_scale", 1f / (float) (1024f / grassScale)); - matTerrain.setFloat("DiffuseMap_5_scale", 1f / (float) (1024f / brickScale)); - matTerrain.setFloat("DiffuseMap_6_scale", 1f / (float) (1024f / roadScale)); + // the same when we switch to/from tr-planar mode + matTerrain.setFloat("DiffuseMap_0_scale", 1f / (float) (512f / grassScale)); + matTerrain.setFloat("DiffuseMap_1_scale", 1f / (float) (512f / dirtScale)); + matTerrain.setFloat("DiffuseMap_2_scale", 1f / (float) (512f / rockScale)); + matTerrain.setFloat("DiffuseMap_3_scale", 1f / (float) (512f / rockScale)); + matTerrain.setFloat("DiffuseMap_4_scale", 1f / (float) (512f / rockScale)); } else { matTerrain.setBoolean("useTriPlanarMapping", false); - - matTerrain.setFloat("DiffuseMap_0_scale", dirtScale); - matTerrain.setFloat("DiffuseMap_1_scale", darkRockScale); - matTerrain.setFloat("DiffuseMap_2_scale", pinkRockScale); - matTerrain.setFloat("DiffuseMap_3_scale", riverRockScale); - matTerrain.setFloat("DiffuseMap_4_scale", grassScale); - matTerrain.setFloat("DiffuseMap_5_scale", brickScale); - matTerrain.setFloat("DiffuseMap_6_scale", roadScale); - - - + matTerrain.setFloat("DiffuseMap_0_scale", grassScale); + matTerrain.setFloat("DiffuseMap_1_scale", dirtScale); + matTerrain.setFloat("DiffuseMap_2_scale", rockScale); + matTerrain.setFloat("DiffuseMap_3_scale", rockScale); + matTerrain.setFloat("DiffuseMap_4_scale", rockScale); } } if (name.equals("DetachControl") && !pressed) { TerrainLodControl control = terrain.getControl(TerrainLodControl.class); diff --git a/engine/src/test/jme3test/terrain/TerrainTestAndroid.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainTestAndroid.java similarity index 100% rename from engine/src/test/jme3test/terrain/TerrainTestAndroid.java rename to jme3-examples/src/main/java/jme3test/terrain/TerrainTestAndroid.java diff --git a/engine/src/test/jme3test/terrain/TerrainTestCollision.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainTestCollision.java similarity index 100% rename from engine/src/test/jme3test/terrain/TerrainTestCollision.java rename to jme3-examples/src/main/java/jme3test/terrain/TerrainTestCollision.java diff --git a/engine/src/test/jme3test/terrain/TerrainTestModifyHeight.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainTestModifyHeight.java similarity index 100% rename from engine/src/test/jme3test/terrain/TerrainTestModifyHeight.java rename to jme3-examples/src/main/java/jme3test/terrain/TerrainTestModifyHeight.java diff --git a/engine/src/test/jme3test/terrain/TerrainTestReadWrite.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainTestReadWrite.java similarity index 100% rename from engine/src/test/jme3test/terrain/TerrainTestReadWrite.java rename to jme3-examples/src/main/java/jme3test/terrain/TerrainTestReadWrite.java diff --git a/engine/src/test/jme3test/terrain/TerrainTestTile.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainTestTile.java similarity index 100% rename from engine/src/test/jme3test/terrain/TerrainTestTile.java rename to jme3-examples/src/main/java/jme3test/terrain/TerrainTestTile.java diff --git a/engine/src/test/jme3test/texture/TestImageRaster.java b/jme3-examples/src/main/java/jme3test/texture/TestImageRaster.java similarity index 100% rename from engine/src/test/jme3test/texture/TestImageRaster.java rename to jme3-examples/src/main/java/jme3test/texture/TestImageRaster.java diff --git a/engine/src/test/jme3test/texture/TestSkyLoading.java b/jme3-examples/src/main/java/jme3test/texture/TestSkyLoading.java similarity index 100% rename from engine/src/test/jme3test/texture/TestSkyLoading.java rename to jme3-examples/src/main/java/jme3test/texture/TestSkyLoading.java diff --git a/engine/src/test/jme3test/texture/TestTexture3D.java b/jme3-examples/src/main/java/jme3test/texture/TestTexture3D.java similarity index 100% rename from engine/src/test/jme3test/texture/TestTexture3D.java rename to jme3-examples/src/main/java/jme3test/texture/TestTexture3D.java diff --git a/engine/src/test/jme3test/texture/TestTexture3DLoading.java b/jme3-examples/src/main/java/jme3test/texture/TestTexture3DLoading.java similarity index 100% rename from engine/src/test/jme3test/texture/TestTexture3DLoading.java rename to jme3-examples/src/main/java/jme3test/texture/TestTexture3DLoading.java diff --git a/engine/src/test/jme3test/texture/TestTextureArray.java b/jme3-examples/src/main/java/jme3test/texture/TestTextureArray.java similarity index 100% rename from engine/src/test/jme3test/texture/TestTextureArray.java rename to jme3-examples/src/main/java/jme3test/texture/TestTextureArray.java diff --git a/engine/src/test/jme3test/tools/TestSaveGame.java b/jme3-examples/src/main/java/jme3test/tools/TestSaveGame.java similarity index 100% rename from engine/src/test/jme3test/tools/TestSaveGame.java rename to jme3-examples/src/main/java/jme3test/tools/TestSaveGame.java diff --git a/engine/src/test/jme3test/tools/TestTextureAtlas.java b/jme3-examples/src/main/java/jme3test/tools/TestTextureAtlas.java similarity index 100% rename from engine/src/test/jme3test/tools/TestTextureAtlas.java rename to jme3-examples/src/main/java/jme3test/tools/TestTextureAtlas.java diff --git a/engine/src/test/jme3test/water/TestMultiPostWater.java b/jme3-examples/src/main/java/jme3test/water/TestMultiPostWater.java similarity index 100% rename from engine/src/test/jme3test/water/TestMultiPostWater.java rename to jme3-examples/src/main/java/jme3test/water/TestMultiPostWater.java diff --git a/engine/src/test/jme3test/water/TestPostWater.java b/jme3-examples/src/main/java/jme3test/water/TestPostWater.java similarity index 100% rename from engine/src/test/jme3test/water/TestPostWater.java rename to jme3-examples/src/main/java/jme3test/water/TestPostWater.java diff --git a/engine/src/test/jme3test/water/TestPostWaterLake.java b/jme3-examples/src/main/java/jme3test/water/TestPostWaterLake.java similarity index 100% rename from engine/src/test/jme3test/water/TestPostWaterLake.java rename to jme3-examples/src/main/java/jme3test/water/TestPostWaterLake.java diff --git a/engine/src/test/jme3test/water/TestSceneWater.java b/jme3-examples/src/main/java/jme3test/water/TestSceneWater.java similarity index 100% rename from engine/src/test/jme3test/water/TestSceneWater.java rename to jme3-examples/src/main/java/jme3test/water/TestSceneWater.java diff --git a/engine/src/test/jme3test/water/TestSimpleWater.java b/jme3-examples/src/main/java/jme3test/water/TestSimpleWater.java similarity index 100% rename from engine/src/test/jme3test/water/TestSimpleWater.java rename to jme3-examples/src/main/java/jme3test/water/TestSimpleWater.java diff --git a/engine/src/test/jme3test/water/WaterUI.java b/jme3-examples/src/main/java/jme3test/water/WaterUI.java similarity index 100% rename from engine/src/test/jme3test/water/WaterUI.java rename to jme3-examples/src/main/java/jme3test/water/WaterUI.java diff --git a/engine/src/test/jme3test/texture/UnshadedArray.frag b/jme3-examples/src/main/resources/jme3test/texture/UnshadedArray.frag similarity index 100% rename from engine/src/test/jme3test/texture/UnshadedArray.frag rename to jme3-examples/src/main/resources/jme3test/texture/UnshadedArray.frag diff --git a/engine/src/test/jme3test/texture/UnshadedArray.j3md b/jme3-examples/src/main/resources/jme3test/texture/UnshadedArray.j3md similarity index 100% rename from engine/src/test/jme3test/texture/UnshadedArray.j3md rename to jme3-examples/src/main/resources/jme3test/texture/UnshadedArray.j3md diff --git a/engine/src/test/jme3test/texture/UnshadedArray.vert b/jme3-examples/src/main/resources/jme3test/texture/UnshadedArray.vert similarity index 100% rename from engine/src/test/jme3test/texture/UnshadedArray.vert rename to jme3-examples/src/main/resources/jme3test/texture/UnshadedArray.vert diff --git a/engine/src/test/jme3test/texture/tex3D.frag b/jme3-examples/src/main/resources/jme3test/texture/tex3D.frag similarity index 100% rename from engine/src/test/jme3test/texture/tex3D.frag rename to jme3-examples/src/main/resources/jme3test/texture/tex3D.frag diff --git a/engine/src/test/jme3test/texture/tex3D.j3md b/jme3-examples/src/main/resources/jme3test/texture/tex3D.j3md similarity index 100% rename from engine/src/test/jme3test/texture/tex3D.j3md rename to jme3-examples/src/main/resources/jme3test/texture/tex3D.j3md diff --git a/engine/src/test/jme3test/texture/tex3D.vert b/jme3-examples/src/main/resources/jme3test/texture/tex3D.vert similarity index 100% rename from engine/src/test/jme3test/texture/tex3D.vert rename to jme3-examples/src/main/resources/jme3test/texture/tex3D.vert diff --git a/engine/src/test/jme3test/texture/tex3DThumb.frag b/jme3-examples/src/main/resources/jme3test/texture/tex3DThumb.frag similarity index 100% rename from engine/src/test/jme3test/texture/tex3DThumb.frag rename to jme3-examples/src/main/resources/jme3test/texture/tex3DThumb.frag diff --git a/engine/src/test/jme3test/texture/tex3DThumb.j3md b/jme3-examples/src/main/resources/jme3test/texture/tex3DThumb.j3md similarity index 100% rename from engine/src/test/jme3test/texture/tex3DThumb.j3md rename to jme3-examples/src/main/resources/jme3test/texture/tex3DThumb.j3md diff --git a/engine/src/test/jme3test/texture/tex3DThumb.vert b/jme3-examples/src/main/resources/jme3test/texture/tex3DThumb.vert similarity index 100% rename from engine/src/test/jme3test/texture/tex3DThumb.vert rename to jme3-examples/src/main/resources/jme3test/texture/tex3DThumb.vert diff --git a/jme3-jbullet/build.gradle b/jme3-jbullet/build.gradle new file mode 100644 index 000000000..bcf1660bc --- /dev/null +++ b/jme3-jbullet/build.gradle @@ -0,0 +1,19 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +sourceSets { + main { + java { + srcDir 'src/main/java' + srcDir '../jme3-bullet/src/common/java' + } + } +} + +dependencies { + compile ('java3d:vecmath:1.3.1') + compile files('../lib/jbullet.jar', '../lib/stack-alloc.jar') + compile project(':jme3-core') + compile project(':jme3-terrain') +} diff --git a/engine/src/jbullet/com/jme3/bullet/PhysicsSpace.java b/jme3-jbullet/src/main/java/com/jme3/bullet/PhysicsSpace.java similarity index 99% rename from engine/src/jbullet/com/jme3/bullet/PhysicsSpace.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/PhysicsSpace.java index 484f52133..e96002669 100644 --- a/engine/src/jbullet/com/jme3/bullet/PhysicsSpace.java +++ b/jme3-jbullet/src/main/java/com/jme3/bullet/PhysicsSpace.java @@ -242,7 +242,6 @@ public class PhysicsSpace { public void internalTick(DynamicsWorld dw, float f) { //execute task list AppTask task = pQueue.poll(); - task = pQueue.poll(); while (task != null) { while (task.isCancelled()) { task = pQueue.poll(); diff --git a/engine/src/jbullet/com/jme3/bullet/collision/PhysicsCollisionEvent.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionEvent.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/PhysicsCollisionEvent.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionEvent.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/PhysicsCollisionEventFactory.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionEventFactory.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/PhysicsCollisionEventFactory.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionEventFactory.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/PhysicsCollisionObject.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionObject.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/PhysicsCollisionObject.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionObject.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/PhysicsRayTestResult.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsRayTestResult.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/PhysicsRayTestResult.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsRayTestResult.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/PhysicsSweepTestResult.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsSweepTestResult.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/PhysicsSweepTestResult.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsSweepTestResult.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/BoxCollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/BoxCollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/BoxCollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/BoxCollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/CapsuleCollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/CapsuleCollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/CapsuleCollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/CapsuleCollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/CollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/CollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/CollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/CollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/CompoundCollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/CompoundCollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/CompoundCollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/CompoundCollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/ConeCollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/ConeCollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/ConeCollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/ConeCollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/CylinderCollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/CylinderCollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/CylinderCollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/CylinderCollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/GImpactCollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/GImpactCollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/GImpactCollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/GImpactCollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/HeightfieldCollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/HeightfieldCollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/HeightfieldCollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/HeightfieldCollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/HullCollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/HullCollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/HullCollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/HullCollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/MeshCollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/MeshCollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/MeshCollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/MeshCollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/PlaneCollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/PlaneCollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/PlaneCollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/PlaneCollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/SimplexCollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/SimplexCollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/SimplexCollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/SimplexCollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/collision/shapes/SphereCollisionShape.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/SphereCollisionShape.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/collision/shapes/SphereCollisionShape.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/collision/shapes/SphereCollisionShape.java diff --git a/engine/src/jbullet/com/jme3/bullet/joints/ConeJoint.java b/jme3-jbullet/src/main/java/com/jme3/bullet/joints/ConeJoint.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/joints/ConeJoint.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/joints/ConeJoint.java diff --git a/engine/src/jbullet/com/jme3/bullet/joints/HingeJoint.java b/jme3-jbullet/src/main/java/com/jme3/bullet/joints/HingeJoint.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/joints/HingeJoint.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/joints/HingeJoint.java diff --git a/engine/src/jbullet/com/jme3/bullet/joints/PhysicsJoint.java b/jme3-jbullet/src/main/java/com/jme3/bullet/joints/PhysicsJoint.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/joints/PhysicsJoint.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/joints/PhysicsJoint.java diff --git a/engine/src/jbullet/com/jme3/bullet/joints/Point2PointJoint.java b/jme3-jbullet/src/main/java/com/jme3/bullet/joints/Point2PointJoint.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/joints/Point2PointJoint.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/joints/Point2PointJoint.java diff --git a/engine/src/jbullet/com/jme3/bullet/joints/SixDofJoint.java b/jme3-jbullet/src/main/java/com/jme3/bullet/joints/SixDofJoint.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/joints/SixDofJoint.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/joints/SixDofJoint.java diff --git a/engine/src/jbullet/com/jme3/bullet/joints/SliderJoint.java b/jme3-jbullet/src/main/java/com/jme3/bullet/joints/SliderJoint.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/joints/SliderJoint.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/joints/SliderJoint.java diff --git a/engine/src/jbullet/com/jme3/bullet/joints/motors/RotationalLimitMotor.java b/jme3-jbullet/src/main/java/com/jme3/bullet/joints/motors/RotationalLimitMotor.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/joints/motors/RotationalLimitMotor.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/joints/motors/RotationalLimitMotor.java diff --git a/engine/src/jbullet/com/jme3/bullet/joints/motors/TranslationalLimitMotor.java b/jme3-jbullet/src/main/java/com/jme3/bullet/joints/motors/TranslationalLimitMotor.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/joints/motors/TranslationalLimitMotor.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/joints/motors/TranslationalLimitMotor.java diff --git a/engine/src/jbullet/com/jme3/bullet/objects/PhysicsCharacter.java b/jme3-jbullet/src/main/java/com/jme3/bullet/objects/PhysicsCharacter.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/objects/PhysicsCharacter.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/objects/PhysicsCharacter.java diff --git a/engine/src/jbullet/com/jme3/bullet/objects/PhysicsGhostObject.java b/jme3-jbullet/src/main/java/com/jme3/bullet/objects/PhysicsGhostObject.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/objects/PhysicsGhostObject.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/objects/PhysicsGhostObject.java diff --git a/engine/src/jbullet/com/jme3/bullet/objects/PhysicsRigidBody.java b/jme3-jbullet/src/main/java/com/jme3/bullet/objects/PhysicsRigidBody.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/objects/PhysicsRigidBody.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/objects/PhysicsRigidBody.java diff --git a/engine/src/jbullet/com/jme3/bullet/objects/PhysicsVehicle.java b/jme3-jbullet/src/main/java/com/jme3/bullet/objects/PhysicsVehicle.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/objects/PhysicsVehicle.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/objects/PhysicsVehicle.java diff --git a/engine/src/jbullet/com/jme3/bullet/objects/VehicleWheel.java b/jme3-jbullet/src/main/java/com/jme3/bullet/objects/VehicleWheel.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/objects/VehicleWheel.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/objects/VehicleWheel.java diff --git a/engine/src/jbullet/com/jme3/bullet/objects/infos/RigidBodyMotionState.java b/jme3-jbullet/src/main/java/com/jme3/bullet/objects/infos/RigidBodyMotionState.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/objects/infos/RigidBodyMotionState.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/objects/infos/RigidBodyMotionState.java diff --git a/engine/src/jbullet/com/jme3/bullet/util/Converter.java b/jme3-jbullet/src/main/java/com/jme3/bullet/util/Converter.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/util/Converter.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/util/Converter.java diff --git a/engine/src/jbullet/com/jme3/bullet/util/DebugShapeFactory.java b/jme3-jbullet/src/main/java/com/jme3/bullet/util/DebugShapeFactory.java similarity index 100% rename from engine/src/jbullet/com/jme3/bullet/util/DebugShapeFactory.java rename to jme3-jbullet/src/main/java/com/jme3/bullet/util/DebugShapeFactory.java diff --git a/jme3-jogg/build.gradle b/jme3-jogg/build.gradle new file mode 100644 index 000000000..ca62e666b --- /dev/null +++ b/jme3-jogg/build.gradle @@ -0,0 +1,8 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +dependencies { + compile project(':jme3-core') + compile files('../lib/j-ogg-oggd.jar', '../lib/j-ogg-vorbisd.jar') +} diff --git a/engine/src/jogg/com/jme3/audio/plugins/CachedOggStream.java b/jme3-jogg/src/main/java/com/jme3/audio/plugins/CachedOggStream.java similarity index 100% rename from engine/src/jogg/com/jme3/audio/plugins/CachedOggStream.java rename to jme3-jogg/src/main/java/com/jme3/audio/plugins/CachedOggStream.java diff --git a/engine/src/jogg/com/jme3/audio/plugins/OGGLoader.java b/jme3-jogg/src/main/java/com/jme3/audio/plugins/OGGLoader.java similarity index 100% rename from engine/src/jogg/com/jme3/audio/plugins/OGGLoader.java rename to jme3-jogg/src/main/java/com/jme3/audio/plugins/OGGLoader.java diff --git a/engine/src/jogg/com/jme3/audio/plugins/UncachedOggStream.java b/jme3-jogg/src/main/java/com/jme3/audio/plugins/UncachedOggStream.java similarity index 100% rename from engine/src/jogg/com/jme3/audio/plugins/UncachedOggStream.java rename to jme3-jogg/src/main/java/com/jme3/audio/plugins/UncachedOggStream.java diff --git a/jme3-jogl/build.gradle b/jme3-jogl/build.gradle new file mode 100644 index 000000000..eb59191e7 --- /dev/null +++ b/jme3-jogl/build.gradle @@ -0,0 +1,11 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +dependencies { + compile project(':jme3-core') + compile project(':jme3-desktop') + compile 'org.jogamp.gluegen:gluegen-rt-main:2.1.3' + compile 'org.jogamp.jogl:jogl-all-main:2.1.3' + compile 'org.jogamp.joal:joal-main:2.1.3' +} diff --git a/engine/src/jogl/com/jme3/audio/joal/JoalAudioRenderer.java b/jme3-jogl/src/main/java/com/jme3/audio/joal/JoalAudioRenderer.java similarity index 100% rename from engine/src/jogl/com/jme3/audio/joal/JoalAudioRenderer.java rename to jme3-jogl/src/main/java/com/jme3/audio/joal/JoalAudioRenderer.java diff --git a/engine/src/jogl/com/jme3/input/jogl/NewtKeyInput.java b/jme3-jogl/src/main/java/com/jme3/input/jogl/NewtKeyInput.java similarity index 100% rename from engine/src/jogl/com/jme3/input/jogl/NewtKeyInput.java rename to jme3-jogl/src/main/java/com/jme3/input/jogl/NewtKeyInput.java diff --git a/engine/src/jogl/com/jme3/input/jogl/NewtMouseInput.java b/jme3-jogl/src/main/java/com/jme3/input/jogl/NewtMouseInput.java similarity index 90% rename from engine/src/jogl/com/jme3/input/jogl/NewtMouseInput.java rename to jme3-jogl/src/main/java/com/jme3/input/jogl/NewtMouseInput.java index d50017ccc..65c749f10 100644 --- a/engine/src/jogl/com/jme3/input/jogl/NewtMouseInput.java +++ b/jme3-jogl/src/main/java/com/jme3/input/jogl/NewtMouseInput.java @@ -37,18 +37,11 @@ import com.jme3.input.MouseInput; import com.jme3.input.RawInputListener; import com.jme3.input.event.MouseButtonEvent; import com.jme3.input.event.MouseMotionEvent; -import com.jogamp.common.nio.Buffers; -import com.jogamp.newt.Display.PointerIcon; import com.jogamp.newt.event.MouseEvent; import com.jogamp.newt.event.MouseListener; import com.jogamp.newt.opengl.GLWindow; -import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.logging.Logger; -import javax.media.nativewindow.util.Dimension; -import javax.media.nativewindow.util.DimensionImmutable; -import javax.media.nativewindow.util.PixelFormat; -import javax.media.nativewindow.util.PixelRectangle; import javax.media.nativewindow.util.Point; public class NewtMouseInput implements MouseInput, MouseListener { @@ -182,9 +175,9 @@ public class NewtMouseInput implements MouseInput, MouseListener { // listener.onMouseButtonEvent(evt); } - public void mousePressed(MouseEvent newtEvt) { - MouseButtonEvent evt = new MouseButtonEvent(getJMEButtonIndex(newtEvt), true, newtEvt.getX(), newtEvt.getY()); - evt.setTime(newtEvt.getWhen()); + public void mousePressed(MouseEvent awtEvt) { + MouseButtonEvent evt = new MouseButtonEvent(getJMEButtonIndex(awtEvt), true, awtEvt.getX(), awtEvt.getY()); + evt.setTime(awtEvt.getWhen()); synchronized (eventQueue) { eventQueue.add(evt); } @@ -288,11 +281,5 @@ public class NewtMouseInput implements MouseInput, MouseListener { } public void setNativeCursor(JmeCursor cursor) { - final ByteBuffer pixels = Buffers.copyIntBufferAsByteBuffer(cursor.getImagesData()); - final DimensionImmutable size = new Dimension(cursor.getWidth(), cursor.getHeight()); - final PixelFormat pixFormat = PixelFormat.RGBA8888; - final PixelRectangle.GenericPixelRect rec = new PixelRectangle.GenericPixelRect(pixFormat, size, 0, true, pixels); - final PointerIcon joglCursor = component.getScreen().getDisplay().createPointerIcon(rec, cursor.getXHotSpot(), cursor.getYHotSpot()); - component.setPointerIcon(joglCursor); } } \ No newline at end of file diff --git a/engine/src/jogl/com/jme3/renderer/jogl/JoglGL1Renderer.java b/jme3-jogl/src/main/java/com/jme3/renderer/jogl/JoglGL1Renderer.java similarity index 100% rename from engine/src/jogl/com/jme3/renderer/jogl/JoglGL1Renderer.java rename to jme3-jogl/src/main/java/com/jme3/renderer/jogl/JoglGL1Renderer.java diff --git a/engine/src/jogl/com/jme3/renderer/jogl/JoglRenderer.java b/jme3-jogl/src/main/java/com/jme3/renderer/jogl/JoglRenderer.java similarity index 100% rename from engine/src/jogl/com/jme3/renderer/jogl/JoglRenderer.java rename to jme3-jogl/src/main/java/com/jme3/renderer/jogl/JoglRenderer.java diff --git a/engine/src/jogl/com/jme3/renderer/jogl/TextureUtil.java b/jme3-jogl/src/main/java/com/jme3/renderer/jogl/TextureUtil.java similarity index 100% rename from engine/src/jogl/com/jme3/renderer/jogl/TextureUtil.java rename to jme3-jogl/src/main/java/com/jme3/renderer/jogl/TextureUtil.java diff --git a/engine/src/jogl/com/jme3/system/jogl/JoglAbstractDisplay.java b/jme3-jogl/src/main/java/com/jme3/system/jogl/JoglAbstractDisplay.java similarity index 100% rename from engine/src/jogl/com/jme3/system/jogl/JoglAbstractDisplay.java rename to jme3-jogl/src/main/java/com/jme3/system/jogl/JoglAbstractDisplay.java diff --git a/engine/src/jogl/com/jme3/system/jogl/JoglCanvas.java b/jme3-jogl/src/main/java/com/jme3/system/jogl/JoglCanvas.java similarity index 100% rename from engine/src/jogl/com/jme3/system/jogl/JoglCanvas.java rename to jme3-jogl/src/main/java/com/jme3/system/jogl/JoglCanvas.java diff --git a/engine/src/jogl/com/jme3/system/jogl/JoglContext.java b/jme3-jogl/src/main/java/com/jme3/system/jogl/JoglContext.java similarity index 100% rename from engine/src/jogl/com/jme3/system/jogl/JoglContext.java rename to jme3-jogl/src/main/java/com/jme3/system/jogl/JoglContext.java diff --git a/engine/src/jogl/com/jme3/system/jogl/JoglDisplay.java b/jme3-jogl/src/main/java/com/jme3/system/jogl/JoglDisplay.java similarity index 100% rename from engine/src/jogl/com/jme3/system/jogl/JoglDisplay.java rename to jme3-jogl/src/main/java/com/jme3/system/jogl/JoglDisplay.java diff --git a/engine/src/jogl/com/jme3/system/jogl/JoglNewtAbstractDisplay.java b/jme3-jogl/src/main/java/com/jme3/system/jogl/JoglNewtAbstractDisplay.java similarity index 100% rename from engine/src/jogl/com/jme3/system/jogl/JoglNewtAbstractDisplay.java rename to jme3-jogl/src/main/java/com/jme3/system/jogl/JoglNewtAbstractDisplay.java diff --git a/engine/src/jogl/com/jme3/system/jogl/JoglNewtCanvas.java b/jme3-jogl/src/main/java/com/jme3/system/jogl/JoglNewtCanvas.java similarity index 100% rename from engine/src/jogl/com/jme3/system/jogl/JoglNewtCanvas.java rename to jme3-jogl/src/main/java/com/jme3/system/jogl/JoglNewtCanvas.java diff --git a/engine/src/jogl/com/jme3/system/jogl/JoglNewtDisplay.java b/jme3-jogl/src/main/java/com/jme3/system/jogl/JoglNewtDisplay.java similarity index 100% rename from engine/src/jogl/com/jme3/system/jogl/JoglNewtDisplay.java rename to jme3-jogl/src/main/java/com/jme3/system/jogl/JoglNewtDisplay.java diff --git a/engine/src/jogl/com/jme3/system/jogl/JoglOffscreenBuffer.java b/jme3-jogl/src/main/java/com/jme3/system/jogl/JoglOffscreenBuffer.java similarity index 100% rename from engine/src/jogl/com/jme3/system/jogl/JoglOffscreenBuffer.java rename to jme3-jogl/src/main/java/com/jme3/system/jogl/JoglOffscreenBuffer.java diff --git a/jme3-lwjgl/build.gradle b/jme3-lwjgl/build.gradle new file mode 100644 index 000000000..6ed29fc60 --- /dev/null +++ b/jme3-lwjgl/build.gradle @@ -0,0 +1,9 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +dependencies { + compile project(':jme3-core') + compile project(':jme3-desktop') + compile 'org.lwjgl.lwjgl:lwjgl:2.9.0' +} diff --git a/engine/src/lwjgl/com/jme3/audio/lwjgl/LwjglAudioRenderer.java b/jme3-lwjgl/src/main/java/com/jme3/audio/lwjgl/LwjglAudioRenderer.java similarity index 100% rename from engine/src/lwjgl/com/jme3/audio/lwjgl/LwjglAudioRenderer.java rename to jme3-lwjgl/src/main/java/com/jme3/audio/lwjgl/LwjglAudioRenderer.java diff --git a/engine/src/lwjgl/com/jme3/input/lwjgl/JInputJoyInput.java b/jme3-lwjgl/src/main/java/com/jme3/input/lwjgl/JInputJoyInput.java similarity index 100% rename from engine/src/lwjgl/com/jme3/input/lwjgl/JInputJoyInput.java rename to jme3-lwjgl/src/main/java/com/jme3/input/lwjgl/JInputJoyInput.java diff --git a/engine/src/lwjgl/com/jme3/input/lwjgl/LwjglKeyInput.java b/jme3-lwjgl/src/main/java/com/jme3/input/lwjgl/LwjglKeyInput.java similarity index 100% rename from engine/src/lwjgl/com/jme3/input/lwjgl/LwjglKeyInput.java rename to jme3-lwjgl/src/main/java/com/jme3/input/lwjgl/LwjglKeyInput.java diff --git a/engine/src/lwjgl/com/jme3/input/lwjgl/LwjglMouseInput.java b/jme3-lwjgl/src/main/java/com/jme3/input/lwjgl/LwjglMouseInput.java similarity index 100% rename from engine/src/lwjgl/com/jme3/input/lwjgl/LwjglMouseInput.java rename to jme3-lwjgl/src/main/java/com/jme3/input/lwjgl/LwjglMouseInput.java diff --git a/engine/src/lwjgl/com/jme3/renderer/lwjgl/LwjglGL1Renderer.java b/jme3-lwjgl/src/main/java/com/jme3/renderer/lwjgl/LwjglGL1Renderer.java similarity index 100% rename from engine/src/lwjgl/com/jme3/renderer/lwjgl/LwjglGL1Renderer.java rename to jme3-lwjgl/src/main/java/com/jme3/renderer/lwjgl/LwjglGL1Renderer.java diff --git a/engine/src/lwjgl/com/jme3/renderer/lwjgl/LwjglRenderer.java b/jme3-lwjgl/src/main/java/com/jme3/renderer/lwjgl/LwjglRenderer.java similarity index 100% rename from engine/src/lwjgl/com/jme3/renderer/lwjgl/LwjglRenderer.java rename to jme3-lwjgl/src/main/java/com/jme3/renderer/lwjgl/LwjglRenderer.java diff --git a/engine/src/lwjgl/com/jme3/renderer/lwjgl/TextureUtil.java b/jme3-lwjgl/src/main/java/com/jme3/renderer/lwjgl/TextureUtil.java similarity index 100% rename from engine/src/lwjgl/com/jme3/renderer/lwjgl/TextureUtil.java rename to jme3-lwjgl/src/main/java/com/jme3/renderer/lwjgl/TextureUtil.java diff --git a/engine/src/lwjgl/com/jme3/system/lwjgl/LwjglAbstractDisplay.java b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglAbstractDisplay.java similarity index 100% rename from engine/src/lwjgl/com/jme3/system/lwjgl/LwjglAbstractDisplay.java rename to jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglAbstractDisplay.java diff --git a/engine/src/lwjgl/com/jme3/system/lwjgl/LwjglCanvas.java b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglCanvas.java similarity index 100% rename from engine/src/lwjgl/com/jme3/system/lwjgl/LwjglCanvas.java rename to jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglCanvas.java diff --git a/engine/src/lwjgl/com/jme3/system/lwjgl/LwjglContext.java b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglContext.java similarity index 100% rename from engine/src/lwjgl/com/jme3/system/lwjgl/LwjglContext.java rename to jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglContext.java diff --git a/engine/src/lwjgl/com/jme3/system/lwjgl/LwjglDisplay.java b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglDisplay.java similarity index 100% rename from engine/src/lwjgl/com/jme3/system/lwjgl/LwjglDisplay.java rename to jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglDisplay.java diff --git a/engine/src/lwjgl/com/jme3/system/lwjgl/LwjglOffscreenBuffer.java b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglOffscreenBuffer.java similarity index 100% rename from engine/src/lwjgl/com/jme3/system/lwjgl/LwjglOffscreenBuffer.java rename to jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglOffscreenBuffer.java diff --git a/engine/src/lwjgl/com/jme3/system/lwjgl/LwjglSmoothingTimer.java b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglSmoothingTimer.java similarity index 100% rename from engine/src/lwjgl/com/jme3/system/lwjgl/LwjglSmoothingTimer.java rename to jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglSmoothingTimer.java diff --git a/engine/src/lwjgl/com/jme3/system/lwjgl/LwjglTimer.java b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglTimer.java similarity index 100% rename from engine/src/lwjgl/com/jme3/system/lwjgl/LwjglTimer.java rename to jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglTimer.java diff --git a/jme3-networking/build.gradle b/jme3-networking/build.gradle new file mode 100644 index 000000000..0a77d7d72 --- /dev/null +++ b/jme3-networking/build.gradle @@ -0,0 +1,7 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +dependencies { + compile project(':jme3-core') +} diff --git a/engine/src/networking/com/jme3/network/AbstractMessage.java b/jme3-networking/src/main/java/com/jme3/network/AbstractMessage.java similarity index 100% rename from engine/src/networking/com/jme3/network/AbstractMessage.java rename to jme3-networking/src/main/java/com/jme3/network/AbstractMessage.java diff --git a/engine/src/networking/com/jme3/network/Client.java b/jme3-networking/src/main/java/com/jme3/network/Client.java similarity index 100% rename from engine/src/networking/com/jme3/network/Client.java rename to jme3-networking/src/main/java/com/jme3/network/Client.java diff --git a/engine/src/networking/com/jme3/network/ClientStateListener.java b/jme3-networking/src/main/java/com/jme3/network/ClientStateListener.java similarity index 100% rename from engine/src/networking/com/jme3/network/ClientStateListener.java rename to jme3-networking/src/main/java/com/jme3/network/ClientStateListener.java diff --git a/engine/src/networking/com/jme3/network/ConnectionListener.java b/jme3-networking/src/main/java/com/jme3/network/ConnectionListener.java similarity index 100% rename from engine/src/networking/com/jme3/network/ConnectionListener.java rename to jme3-networking/src/main/java/com/jme3/network/ConnectionListener.java diff --git a/engine/src/networking/com/jme3/network/ErrorListener.java b/jme3-networking/src/main/java/com/jme3/network/ErrorListener.java similarity index 100% rename from engine/src/networking/com/jme3/network/ErrorListener.java rename to jme3-networking/src/main/java/com/jme3/network/ErrorListener.java diff --git a/engine/src/networking/com/jme3/network/Filter.java b/jme3-networking/src/main/java/com/jme3/network/Filter.java similarity index 100% rename from engine/src/networking/com/jme3/network/Filter.java rename to jme3-networking/src/main/java/com/jme3/network/Filter.java diff --git a/engine/src/networking/com/jme3/network/Filters.java b/jme3-networking/src/main/java/com/jme3/network/Filters.java similarity index 100% rename from engine/src/networking/com/jme3/network/Filters.java rename to jme3-networking/src/main/java/com/jme3/network/Filters.java diff --git a/engine/src/networking/com/jme3/network/HostedConnection.java b/jme3-networking/src/main/java/com/jme3/network/HostedConnection.java similarity index 100% rename from engine/src/networking/com/jme3/network/HostedConnection.java rename to jme3-networking/src/main/java/com/jme3/network/HostedConnection.java diff --git a/engine/src/networking/com/jme3/network/Message.java b/jme3-networking/src/main/java/com/jme3/network/Message.java similarity index 100% rename from engine/src/networking/com/jme3/network/Message.java rename to jme3-networking/src/main/java/com/jme3/network/Message.java diff --git a/engine/src/networking/com/jme3/network/MessageConnection.java b/jme3-networking/src/main/java/com/jme3/network/MessageConnection.java similarity index 100% rename from engine/src/networking/com/jme3/network/MessageConnection.java rename to jme3-networking/src/main/java/com/jme3/network/MessageConnection.java diff --git a/engine/src/networking/com/jme3/network/MessageListener.java b/jme3-networking/src/main/java/com/jme3/network/MessageListener.java similarity index 100% rename from engine/src/networking/com/jme3/network/MessageListener.java rename to jme3-networking/src/main/java/com/jme3/network/MessageListener.java diff --git a/engine/src/networking/com/jme3/network/Network.java b/jme3-networking/src/main/java/com/jme3/network/Network.java similarity index 100% rename from engine/src/networking/com/jme3/network/Network.java rename to jme3-networking/src/main/java/com/jme3/network/Network.java diff --git a/engine/src/networking/com/jme3/network/NetworkClient.java b/jme3-networking/src/main/java/com/jme3/network/NetworkClient.java similarity index 100% rename from engine/src/networking/com/jme3/network/NetworkClient.java rename to jme3-networking/src/main/java/com/jme3/network/NetworkClient.java diff --git a/engine/src/networking/com/jme3/network/Server.java b/jme3-networking/src/main/java/com/jme3/network/Server.java similarity index 100% rename from engine/src/networking/com/jme3/network/Server.java rename to jme3-networking/src/main/java/com/jme3/network/Server.java diff --git a/engine/src/networking/com/jme3/network/base/ConnectorAdapter.java b/jme3-networking/src/main/java/com/jme3/network/base/ConnectorAdapter.java similarity index 100% rename from engine/src/networking/com/jme3/network/base/ConnectorAdapter.java rename to jme3-networking/src/main/java/com/jme3/network/base/ConnectorAdapter.java diff --git a/engine/src/networking/com/jme3/network/base/ConnectorFactory.java b/jme3-networking/src/main/java/com/jme3/network/base/ConnectorFactory.java similarity index 100% rename from engine/src/networking/com/jme3/network/base/ConnectorFactory.java rename to jme3-networking/src/main/java/com/jme3/network/base/ConnectorFactory.java diff --git a/engine/src/networking/com/jme3/network/base/DefaultClient.java b/jme3-networking/src/main/java/com/jme3/network/base/DefaultClient.java similarity index 100% rename from engine/src/networking/com/jme3/network/base/DefaultClient.java rename to jme3-networking/src/main/java/com/jme3/network/base/DefaultClient.java diff --git a/engine/src/networking/com/jme3/network/base/DefaultServer.java b/jme3-networking/src/main/java/com/jme3/network/base/DefaultServer.java similarity index 100% rename from engine/src/networking/com/jme3/network/base/DefaultServer.java rename to jme3-networking/src/main/java/com/jme3/network/base/DefaultServer.java diff --git a/engine/src/networking/com/jme3/network/base/KernelAdapter.java b/jme3-networking/src/main/java/com/jme3/network/base/KernelAdapter.java similarity index 100% rename from engine/src/networking/com/jme3/network/base/KernelAdapter.java rename to jme3-networking/src/main/java/com/jme3/network/base/KernelAdapter.java diff --git a/engine/src/networking/com/jme3/network/base/KernelFactory.java b/jme3-networking/src/main/java/com/jme3/network/base/KernelFactory.java similarity index 100% rename from engine/src/networking/com/jme3/network/base/KernelFactory.java rename to jme3-networking/src/main/java/com/jme3/network/base/KernelFactory.java diff --git a/engine/src/networking/com/jme3/network/base/MessageListenerRegistry.java b/jme3-networking/src/main/java/com/jme3/network/base/MessageListenerRegistry.java similarity index 100% rename from engine/src/networking/com/jme3/network/base/MessageListenerRegistry.java rename to jme3-networking/src/main/java/com/jme3/network/base/MessageListenerRegistry.java diff --git a/engine/src/networking/com/jme3/network/base/MessageProtocol.java b/jme3-networking/src/main/java/com/jme3/network/base/MessageProtocol.java similarity index 100% rename from engine/src/networking/com/jme3/network/base/MessageProtocol.java rename to jme3-networking/src/main/java/com/jme3/network/base/MessageProtocol.java diff --git a/engine/src/networking/com/jme3/network/base/NioKernelFactory.java b/jme3-networking/src/main/java/com/jme3/network/base/NioKernelFactory.java similarity index 100% rename from engine/src/networking/com/jme3/network/base/NioKernelFactory.java rename to jme3-networking/src/main/java/com/jme3/network/base/NioKernelFactory.java diff --git a/engine/src/networking/com/jme3/network/base/TcpConnectorFactory.java b/jme3-networking/src/main/java/com/jme3/network/base/TcpConnectorFactory.java similarity index 100% rename from engine/src/networking/com/jme3/network/base/TcpConnectorFactory.java rename to jme3-networking/src/main/java/com/jme3/network/base/TcpConnectorFactory.java diff --git a/engine/src/networking/com/jme3/network/base/package.html b/jme3-networking/src/main/java/com/jme3/network/base/package.html similarity index 100% rename from engine/src/networking/com/jme3/network/base/package.html rename to jme3-networking/src/main/java/com/jme3/network/base/package.html diff --git a/engine/src/networking/com/jme3/network/kernel/AbstractKernel.java b/jme3-networking/src/main/java/com/jme3/network/kernel/AbstractKernel.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/AbstractKernel.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/AbstractKernel.java diff --git a/engine/src/networking/com/jme3/network/kernel/Connector.java b/jme3-networking/src/main/java/com/jme3/network/kernel/Connector.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/Connector.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/Connector.java diff --git a/engine/src/networking/com/jme3/network/kernel/ConnectorException.java b/jme3-networking/src/main/java/com/jme3/network/kernel/ConnectorException.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/ConnectorException.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/ConnectorException.java diff --git a/engine/src/networking/com/jme3/network/kernel/Endpoint.java b/jme3-networking/src/main/java/com/jme3/network/kernel/Endpoint.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/Endpoint.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/Endpoint.java diff --git a/engine/src/networking/com/jme3/network/kernel/EndpointEvent.java b/jme3-networking/src/main/java/com/jme3/network/kernel/EndpointEvent.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/EndpointEvent.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/EndpointEvent.java diff --git a/engine/src/networking/com/jme3/network/kernel/Envelope.java b/jme3-networking/src/main/java/com/jme3/network/kernel/Envelope.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/Envelope.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/Envelope.java diff --git a/engine/src/networking/com/jme3/network/kernel/Kernel.java b/jme3-networking/src/main/java/com/jme3/network/kernel/Kernel.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/Kernel.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/Kernel.java diff --git a/engine/src/networking/com/jme3/network/kernel/KernelException.java b/jme3-networking/src/main/java/com/jme3/network/kernel/KernelException.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/KernelException.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/KernelException.java diff --git a/engine/src/networking/com/jme3/network/kernel/NamedThreadFactory.java b/jme3-networking/src/main/java/com/jme3/network/kernel/NamedThreadFactory.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/NamedThreadFactory.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/NamedThreadFactory.java diff --git a/engine/src/networking/com/jme3/network/kernel/package.html b/jme3-networking/src/main/java/com/jme3/network/kernel/package.html similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/package.html rename to jme3-networking/src/main/java/com/jme3/network/kernel/package.html diff --git a/engine/src/networking/com/jme3/network/kernel/tcp/NioEndpoint.java b/jme3-networking/src/main/java/com/jme3/network/kernel/tcp/NioEndpoint.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/tcp/NioEndpoint.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/tcp/NioEndpoint.java diff --git a/engine/src/networking/com/jme3/network/kernel/tcp/SelectorKernel.java b/jme3-networking/src/main/java/com/jme3/network/kernel/tcp/SelectorKernel.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/tcp/SelectorKernel.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/tcp/SelectorKernel.java diff --git a/engine/src/networking/com/jme3/network/kernel/tcp/SocketConnector.java b/jme3-networking/src/main/java/com/jme3/network/kernel/tcp/SocketConnector.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/tcp/SocketConnector.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/tcp/SocketConnector.java diff --git a/engine/src/networking/com/jme3/network/kernel/udp/UdpConnector.java b/jme3-networking/src/main/java/com/jme3/network/kernel/udp/UdpConnector.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/udp/UdpConnector.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/udp/UdpConnector.java diff --git a/engine/src/networking/com/jme3/network/kernel/udp/UdpEndpoint.java b/jme3-networking/src/main/java/com/jme3/network/kernel/udp/UdpEndpoint.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/udp/UdpEndpoint.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/udp/UdpEndpoint.java diff --git a/engine/src/networking/com/jme3/network/kernel/udp/UdpKernel.java b/jme3-networking/src/main/java/com/jme3/network/kernel/udp/UdpKernel.java similarity index 100% rename from engine/src/networking/com/jme3/network/kernel/udp/UdpKernel.java rename to jme3-networking/src/main/java/com/jme3/network/kernel/udp/UdpKernel.java diff --git a/engine/src/networking/com/jme3/network/message/ChannelInfoMessage.java b/jme3-networking/src/main/java/com/jme3/network/message/ChannelInfoMessage.java similarity index 100% rename from engine/src/networking/com/jme3/network/message/ChannelInfoMessage.java rename to jme3-networking/src/main/java/com/jme3/network/message/ChannelInfoMessage.java diff --git a/engine/src/networking/com/jme3/network/message/ClientRegistrationMessage.java b/jme3-networking/src/main/java/com/jme3/network/message/ClientRegistrationMessage.java similarity index 100% rename from engine/src/networking/com/jme3/network/message/ClientRegistrationMessage.java rename to jme3-networking/src/main/java/com/jme3/network/message/ClientRegistrationMessage.java diff --git a/engine/src/networking/com/jme3/network/message/CompressedMessage.java b/jme3-networking/src/main/java/com/jme3/network/message/CompressedMessage.java similarity index 100% rename from engine/src/networking/com/jme3/network/message/CompressedMessage.java rename to jme3-networking/src/main/java/com/jme3/network/message/CompressedMessage.java diff --git a/engine/src/networking/com/jme3/network/message/DisconnectMessage.java b/jme3-networking/src/main/java/com/jme3/network/message/DisconnectMessage.java similarity index 100% rename from engine/src/networking/com/jme3/network/message/DisconnectMessage.java rename to jme3-networking/src/main/java/com/jme3/network/message/DisconnectMessage.java diff --git a/engine/src/networking/com/jme3/network/message/GZIPCompressedMessage.java b/jme3-networking/src/main/java/com/jme3/network/message/GZIPCompressedMessage.java similarity index 100% rename from engine/src/networking/com/jme3/network/message/GZIPCompressedMessage.java rename to jme3-networking/src/main/java/com/jme3/network/message/GZIPCompressedMessage.java diff --git a/engine/src/networking/com/jme3/network/message/ZIPCompressedMessage.java b/jme3-networking/src/main/java/com/jme3/network/message/ZIPCompressedMessage.java similarity index 100% rename from engine/src/networking/com/jme3/network/message/ZIPCompressedMessage.java rename to jme3-networking/src/main/java/com/jme3/network/message/ZIPCompressedMessage.java diff --git a/engine/src/networking/com/jme3/network/package.html b/jme3-networking/src/main/java/com/jme3/network/package.html similarity index 100% rename from engine/src/networking/com/jme3/network/package.html rename to jme3-networking/src/main/java/com/jme3/network/package.html diff --git a/engine/src/networking/com/jme3/network/rmi/LocalObject.java b/jme3-networking/src/main/java/com/jme3/network/rmi/LocalObject.java similarity index 100% rename from engine/src/networking/com/jme3/network/rmi/LocalObject.java rename to jme3-networking/src/main/java/com/jme3/network/rmi/LocalObject.java diff --git a/engine/src/networking/com/jme3/network/rmi/MethodDef.java b/jme3-networking/src/main/java/com/jme3/network/rmi/MethodDef.java similarity index 100% rename from engine/src/networking/com/jme3/network/rmi/MethodDef.java rename to jme3-networking/src/main/java/com/jme3/network/rmi/MethodDef.java diff --git a/engine/src/networking/com/jme3/network/rmi/ObjectDef.java b/jme3-networking/src/main/java/com/jme3/network/rmi/ObjectDef.java similarity index 100% rename from engine/src/networking/com/jme3/network/rmi/ObjectDef.java rename to jme3-networking/src/main/java/com/jme3/network/rmi/ObjectDef.java diff --git a/engine/src/networking/com/jme3/network/rmi/ObjectStore.java b/jme3-networking/src/main/java/com/jme3/network/rmi/ObjectStore.java similarity index 100% rename from engine/src/networking/com/jme3/network/rmi/ObjectStore.java rename to jme3-networking/src/main/java/com/jme3/network/rmi/ObjectStore.java diff --git a/engine/src/networking/com/jme3/network/rmi/RemoteMethodCallMessage.java b/jme3-networking/src/main/java/com/jme3/network/rmi/RemoteMethodCallMessage.java similarity index 100% rename from engine/src/networking/com/jme3/network/rmi/RemoteMethodCallMessage.java rename to jme3-networking/src/main/java/com/jme3/network/rmi/RemoteMethodCallMessage.java diff --git a/engine/src/networking/com/jme3/network/rmi/RemoteMethodReturnMessage.java b/jme3-networking/src/main/java/com/jme3/network/rmi/RemoteMethodReturnMessage.java similarity index 100% rename from engine/src/networking/com/jme3/network/rmi/RemoteMethodReturnMessage.java rename to jme3-networking/src/main/java/com/jme3/network/rmi/RemoteMethodReturnMessage.java diff --git a/engine/src/networking/com/jme3/network/rmi/RemoteObject.java b/jme3-networking/src/main/java/com/jme3/network/rmi/RemoteObject.java similarity index 100% rename from engine/src/networking/com/jme3/network/rmi/RemoteObject.java rename to jme3-networking/src/main/java/com/jme3/network/rmi/RemoteObject.java diff --git a/engine/src/networking/com/jme3/network/rmi/RemoteObjectDefMessage.java b/jme3-networking/src/main/java/com/jme3/network/rmi/RemoteObjectDefMessage.java similarity index 100% rename from engine/src/networking/com/jme3/network/rmi/RemoteObjectDefMessage.java rename to jme3-networking/src/main/java/com/jme3/network/rmi/RemoteObjectDefMessage.java diff --git a/engine/src/networking/com/jme3/network/rmi/RmiSerializer.java b/jme3-networking/src/main/java/com/jme3/network/rmi/RmiSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/rmi/RmiSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/rmi/RmiSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/Serializable.java b/jme3-networking/src/main/java/com/jme3/network/serializing/Serializable.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/Serializable.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/Serializable.java diff --git a/engine/src/networking/com/jme3/network/serializing/Serializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/Serializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/Serializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/Serializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/SerializerException.java b/jme3-networking/src/main/java/com/jme3/network/serializing/SerializerException.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/SerializerException.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/SerializerException.java diff --git a/engine/src/networking/com/jme3/network/serializing/SerializerRegistration.java b/jme3-networking/src/main/java/com/jme3/network/serializing/SerializerRegistration.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/SerializerRegistration.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/SerializerRegistration.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/ArraySerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/ArraySerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/ArraySerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/ArraySerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/BooleanSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/BooleanSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/BooleanSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/BooleanSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/ByteSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/ByteSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/ByteSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/ByteSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/CharSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/CharSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/CharSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/CharSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/CollectionSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/CollectionSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/CollectionSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/CollectionSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/DateSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/DateSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/DateSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/DateSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/DoubleSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/DoubleSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/DoubleSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/DoubleSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/EnumSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/EnumSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/EnumSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/EnumSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/FieldSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/FieldSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/FieldSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/FieldSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/FloatSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/FloatSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/FloatSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/FloatSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/GZIPSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/GZIPSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/GZIPSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/GZIPSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/IntSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/IntSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/IntSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/IntSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/LongSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/LongSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/LongSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/LongSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/MapSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/MapSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/MapSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/MapSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/SavableSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/SavableSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/SavableSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/SavableSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/SerializableSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/SerializableSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/SerializableSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/SerializableSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/ShortSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/ShortSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/ShortSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/ShortSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/StringSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/StringSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/StringSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/StringSerializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/Vector3Serializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/Vector3Serializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/Vector3Serializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/Vector3Serializer.java diff --git a/engine/src/networking/com/jme3/network/serializing/serializers/ZIPSerializer.java b/jme3-networking/src/main/java/com/jme3/network/serializing/serializers/ZIPSerializer.java similarity index 100% rename from engine/src/networking/com/jme3/network/serializing/serializers/ZIPSerializer.java rename to jme3-networking/src/main/java/com/jme3/network/serializing/serializers/ZIPSerializer.java diff --git a/jme3-niftygui/build.gradle b/jme3-niftygui/build.gradle new file mode 100644 index 000000000..06f7aeeda --- /dev/null +++ b/jme3-niftygui/build.gradle @@ -0,0 +1,16 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +repositories { + maven{ + url 'http://nifty-gui.sourceforge.net/nifty-maven-repo' + } +} + +dependencies { + compile project(':jme3-core') + compile 'lessvoid:nifty:1.3.3' + compile 'lessvoid:nifty-default-controls:1.3.3' +// compile 'lessvoid:nifty-style-black:1.3.3' +} diff --git a/engine/src/niftygui/com/jme3/cinematic/events/GuiEvent.java b/jme3-niftygui/src/main/java/com/jme3/cinematic/events/GuiEvent.java similarity index 100% rename from engine/src/niftygui/com/jme3/cinematic/events/GuiEvent.java rename to jme3-niftygui/src/main/java/com/jme3/cinematic/events/GuiEvent.java diff --git a/engine/src/niftygui/com/jme3/cinematic/events/GuiTrack.java b/jme3-niftygui/src/main/java/com/jme3/cinematic/events/GuiTrack.java similarity index 100% rename from engine/src/niftygui/com/jme3/cinematic/events/GuiTrack.java rename to jme3-niftygui/src/main/java/com/jme3/cinematic/events/GuiTrack.java diff --git a/engine/src/niftygui/com/jme3/niftygui/InputSystemJme.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/InputSystemJme.java similarity index 100% rename from engine/src/niftygui/com/jme3/niftygui/InputSystemJme.java rename to jme3-niftygui/src/main/java/com/jme3/niftygui/InputSystemJme.java diff --git a/engine/src/niftygui/com/jme3/niftygui/JmeBatchRenderBackend.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/JmeBatchRenderBackend.java similarity index 100% rename from engine/src/niftygui/com/jme3/niftygui/JmeBatchRenderBackend.java rename to jme3-niftygui/src/main/java/com/jme3/niftygui/JmeBatchRenderBackend.java diff --git a/engine/src/niftygui/com/jme3/niftygui/NiftyJmeDisplay.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/NiftyJmeDisplay.java similarity index 100% rename from engine/src/niftygui/com/jme3/niftygui/NiftyJmeDisplay.java rename to jme3-niftygui/src/main/java/com/jme3/niftygui/NiftyJmeDisplay.java diff --git a/engine/src/niftygui/com/jme3/niftygui/RenderDeviceJme.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/RenderDeviceJme.java similarity index 100% rename from engine/src/niftygui/com/jme3/niftygui/RenderDeviceJme.java rename to jme3-niftygui/src/main/java/com/jme3/niftygui/RenderDeviceJme.java diff --git a/engine/src/niftygui/com/jme3/niftygui/RenderFontJme.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/RenderFontJme.java similarity index 100% rename from engine/src/niftygui/com/jme3/niftygui/RenderFontJme.java rename to jme3-niftygui/src/main/java/com/jme3/niftygui/RenderFontJme.java diff --git a/engine/src/niftygui/com/jme3/niftygui/RenderImageJme.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/RenderImageJme.java similarity index 100% rename from engine/src/niftygui/com/jme3/niftygui/RenderImageJme.java rename to jme3-niftygui/src/main/java/com/jme3/niftygui/RenderImageJme.java diff --git a/engine/src/niftygui/com/jme3/niftygui/SoundDeviceJme.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/SoundDeviceJme.java similarity index 100% rename from engine/src/niftygui/com/jme3/niftygui/SoundDeviceJme.java rename to jme3-niftygui/src/main/java/com/jme3/niftygui/SoundDeviceJme.java diff --git a/engine/src/niftygui/com/jme3/niftygui/SoundHandleJme.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/SoundHandleJme.java similarity index 100% rename from engine/src/niftygui/com/jme3/niftygui/SoundHandleJme.java rename to jme3-niftygui/src/main/java/com/jme3/niftygui/SoundHandleJme.java diff --git a/engine/src/niftygui/Common/MatDefs/Nifty/NiftyQuad.frag b/jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyQuad.frag similarity index 100% rename from engine/src/niftygui/Common/MatDefs/Nifty/NiftyQuad.frag rename to jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyQuad.frag diff --git a/engine/src/niftygui/Common/MatDefs/Nifty/NiftyQuad.j3md b/jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyQuad.j3md similarity index 100% rename from engine/src/niftygui/Common/MatDefs/Nifty/NiftyQuad.j3md rename to jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyQuad.j3md diff --git a/engine/src/niftygui/Common/MatDefs/Nifty/NiftyQuad.vert b/jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyQuad.vert similarity index 100% rename from engine/src/niftygui/Common/MatDefs/Nifty/NiftyQuad.vert rename to jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyQuad.vert diff --git a/engine/src/niftygui/Common/MatDefs/Nifty/NiftyQuadGrad.frag b/jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyQuadGrad.frag similarity index 100% rename from engine/src/niftygui/Common/MatDefs/Nifty/NiftyQuadGrad.frag rename to jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyQuadGrad.frag diff --git a/engine/src/niftygui/Common/MatDefs/Nifty/NiftyQuadGrad.j3md b/jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyQuadGrad.j3md similarity index 100% rename from engine/src/niftygui/Common/MatDefs/Nifty/NiftyQuadGrad.j3md rename to jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyQuadGrad.j3md diff --git a/engine/src/niftygui/Common/MatDefs/Nifty/NiftyQuadGrad.vert b/jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyQuadGrad.vert similarity index 100% rename from engine/src/niftygui/Common/MatDefs/Nifty/NiftyQuadGrad.vert rename to jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyQuadGrad.vert diff --git a/engine/src/niftygui/Common/MatDefs/Nifty/NiftyTex.frag b/jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyTex.frag similarity index 100% rename from engine/src/niftygui/Common/MatDefs/Nifty/NiftyTex.frag rename to jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyTex.frag diff --git a/engine/src/niftygui/Common/MatDefs/Nifty/NiftyTex.j3md b/jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyTex.j3md similarity index 100% rename from engine/src/niftygui/Common/MatDefs/Nifty/NiftyTex.j3md rename to jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyTex.j3md diff --git a/engine/src/niftygui/Common/MatDefs/Nifty/NiftyTex.vert b/jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyTex.vert similarity index 100% rename from engine/src/niftygui/Common/MatDefs/Nifty/NiftyTex.vert rename to jme3-niftygui/src/main/resources/Common/MatDefs/Nifty/NiftyTex.vert diff --git a/jme3-plugins/build.gradle b/jme3-plugins/build.gradle new file mode 100644 index 000000000..f4857a60f --- /dev/null +++ b/jme3-plugins/build.gradle @@ -0,0 +1,16 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +sourceSets { + main { + java { + srcDir 'src/ogre/java' + srcDir 'src/xml/java' + } + } +} + +dependencies { + compile project(':jme3-core') +} diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/AnimData.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/AnimData.java similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/AnimData.java rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/AnimData.java diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/MaterialLoader.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MaterialLoader.java similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/MaterialLoader.java rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MaterialLoader.java diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/MeshAnimationLoader.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MeshAnimationLoader.java similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/MeshAnimationLoader.java rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MeshAnimationLoader.java diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/MeshLoader.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MeshLoader.java similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/MeshLoader.java rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MeshLoader.java diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/OgreMeshKey.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/OgreMeshKey.java similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/OgreMeshKey.java rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/OgreMeshKey.java diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/SceneLoader.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/SceneLoader.java similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/SceneLoader.java rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/SceneLoader.java diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/SceneMaterialLoader.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/SceneMaterialLoader.java similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/SceneMaterialLoader.java rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/SceneMaterialLoader.java diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/SkeletonLoader.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/SkeletonLoader.java similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/SkeletonLoader.java rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/SkeletonLoader.java diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/matext/MaterialExtension.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/matext/MaterialExtension.java similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/matext/MaterialExtension.java rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/matext/MaterialExtension.java diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/matext/MaterialExtensionLoader.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/matext/MaterialExtensionLoader.java similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/matext/MaterialExtensionLoader.java rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/matext/MaterialExtensionLoader.java diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/matext/MaterialExtensionSet.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/matext/MaterialExtensionSet.java similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/matext/MaterialExtensionSet.java rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/matext/MaterialExtensionSet.java diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/matext/OgreMaterialKey.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/matext/OgreMaterialKey.java similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/matext/OgreMaterialKey.java rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/matext/OgreMaterialKey.java diff --git a/engine/src/ogre/com/jme3/scene/plugins/ogre/matext/package.html b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/matext/package.html similarity index 100% rename from engine/src/ogre/com/jme3/scene/plugins/ogre/matext/package.html rename to jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/matext/package.html diff --git a/engine/src/xml/com/jme3/export/xml/DOMInputCapsule.java b/jme3-plugins/src/xml/java/com/jme3/export/xml/DOMInputCapsule.java similarity index 100% rename from engine/src/xml/com/jme3/export/xml/DOMInputCapsule.java rename to jme3-plugins/src/xml/java/com/jme3/export/xml/DOMInputCapsule.java diff --git a/engine/src/xml/com/jme3/export/xml/DOMOutputCapsule.java b/jme3-plugins/src/xml/java/com/jme3/export/xml/DOMOutputCapsule.java similarity index 100% rename from engine/src/xml/com/jme3/export/xml/DOMOutputCapsule.java rename to jme3-plugins/src/xml/java/com/jme3/export/xml/DOMOutputCapsule.java diff --git a/engine/src/xml/com/jme3/export/xml/DOMSerializer.java b/jme3-plugins/src/xml/java/com/jme3/export/xml/DOMSerializer.java similarity index 100% rename from engine/src/xml/com/jme3/export/xml/DOMSerializer.java rename to jme3-plugins/src/xml/java/com/jme3/export/xml/DOMSerializer.java diff --git a/engine/src/xml/com/jme3/export/xml/XMLExporter.java b/jme3-plugins/src/xml/java/com/jme3/export/xml/XMLExporter.java similarity index 100% rename from engine/src/xml/com/jme3/export/xml/XMLExporter.java rename to jme3-plugins/src/xml/java/com/jme3/export/xml/XMLExporter.java diff --git a/engine/src/xml/com/jme3/export/xml/XMLImporter.java b/jme3-plugins/src/xml/java/com/jme3/export/xml/XMLImporter.java similarity index 100% rename from engine/src/xml/com/jme3/export/xml/XMLImporter.java rename to jme3-plugins/src/xml/java/com/jme3/export/xml/XMLImporter.java diff --git a/jme3-terrain/build.gradle b/jme3-terrain/build.gradle new file mode 100644 index 000000000..0a77d7d72 --- /dev/null +++ b/jme3-terrain/build.gradle @@ -0,0 +1,7 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +dependencies { + compile project(':jme3-core') +} diff --git a/engine/src/terrain/com/jme3/terrain/GeoMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/GeoMap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/GeoMap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/GeoMap.java diff --git a/engine/src/terrain/com/jme3/terrain/ProgressMonitor.java b/jme3-terrain/src/main/java/com/jme3/terrain/ProgressMonitor.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/ProgressMonitor.java rename to jme3-terrain/src/main/java/com/jme3/terrain/ProgressMonitor.java diff --git a/engine/src/terrain/com/jme3/terrain/Terrain.java b/jme3-terrain/src/main/java/com/jme3/terrain/Terrain.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/Terrain.java rename to jme3-terrain/src/main/java/com/jme3/terrain/Terrain.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/LODGeomap.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/LODGeomap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/LODGeomap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/LODGeomap.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/LRUCache.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/LRUCache.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/LRUCache.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/LRUCache.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/MultiTerrainLodControl.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/MultiTerrainLodControl.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/MultiTerrainLodControl.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/MultiTerrainLodControl.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/NeighbourFinder.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/NeighbourFinder.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/NeighbourFinder.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/NeighbourFinder.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/NormalRecalcControl.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/NormalRecalcControl.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/NormalRecalcControl.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/NormalRecalcControl.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/TerrainGrid.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainGrid.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/TerrainGrid.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainGrid.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/TerrainGridListener.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainGridListener.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/TerrainGridListener.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainGridListener.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/TerrainGridLodControl.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainGridLodControl.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/TerrainGridLodControl.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainGridLodControl.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/TerrainGridTileLoader.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainGridTileLoader.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/TerrainGridTileLoader.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainGridTileLoader.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/TerrainLodControl.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainLodControl.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/TerrainLodControl.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainLodControl.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/TerrainPatch.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainPatch.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/TerrainPatch.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainPatch.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/TerrainQuad.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainQuad.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/TerrainQuad.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainQuad.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/UpdatedTerrainPatch.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/UpdatedTerrainPatch.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/UpdatedTerrainPatch.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/UpdatedTerrainPatch.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/grid/AssetTileLoader.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/grid/AssetTileLoader.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/grid/AssetTileLoader.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/grid/AssetTileLoader.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/grid/FractalTileLoader.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/grid/FractalTileLoader.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/grid/FractalTileLoader.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/grid/FractalTileLoader.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/grid/ImageTileLoader.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/grid/ImageTileLoader.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/grid/ImageTileLoader.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/grid/ImageTileLoader.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/DistanceLodCalculator.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/DistanceLodCalculator.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/DistanceLodCalculator.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/DistanceLodCalculator.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/LodCalculator.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/LodCalculator.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/LodCalculator.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/LodCalculator.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/LodCalculatorFactory.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/LodCalculatorFactory.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/LodCalculatorFactory.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/LodCalculatorFactory.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/LodDistanceCalculatorFactory.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/LodDistanceCalculatorFactory.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/LodDistanceCalculatorFactory.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/LodDistanceCalculatorFactory.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/LodPerspectiveCalculatorFactory.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/LodPerspectiveCalculatorFactory.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/LodPerspectiveCalculatorFactory.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/LodPerspectiveCalculatorFactory.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/LodThreshold.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/LodThreshold.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/LodThreshold.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/LodThreshold.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/PerspectiveLodCalculator.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/PerspectiveLodCalculator.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/PerspectiveLodCalculator.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/PerspectiveLodCalculator.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/SimpleLodThreshold.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/SimpleLodThreshold.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/SimpleLodThreshold.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/SimpleLodThreshold.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/util/EntropyComputeUtil.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/util/EntropyComputeUtil.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/lodcalc/util/EntropyComputeUtil.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/lodcalc/util/EntropyComputeUtil.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/picking/BresenhamTerrainPicker.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/picking/BresenhamTerrainPicker.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/picking/BresenhamTerrainPicker.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/picking/BresenhamTerrainPicker.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/picking/BresenhamYUpGridTracer.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/picking/BresenhamYUpGridTracer.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/picking/BresenhamYUpGridTracer.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/picking/BresenhamYUpGridTracer.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/picking/TerrainPickData.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/picking/TerrainPickData.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/picking/TerrainPickData.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/picking/TerrainPickData.java diff --git a/engine/src/terrain/com/jme3/terrain/geomipmap/picking/TerrainPicker.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/picking/TerrainPicker.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/geomipmap/picking/TerrainPicker.java rename to jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/picking/TerrainPicker.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/AbstractHeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/AbstractHeightMap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/AbstractHeightMap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/AbstractHeightMap.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/CombinerHeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/CombinerHeightMap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/CombinerHeightMap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/CombinerHeightMap.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/FaultHeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/FaultHeightMap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/FaultHeightMap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/FaultHeightMap.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/FluidSimHeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/FluidSimHeightMap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/FluidSimHeightMap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/FluidSimHeightMap.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/HeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/HeightMap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/HeightMap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/HeightMap.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/HeightMapGrid.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/HeightMapGrid.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/HeightMapGrid.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/HeightMapGrid.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/HillHeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/HillHeightMap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/HillHeightMap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/HillHeightMap.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/ImageBasedHeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/ImageBasedHeightMap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/ImageBasedHeightMap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/ImageBasedHeightMap.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/ImageBasedHeightMapGrid.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/ImageBasedHeightMapGrid.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/ImageBasedHeightMapGrid.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/ImageBasedHeightMapGrid.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/ImageHeightmap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/ImageHeightmap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/ImageHeightmap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/ImageHeightmap.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/MidpointDisplacementHeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/MidpointDisplacementHeightMap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/MidpointDisplacementHeightMap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/MidpointDisplacementHeightMap.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/Namer.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/Namer.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/Namer.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/Namer.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/ParticleDepositionHeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/ParticleDepositionHeightMap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/ParticleDepositionHeightMap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/ParticleDepositionHeightMap.java diff --git a/engine/src/terrain/com/jme3/terrain/heightmap/RawHeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/RawHeightMap.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/heightmap/RawHeightMap.java rename to jme3-terrain/src/main/java/com/jme3/terrain/heightmap/RawHeightMap.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/Basis.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/Basis.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/Basis.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/Basis.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/Color.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/Color.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/Color.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/Color.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/Filter.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/Filter.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/Filter.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/Filter.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/ShaderUtils.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/ShaderUtils.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/ShaderUtils.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/ShaderUtils.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/basis/FilteredBasis.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/basis/FilteredBasis.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/basis/FilteredBasis.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/basis/FilteredBasis.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/basis/ImprovedNoise.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/basis/ImprovedNoise.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/basis/ImprovedNoise.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/basis/ImprovedNoise.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/basis/Noise.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/basis/Noise.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/basis/Noise.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/basis/Noise.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/basis/NoiseAggregator.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/basis/NoiseAggregator.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/basis/NoiseAggregator.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/basis/NoiseAggregator.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/filter/AbstractFilter.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/AbstractFilter.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/filter/AbstractFilter.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/AbstractFilter.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/filter/HydraulicErodeFilter.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/HydraulicErodeFilter.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/filter/HydraulicErodeFilter.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/HydraulicErodeFilter.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/filter/IterativeFilter.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/IterativeFilter.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/filter/IterativeFilter.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/IterativeFilter.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/filter/OptimizedErode.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/OptimizedErode.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/filter/OptimizedErode.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/OptimizedErode.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/filter/PerturbFilter.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/PerturbFilter.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/filter/PerturbFilter.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/PerturbFilter.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/filter/SmoothFilter.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/SmoothFilter.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/filter/SmoothFilter.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/SmoothFilter.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/filter/ThermalErodeFilter.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/ThermalErodeFilter.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/filter/ThermalErodeFilter.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/ThermalErodeFilter.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/fractal/Fractal.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/fractal/Fractal.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/fractal/Fractal.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/fractal/Fractal.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/fractal/FractalSum.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/fractal/FractalSum.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/fractal/FractalSum.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/fractal/FractalSum.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/modulator/CatRom2.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/modulator/CatRom2.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/modulator/CatRom2.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/modulator/CatRom2.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/modulator/Modulator.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/modulator/Modulator.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/modulator/Modulator.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/modulator/Modulator.java diff --git a/engine/src/terrain/com/jme3/terrain/noise/modulator/NoiseModulator.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/modulator/NoiseModulator.java similarity index 100% rename from engine/src/terrain/com/jme3/terrain/noise/modulator/NoiseModulator.java rename to jme3-terrain/src/main/java/com/jme3/terrain/noise/modulator/NoiseModulator.java diff --git a/engine/src/terrain/Common/MatDefs/Terrain/HeightBasedTerrain.frag b/jme3-terrain/src/main/resources/Common/MatDefs/Terrain/HeightBasedTerrain.frag similarity index 100% rename from engine/src/terrain/Common/MatDefs/Terrain/HeightBasedTerrain.frag rename to jme3-terrain/src/main/resources/Common/MatDefs/Terrain/HeightBasedTerrain.frag diff --git a/engine/src/terrain/Common/MatDefs/Terrain/HeightBasedTerrain.j3md b/jme3-terrain/src/main/resources/Common/MatDefs/Terrain/HeightBasedTerrain.j3md similarity index 100% rename from engine/src/terrain/Common/MatDefs/Terrain/HeightBasedTerrain.j3md rename to jme3-terrain/src/main/resources/Common/MatDefs/Terrain/HeightBasedTerrain.j3md diff --git a/engine/src/terrain/Common/MatDefs/Terrain/HeightBasedTerrain.vert b/jme3-terrain/src/main/resources/Common/MatDefs/Terrain/HeightBasedTerrain.vert similarity index 100% rename from engine/src/terrain/Common/MatDefs/Terrain/HeightBasedTerrain.vert rename to jme3-terrain/src/main/resources/Common/MatDefs/Terrain/HeightBasedTerrain.vert diff --git a/engine/src/terrain/Common/MatDefs/Terrain/Terrain.frag b/jme3-terrain/src/main/resources/Common/MatDefs/Terrain/Terrain.frag similarity index 100% rename from engine/src/terrain/Common/MatDefs/Terrain/Terrain.frag rename to jme3-terrain/src/main/resources/Common/MatDefs/Terrain/Terrain.frag diff --git a/engine/src/terrain/Common/MatDefs/Terrain/Terrain.j3md b/jme3-terrain/src/main/resources/Common/MatDefs/Terrain/Terrain.j3md similarity index 100% rename from engine/src/terrain/Common/MatDefs/Terrain/Terrain.j3md rename to jme3-terrain/src/main/resources/Common/MatDefs/Terrain/Terrain.j3md diff --git a/engine/src/terrain/Common/MatDefs/Terrain/Terrain.vert b/jme3-terrain/src/main/resources/Common/MatDefs/Terrain/Terrain.vert similarity index 100% rename from engine/src/terrain/Common/MatDefs/Terrain/Terrain.vert rename to jme3-terrain/src/main/resources/Common/MatDefs/Terrain/Terrain.vert diff --git a/engine/src/terrain/Common/MatDefs/Terrain/TerrainLighting.frag b/jme3-terrain/src/main/resources/Common/MatDefs/Terrain/TerrainLighting.frag similarity index 78% rename from engine/src/terrain/Common/MatDefs/Terrain/TerrainLighting.frag rename to jme3-terrain/src/main/resources/Common/MatDefs/Terrain/TerrainLighting.frag index 68bd2d236..8484b454d 100644 --- a/engine/src/terrain/Common/MatDefs/Terrain/TerrainLighting.frag +++ b/jme3-terrain/src/main/resources/Common/MatDefs/Terrain/TerrainLighting.frag @@ -208,56 +208,53 @@ vec2 computeLighting(in vec3 wvPos, in vec3 wvNorm, in vec3 wvViewDir, in vec3 w vec4 diffuseColor = texture2D(m_DiffuseMap, texCoord * m_DiffuseMap_0_scale); diffuseColor *= alphaBlend.r; #ifdef DIFFUSEMAP_1 - vec4 diffuseColor1 = texture2D(m_DiffuseMap_1, texCoord * m_DiffuseMap_1_scale); - diffuseColor = mix( diffuseColor, diffuseColor1, alphaBlend.g ); - #endif - #ifdef DIFFUSEMAP_2 + vec4 diffuseColor1 = texture2D(m_DiffuseMap_1, texCoord * m_DiffuseMap_1_scale); + diffuseColor = mix( diffuseColor, diffuseColor1, alphaBlend.g ); + #ifdef DIFFUSEMAP_2 vec4 diffuseColor2 = texture2D(m_DiffuseMap_2, texCoord * m_DiffuseMap_2_scale); diffuseColor = mix( diffuseColor, diffuseColor2, alphaBlend.b ); - #endif - #ifdef DIFFUSEMAP_3 - vec4 diffuseColor3 = texture2D(m_DiffuseMap_3, texCoord * m_DiffuseMap_3_scale); - diffuseColor = mix( diffuseColor, diffuseColor3, alphaBlend.a ); - #endif - - #ifdef ALPHAMAP_1 - #ifdef DIFFUSEMAP_4 - vec4 diffuseColor4 = texture2D(m_DiffuseMap_4, texCoord * m_DiffuseMap_4_scale); - diffuseColor = mix( diffuseColor, diffuseColor4, alphaBlend1.r ); - #endif - #ifdef DIFFUSEMAP_5 - vec4 diffuseColor5 = texture2D(m_DiffuseMap_5, texCoord * m_DiffuseMap_5_scale); - diffuseColor = mix( diffuseColor, diffuseColor5, alphaBlend1.g ); - #endif - #ifdef DIFFUSEMAP_6 - vec4 diffuseColor6 = texture2D(m_DiffuseMap_6, texCoord * m_DiffuseMap_6_scale); - diffuseColor = mix( diffuseColor, diffuseColor6, alphaBlend1.b ); - #endif - #ifdef DIFFUSEMAP_7 - vec4 diffuseColor7 = texture2D(m_DiffuseMap_7, texCoord * m_DiffuseMap_7_scale); - diffuseColor = mix( diffuseColor, diffuseColor7, alphaBlend1.a ); - #endif - #endif - - #ifdef ALPHAMAP_2 - #ifdef DIFFUSEMAP_8 - vec4 diffuseColor8 = texture2D(m_DiffuseMap_8, texCoord * m_DiffuseMap_8_scale); - diffuseColor = mix( diffuseColor, diffuseColor8, alphaBlend2.r ); - #endif - #ifdef DIFFUSEMAP_9 - vec4 diffuseColor9 = texture2D(m_DiffuseMap_9, texCoord * m_DiffuseMap_9_scale); - diffuseColor = mix( diffuseColor, diffuseColor9, alphaBlend2.g ); - #endif - #ifdef DIFFUSEMAP_10 - vec4 diffuseColor10 = texture2D(m_DiffuseMap_10, texCoord * m_DiffuseMap_10_scale); - diffuseColor = mix( diffuseColor, diffuseColor10, alphaBlend2.b ); + #ifdef DIFFUSEMAP_3 + vec4 diffuseColor3 = texture2D(m_DiffuseMap_3, texCoord * m_DiffuseMap_3_scale); + diffuseColor = mix( diffuseColor, diffuseColor3, alphaBlend.a ); + #ifdef ALPHAMAP_1 + #ifdef DIFFUSEMAP_4 + vec4 diffuseColor4 = texture2D(m_DiffuseMap_4, texCoord * m_DiffuseMap_4_scale); + diffuseColor = mix( diffuseColor, diffuseColor4, alphaBlend1.r ); + #ifdef DIFFUSEMAP_5 + vec4 diffuseColor5 = texture2D(m_DiffuseMap_5, texCoord * m_DiffuseMap_5_scale); + diffuseColor = mix( diffuseColor, diffuseColor5, alphaBlend1.g ); + #ifdef DIFFUSEMAP_6 + vec4 diffuseColor6 = texture2D(m_DiffuseMap_6, texCoord * m_DiffuseMap_6_scale); + diffuseColor = mix( diffuseColor, diffuseColor6, alphaBlend1.b ); + #ifdef DIFFUSEMAP_7 + vec4 diffuseColor7 = texture2D(m_DiffuseMap_7, texCoord * m_DiffuseMap_7_scale); + diffuseColor = mix( diffuseColor, diffuseColor7, alphaBlend1.a ); + #ifdef ALPHAMAP_2 + #ifdef DIFFUSEMAP_8 + vec4 diffuseColor8 = texture2D(m_DiffuseMap_8, texCoord * m_DiffuseMap_8_scale); + diffuseColor = mix( diffuseColor, diffuseColor8, alphaBlend2.r ); + #ifdef DIFFUSEMAP_9 + vec4 diffuseColor9 = texture2D(m_DiffuseMap_9, texCoord * m_DiffuseMap_9_scale); + diffuseColor = mix( diffuseColor, diffuseColor9, alphaBlend2.g ); + #ifdef DIFFUSEMAP_10 + vec4 diffuseColor10 = texture2D(m_DiffuseMap_10, texCoord * m_DiffuseMap_10_scale); + diffuseColor = mix( diffuseColor, diffuseColor10, alphaBlend2.b ); + #ifdef DIFFUSEMAP_11 + vec4 diffuseColor11 = texture2D(m_DiffuseMap_11, texCoord * m_DiffuseMap_11_scale); + diffuseColor = mix( diffuseColor, diffuseColor11, alphaBlend2.a ); + #endif + #endif + #endif + #endif + #endif + #endif + #endif + #endif + #endif + #endif #endif - #ifdef DIFFUSEMAP_11 - vec4 diffuseColor11 = texture2D(m_DiffuseMap_11, texCoord * m_DiffuseMap_11_scale); - diffuseColor = mix( diffuseColor, diffuseColor11, alphaBlend2.a ); - #endif + #endif #endif - return diffuseColor; } @@ -431,41 +428,41 @@ vec2 computeLighting(in vec3 wvPos, in vec3 wvNorm, in vec3 wvViewDir, in vec3 w vec4 diffuseColor = tex0 * alphaBlend.r; #ifdef DIFFUSEMAP_1 - diffuseColor = mix( diffuseColor, tex1, alphaBlend.g ); - #endif - #ifdef DIFFUSEMAP_2 + diffuseColor = mix( diffuseColor, tex1, alphaBlend.g ); + #ifdef DIFFUSEMAP_2 diffuseColor = mix( diffuseColor, tex2, alphaBlend.b ); - #endif - #ifdef DIFFUSEMAP_3 - diffuseColor = mix( diffuseColor, tex3, alphaBlend.a ); - #endif - #ifdef ALPHAMAP_1 - #ifdef DIFFUSEMAP_4 - diffuseColor = mix( diffuseColor, tex4, alphaBlend1.r ); - #endif - #ifdef DIFFUSEMAP_5 - diffuseColor = mix( diffuseColor, tex5, alphaBlend1.g ); - #endif - #ifdef DIFFUSEMAP_6 - diffuseColor = mix( diffuseColor, tex6, alphaBlend1.b ); - #endif - #ifdef DIFFUSEMAP_7 - diffuseColor = mix( diffuseColor, tex7, alphaBlend1.a ); - #endif - #endif - #ifdef ALPHAMAP_2 - #ifdef DIFFUSEMAP_8 - diffuseColor = mix( diffuseColor, tex8, alphaBlend2.r ); - #endif - #ifdef DIFFUSEMAP_9 - diffuseColor = mix( diffuseColor, tex9, alphaBlend2.g ); - #endif - #ifdef DIFFUSEMAP_10 - diffuseColor = mix( diffuseColor, tex10, alphaBlend2.b ); - #endif - #ifdef DIFFUSEMAP_11 - diffuseColor = mix( diffuseColor, tex11, alphaBlend2.a ); + #ifdef DIFFUSEMAP_3 + diffuseColor = mix( diffuseColor, tex3, alphaBlend.a ); + #ifdef ALPHAMAP_1 + #ifdef DIFFUSEMAP_4 + diffuseColor = mix( diffuseColor, tex4, alphaBlend1.r ); + #ifdef DIFFUSEMAP_5 + diffuseColor = mix( diffuseColor, tex5, alphaBlend1.g ); + #ifdef DIFFUSEMAP_6 + diffuseColor = mix( diffuseColor, tex6, alphaBlend1.b ); + #ifdef DIFFUSEMAP_7 + diffuseColor = mix( diffuseColor, tex7, alphaBlend1.a ); + #ifdef ALPHAMAP_2 + #ifdef DIFFUSEMAP_8 + diffuseColor = mix( diffuseColor, tex8, alphaBlend2.r ); + #ifdef DIFFUSEMAP_9 + diffuseColor = mix( diffuseColor, tex9, alphaBlend2.g ); + #ifdef DIFFUSEMAP_10 + diffuseColor = mix( diffuseColor, tex10, alphaBlend2.b ); + #ifdef DIFFUSEMAP_11 + diffuseColor = mix( diffuseColor, tex11, alphaBlend2.a ); + #endif + #endif + #endif + #endif + #endif + #endif + #endif + #endif + #endif + #endif #endif + #endif #endif return diffuseColor; diff --git a/engine/src/terrain/Common/MatDefs/Terrain/TerrainLighting.j3md b/jme3-terrain/src/main/resources/Common/MatDefs/Terrain/TerrainLighting.j3md similarity index 100% rename from engine/src/terrain/Common/MatDefs/Terrain/TerrainLighting.j3md rename to jme3-terrain/src/main/resources/Common/MatDefs/Terrain/TerrainLighting.j3md diff --git a/engine/src/terrain/Common/MatDefs/Terrain/TerrainLighting.vert b/jme3-terrain/src/main/resources/Common/MatDefs/Terrain/TerrainLighting.vert similarity index 100% rename from engine/src/terrain/Common/MatDefs/Terrain/TerrainLighting.vert rename to jme3-terrain/src/main/resources/Common/MatDefs/Terrain/TerrainLighting.vert diff --git a/jme3-testdata/build.gradle b/jme3-testdata/build.gradle new file mode 100644 index 000000000..1df94c4d2 --- /dev/null +++ b/jme3-testdata/build.gradle @@ -0,0 +1,6 @@ +if (!hasProperty('mainClass')) { + ext.mainClass = '' +} + +dependencies { +} diff --git a/engine/test-data/Blender/2.4x/BaseMesh_249.blend b/jme3-testdata/src/main/resources/Blender/2.4x/BaseMesh_249.blend similarity index 100% rename from engine/test-data/Blender/2.4x/BaseMesh_249.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/BaseMesh_249.blend diff --git a/engine/test-data/Blender/2.4x/BaseScene.blend b/jme3-testdata/src/main/resources/Blender/2.4x/BaseScene.blend similarity index 100% rename from engine/test-data/Blender/2.4x/BaseScene.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/BaseScene.blend diff --git a/engine/test-data/Blender/2.4x/MountainValley_Track.blend b/jme3-testdata/src/main/resources/Blender/2.4x/MountainValley_Track.blend similarity index 100% rename from engine/test-data/Blender/2.4x/MountainValley_Track.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/MountainValley_Track.blend diff --git a/engine/test-data/Blender/2.4x/ObjectAnimation.blend b/jme3-testdata/src/main/resources/Blender/2.4x/ObjectAnimation.blend similarity index 100% rename from engine/test-data/Blender/2.4x/ObjectAnimation.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/ObjectAnimation.blend diff --git a/engine/test-data/Blender/2.4x/SimpleAnimation.blend b/jme3-testdata/src/main/resources/Blender/2.4x/SimpleAnimation.blend similarity index 100% rename from engine/test-data/Blender/2.4x/SimpleAnimation.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/SimpleAnimation.blend diff --git a/engine/test-data/Blender/2.4x/Sinbad.blend b/jme3-testdata/src/main/resources/Blender/2.4x/Sinbad.blend similarity index 100% rename from engine/test-data/Blender/2.4x/Sinbad.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/Sinbad.blend diff --git a/engine/test-data/Blender/2.4x/WoodCrate_lighter - (Inverted Normal Map).png b/jme3-testdata/src/main/resources/Blender/2.4x/WoodCrate_lighter - (Inverted Normal Map).png similarity index 100% rename from engine/test-data/Blender/2.4x/WoodCrate_lighter - (Inverted Normal Map).png rename to jme3-testdata/src/main/resources/Blender/2.4x/WoodCrate_lighter - (Inverted Normal Map).png diff --git a/engine/test-data/Blender/2.4x/WoodCrate_lighter - Height Map.png b/jme3-testdata/src/main/resources/Blender/2.4x/WoodCrate_lighter - Height Map.png similarity index 100% rename from engine/test-data/Blender/2.4x/WoodCrate_lighter - Height Map.png rename to jme3-testdata/src/main/resources/Blender/2.4x/WoodCrate_lighter - Height Map.png diff --git a/engine/test-data/Blender/2.4x/WoodCrate_lighter.png b/jme3-testdata/src/main/resources/Blender/2.4x/WoodCrate_lighter.png similarity index 100% rename from engine/test-data/Blender/2.4x/WoodCrate_lighter.png rename to jme3-testdata/src/main/resources/Blender/2.4x/WoodCrate_lighter.png diff --git a/engine/test-data/Blender/2.4x/animtest.blend b/jme3-testdata/src/main/resources/Blender/2.4x/animtest.blend similarity index 100% rename from engine/test-data/Blender/2.4x/animtest.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/animtest.blend diff --git a/engine/test-data/Blender/2.4x/constraints.blend b/jme3-testdata/src/main/resources/Blender/2.4x/constraints.blend similarity index 100% rename from engine/test-data/Blender/2.4x/constraints.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/constraints.blend diff --git a/engine/test-data/Blender/2.4x/curves.blend b/jme3-testdata/src/main/resources/Blender/2.4x/curves.blend similarity index 100% rename from engine/test-data/Blender/2.4x/curves.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/curves.blend diff --git a/engine/test-data/Blender/2.4x/kerrigan.blend b/jme3-testdata/src/main/resources/Blender/2.4x/kerrigan.blend similarity index 100% rename from engine/test-data/Blender/2.4x/kerrigan.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/kerrigan.blend diff --git a/engine/test-data/Blender/2.4x/kerrigan_diffuse.png b/jme3-testdata/src/main/resources/Blender/2.4x/kerrigan_diffuse.png similarity index 100% rename from engine/test-data/Blender/2.4x/kerrigan_diffuse.png rename to jme3-testdata/src/main/resources/Blender/2.4x/kerrigan_diffuse.png diff --git a/engine/test-data/Blender/2.4x/materials.blend b/jme3-testdata/src/main/resources/Blender/2.4x/materials.blend similarity index 100% rename from engine/test-data/Blender/2.4x/materials.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/materials.blend diff --git a/engine/test-data/Blender/2.4x/modifiers.blend b/jme3-testdata/src/main/resources/Blender/2.4x/modifiers.blend similarity index 100% rename from engine/test-data/Blender/2.4x/modifiers.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/modifiers.blend diff --git a/engine/test-data/Blender/2.4x/nurbs.blend b/jme3-testdata/src/main/resources/Blender/2.4x/nurbs.blend similarity index 100% rename from engine/test-data/Blender/2.4x/nurbs.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/nurbs.blend diff --git a/engine/test-data/Blender/2.4x/particles.blend b/jme3-testdata/src/main/resources/Blender/2.4x/particles.blend similarity index 100% rename from engine/test-data/Blender/2.4x/particles.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/particles.blend diff --git a/engine/test-data/Blender/2.4x/positions.blend b/jme3-testdata/src/main/resources/Blender/2.4x/positions.blend similarity index 100% rename from engine/test-data/Blender/2.4x/positions.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/positions.blend diff --git a/engine/test-data/Blender/2.4x/sinbad_body.tga b/jme3-testdata/src/main/resources/Blender/2.4x/sinbad_body.tga similarity index 100% rename from engine/test-data/Blender/2.4x/sinbad_body.tga rename to jme3-testdata/src/main/resources/Blender/2.4x/sinbad_body.tga diff --git a/engine/test-data/Blender/2.4x/sinbad_clothes.tga b/jme3-testdata/src/main/resources/Blender/2.4x/sinbad_clothes.tga similarity index 100% rename from engine/test-data/Blender/2.4x/sinbad_clothes.tga rename to jme3-testdata/src/main/resources/Blender/2.4x/sinbad_clothes.tga diff --git a/engine/test-data/Blender/2.4x/sinbad_sword.tga b/jme3-testdata/src/main/resources/Blender/2.4x/sinbad_sword.tga similarity index 100% rename from engine/test-data/Blender/2.4x/sinbad_sword.tga rename to jme3-testdata/src/main/resources/Blender/2.4x/sinbad_sword.tga diff --git a/engine/test-data/Blender/2.4x/texturedPlaneTest.blend b/jme3-testdata/src/main/resources/Blender/2.4x/texturedPlaneTest.blend similarity index 100% rename from engine/test-data/Blender/2.4x/texturedPlaneTest.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/texturedPlaneTest.blend diff --git a/engine/test-data/Blender/2.4x/textures.blend b/jme3-testdata/src/main/resources/Blender/2.4x/textures.blend similarity index 100% rename from engine/test-data/Blender/2.4x/textures.blend rename to jme3-testdata/src/main/resources/Blender/2.4x/textures.blend diff --git a/engine/test-data/Blender/2.4x/textures/Concrete_Wall.PNG b/jme3-testdata/src/main/resources/Blender/2.4x/textures/Concrete_Wall.PNG similarity index 100% rename from engine/test-data/Blender/2.4x/textures/Concrete_Wall.PNG rename to jme3-testdata/src/main/resources/Blender/2.4x/textures/Concrete_Wall.PNG diff --git a/engine/test-data/Blender/2.4x/textures/Grass_256.png b/jme3-testdata/src/main/resources/Blender/2.4x/textures/Grass_256.png similarity index 100% rename from engine/test-data/Blender/2.4x/textures/Grass_256.png rename to jme3-testdata/src/main/resources/Blender/2.4x/textures/Grass_256.png diff --git a/engine/test-data/Blender/2.4x/textures/SandDesert_StartTower.png b/jme3-testdata/src/main/resources/Blender/2.4x/textures/SandDesert_StartTower.png similarity index 100% rename from engine/test-data/Blender/2.4x/textures/SandDesert_StartTower.png rename to jme3-testdata/src/main/resources/Blender/2.4x/textures/SandDesert_StartTower.png diff --git a/engine/test-data/Blender/2.4x/textures/SkyBox-Mountain.png b/jme3-testdata/src/main/resources/Blender/2.4x/textures/SkyBox-Mountain.png similarity index 100% rename from engine/test-data/Blender/2.4x/textures/SkyBox-Mountain.png rename to jme3-testdata/src/main/resources/Blender/2.4x/textures/SkyBox-Mountain.png diff --git a/engine/test-data/Blender/2.4x/textures/Tar_Cracked.png b/jme3-testdata/src/main/resources/Blender/2.4x/textures/Tar_Cracked.png similarity index 100% rename from engine/test-data/Blender/2.4x/textures/Tar_Cracked.png rename to jme3-testdata/src/main/resources/Blender/2.4x/textures/Tar_Cracked.png diff --git a/engine/test-data/Blender/2.4x/textures/WarningStrip.png b/jme3-testdata/src/main/resources/Blender/2.4x/textures/WarningStrip.png similarity index 100% rename from engine/test-data/Blender/2.4x/textures/WarningStrip.png rename to jme3-testdata/src/main/resources/Blender/2.4x/textures/WarningStrip.png diff --git a/engine/test-data/Blender/2.5x/BaseMesh_256.blend b/jme3-testdata/src/main/resources/Blender/2.5x/BaseMesh_256.blend similarity index 100% rename from engine/test-data/Blender/2.5x/BaseMesh_256.blend rename to jme3-testdata/src/main/resources/Blender/2.5x/BaseMesh_256.blend diff --git a/engine/test-data/Blender/2.5x/textures.blend b/jme3-testdata/src/main/resources/Blender/2.5x/textures.blend similarity index 100% rename from engine/test-data/Blender/2.5x/textures.blend rename to jme3-testdata/src/main/resources/Blender/2.5x/textures.blend diff --git a/engine/test-data/Blender/test.conf b/jme3-testdata/src/main/resources/Blender/test.conf similarity index 100% rename from engine/test-data/Blender/test.conf rename to jme3-testdata/src/main/resources/Blender/test.conf diff --git a/engine/test-data/Effects/Explosion/Debris.png b/jme3-testdata/src/main/resources/Effects/Explosion/Debris.png similarity index 100% rename from engine/test-data/Effects/Explosion/Debris.png rename to jme3-testdata/src/main/resources/Effects/Explosion/Debris.png diff --git a/engine/test-data/Effects/Explosion/flame.png b/jme3-testdata/src/main/resources/Effects/Explosion/flame.png similarity index 100% rename from engine/test-data/Effects/Explosion/flame.png rename to jme3-testdata/src/main/resources/Effects/Explosion/flame.png diff --git a/engine/test-data/Effects/Explosion/flash.png b/jme3-testdata/src/main/resources/Effects/Explosion/flash.png similarity index 100% rename from engine/test-data/Effects/Explosion/flash.png rename to jme3-testdata/src/main/resources/Effects/Explosion/flash.png diff --git a/engine/test-data/Effects/Explosion/roundspark.png b/jme3-testdata/src/main/resources/Effects/Explosion/roundspark.png similarity index 100% rename from engine/test-data/Effects/Explosion/roundspark.png rename to jme3-testdata/src/main/resources/Effects/Explosion/roundspark.png diff --git a/engine/test-data/Effects/Explosion/shockwave.png b/jme3-testdata/src/main/resources/Effects/Explosion/shockwave.png similarity index 100% rename from engine/test-data/Effects/Explosion/shockwave.png rename to jme3-testdata/src/main/resources/Effects/Explosion/shockwave.png diff --git a/engine/test-data/Effects/Explosion/smoketrail.png b/jme3-testdata/src/main/resources/Effects/Explosion/smoketrail.png similarity index 100% rename from engine/test-data/Effects/Explosion/smoketrail.png rename to jme3-testdata/src/main/resources/Effects/Explosion/smoketrail.png diff --git a/engine/test-data/Effects/Explosion/spark.png b/jme3-testdata/src/main/resources/Effects/Explosion/spark.png similarity index 100% rename from engine/test-data/Effects/Explosion/spark.png rename to jme3-testdata/src/main/resources/Effects/Explosion/spark.png diff --git a/engine/test-data/Effects/Smoke/Smoke.png b/jme3-testdata/src/main/resources/Effects/Smoke/Smoke.png similarity index 100% rename from engine/test-data/Effects/Smoke/Smoke.png rename to jme3-testdata/src/main/resources/Effects/Smoke/Smoke.png diff --git a/engine/test-data/Interface/Joystick/gamepad-buttons.png b/jme3-testdata/src/main/resources/Interface/Joystick/gamepad-buttons.png similarity index 100% rename from engine/test-data/Interface/Joystick/gamepad-buttons.png rename to jme3-testdata/src/main/resources/Interface/Joystick/gamepad-buttons.png diff --git a/engine/test-data/Interface/Joystick/gamepad-frame.png b/jme3-testdata/src/main/resources/Interface/Joystick/gamepad-frame.png similarity index 100% rename from engine/test-data/Interface/Joystick/gamepad-frame.png rename to jme3-testdata/src/main/resources/Interface/Joystick/gamepad-frame.png diff --git a/engine/test-data/Interface/Joystick/gamepad-stick.png b/jme3-testdata/src/main/resources/Interface/Joystick/gamepad-stick.png similarity index 100% rename from engine/test-data/Interface/Joystick/gamepad-stick.png rename to jme3-testdata/src/main/resources/Interface/Joystick/gamepad-stick.png diff --git a/engine/test-data/Interface/Logo/Cursor.png b/jme3-testdata/src/main/resources/Interface/Logo/Cursor.png similarity index 100% rename from engine/test-data/Interface/Logo/Cursor.png rename to jme3-testdata/src/main/resources/Interface/Logo/Cursor.png diff --git a/engine/test-data/Interface/Logo/Logo.j3m b/jme3-testdata/src/main/resources/Interface/Logo/Logo.j3m similarity index 100% rename from engine/test-data/Interface/Logo/Logo.j3m rename to jme3-testdata/src/main/resources/Interface/Logo/Logo.j3m diff --git a/engine/test-data/Interface/Logo/Monkey.jpg b/jme3-testdata/src/main/resources/Interface/Logo/Monkey.jpg similarity index 100% rename from engine/test-data/Interface/Logo/Monkey.jpg rename to jme3-testdata/src/main/resources/Interface/Logo/Monkey.jpg diff --git a/engine/test-data/Interface/Logo/Monkey.png b/jme3-testdata/src/main/resources/Interface/Logo/Monkey.png similarity index 100% rename from engine/test-data/Interface/Logo/Monkey.png rename to jme3-testdata/src/main/resources/Interface/Logo/Monkey.png diff --git a/engine/test-data/Interface/Nifty/CinematicTest.xml b/jme3-testdata/src/main/resources/Interface/Nifty/CinematicTest.xml similarity index 100% rename from engine/test-data/Interface/Nifty/CinematicTest.xml rename to jme3-testdata/src/main/resources/Interface/Nifty/CinematicTest.xml diff --git a/engine/test-data/Interface/Nifty/HelloJme.xml b/jme3-testdata/src/main/resources/Interface/Nifty/HelloJme.xml similarity index 100% rename from engine/test-data/Interface/Nifty/HelloJme.xml rename to jme3-testdata/src/main/resources/Interface/Nifty/HelloJme.xml diff --git a/engine/test-data/Interface/icons/SmartMonkey128.png b/jme3-testdata/src/main/resources/Interface/icons/SmartMonkey128.png similarity index 100% rename from engine/test-data/Interface/icons/SmartMonkey128.png rename to jme3-testdata/src/main/resources/Interface/icons/SmartMonkey128.png diff --git a/engine/test-data/Interface/icons/SmartMonkey16.png b/jme3-testdata/src/main/resources/Interface/icons/SmartMonkey16.png similarity index 100% rename from engine/test-data/Interface/icons/SmartMonkey16.png rename to jme3-testdata/src/main/resources/Interface/icons/SmartMonkey16.png diff --git a/engine/test-data/Interface/icons/SmartMonkey256.png b/jme3-testdata/src/main/resources/Interface/icons/SmartMonkey256.png similarity index 100% rename from engine/test-data/Interface/icons/SmartMonkey256.png rename to jme3-testdata/src/main/resources/Interface/icons/SmartMonkey256.png diff --git a/engine/test-data/Interface/icons/SmartMonkey32.png b/jme3-testdata/src/main/resources/Interface/icons/SmartMonkey32.png similarity index 100% rename from engine/test-data/Interface/icons/SmartMonkey32.png rename to jme3-testdata/src/main/resources/Interface/icons/SmartMonkey32.png diff --git a/engine/test-data/Models/Boat/boat.j3m b/jme3-testdata/src/main/resources/Models/Boat/boat.j3m similarity index 100% rename from engine/test-data/Models/Boat/boat.j3m rename to jme3-testdata/src/main/resources/Models/Boat/boat.j3m diff --git a/engine/test-data/Models/Boat/boat.j3o b/jme3-testdata/src/main/resources/Models/Boat/boat.j3o similarity index 100% rename from engine/test-data/Models/Boat/boat.j3o rename to jme3-testdata/src/main/resources/Models/Boat/boat.j3o diff --git a/engine/test-data/Models/Boat/boat.mesh.xml b/jme3-testdata/src/main/resources/Models/Boat/boat.mesh.xml similarity index 100% rename from engine/test-data/Models/Boat/boat.mesh.xml rename to jme3-testdata/src/main/resources/Models/Boat/boat.mesh.xml diff --git a/engine/test-data/Models/Boat/boat.png b/jme3-testdata/src/main/resources/Models/Boat/boat.png similarity index 100% rename from engine/test-data/Models/Boat/boat.png rename to jme3-testdata/src/main/resources/Models/Boat/boat.png diff --git a/engine/test-data/Models/Boat/boat_normal.png b/jme3-testdata/src/main/resources/Models/Boat/boat_normal.png similarity index 100% rename from engine/test-data/Models/Boat/boat_normal.png rename to jme3-testdata/src/main/resources/Models/Boat/boat_normal.png diff --git a/engine/test-data/Models/Buggy/Buggy.j3m b/jme3-testdata/src/main/resources/Models/Buggy/Buggy.j3m similarity index 100% rename from engine/test-data/Models/Buggy/Buggy.j3m rename to jme3-testdata/src/main/resources/Models/Buggy/Buggy.j3m diff --git a/engine/test-data/Models/Buggy/Buggy.j3o b/jme3-testdata/src/main/resources/Models/Buggy/Buggy.j3o similarity index 100% rename from engine/test-data/Models/Buggy/Buggy.j3o rename to jme3-testdata/src/main/resources/Models/Buggy/Buggy.j3o diff --git a/engine/test-data/Models/Buggy/buggy_diffuse.jpg b/jme3-testdata/src/main/resources/Models/Buggy/buggy_diffuse.jpg similarity index 100% rename from engine/test-data/Models/Buggy/buggy_diffuse.jpg rename to jme3-testdata/src/main/resources/Models/Buggy/buggy_diffuse.jpg diff --git a/engine/test-data/Models/Buggy/buggy_glow.jpg b/jme3-testdata/src/main/resources/Models/Buggy/buggy_glow.jpg similarity index 100% rename from engine/test-data/Models/Buggy/buggy_glow.jpg rename to jme3-testdata/src/main/resources/Models/Buggy/buggy_glow.jpg diff --git a/engine/test-data/Models/Buggy/buggy_normals.png b/jme3-testdata/src/main/resources/Models/Buggy/buggy_normals.png similarity index 100% rename from engine/test-data/Models/Buggy/buggy_normals.png rename to jme3-testdata/src/main/resources/Models/Buggy/buggy_normals.png diff --git a/engine/test-data/Models/Buggy/buggy_specular.jpg b/jme3-testdata/src/main/resources/Models/Buggy/buggy_specular.jpg similarity index 100% rename from engine/test-data/Models/Buggy/buggy_specular.jpg rename to jme3-testdata/src/main/resources/Models/Buggy/buggy_specular.jpg diff --git a/engine/test-data/Models/Elephant/Elephant.j3m b/jme3-testdata/src/main/resources/Models/Elephant/Elephant.j3m similarity index 100% rename from engine/test-data/Models/Elephant/Elephant.j3m rename to jme3-testdata/src/main/resources/Models/Elephant/Elephant.j3m diff --git a/engine/test-data/Models/Elephant/Elephant.jpg b/jme3-testdata/src/main/resources/Models/Elephant/Elephant.jpg similarity index 100% rename from engine/test-data/Models/Elephant/Elephant.jpg rename to jme3-testdata/src/main/resources/Models/Elephant/Elephant.jpg diff --git a/engine/test-data/Models/Elephant/Elephant.material b/jme3-testdata/src/main/resources/Models/Elephant/Elephant.material similarity index 100% rename from engine/test-data/Models/Elephant/Elephant.material rename to jme3-testdata/src/main/resources/Models/Elephant/Elephant.material diff --git a/engine/test-data/Models/Elephant/Elephant.mesh.xml b/jme3-testdata/src/main/resources/Models/Elephant/Elephant.mesh.xml similarity index 100% rename from engine/test-data/Models/Elephant/Elephant.mesh.xml rename to jme3-testdata/src/main/resources/Models/Elephant/Elephant.mesh.xml diff --git a/engine/test-data/Models/Elephant/Elephant.skeleton.xml b/jme3-testdata/src/main/resources/Models/Elephant/Elephant.skeleton.xml similarity index 100% rename from engine/test-data/Models/Elephant/Elephant.skeleton.xml rename to jme3-testdata/src/main/resources/Models/Elephant/Elephant.skeleton.xml diff --git a/engine/test-data/Models/Elephant/ElephantEye.jpg b/jme3-testdata/src/main/resources/Models/Elephant/ElephantEye.jpg similarity index 100% rename from engine/test-data/Models/Elephant/ElephantEye.jpg rename to jme3-testdata/src/main/resources/Models/Elephant/ElephantEye.jpg diff --git a/engine/test-data/Models/Elephant/ElephantTusk.jpg b/jme3-testdata/src/main/resources/Models/Elephant/ElephantTusk.jpg similarity index 100% rename from engine/test-data/Models/Elephant/ElephantTusk.jpg rename to jme3-testdata/src/main/resources/Models/Elephant/ElephantTusk.jpg diff --git a/engine/test-data/Models/Elephant/Elephant_normal.jpg b/jme3-testdata/src/main/resources/Models/Elephant/Elephant_normal.jpg similarity index 100% rename from engine/test-data/Models/Elephant/Elephant_normal.jpg rename to jme3-testdata/src/main/resources/Models/Elephant/Elephant_normal.jpg diff --git a/engine/test-data/Models/Ferrari/Car.jpg b/jme3-testdata/src/main/resources/Models/Ferrari/Car.jpg similarity index 100% rename from engine/test-data/Models/Ferrari/Car.jpg rename to jme3-testdata/src/main/resources/Models/Ferrari/Car.jpg diff --git a/engine/test-data/Models/Ferrari/Car.material b/jme3-testdata/src/main/resources/Models/Ferrari/Car.material similarity index 100% rename from engine/test-data/Models/Ferrari/Car.material rename to jme3-testdata/src/main/resources/Models/Ferrari/Car.material diff --git a/engine/test-data/Models/Ferrari/Car.mesh.xml b/jme3-testdata/src/main/resources/Models/Ferrari/Car.mesh.xml similarity index 100% rename from engine/test-data/Models/Ferrari/Car.mesh.xml rename to jme3-testdata/src/main/resources/Models/Ferrari/Car.mesh.xml diff --git a/engine/test-data/Models/Ferrari/Car.scene b/jme3-testdata/src/main/resources/Models/Ferrari/Car.scene similarity index 100% rename from engine/test-data/Models/Ferrari/Car.scene rename to jme3-testdata/src/main/resources/Models/Ferrari/Car.scene diff --git a/engine/test-data/Models/Ferrari/WheelBackLeft.mesh.xml b/jme3-testdata/src/main/resources/Models/Ferrari/WheelBackLeft.mesh.xml similarity index 100% rename from engine/test-data/Models/Ferrari/WheelBackLeft.mesh.xml rename to jme3-testdata/src/main/resources/Models/Ferrari/WheelBackLeft.mesh.xml diff --git a/engine/test-data/Models/Ferrari/WheelBackRight.mesh.xml b/jme3-testdata/src/main/resources/Models/Ferrari/WheelBackRight.mesh.xml similarity index 100% rename from engine/test-data/Models/Ferrari/WheelBackRight.mesh.xml rename to jme3-testdata/src/main/resources/Models/Ferrari/WheelBackRight.mesh.xml diff --git a/engine/test-data/Models/Ferrari/WheelFrontLeft.mesh.xml b/jme3-testdata/src/main/resources/Models/Ferrari/WheelFrontLeft.mesh.xml similarity index 100% rename from engine/test-data/Models/Ferrari/WheelFrontLeft.mesh.xml rename to jme3-testdata/src/main/resources/Models/Ferrari/WheelFrontLeft.mesh.xml diff --git a/engine/test-data/Models/Ferrari/WheelFrontRight.mesh.xml b/jme3-testdata/src/main/resources/Models/Ferrari/WheelFrontRight.mesh.xml similarity index 100% rename from engine/test-data/Models/Ferrari/WheelFrontRight.mesh.xml rename to jme3-testdata/src/main/resources/Models/Ferrari/WheelFrontRight.mesh.xml diff --git a/engine/test-data/Models/HoverTank/Tank2.mesh.xml b/jme3-testdata/src/main/resources/Models/HoverTank/Tank2.mesh.xml similarity index 100% rename from engine/test-data/Models/HoverTank/Tank2.mesh.xml rename to jme3-testdata/src/main/resources/Models/HoverTank/Tank2.mesh.xml diff --git a/engine/test-data/Models/HoverTank/tank.j3m b/jme3-testdata/src/main/resources/Models/HoverTank/tank.j3m similarity index 100% rename from engine/test-data/Models/HoverTank/tank.j3m rename to jme3-testdata/src/main/resources/Models/HoverTank/tank.j3m diff --git a/engine/test-data/Models/HoverTank/tankFinalExport.blend b/jme3-testdata/src/main/resources/Models/HoverTank/tankFinalExport.blend similarity index 100% rename from engine/test-data/Models/HoverTank/tankFinalExport.blend rename to jme3-testdata/src/main/resources/Models/HoverTank/tankFinalExport.blend diff --git a/engine/test-data/Models/HoverTank/tank_diffuse.jpg b/jme3-testdata/src/main/resources/Models/HoverTank/tank_diffuse.jpg similarity index 100% rename from engine/test-data/Models/HoverTank/tank_diffuse.jpg rename to jme3-testdata/src/main/resources/Models/HoverTank/tank_diffuse.jpg diff --git a/engine/test-data/Models/HoverTank/tank_glow_map.jpg b/jme3-testdata/src/main/resources/Models/HoverTank/tank_glow_map.jpg similarity index 100% rename from engine/test-data/Models/HoverTank/tank_glow_map.jpg rename to jme3-testdata/src/main/resources/Models/HoverTank/tank_glow_map.jpg diff --git a/engine/test-data/Models/HoverTank/tank_normals.png b/jme3-testdata/src/main/resources/Models/HoverTank/tank_normals.png similarity index 100% rename from engine/test-data/Models/HoverTank/tank_normals.png rename to jme3-testdata/src/main/resources/Models/HoverTank/tank_normals.png diff --git a/engine/test-data/Models/HoverTank/tank_specular.jpg b/jme3-testdata/src/main/resources/Models/HoverTank/tank_specular.jpg similarity index 100% rename from engine/test-data/Models/HoverTank/tank_specular.jpg rename to jme3-testdata/src/main/resources/Models/HoverTank/tank_specular.jpg diff --git a/engine/test-data/Models/Jaime/Jaime.j3m b/jme3-testdata/src/main/resources/Models/Jaime/Jaime.j3m similarity index 100% rename from engine/test-data/Models/Jaime/Jaime.j3m rename to jme3-testdata/src/main/resources/Models/Jaime/Jaime.j3m diff --git a/engine/test-data/Models/Jaime/Jaime.j3o b/jme3-testdata/src/main/resources/Models/Jaime/Jaime.j3o similarity index 100% rename from engine/test-data/Models/Jaime/Jaime.j3o rename to jme3-testdata/src/main/resources/Models/Jaime/Jaime.j3o diff --git a/engine/test-data/Models/Jaime/NormalMap.png b/jme3-testdata/src/main/resources/Models/Jaime/NormalMap.png similarity index 100% rename from engine/test-data/Models/Jaime/NormalMap.png rename to jme3-testdata/src/main/resources/Models/Jaime/NormalMap.png diff --git a/engine/test-data/Models/Jaime/diffuseMap.jpg b/jme3-testdata/src/main/resources/Models/Jaime/diffuseMap.jpg similarity index 100% rename from engine/test-data/Models/Jaime/diffuseMap.jpg rename to jme3-testdata/src/main/resources/Models/Jaime/diffuseMap.jpg diff --git a/engine/test-data/Models/MonkeyHead/MonkeyHead.j3m b/jme3-testdata/src/main/resources/Models/MonkeyHead/MonkeyHead.j3m similarity index 100% rename from engine/test-data/Models/MonkeyHead/MonkeyHead.j3m rename to jme3-testdata/src/main/resources/Models/MonkeyHead/MonkeyHead.j3m diff --git a/engine/test-data/Models/MonkeyHead/MonkeyHead.mesh.xml b/jme3-testdata/src/main/resources/Models/MonkeyHead/MonkeyHead.mesh.xml similarity index 100% rename from engine/test-data/Models/MonkeyHead/MonkeyHead.mesh.xml rename to jme3-testdata/src/main/resources/Models/MonkeyHead/MonkeyHead.mesh.xml diff --git a/engine/test-data/Models/MonkeyHead/MonkeyHead_diffuse.jpg b/jme3-testdata/src/main/resources/Models/MonkeyHead/MonkeyHead_diffuse.jpg similarity index 100% rename from engine/test-data/Models/MonkeyHead/MonkeyHead_diffuse.jpg rename to jme3-testdata/src/main/resources/Models/MonkeyHead/MonkeyHead_diffuse.jpg diff --git a/engine/test-data/Models/MonkeyHead/MonkeyHead_normal.jpg b/jme3-testdata/src/main/resources/Models/MonkeyHead/MonkeyHead_normal.jpg similarity index 100% rename from engine/test-data/Models/MonkeyHead/MonkeyHead_normal.jpg rename to jme3-testdata/src/main/resources/Models/MonkeyHead/MonkeyHead_normal.jpg diff --git a/engine/test-data/Models/MonkeyHead/MonkeyHead_spec.jpg b/jme3-testdata/src/main/resources/Models/MonkeyHead/MonkeyHead_spec.jpg similarity index 100% rename from engine/test-data/Models/MonkeyHead/MonkeyHead_spec.jpg rename to jme3-testdata/src/main/resources/Models/MonkeyHead/MonkeyHead_spec.jpg diff --git a/engine/test-data/Models/Ninja/Ninja.jpg b/jme3-testdata/src/main/resources/Models/Ninja/Ninja.jpg similarity index 100% rename from engine/test-data/Models/Ninja/Ninja.jpg rename to jme3-testdata/src/main/resources/Models/Ninja/Ninja.jpg diff --git a/engine/test-data/Models/Ninja/Ninja.material b/jme3-testdata/src/main/resources/Models/Ninja/Ninja.material similarity index 100% rename from engine/test-data/Models/Ninja/Ninja.material rename to jme3-testdata/src/main/resources/Models/Ninja/Ninja.material diff --git a/engine/test-data/Models/Ninja/Ninja.mesh.xml b/jme3-testdata/src/main/resources/Models/Ninja/Ninja.mesh.xml similarity index 100% rename from engine/test-data/Models/Ninja/Ninja.mesh.xml rename to jme3-testdata/src/main/resources/Models/Ninja/Ninja.mesh.xml diff --git a/engine/test-data/Models/Ninja/Ninja.skeleton.xml b/jme3-testdata/src/main/resources/Models/Ninja/Ninja.skeleton.xml similarity index 100% rename from engine/test-data/Models/Ninja/Ninja.skeleton.xml rename to jme3-testdata/src/main/resources/Models/Ninja/Ninja.skeleton.xml diff --git a/engine/test-data/Models/Oto/Oto.j3m b/jme3-testdata/src/main/resources/Models/Oto/Oto.j3m similarity index 100% rename from engine/test-data/Models/Oto/Oto.j3m rename to jme3-testdata/src/main/resources/Models/Oto/Oto.j3m diff --git a/engine/test-data/Models/Oto/Oto.jpg b/jme3-testdata/src/main/resources/Models/Oto/Oto.jpg similarity index 100% rename from engine/test-data/Models/Oto/Oto.jpg rename to jme3-testdata/src/main/resources/Models/Oto/Oto.jpg diff --git a/engine/test-data/Models/Oto/Oto.material b/jme3-testdata/src/main/resources/Models/Oto/Oto.material similarity index 100% rename from engine/test-data/Models/Oto/Oto.material rename to jme3-testdata/src/main/resources/Models/Oto/Oto.material diff --git a/engine/test-data/Models/Oto/Oto.mesh.xml b/jme3-testdata/src/main/resources/Models/Oto/Oto.mesh.xml similarity index 100% rename from engine/test-data/Models/Oto/Oto.mesh.xml rename to jme3-testdata/src/main/resources/Models/Oto/Oto.mesh.xml diff --git a/engine/test-data/Models/Oto/Oto.skeleton.xml b/jme3-testdata/src/main/resources/Models/Oto/Oto.skeleton.xml similarity index 100% rename from engine/test-data/Models/Oto/Oto.skeleton.xml rename to jme3-testdata/src/main/resources/Models/Oto/Oto.skeleton.xml diff --git a/engine/test-data/Models/Sign Post/Sign Post.j3m b/jme3-testdata/src/main/resources/Models/Sign Post/Sign Post.j3m similarity index 100% rename from engine/test-data/Models/Sign Post/Sign Post.j3m rename to jme3-testdata/src/main/resources/Models/Sign Post/Sign Post.j3m diff --git a/engine/test-data/Models/Sign Post/Sign Post.jpg b/jme3-testdata/src/main/resources/Models/Sign Post/Sign Post.jpg similarity index 100% rename from engine/test-data/Models/Sign Post/Sign Post.jpg rename to jme3-testdata/src/main/resources/Models/Sign Post/Sign Post.jpg diff --git a/engine/test-data/Models/Sign Post/Sign Post.material b/jme3-testdata/src/main/resources/Models/Sign Post/Sign Post.material similarity index 100% rename from engine/test-data/Models/Sign Post/Sign Post.material rename to jme3-testdata/src/main/resources/Models/Sign Post/Sign Post.material diff --git a/engine/test-data/Models/Sign Post/Sign Post.mesh.xml b/jme3-testdata/src/main/resources/Models/Sign Post/Sign Post.mesh.xml similarity index 100% rename from engine/test-data/Models/Sign Post/Sign Post.mesh.xml rename to jme3-testdata/src/main/resources/Models/Sign Post/Sign Post.mesh.xml diff --git a/engine/test-data/Models/Sign Post/Sign Post_normal.jpg b/jme3-testdata/src/main/resources/Models/Sign Post/Sign Post_normal.jpg similarity index 100% rename from engine/test-data/Models/Sign Post/Sign Post_normal.jpg rename to jme3-testdata/src/main/resources/Models/Sign Post/Sign Post_normal.jpg diff --git a/engine/test-data/Models/Sign Post/Sign Post_specular.jpg b/jme3-testdata/src/main/resources/Models/Sign Post/Sign Post_specular.jpg similarity index 100% rename from engine/test-data/Models/Sign Post/Sign Post_specular.jpg rename to jme3-testdata/src/main/resources/Models/Sign Post/Sign Post_specular.jpg diff --git a/engine/test-data/Models/Sinbad/README-LICENSE.txt b/jme3-testdata/src/main/resources/Models/Sinbad/README-LICENSE.txt similarity index 100% rename from engine/test-data/Models/Sinbad/README-LICENSE.txt rename to jme3-testdata/src/main/resources/Models/Sinbad/README-LICENSE.txt diff --git a/engine/test-data/Models/Sinbad/Sinbad.material b/jme3-testdata/src/main/resources/Models/Sinbad/Sinbad.material similarity index 100% rename from engine/test-data/Models/Sinbad/Sinbad.material rename to jme3-testdata/src/main/resources/Models/Sinbad/Sinbad.material diff --git a/engine/test-data/Models/Sinbad/Sinbad.mesh.xml b/jme3-testdata/src/main/resources/Models/Sinbad/Sinbad.mesh.xml similarity index 100% rename from engine/test-data/Models/Sinbad/Sinbad.mesh.xml rename to jme3-testdata/src/main/resources/Models/Sinbad/Sinbad.mesh.xml diff --git a/engine/test-data/Models/Sinbad/Sinbad.skeleton.xml b/jme3-testdata/src/main/resources/Models/Sinbad/Sinbad.skeleton.xml similarity index 100% rename from engine/test-data/Models/Sinbad/Sinbad.skeleton.xml rename to jme3-testdata/src/main/resources/Models/Sinbad/Sinbad.skeleton.xml diff --git a/engine/test-data/Models/Sinbad/Sword.material b/jme3-testdata/src/main/resources/Models/Sinbad/Sword.material similarity index 100% rename from engine/test-data/Models/Sinbad/Sword.material rename to jme3-testdata/src/main/resources/Models/Sinbad/Sword.material diff --git a/engine/test-data/Models/Sinbad/Sword.mesh.xml b/jme3-testdata/src/main/resources/Models/Sinbad/Sword.mesh.xml similarity index 100% rename from engine/test-data/Models/Sinbad/Sword.mesh.xml rename to jme3-testdata/src/main/resources/Models/Sinbad/Sword.mesh.xml diff --git a/engine/test-data/Models/Sinbad/sinbad_body.jpg b/jme3-testdata/src/main/resources/Models/Sinbad/sinbad_body.jpg similarity index 100% rename from engine/test-data/Models/Sinbad/sinbad_body.jpg rename to jme3-testdata/src/main/resources/Models/Sinbad/sinbad_body.jpg diff --git a/engine/test-data/Models/Sinbad/sinbad_clothes.jpg b/jme3-testdata/src/main/resources/Models/Sinbad/sinbad_clothes.jpg similarity index 100% rename from engine/test-data/Models/Sinbad/sinbad_clothes.jpg rename to jme3-testdata/src/main/resources/Models/Sinbad/sinbad_clothes.jpg diff --git a/engine/test-data/Models/Sinbad/sinbad_sword.jpg b/jme3-testdata/src/main/resources/Models/Sinbad/sinbad_sword.jpg similarity index 100% rename from engine/test-data/Models/Sinbad/sinbad_sword.jpg rename to jme3-testdata/src/main/resources/Models/Sinbad/sinbad_sword.jpg diff --git a/engine/test-data/Models/SpaceCraft/Rocket.material b/jme3-testdata/src/main/resources/Models/SpaceCraft/Rocket.material similarity index 100% rename from engine/test-data/Models/SpaceCraft/Rocket.material rename to jme3-testdata/src/main/resources/Models/SpaceCraft/Rocket.material diff --git a/engine/test-data/Models/SpaceCraft/Rocket.mesh.xml b/jme3-testdata/src/main/resources/Models/SpaceCraft/Rocket.mesh.xml similarity index 100% rename from engine/test-data/Models/SpaceCraft/Rocket.mesh.xml rename to jme3-testdata/src/main/resources/Models/SpaceCraft/Rocket.mesh.xml diff --git a/engine/test-data/Models/SpaceCraft/Rocket.png b/jme3-testdata/src/main/resources/Models/SpaceCraft/Rocket.png similarity index 100% rename from engine/test-data/Models/SpaceCraft/Rocket.png rename to jme3-testdata/src/main/resources/Models/SpaceCraft/Rocket.png diff --git a/engine/test-data/Models/Sponza/Sponza.j3o b/jme3-testdata/src/main/resources/Models/Sponza/Sponza.j3o similarity index 100% rename from engine/test-data/Models/Sponza/Sponza.j3o rename to jme3-testdata/src/main/resources/Models/Sponza/Sponza.j3o diff --git a/engine/test-data/Models/TangentBugs/test.blend b/jme3-testdata/src/main/resources/Models/TangentBugs/test.blend similarity index 100% rename from engine/test-data/Models/TangentBugs/test.blend rename to jme3-testdata/src/main/resources/Models/TangentBugs/test.blend diff --git a/engine/test-data/Models/TangentBugs/test_normal.png b/jme3-testdata/src/main/resources/Models/TangentBugs/test_normal.png similarity index 100% rename from engine/test-data/Models/TangentBugs/test_normal.png rename to jme3-testdata/src/main/resources/Models/TangentBugs/test_normal.png diff --git a/engine/test-data/Models/Teapot/Teapot.mesh.xml b/jme3-testdata/src/main/resources/Models/Teapot/Teapot.mesh.xml similarity index 100% rename from engine/test-data/Models/Teapot/Teapot.mesh.xml rename to jme3-testdata/src/main/resources/Models/Teapot/Teapot.mesh.xml diff --git a/engine/test-data/Models/Teapot/Teapot.mtl b/jme3-testdata/src/main/resources/Models/Teapot/Teapot.mtl similarity index 100% rename from engine/test-data/Models/Teapot/Teapot.mtl rename to jme3-testdata/src/main/resources/Models/Teapot/Teapot.mtl diff --git a/engine/test-data/Models/Teapot/Teapot.obj b/jme3-testdata/src/main/resources/Models/Teapot/Teapot.obj similarity index 100% rename from engine/test-data/Models/Teapot/Teapot.obj rename to jme3-testdata/src/main/resources/Models/Teapot/Teapot.obj diff --git a/engine/test-data/Models/Terrain/Terrain.mesh.xml b/jme3-testdata/src/main/resources/Models/Terrain/Terrain.mesh.xml similarity index 100% rename from engine/test-data/Models/Terrain/Terrain.mesh.xml rename to jme3-testdata/src/main/resources/Models/Terrain/Terrain.mesh.xml diff --git a/engine/test-data/Models/Test/CornellBox.j3o b/jme3-testdata/src/main/resources/Models/Test/CornellBox.j3o similarity index 100% rename from engine/test-data/Models/Test/CornellBox.j3o rename to jme3-testdata/src/main/resources/Models/Test/CornellBox.j3o diff --git a/engine/test-data/Models/Tree/BarkColor.jpg b/jme3-testdata/src/main/resources/Models/Tree/BarkColor.jpg similarity index 100% rename from engine/test-data/Models/Tree/BarkColor.jpg rename to jme3-testdata/src/main/resources/Models/Tree/BarkColor.jpg diff --git a/engine/test-data/Models/Tree/BarkNormal.jpg b/jme3-testdata/src/main/resources/Models/Tree/BarkNormal.jpg similarity index 100% rename from engine/test-data/Models/Tree/BarkNormal.jpg rename to jme3-testdata/src/main/resources/Models/Tree/BarkNormal.jpg diff --git a/engine/test-data/Models/Tree/Leaves.j3m b/jme3-testdata/src/main/resources/Models/Tree/Leaves.j3m similarity index 100% rename from engine/test-data/Models/Tree/Leaves.j3m rename to jme3-testdata/src/main/resources/Models/Tree/Leaves.j3m diff --git a/engine/test-data/Models/Tree/Leaves.png b/jme3-testdata/src/main/resources/Models/Tree/Leaves.png similarity index 100% rename from engine/test-data/Models/Tree/Leaves.png rename to jme3-testdata/src/main/resources/Models/Tree/Leaves.png diff --git a/engine/test-data/Models/Tree/Tree.mesh.j3o b/jme3-testdata/src/main/resources/Models/Tree/Tree.mesh.j3o similarity index 100% rename from engine/test-data/Models/Tree/Tree.mesh.j3o rename to jme3-testdata/src/main/resources/Models/Tree/Tree.mesh.j3o diff --git a/engine/test-data/Models/Tree/Tree.mesh.j3odata b/jme3-testdata/src/main/resources/Models/Tree/Tree.mesh.j3odata similarity index 100% rename from engine/test-data/Models/Tree/Tree.mesh.j3odata rename to jme3-testdata/src/main/resources/Models/Tree/Tree.mesh.j3odata diff --git a/engine/test-data/Models/Tree/Tree.mesh.xml b/jme3-testdata/src/main/resources/Models/Tree/Tree.mesh.xml similarity index 100% rename from engine/test-data/Models/Tree/Tree.mesh.xml rename to jme3-testdata/src/main/resources/Models/Tree/Tree.mesh.xml diff --git a/engine/test-data/Models/Tree/Trunk.j3m b/jme3-testdata/src/main/resources/Models/Tree/Trunk.j3m similarity index 100% rename from engine/test-data/Models/Tree/Trunk.j3m rename to jme3-testdata/src/main/resources/Models/Tree/Trunk.j3m diff --git a/engine/test-data/Models/WaterTest/WaterTest.mesh.xml b/jme3-testdata/src/main/resources/Models/WaterTest/WaterTest.mesh.xml similarity index 100% rename from engine/test-data/Models/WaterTest/WaterTest.mesh.xml rename to jme3-testdata/src/main/resources/Models/WaterTest/WaterTest.mesh.xml diff --git a/engine/test-data/Scenes/Beach/FullskiesSunset0068.dds b/jme3-testdata/src/main/resources/Scenes/Beach/FullskiesSunset0068.dds similarity index 100% rename from engine/test-data/Scenes/Beach/FullskiesSunset0068.dds rename to jme3-testdata/src/main/resources/Scenes/Beach/FullskiesSunset0068.dds diff --git a/engine/test-data/Scenes/DotScene/DotScene.scene b/jme3-testdata/src/main/resources/Scenes/DotScene/DotScene.scene similarity index 100% rename from engine/test-data/Scenes/DotScene/DotScene.scene rename to jme3-testdata/src/main/resources/Scenes/DotScene/DotScene.scene diff --git a/engine/test-data/Scenes/ManyLights/AO.jpg b/jme3-testdata/src/main/resources/Scenes/ManyLights/AO.jpg similarity index 100% rename from engine/test-data/Scenes/ManyLights/AO.jpg rename to jme3-testdata/src/main/resources/Scenes/ManyLights/AO.jpg diff --git a/engine/test-data/Scenes/ManyLights/Grid.mesh.xml b/jme3-testdata/src/main/resources/Scenes/ManyLights/Grid.mesh.xml similarity index 100% rename from engine/test-data/Scenes/ManyLights/Grid.mesh.xml rename to jme3-testdata/src/main/resources/Scenes/ManyLights/Grid.mesh.xml diff --git a/engine/test-data/Scenes/ManyLights/Main.material b/jme3-testdata/src/main/resources/Scenes/ManyLights/Main.material similarity index 100% rename from engine/test-data/Scenes/ManyLights/Main.material rename to jme3-testdata/src/main/resources/Scenes/ManyLights/Main.material diff --git a/engine/test-data/Scenes/ManyLights/Main.scene b/jme3-testdata/src/main/resources/Scenes/ManyLights/Main.scene similarity index 100% rename from engine/test-data/Scenes/ManyLights/Main.scene rename to jme3-testdata/src/main/resources/Scenes/ManyLights/Main.scene diff --git a/engine/test-data/Sound/Effects/Bang.wav b/jme3-testdata/src/main/resources/Sound/Effects/Bang.wav similarity index 100% rename from engine/test-data/Sound/Effects/Bang.wav rename to jme3-testdata/src/main/resources/Sound/Effects/Bang.wav diff --git a/engine/test-data/Sound/Effects/Beep.ogg b/jme3-testdata/src/main/resources/Sound/Effects/Beep.ogg similarity index 100% rename from engine/test-data/Sound/Effects/Beep.ogg rename to jme3-testdata/src/main/resources/Sound/Effects/Beep.ogg diff --git a/engine/test-data/Sound/Effects/Foot steps.ogg b/jme3-testdata/src/main/resources/Sound/Effects/Foot steps.ogg similarity index 100% rename from engine/test-data/Sound/Effects/Foot steps.ogg rename to jme3-testdata/src/main/resources/Sound/Effects/Foot steps.ogg diff --git a/engine/test-data/Sound/Effects/Gun.wav b/jme3-testdata/src/main/resources/Sound/Effects/Gun.wav similarity index 100% rename from engine/test-data/Sound/Effects/Gun.wav rename to jme3-testdata/src/main/resources/Sound/Effects/Gun.wav diff --git a/engine/test-data/Sound/Effects/kick.wav b/jme3-testdata/src/main/resources/Sound/Effects/kick.wav similarity index 100% rename from engine/test-data/Sound/Effects/kick.wav rename to jme3-testdata/src/main/resources/Sound/Effects/kick.wav diff --git a/engine/test-data/Sound/Environment/Nature.ogg b/jme3-testdata/src/main/resources/Sound/Environment/Nature.ogg similarity index 100% rename from engine/test-data/Sound/Environment/Nature.ogg rename to jme3-testdata/src/main/resources/Sound/Environment/Nature.ogg diff --git a/engine/test-data/Sound/Environment/Ocean Waves.ogg b/jme3-testdata/src/main/resources/Sound/Environment/Ocean Waves.ogg similarity index 100% rename from engine/test-data/Sound/Environment/Ocean Waves.ogg rename to jme3-testdata/src/main/resources/Sound/Environment/Ocean Waves.ogg diff --git a/engine/test-data/Sound/Environment/River.ogg b/jme3-testdata/src/main/resources/Sound/Environment/River.ogg similarity index 100% rename from engine/test-data/Sound/Environment/River.ogg rename to jme3-testdata/src/main/resources/Sound/Environment/River.ogg diff --git a/engine/test-data/TerrainGrid/TerrainGrid.j3o b/jme3-testdata/src/main/resources/TerrainGrid/TerrainGrid.j3o similarity index 100% rename from engine/test-data/TerrainGrid/TerrainGrid.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/TerrainGrid.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_0_0_-1.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_0_0_-1.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_0_0_-1.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_0_0_-1.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_0_0_-2.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_0_0_-2.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_0_0_-2.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_0_0_-2.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_0_0_-3.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_0_0_-3.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_0_0_-3.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_0_0_-3.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_0_0_0.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_0_0_0.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_0_0_0.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_0_0_0.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_0_0_1.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_0_0_1.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_0_0_1.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_0_0_1.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_1_0_-1.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_1_0_-1.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_1_0_-1.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_1_0_-1.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_1_0_-2.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_1_0_-2.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_1_0_-2.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_1_0_-2.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_1_0_-3.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_1_0_-3.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_1_0_-3.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_1_0_-3.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_1_0_0.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_1_0_0.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_1_0_0.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_1_0_0.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_1_0_1.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_1_0_1.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_1_0_1.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_1_0_1.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_2_0_-1.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_2_0_-1.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_2_0_-1.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_2_0_-1.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_2_0_-2.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_2_0_-2.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_2_0_-2.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_2_0_-2.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_2_0_-3.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_2_0_-3.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_2_0_-3.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_2_0_-3.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_2_0_-4.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_2_0_-4.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_2_0_-4.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_2_0_-4.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_2_0_0.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_2_0_0.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_2_0_0.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_2_0_0.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_3_0_-1.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_3_0_-1.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_3_0_-1.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_3_0_-1.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_3_0_-2.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_3_0_-2.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_3_0_-2.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_3_0_-2.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_3_0_-3.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_3_0_-3.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_3_0_-3.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_3_0_-3.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_3_0_-4.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_3_0_-4.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_3_0_-4.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_3_0_-4.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_3_0_0.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_3_0_0.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_3_0_0.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_3_0_0.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_4_0_-1.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_4_0_-1.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_4_0_-1.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_4_0_-1.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_4_0_-2.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_4_0_-2.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_4_0_-2.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_4_0_-2.j3o diff --git a/engine/test-data/TerrainGrid/testgrid_4_0_-3.j3o b/jme3-testdata/src/main/resources/TerrainGrid/testgrid_4_0_-3.j3o similarity index 100% rename from engine/test-data/TerrainGrid/testgrid_4_0_-3.j3o rename to jme3-testdata/src/main/resources/TerrainGrid/testgrid_4_0_-3.j3o diff --git a/engine/test-data/Textures/3D/flame.dds b/jme3-testdata/src/main/resources/Textures/3D/flame.dds similarity index 100% rename from engine/test-data/Textures/3D/flame.dds rename to jme3-testdata/src/main/resources/Textures/3D/flame.dds diff --git a/engine/test-data/Textures/BumpMapTest/SimpleBump.j3m b/jme3-testdata/src/main/resources/Textures/BumpMapTest/SimpleBump.j3m similarity index 100% rename from engine/test-data/Textures/BumpMapTest/SimpleBump.j3m rename to jme3-testdata/src/main/resources/Textures/BumpMapTest/SimpleBump.j3m diff --git a/engine/test-data/Textures/BumpMapTest/Simple_height.png b/jme3-testdata/src/main/resources/Textures/BumpMapTest/Simple_height.png similarity index 100% rename from engine/test-data/Textures/BumpMapTest/Simple_height.png rename to jme3-testdata/src/main/resources/Textures/BumpMapTest/Simple_height.png diff --git a/engine/test-data/Textures/BumpMapTest/Simple_normal.png b/jme3-testdata/src/main/resources/Textures/BumpMapTest/Simple_normal.png similarity index 100% rename from engine/test-data/Textures/BumpMapTest/Simple_normal.png rename to jme3-testdata/src/main/resources/Textures/BumpMapTest/Simple_normal.png diff --git a/engine/test-data/Textures/BumpMapTest/Tangent.j3m b/jme3-testdata/src/main/resources/Textures/BumpMapTest/Tangent.j3m similarity index 100% rename from engine/test-data/Textures/BumpMapTest/Tangent.j3m rename to jme3-testdata/src/main/resources/Textures/BumpMapTest/Tangent.j3m diff --git a/engine/test-data/Textures/BumpMapTest/Tangent.png b/jme3-testdata/src/main/resources/Textures/BumpMapTest/Tangent.png similarity index 100% rename from engine/test-data/Textures/BumpMapTest/Tangent.png rename to jme3-testdata/src/main/resources/Textures/BumpMapTest/Tangent.png diff --git a/engine/test-data/Textures/ColorRamp/cloudy.png b/jme3-testdata/src/main/resources/Textures/ColorRamp/cloudy.png similarity index 100% rename from engine/test-data/Textures/ColorRamp/cloudy.png rename to jme3-testdata/src/main/resources/Textures/ColorRamp/cloudy.png diff --git a/engine/test-data/Textures/ColorRamp/toon.png b/jme3-testdata/src/main/resources/Textures/ColorRamp/toon.png similarity index 100% rename from engine/test-data/Textures/ColorRamp/toon.png rename to jme3-testdata/src/main/resources/Textures/ColorRamp/toon.png diff --git a/engine/test-data/Textures/ColoredTex/Monkey.png b/jme3-testdata/src/main/resources/Textures/ColoredTex/Monkey.png similarity index 100% rename from engine/test-data/Textures/ColoredTex/Monkey.png rename to jme3-testdata/src/main/resources/Textures/ColoredTex/Monkey.png diff --git a/engine/test-data/Textures/Cursors/meme.cur b/jme3-testdata/src/main/resources/Textures/Cursors/meme.cur similarity index 100% rename from engine/test-data/Textures/Cursors/meme.cur rename to jme3-testdata/src/main/resources/Textures/Cursors/meme.cur diff --git a/engine/test-data/Textures/Cursors/monkey.ani b/jme3-testdata/src/main/resources/Textures/Cursors/monkey.ani similarity index 100% rename from engine/test-data/Textures/Cursors/monkey.ani rename to jme3-testdata/src/main/resources/Textures/Cursors/monkey.ani diff --git a/engine/test-data/Textures/Cursors/nyancat.ico b/jme3-testdata/src/main/resources/Textures/Cursors/nyancat.ico similarity index 100% rename from engine/test-data/Textures/Cursors/nyancat.ico rename to jme3-testdata/src/main/resources/Textures/Cursors/nyancat.ico diff --git a/engine/test-data/Textures/HdrTest/Memorial.hdr b/jme3-testdata/src/main/resources/Textures/HdrTest/Memorial.hdr similarity index 100% rename from engine/test-data/Textures/HdrTest/Memorial.hdr rename to jme3-testdata/src/main/resources/Textures/HdrTest/Memorial.hdr diff --git a/engine/test-data/Textures/HdrTest/Memorial.j3m b/jme3-testdata/src/main/resources/Textures/HdrTest/Memorial.j3m similarity index 100% rename from engine/test-data/Textures/HdrTest/Memorial.j3m rename to jme3-testdata/src/main/resources/Textures/HdrTest/Memorial.j3m diff --git a/engine/test-data/Textures/Sky/Bright/BrightSky.dds b/jme3-testdata/src/main/resources/Textures/Sky/Bright/BrightSky.dds similarity index 100% rename from engine/test-data/Textures/Sky/Bright/BrightSky.dds rename to jme3-testdata/src/main/resources/Textures/Sky/Bright/BrightSky.dds diff --git a/engine/test-data/Textures/Sky/Bright/FullskiesBlueClear03.dds b/jme3-testdata/src/main/resources/Textures/Sky/Bright/FullskiesBlueClear03.dds similarity index 100% rename from engine/test-data/Textures/Sky/Bright/FullskiesBlueClear03.dds rename to jme3-testdata/src/main/resources/Textures/Sky/Bright/FullskiesBlueClear03.dds diff --git a/engine/test-data/Textures/Sky/Lagoon/LICENSE.txt b/jme3-testdata/src/main/resources/Textures/Sky/Lagoon/LICENSE.txt similarity index 100% rename from engine/test-data/Textures/Sky/Lagoon/LICENSE.txt rename to jme3-testdata/src/main/resources/Textures/Sky/Lagoon/LICENSE.txt diff --git a/engine/test-data/Textures/Sky/Lagoon/lagoon_down.jpg b/jme3-testdata/src/main/resources/Textures/Sky/Lagoon/lagoon_down.jpg similarity index 100% rename from engine/test-data/Textures/Sky/Lagoon/lagoon_down.jpg rename to jme3-testdata/src/main/resources/Textures/Sky/Lagoon/lagoon_down.jpg diff --git a/engine/test-data/Textures/Sky/Lagoon/lagoon_east.jpg b/jme3-testdata/src/main/resources/Textures/Sky/Lagoon/lagoon_east.jpg similarity index 100% rename from engine/test-data/Textures/Sky/Lagoon/lagoon_east.jpg rename to jme3-testdata/src/main/resources/Textures/Sky/Lagoon/lagoon_east.jpg diff --git a/engine/test-data/Textures/Sky/Lagoon/lagoon_north.jpg b/jme3-testdata/src/main/resources/Textures/Sky/Lagoon/lagoon_north.jpg similarity index 100% rename from engine/test-data/Textures/Sky/Lagoon/lagoon_north.jpg rename to jme3-testdata/src/main/resources/Textures/Sky/Lagoon/lagoon_north.jpg diff --git a/engine/test-data/Textures/Sky/Lagoon/lagoon_south.jpg b/jme3-testdata/src/main/resources/Textures/Sky/Lagoon/lagoon_south.jpg similarity index 100% rename from engine/test-data/Textures/Sky/Lagoon/lagoon_south.jpg rename to jme3-testdata/src/main/resources/Textures/Sky/Lagoon/lagoon_south.jpg diff --git a/engine/test-data/Textures/Sky/Lagoon/lagoon_up.jpg b/jme3-testdata/src/main/resources/Textures/Sky/Lagoon/lagoon_up.jpg similarity index 100% rename from engine/test-data/Textures/Sky/Lagoon/lagoon_up.jpg rename to jme3-testdata/src/main/resources/Textures/Sky/Lagoon/lagoon_up.jpg diff --git a/engine/test-data/Textures/Sky/Lagoon/lagoon_west.jpg b/jme3-testdata/src/main/resources/Textures/Sky/Lagoon/lagoon_west.jpg similarity index 100% rename from engine/test-data/Textures/Sky/Lagoon/lagoon_west.jpg rename to jme3-testdata/src/main/resources/Textures/Sky/Lagoon/lagoon_west.jpg diff --git a/engine/test-data/Textures/Sky/St Peters/StPeters.hdr b/jme3-testdata/src/main/resources/Textures/Sky/St Peters/StPeters.hdr similarity index 100% rename from engine/test-data/Textures/Sky/St Peters/StPeters.hdr rename to jme3-testdata/src/main/resources/Textures/Sky/St Peters/StPeters.hdr diff --git a/engine/test-data/Textures/Sky/St Peters/StPeters.jpg b/jme3-testdata/src/main/resources/Textures/Sky/St Peters/StPeters.jpg similarity index 100% rename from engine/test-data/Textures/Sky/St Peters/StPeters.jpg rename to jme3-testdata/src/main/resources/Textures/Sky/St Peters/StPeters.jpg diff --git a/engine/test-data/Textures/Terrain/BrickWall/BrickWall.j3m b/jme3-testdata/src/main/resources/Textures/Terrain/BrickWall/BrickWall.j3m similarity index 100% rename from engine/test-data/Textures/Terrain/BrickWall/BrickWall.j3m rename to jme3-testdata/src/main/resources/Textures/Terrain/BrickWall/BrickWall.j3m diff --git a/engine/test-data/Textures/Terrain/BrickWall/BrickWall.jpg b/jme3-testdata/src/main/resources/Textures/Terrain/BrickWall/BrickWall.jpg similarity index 100% rename from engine/test-data/Textures/Terrain/BrickWall/BrickWall.jpg rename to jme3-testdata/src/main/resources/Textures/Terrain/BrickWall/BrickWall.jpg diff --git a/engine/test-data/Textures/Terrain/BrickWall/BrickWall2.j3m b/jme3-testdata/src/main/resources/Textures/Terrain/BrickWall/BrickWall2.j3m similarity index 100% rename from engine/test-data/Textures/Terrain/BrickWall/BrickWall2.j3m rename to jme3-testdata/src/main/resources/Textures/Terrain/BrickWall/BrickWall2.j3m diff --git a/engine/test-data/Textures/Terrain/BrickWall/BrickWall_height.jpg b/jme3-testdata/src/main/resources/Textures/Terrain/BrickWall/BrickWall_height.jpg similarity index 100% rename from engine/test-data/Textures/Terrain/BrickWall/BrickWall_height.jpg rename to jme3-testdata/src/main/resources/Textures/Terrain/BrickWall/BrickWall_height.jpg diff --git a/engine/test-data/Textures/Terrain/BrickWall/BrickWall_normal.jpg b/jme3-testdata/src/main/resources/Textures/Terrain/BrickWall/BrickWall_normal.jpg similarity index 100% rename from engine/test-data/Textures/Terrain/BrickWall/BrickWall_normal.jpg rename to jme3-testdata/src/main/resources/Textures/Terrain/BrickWall/BrickWall_normal.jpg diff --git a/engine/test-data/Textures/Terrain/BrickWall/BrickWall_normal_parallax.dds b/jme3-testdata/src/main/resources/Textures/Terrain/BrickWall/BrickWall_normal_parallax.dds similarity index 100% rename from engine/test-data/Textures/Terrain/BrickWall/BrickWall_normal_parallax.dds rename to jme3-testdata/src/main/resources/Textures/Terrain/BrickWall/BrickWall_normal_parallax.dds diff --git a/engine/test-data/Textures/Terrain/Pond/Pond.j3m b/jme3-testdata/src/main/resources/Textures/Terrain/Pond/Pond.j3m similarity index 100% rename from engine/test-data/Textures/Terrain/Pond/Pond.j3m rename to jme3-testdata/src/main/resources/Textures/Terrain/Pond/Pond.j3m diff --git a/engine/test-data/Textures/Terrain/Pond/Pond.jpg b/jme3-testdata/src/main/resources/Textures/Terrain/Pond/Pond.jpg similarity index 100% rename from engine/test-data/Textures/Terrain/Pond/Pond.jpg rename to jme3-testdata/src/main/resources/Textures/Terrain/Pond/Pond.jpg diff --git a/engine/test-data/Textures/Terrain/Pond/Pond_normal.png b/jme3-testdata/src/main/resources/Textures/Terrain/Pond/Pond_normal.png similarity index 100% rename from engine/test-data/Textures/Terrain/Pond/Pond_normal.png rename to jme3-testdata/src/main/resources/Textures/Terrain/Pond/Pond_normal.png diff --git a/engine/test-data/Textures/Terrain/Rock/Rock.PNG b/jme3-testdata/src/main/resources/Textures/Terrain/Rock/Rock.PNG similarity index 100% rename from engine/test-data/Textures/Terrain/Rock/Rock.PNG rename to jme3-testdata/src/main/resources/Textures/Terrain/Rock/Rock.PNG diff --git a/engine/test-data/Textures/Terrain/Rock/Rock.j3m b/jme3-testdata/src/main/resources/Textures/Terrain/Rock/Rock.j3m similarity index 100% rename from engine/test-data/Textures/Terrain/Rock/Rock.j3m rename to jme3-testdata/src/main/resources/Textures/Terrain/Rock/Rock.j3m diff --git a/engine/test-data/Textures/Terrain/Rock/Rock_normal.png b/jme3-testdata/src/main/resources/Textures/Terrain/Rock/Rock_normal.png similarity index 100% rename from engine/test-data/Textures/Terrain/Rock/Rock_normal.png rename to jme3-testdata/src/main/resources/Textures/Terrain/Rock/Rock_normal.png diff --git a/engine/test-data/Textures/Terrain/Rock2/rock.jpg b/jme3-testdata/src/main/resources/Textures/Terrain/Rock2/rock.jpg similarity index 100% rename from engine/test-data/Textures/Terrain/Rock2/rock.jpg rename to jme3-testdata/src/main/resources/Textures/Terrain/Rock2/rock.jpg diff --git a/engine/test-data/Textures/Terrain/Rocky/Rocky.j3m b/jme3-testdata/src/main/resources/Textures/Terrain/Rocky/Rocky.j3m similarity index 100% rename from engine/test-data/Textures/Terrain/Rocky/Rocky.j3m rename to jme3-testdata/src/main/resources/Textures/Terrain/Rocky/Rocky.j3m diff --git a/engine/test-data/Textures/Terrain/Rocky/RockyNormals.jpg b/jme3-testdata/src/main/resources/Textures/Terrain/Rocky/RockyNormals.jpg similarity index 100% rename from engine/test-data/Textures/Terrain/Rocky/RockyNormals.jpg rename to jme3-testdata/src/main/resources/Textures/Terrain/Rocky/RockyNormals.jpg diff --git a/engine/test-data/Textures/Terrain/Rocky/RockyTexture.jpg b/jme3-testdata/src/main/resources/Textures/Terrain/Rocky/RockyTexture.jpg similarity index 100% rename from engine/test-data/Textures/Terrain/Rocky/RockyTexture.jpg rename to jme3-testdata/src/main/resources/Textures/Terrain/Rocky/RockyTexture.jpg diff --git a/jme3-testdata/src/main/resources/Textures/Terrain/splat/alpha1.png b/jme3-testdata/src/main/resources/Textures/Terrain/splat/alpha1.png new file mode 100644 index 000000000..4179ba517 Binary files /dev/null and b/jme3-testdata/src/main/resources/Textures/Terrain/splat/alpha1.png differ diff --git a/jme3-testdata/src/main/resources/Textures/Terrain/splat/alpha2.png b/jme3-testdata/src/main/resources/Textures/Terrain/splat/alpha2.png new file mode 100644 index 000000000..49eacecf0 Binary files /dev/null and b/jme3-testdata/src/main/resources/Textures/Terrain/splat/alpha2.png differ diff --git a/engine/test-data/Textures/Terrain/splat/alphamap.png b/jme3-testdata/src/main/resources/Textures/Terrain/splat/alphamap.png similarity index 100% rename from engine/test-data/Textures/Terrain/splat/alphamap.png rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/alphamap.png diff --git a/engine/test-data/Textures/Terrain/splat/alphamap2.png b/jme3-testdata/src/main/resources/Textures/Terrain/splat/alphamap2.png similarity index 100% rename from engine/test-data/Textures/Terrain/splat/alphamap2.png rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/alphamap2.png diff --git a/engine/test-data/Textures/Terrain/splat/dirt.jpg b/jme3-testdata/src/main/resources/Textures/Terrain/splat/dirt.jpg similarity index 100% rename from engine/test-data/Textures/Terrain/splat/dirt.jpg rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/dirt.jpg diff --git a/engine/test-data/Textures/Terrain/splat/dirt_normal.png b/jme3-testdata/src/main/resources/Textures/Terrain/splat/dirt_normal.png similarity index 100% rename from engine/test-data/Textures/Terrain/splat/dirt_normal.png rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/dirt_normal.png diff --git a/engine/test-data/Textures/Terrain/splat/fortress512.png b/jme3-testdata/src/main/resources/Textures/Terrain/splat/fortress512.png similarity index 100% rename from engine/test-data/Textures/Terrain/splat/fortress512.png rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/fortress512.png diff --git a/engine/test-data/Textures/Terrain/splat/grass.jpg b/jme3-testdata/src/main/resources/Textures/Terrain/splat/grass.jpg similarity index 100% rename from engine/test-data/Textures/Terrain/splat/grass.jpg rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/grass.jpg diff --git a/engine/test-data/Textures/Terrain/splat/grass_normal.jpg b/jme3-testdata/src/main/resources/Textures/Terrain/splat/grass_normal.jpg similarity index 100% rename from engine/test-data/Textures/Terrain/splat/grass_normal.jpg rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/grass_normal.jpg diff --git a/engine/test-data/Textures/Terrain/splat/mountains1024.jpg b/jme3-testdata/src/main/resources/Textures/Terrain/splat/mountains1024.jpg similarity index 100% rename from engine/test-data/Textures/Terrain/splat/mountains1024.jpg rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/mountains1024.jpg diff --git a/engine/test-data/Textures/Terrain/splat/mountains128.png b/jme3-testdata/src/main/resources/Textures/Terrain/splat/mountains128.png similarity index 100% rename from engine/test-data/Textures/Terrain/splat/mountains128.png rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/mountains128.png diff --git a/engine/test-data/Textures/Terrain/splat/mountains512.png b/jme3-testdata/src/main/resources/Textures/Terrain/splat/mountains512.png similarity index 100% rename from engine/test-data/Textures/Terrain/splat/mountains512.png rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/mountains512.png diff --git a/engine/test-data/Textures/Terrain/splat/pools.png b/jme3-testdata/src/main/resources/Textures/Terrain/splat/pools.png similarity index 100% rename from engine/test-data/Textures/Terrain/splat/pools.png rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/pools.png diff --git a/engine/test-data/Textures/Terrain/splat/road.jpg b/jme3-testdata/src/main/resources/Textures/Terrain/splat/road.jpg similarity index 100% rename from engine/test-data/Textures/Terrain/splat/road.jpg rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/road.jpg diff --git a/engine/test-data/Textures/Terrain/splat/road_normal.png b/jme3-testdata/src/main/resources/Textures/Terrain/splat/road_normal.png similarity index 100% rename from engine/test-data/Textures/Terrain/splat/road_normal.png rename to jme3-testdata/src/main/resources/Textures/Terrain/splat/road_normal.png diff --git a/engine/test-data/profiling points b/jme3-testdata/src/main/resources/profiling points similarity index 100% rename from engine/test-data/profiling points rename to jme3-testdata/src/main/resources/profiling points diff --git a/engine/lib/jogg/j-ogg-oggd.jar b/lib/j-ogg-oggd.jar similarity index 100% rename from engine/lib/jogg/j-ogg-oggd.jar rename to lib/j-ogg-oggd.jar diff --git a/engine/lib/jogg/j-ogg-vorbisd.jar b/lib/j-ogg-vorbisd.jar similarity index 100% rename from engine/lib/jogg/j-ogg-vorbisd.jar rename to lib/j-ogg-vorbisd.jar diff --git a/engine/lib/jbullet/jbullet.jar b/lib/jbullet.jar similarity index 100% rename from engine/lib/jbullet/jbullet.jar rename to lib/jbullet.jar diff --git a/engine/lib/jbullet/stack-alloc.jar b/lib/stack-alloc.jar similarity index 100% rename from engine/lib/jbullet/stack-alloc.jar rename to lib/stack-alloc.jar diff --git a/nbproject/project.xml b/nbproject/project.xml deleted file mode 100644 index d5877bed2..000000000 --- a/nbproject/project.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - org.netbeans.modules.ant.freeform - - - - jME3-SDK - - - - build - - - clean - - - run - - - clean - build - - - - - - build.xml - - - - - - - - - - - - - diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 000000000..1e8acf403 --- /dev/null +++ b/settings.gradle @@ -0,0 +1,57 @@ +rootProject.name = 'jmonkeyengine' + +/** + * You can enable or disable different subprojects of the build here. + * + * The SDK will only be built if the appropriate library folders exist, + * call the "prepareSdk" target to prepare building the SDK. + **/ + +// Core classes, should work on all java platforms +include 'jme3-core' +include 'jme3-effects' +include 'jme3-networking' +include 'jme3-plugins' +include 'jme3-terrain' + +// Desktop dependent java classes +include 'jme3-desktop' +include 'jme3-blender' +include 'jme3-jogl' +include 'jme3-lwjgl' + +// Other external dependencies +include 'jme3-jbullet' +include 'jme3-niftygui' +include 'jme3-jogg' +include 'jme3-android' + +//native builds +include 'jme3-bullet' //java +include 'jme3-bullet-native' //cpp +include 'jme3-android-native' //cpp + +// Test Data project +include 'jme3-testdata' + +// Example projects +include 'jme3-examples' + +//include 'sdk' + +// Find the directories containing a 'build.gradle' file in the root directory +// of the project. That is, every directory containing a 'build.gradle' will +// be automatically the subproject of this project. +/*def subDirs = rootDir.listFiles(new FileFilter() { + public boolean accept(File file) { + if (!file.isDirectory()) { + return false + } + + return new File(file, 'build.gradle').isFile() + } +}); + +subDirs.each { File dir -> + include dir.name +}*/ \ No newline at end of file