little fps boost (thanks cire)

This commit is contained in:
kone 2023-06-28 10:20:09 -04:00
parent ed610f5f5d
commit 4238c706dd
3 changed files with 770470 additions and 60 deletions

View File

@ -1,26 +1,28 @@
buildscript { buildscript {
repositories { repositories {
mavenCentral() mavenCentral()
google()
} }
dependencies { dependencies {
classpath 'io.github.zebalu:teavm-gradle-plugin:1.0.0' // classpath 'io.github.zebalu:teavm-gradle-plugin:1.0.0'
} }
} }
apply plugin: 'java' plugins {
apply plugin: 'eclipse' id 'java'
apply plugin: 'io.github.zebalu.teavm-gradle-plugin' id 'eclipse'
id "org.teavm" version "0.8.1"
}
sourceCompatibility = 1.8 sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = 1.8 targetCompatibility = JavaVersion.VERSION_11
sourceSets { sourceSets {
main { main {
java { java {
srcDir 'src/main/java' srcDir 'src/main/java'
srcDir 'src/teavm/java' srcDir 'src/teavm'
} }
} }
} }
@ -30,57 +32,58 @@ repositories {
} }
dependencies { dependencies {
/** we use 0.6.1 due to performance issues on 7.0.0 */ // https://mvnrepository.com/artifact/org.teavm/teavm-platform
implementation 'org.teavm:teavm-platform:0.6.1' implementation 'org.teavm:teavm-platform:0.8.1'
implementation('org.teavm:teavm-classlib:0.6.1') { // https://mvnrepository.com/artifact/org.teavm/teavm-classlib
exclude group: 'com.google.code.gson', module: 'gson' implementation 'org.teavm:teavm-classlib:0.8.1'
} // https://mvnrepository.com/artifact/org.teavm/teavm-interop
implementation 'org.teavm:teavm-interop:0.8.1'
// https://mvnrepository.com/artifact/org.teavm/teavm-jso
implementation 'org.teavm:teavm-jso:0.8.1'
// https://mvnrepository.com/artifact/org.teavm/teavm-jso-apis
implementation 'org.teavm:teavm-jso-apis:0.8.1'
// https://mvnrepository.com/artifact/org.teavm/teavm-junit
testImplementation 'org.teavm:teavm-junit:0.8.1'
// https://mvnrepository.com/artifact/org.teavm/teavm-jso-impl
implementation 'org.teavm:teavm-jso-impl:0.8.1'
// https://mvnrepository.com/artifact/com.jcraft/jzlib
implementation 'com.jcraft:jzlib:1.1.3'
} }
teavm { teavm.js {
properties = null;
compileScopes = null; debugInformation = false;
minifying = true; sourceMap = true;
maxTopLevelNames = 10000; obfuscated = false;
properties = null;
debugInformationGenerated = false; /** Where to save the result */
sourceMapsGenerated = true; outputDir = file("javascript");
sourceFilesCopied = false;
incremental = false; /** How to name the result file. */
transformers = null; targetFileName = "classes.js";
/** Where to save the result */ /** Which class holds your public static void main(Strin[] args) method */
targetDirectory = file("javascript"); mainClass = 'net.lax1dude.eaglercraft.v1_8.internal.teavm.MainClass';
/** The directory to monitor to decide if compile is up-to-date or not */ /** This will be the name of your main method after compilation. */
sourceDirectory = file("src"); entryPointName = 'main';
/** How to name the result file. */ preservedClasses = Arrays.asList('net.minecraft.client.Minecraft');
targetFileName = "classes.js"; // optimization = BALANCED; //org.teavm.vm.TeaVMOptimizationLevel.SIMPLE;
fastGlobalAnalysis = false;
/** Which class holds your public static void main(Strin[] args) method */ // targetType = "JAVASCRIPT"; //org.teavm.tooling.TeaVMTargetType.JAVASCRIPT;
mainClass = 'net.lax1dude.eaglercraft.v1_8.internal.teavm.MainClass'; // cacheDirectory = null;
// wasmVersion = "V_0x1"; //org.teavm.backend.wasm.render.WasmBinaryVersion.V_0x1;
/** This will be the name of your main method after compilation. */ // minHeapSize = 4;
entryPointName = 'main'; // maxHeapSize = 128;
outOfProcess = false;
classesToPreserve = null; processMemory = 512;
stopOnErrors = false; // longjmpSupported = true;
optimizationLevel = "ADVANCED"; //org.teavm.vm.TeaVMOptimizationLevel.SIMPLE; // heapDump = false;
fastGlobalAnalysis = false;
targetType = "JAVASCRIPT"; //org.teavm.tooling.TeaVMTargetType.JAVASCRIPT; /** Add name of configurations here where to look for jarfiles. */
cacheDirectory = null; // includeJarsFrom = [];
wasmVersion = "V_0x1"; //org.teavm.backend.wasm.render.WasmBinaryVersion.V_0x1;
minHeapSize = 256; /** By default teavmc taskd epends on javaCompile task, unless this varaibale is true. */
maxHeapSize = 256; // skipJavaCompile = false;
outOfProcess = false; }
processMemory = 2048;
longjmpSupported = true;
heapDump = false;
/** Add name of configurations here where to look for jarfiles. */
includeJarsFrom = [];
/** By default teavmc taskd epends on javaCompile task, unless this varaibale is true. */
skipJavaCompile = false;
}

770406
javascript/js/classes.js Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long