M android/build.gradle +2 -2
@@ 1,6 1,6 @@
android {
- buildToolsVersion "19.0.3"
- compileSdkVersion 19
+ buildToolsVersion "22.0.1"
+ compileSdkVersion 22
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
M build.gradle +11 -10
@@ 6,8 6,8 @@ buildscript {
}
dependencies {
classpath 'de.richsource.gradle.plugins:gwt-gradle-plugin:0.6'
- classpath 'com.android.tools.build:gradle:1.0.0'
- classpath 'org.robovm:robovm-gradle-plugin:1.0.0'
+ classpath 'com.android.tools.build:gradle:1.2.3'
+ classpath 'org.robovm:robovm-gradle-plugin:1.5.0'
}
}
@@ 18,9 18,9 @@ allprojects {
version = '1.0'
ext {
appName = 'SomeLibgdxTests'
- gdxVersion = '1.5.6'
- gdxUtilsVersion = '0.11.1-SNAPSHOT'
- roboVMVersion = '1.0.0'
+ gdxVersion = '1.6.4'
+ gdxUtilsVersion = '0.13.1-SNAPSHOT'
+ roboVMVersion = '1.5.0'
box2DLightsVersion = '1.3'
ashleyVersion = '1.3.1'
aiVersion = '1.5.0'
@@ 32,6 32,8 @@ allprojects {
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
maven { url "https://oss.sonatype.org/content/repositories/releases/" }
}
+
+ configurations.all { resolutionStrategy.cacheChangingModulesFor 0, 'seconds' }
}
project(":core") {
@@ 44,6 46,7 @@ project(":core") {
compile "net.dermetfan.libgdx-utils:libgdx-utils-box2d:$gdxUtilsVersion"
compile "com.esotericsoftware:kryonet:$kryoNetVersion"
compile "com.badlogicgames.box2dlights:box2dlights:$box2DLightsVersion"
+ compile 'com.github.trixt0r:Spriter:1.1'
compile fileTree(dir: 'libs', include: '*.jar')
}
}
@@ 87,16 90,14 @@ project(":ios") {
apply plugin: "java"
apply plugin: "robovm"
- configurations { natives }
-
dependencies {
compile project(":core")
compile "org.robovm:robovm-rt:${roboVMVersion}"
compile "org.robovm:robovm-cocoatouch:${roboVMVersion}"
compile "com.badlogicgames.gdx:gdx-backend-robovm:$gdxVersion"
- natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios"
- natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-ios"
- natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-ios"
+ compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios"
+ compile "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-ios"
+ compile "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-ios"
}
}
M core/src/net/dermetfan/someLibgdxTests/other/EllipticalGroup.java +1 -1
@@ 79,7 79,7 @@ public class EllipticalGroup extends Wid
}
private float angle(float x, float y) {
- float ang = vec2_0.set(x, y).sub(getWidth() / 2, getHeight() / 2).angle() - normalize(angle, 0, 360);
+ float ang = vec2_0.set(x, y).sub(getWidth() / 2, getHeight() / 2).angle() - normalize(angle, 0, 360, false, false);
System.out.println("diff: " + ang);
return ang;
}
A => core/src/net/dermetfan/someLibgdxTests/screens/Box2DCloneTest.java +84 -0
@@ 0,0 1,84 @@
+package net.dermetfan.someLibgdxTests.screens;
+
+import com.badlogic.gdx.physics.box2d.Body;
+import com.badlogic.gdx.physics.box2d.BodyDef;
+import com.badlogic.gdx.physics.box2d.BodyDef.BodyType;
+import com.badlogic.gdx.physics.box2d.ChainShape;
+import com.badlogic.gdx.physics.box2d.CircleShape;
+import com.badlogic.gdx.physics.box2d.EdgeShape;
+import com.badlogic.gdx.physics.box2d.PolygonShape;
+import net.dermetfan.gdx.math.GeometryUtils;
+import net.dermetfan.gdx.physics.box2d.Box2DUtils;
+
+public class Box2DCloneTest extends Box2DScreen {
+
+ private Body[] bodies;
+
+ private static final float STEP = 1;
+ private float countdown = STEP;
+
+ public Box2DCloneTest() {
+ bodies = new Body[4];
+ BodyDef bodyDef = new BodyDef();
+ bodyDef.type = BodyType.DynamicBody;
+ bodyDef.position.x = -bodies.length;
+ int i = 0;
+
+ { // polygon
+ PolygonShape shape = new PolygonShape();
+ float[] vertices = new float[] {-1, -2, 1, -2, 2, -1, 2, 1, 1, 2, -1, 2, -2, 1, -2, -1};
+ GeometryUtils.scale(vertices, -.5f, -.5f, .5f, .5f);
+ shape.set(vertices);
+ bodies[i] = world.createBody(bodyDef);
+ bodies[i].createFixture(shape, 1);
+ shape.dispose();
+ }
+
+ i++;
+ bodyDef.position.x += 2;
+ { // circle
+ CircleShape shape = new CircleShape();
+ shape.setRadius(.5f);
+ bodies[i] = world.createBody(bodyDef);
+ bodies[i].createFixture(shape, 1);
+ shape.dispose();
+ }
+
+ i++;
+ bodyDef.position.x += 2;
+ { // chain
+ ChainShape shape = new ChainShape();
+ shape.createChain(new float[] {-.5f, .5f, 0, -.5f, .5f, .5f});
+ bodies[i] = world.createBody(bodyDef);
+ bodies[i].createFixture(shape, 1);
+ shape.dispose();
+ }
+
+ i++;
+ bodyDef.position.x += 2;
+ { // edge
+ EdgeShape shape = new EdgeShape();
+ shape.set(-.5f, 0, .5f, 0);
+ bodies[i] = world.createBody(bodyDef);
+ bodies[i].createFixture(shape, 1);
+ shape.dispose();
+ }
+ }
+
+ @Override
+ public void render(float delta) {
+ super.render(delta);
+ countdown -= delta;
+ if(countdown <= 0) {
+ countdown = STEP;
+ for(int i = 0; i < bodies.length; i++) {
+ Body clone = Box2DUtils.clone(bodies[i], true);
+ clone.setTransform(clone.getPosition().x, 0, 0);
+ clone.setLinearVelocity(0, 0);
+ world.destroyBody(bodies[i]);
+ bodies[i] = clone;
+ }
+ }
+ }
+
+}
M core/src/net/dermetfan/someLibgdxTests/screens/Box2DPolygonSpriteTest.java +3 -4
@@ 8,7 8,6 @@ import com.badlogic.gdx.graphics.g2d.Tex
import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
import com.badlogic.gdx.graphics.glutils.ShapeRenderer.ShapeType;
import com.badlogic.gdx.math.EarClippingTriangulator;
-import com.badlogic.gdx.math.Polygon;
import com.badlogic.gdx.physics.box2d.Body;
import com.badlogic.gdx.physics.box2d.BodyDef;
import com.badlogic.gdx.physics.box2d.BodyDef.BodyType;
@@ 56,10 55,10 @@ public class Box2DPolygonSpriteTest exte
System.arraycopy(vertices.toArray(), 0, shapeVertices, 0, shapeVertices.length);
MathUtils.scale(shapeVertices, 0, 10);
- Polygon[] gons = GeometryUtils.decompose(new Polygon(shapeVertices));
+ float[][] gons = GeometryUtils.decompose(shapeVertices);
PolygonShape shape = new PolygonShape();
- for(Polygon gon : gons) {
- shape.set(gon.getVertices());
+ for(float[] verts : gons) {
+ shape.set(verts);
rock.createFixture(shape, 1);
}
shape.dispose();
M core/src/net/dermetfan/someLibgdxTests/screens/CircularGroupTest.java +1 -1
@@ 104,7 104,7 @@ public class CircularGroupTest extends S
@Override
public void render(float delta) {
t += delta;
- outer.setWidth(MathUtils.normalize(t, 0, 2.5f) / 2.5f * outer.getPrefWidth());
+ outer.setWidth(MathUtils.normalize(t, 0, 2.5f, false, false) / 2.5f * outer.getPrefWidth());
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
stage.act(delta);
stage.draw();
M +1 -0
@@ 156,6 156,7 @@ public class Menu extends ScreenAdapter
names.add("MinimumTranslationVectorTest");
names.add("SutherlandHodgmanTest");
names.add("Box2DAsTest");
names.add("Box2DCloneTest");
names.sort();
final List<String> tests = new List<>(skin);
M core/src/net/dermetfan/someLibgdxTests/screens/RepeatingBackgroundTest.java +0 -1
@@ 10,7 10,6 @@ import com.badlogic.gdx.graphics.g2d.Spr
import com.badlogic.gdx.utils.viewport.ScreenViewport;
import com.badlogic.gdx.utils.viewport.Viewport;
import net.dermetfan.someLibgdxTests.Assets;
-import net.dermetfan.someLibgdxTests.SomeLibgdxTests;
public class RepeatingBackgroundTest extends ScreenAdapter {
M gradle/wrapper/gradle-wrapper.jar +0 -0
M gradle/wrapper/gradle-wrapper.properties +2 -2
@@ 1,6 1,6 @@
-#Sat Sep 21 13:08:26 CEST 2013
+#Wed Aug 05 06:36:09 CEST 2015
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-bin.zip
M ios/build.gradle +0 -47
@@ 7,58 7,11 @@ ext {
mainClassName = "net.dermetfan.someLibgdxTests.IOSLauncher"
}
-// Extracts native libs (*.a) from the native-ios.jar and places them
-// under build/libs/ios/.
-task copyNatives << {
- file("build/libs/ios/").mkdirs();
- configurations.natives.files.each { jar ->
- def outputDir = null
- if (jar.name.endsWith("natives-ios.jar")) outputDir = file("build/libs/ios")
- if (outputDir != null) {
- copy {
- from zipTree(jar)
- into outputDir
- include "*.a"
- }
- }
- }
-}
-
-// Updates a robovm.xml file.
-task updateRoboVMXML << {
- def xml = file('robovm.xml')
-
- if (!xml.exists()) {
- return
- }
-
- // Find all native (*.a) libraries beneath libs
- def libtree = fileTree(dir: 'build/libs', include: '**/*.a')
-
- def config = new groovy.util.XmlParser().parse(xml)
- config.libs.each {libs ->
- libs.children().clear()
- libtree.each { File file ->
- libs.appendNode('lib', 'build/libs/ios/' + file.getName())
- }
- }
-
- def writer = new FileWriter(xml)
- def printer = new XmlNodePrinter(new PrintWriter(writer))
- printer.setPreserveWhitespace true
- printer.print(config)
-}
-
-updateRoboVMXML.dependsOn copyNatives
-build.dependsOn updateRoboVMXML
-tasks.eclipse.dependsOn updateRoboVMXML
-
launchIPhoneSimulator.dependsOn build
launchIPadSimulator.dependsOn build
launchIOSDevice.dependsOn build
createIPA.dependsOn build
-
eclipse.project {
name = appName + "-ios"
natures 'org.robovm.eclipse.RoboVMNature'