Skip to content

Commit

Permalink
Server crash fix and formatting
Browse files Browse the repository at this point in the history
- Fix matrix mixins being applied on dedicated server
- Expand PartialModel functionality: add location getter and model
setter
- Remove Loader.getResourceType since selective reloading is deprecated
- Organize imports and mixin order
- Other formatting
- Update Gradle and Forge
  • Loading branch information
PepperCode1 committed Nov 18, 2021
1 parent 3919aae commit 279e089
Show file tree
Hide file tree
Showing 62 changed files with 185 additions and 203 deletions.
31 changes: 15 additions & 16 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ apply plugin: 'org.parchmentmc.librarian.forgegradle'
boolean dev = System.getenv('RELEASE') == null || System.getenv('RELEASE').equalsIgnoreCase('false');

ext.buildnumber = 0
project.buildnumber = System.getenv('BUILD_NUMBER') != null ? System.getenv('BUILD_NUMBER') : "custom"
project.buildnumber = System.getenv('BUILD_NUMBER') != null ? System.getenv('BUILD_NUMBER') : 'custom'

version = "${mc_update_version}-${mod_version}" + (dev ? ".${buildnumber}" : '')
group = 'com.jozufozu.flywheel'
Expand All @@ -43,10 +43,9 @@ minecraft {

property 'forge.logging.markers', ''
property 'forge.logging.console.level', 'debug'
property 'fml.earlyprogresswindow', 'false'
property 'mixin.debug.export', 'true'

arg "-mixin.config=flywheel.mixins.json"
arg '-mixin.config=flywheel.mixins.json'

mods {
flywheel {
Expand All @@ -61,7 +60,7 @@ minecraft {
property 'forge.logging.markers', 'REGISTRIES'
property 'forge.logging.console.level', 'debug'

arg "-mixin.config=flywheel.mixins.json"
arg '-mixin.config=flywheel.mixins.json'

mods {
flywheel {
Expand Down Expand Up @@ -89,20 +88,20 @@ minecraft {
}

mixin {
add sourceSets.main, "flywheel.refmap.json"
add sourceSets.main, 'flywheel.refmap.json'
}

repositories {
maven {
name "tterrag maven"
url "https://maven.tterrag.com/"
name 'tterrag maven'
url 'https://maven.tterrag.com/'
}
}

dependencies {
minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"

//implementation "org.joml:joml:1.10.1"
//implementation 'org.joml:joml:1.10.1'

annotationProcessor 'org.spongepowered:mixin:0.8.4:processor'
}
Expand All @@ -111,14 +110,14 @@ dependencies {
jar {
manifest {
attributes([
"Specification-Title" : "flywheel",
//"Specification-Vendor": "flywheel authors",
"Specification-Version" : "1", // We are version 1 of ourselves
"Implementation-Title" : project.name,
"Implementation-Version" : project.version,
//"Implementation-Vendor": "flywheel authors",
"MixinConfigs" : "flywheel.mixins.json",
"Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")
'Specification-Title' : 'flywheel',
//'Specification-Vendor': 'flywheel authors',
'Specification-Version' : '1', // We are version 1 of ourselves
'Implementation-Title' : project.name,
'Implementation-Version' : project.version,
//'Implementation-Vendor': 'flywheel authors',
'MixinConfigs' : 'flywheel.mixins.json',
'Implementation-Timestamp': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")
])
}
}
Expand Down
19 changes: 10 additions & 9 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
org.gradle.jvmargs=-Xmx3G
org.gradle.daemon=false
org.gradle.jvmargs = -Xmx3G
org.gradle.daemon = false

# mod version info
mod_version=0.3.0
mc_update_version=1.17
minecraft_version=1.17.1
forge_version=37.0.103
mod_version = 0.3.0
mc_update_version = 1.17
minecraft_version = 1.17.1
forge_version = 37.0.108

# build dependency versions
forgegradle_version = 5.1.+
Expand All @@ -14,8 +15,8 @@ cursegradle_version = 1.4.0
parchment_version = 2021.10.31

# curseforge info
projectId=486392
curse_type=beta
projectId = 486392
curse_type = beta

# github info
github_project=Jozufozu/Flywheel
github_project = Jozufozu/Flywheel
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
2 changes: 1 addition & 1 deletion src/main/java/com/jozufozu/flywheel/backend/Backend.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@

import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.level.LevelAccessor;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.LevelAccessor;

public class Backend {
public static final Logger log = LogManager.getLogger(Backend.class);
Expand Down
14 changes: 2 additions & 12 deletions src/main/java/com/jozufozu/flywheel/backend/Loader.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
package com.jozufozu.flywheel.backend;

import java.util.Collection;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonElement;
Expand All @@ -24,12 +26,6 @@
import net.minecraft.server.packs.resources.ResourceManager;
import net.minecraft.server.packs.resources.ResourceManagerReloadListener;
import net.minecraftforge.fml.ModLoader;
import net.minecraftforge.resource.IResourceType;
import net.minecraftforge.resource.VanillaResourceType;

import javax.annotation.Nullable;

import java.util.Collection;

/**
* The main entity for loading shaders.
Expand Down Expand Up @@ -128,10 +124,4 @@ private void loadProgramSpecs(ResourceManager manager) {
}
}
}

@Nullable
@Override
public IResourceType getResourceType() {
return VanillaResourceType.SHADERS;
}
}
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package com.jozufozu.flywheel.backend.gl.buffer;

import static org.lwjgl.opengl.GL30.GL_MAP_WRITE_BIT;
import static org.lwjgl.opengl.GL44.GL_MAP_COHERENT_BIT;
import static org.lwjgl.opengl.GL44.GL_MAP_PERSISTENT_BIT;
import static org.lwjgl.opengl.GL44.GL_MAP_WRITE_BIT;

import java.nio.ByteBuffer;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,12 @@
import java.nio.FloatBuffer;

import org.lwjgl.system.MemoryStack;
import org.lwjgl.system.MemoryUtil;

import com.jozufozu.flywheel.backend.Backend;
import com.jozufozu.flywheel.backend.gl.GlObject;
import com.jozufozu.flywheel.util.RenderUtil;
import com.mojang.math.Matrix4f;

import net.minecraft.resources.ResourceLocation;
import com.mojang.math.Matrix4f;

public abstract class GlProgram extends GlObject {
private static final FloatBuffer floatBuffer = MemoryStack.stackGet()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@
import com.jozufozu.flywheel.light.ListenerStatus;

import net.minecraft.core.BlockPos;
import net.minecraft.world.level.LightLayer;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.LightLayer;

/**
* A general interface providing information about any type of thing that could use Flywheel's instanced rendering.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,12 @@
import com.jozufozu.flywheel.backend.material.MaterialManager;
import com.jozufozu.flywheel.backend.material.MaterialManagerImpl;
import com.jozufozu.flywheel.light.LightUpdater;
import com.mojang.math.Vector3f;

import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap;
import net.minecraft.client.Camera;
import net.minecraft.core.BlockPos;
import net.minecraft.util.Mth;
import com.mojang.math.Vector3f;

public abstract class InstanceManager<T> implements MaterialManagerImpl.OriginShiftListener {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
import net.minecraft.client.Minecraft;
import net.minecraft.client.multiplayer.ClientLevel;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.LevelAccessor;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import net.minecraftforge.event.TickEvent;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,15 @@
import com.jozufozu.flywheel.light.ILightUpdateListener;
import com.jozufozu.flywheel.light.IMovingListener;
import com.jozufozu.flywheel.light.LightProvider;
import com.mojang.math.Vector3f;

import net.minecraft.core.BlockPos;
import net.minecraft.core.Vec3i;
import net.minecraft.util.Mth;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.phys.AABB;
import net.minecraft.core.BlockPos;
import net.minecraft.util.Mth;
import net.minecraft.world.phys.Vec3;
import com.mojang.math.Vector3f;
import net.minecraft.core.Vec3i;

/**
* The layer between a {@link BlockEntity} and the Flywheel backend.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@
import com.jozufozu.flywheel.backend.instancing.InstancedRenderRegistry;
import com.jozufozu.flywheel.backend.material.MaterialManagerImpl;

import net.minecraft.world.entity.Entity;
import net.minecraft.core.BlockPos;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.level.Level;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@
import com.jozufozu.flywheel.light.GridAlignedBB;
import com.jozufozu.flywheel.light.ImmutableBox;

import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.core.BlockPos;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.BlockState;

/**
* The layer between a {@link BlockEntity} and the Flywheel backend.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@
import com.jozufozu.flywheel.backend.instancing.InstancedRenderRegistry;
import com.jozufozu.flywheel.backend.material.MaterialManagerImpl;

import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.core.BlockPos;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.entity.BlockEntity;

public class TileInstanceManager extends InstanceManager<BlockEntity> {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@
import com.jozufozu.flywheel.util.RenderUtil;
import com.mojang.blaze3d.vertex.PoseStack;

import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.core.Direction;
import net.minecraft.world.level.block.state.BlockState;

public interface Material<D extends InstanceData> {
/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,9 @@
import java.util.HashMap;
import java.util.Map;

import com.jozufozu.flywheel.backend.gl.error.GlError;
import com.jozufozu.flywheel.backend.instancing.InstanceData;
import com.jozufozu.flywheel.backend.state.IRenderState;
import com.jozufozu.flywheel.core.shader.WorldProgram;

import com.mojang.math.Matrix4f;

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
import com.jozufozu.flywheel.backend.state.RenderLayer;
import com.jozufozu.flywheel.backend.state.TextureRenderState;

import net.minecraft.world.inventory.InventoryMenu;
import net.minecraft.core.Vec3i;
import net.minecraft.world.inventory.InventoryMenu;

public interface MaterialManager {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@
import com.jozufozu.flywheel.core.WorldContext;
import com.jozufozu.flywheel.core.shader.WorldProgram;
import com.jozufozu.flywheel.util.WeakHashSet;
import com.mojang.math.Matrix4f;

import net.minecraft.client.Camera;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.core.BlockPos;
import net.minecraft.util.Mth;
import com.mojang.math.Matrix4f;
import net.minecraft.core.Vec3i;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth;

public class MaterialManagerImpl<P extends WorldProgram> implements MaterialManager {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@

import com.jozufozu.flywheel.backend.instancing.GPUInstancer;
import com.jozufozu.flywheel.core.shader.WorldProgram;

import com.mojang.math.Matrix4f;

public class MaterialRenderer<P extends WorldProgram> {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.jozufozu.flywheel.backend.model;

import static org.lwjgl.opengl.GL20.glDrawArrays;
import static org.lwjgl.opengl.GL11.glDrawArrays;

import com.jozufozu.flywheel.backend.Backend;
import com.jozufozu.flywheel.backend.gl.GlPrimitive;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.jozufozu.flywheel.backend.pipeline;

import static org.lwjgl.opengl.GL11.GL_TRUE;
import static org.lwjgl.opengl.GL20.GL_LINK_STATUS;
import static org.lwjgl.opengl.GL20.GL_TRUE;
import static org.lwjgl.opengl.GL20.glAttachShader;
import static org.lwjgl.opengl.GL20.glBindAttribLocation;
import static org.lwjgl.opengl.GL20.glCreateProgram;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
import com.jozufozu.flywheel.util.ResourceUtil;
import com.jozufozu.flywheel.util.StreamUtil;

import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.packs.resources.Resource;
import net.minecraft.server.packs.resources.ResourceManager;
import net.minecraft.resources.ResourceLocation;

/**
* The main object for loading and parsing source files.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
package com.jozufozu.flywheel.backend.source.error.lines;

import com.jozufozu.flywheel.backend.source.error.Level;

public record HeaderLine(String level, CharSequence message) implements ErrorLine {

@Override
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/com/jozufozu/flywheel/config/BooleanConfig.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@
import com.jozufozu.flywheel.backend.Backend;
import com.jozufozu.flywheel.backend.OptifineHandler;

import net.minecraft.ChatFormatting;
import net.minecraft.client.Minecraft;
import net.minecraft.client.player.LocalPlayer;
import net.minecraft.network.chat.MutableComponent;
import net.minecraft.network.chat.Component;
import net.minecraft.network.chat.MutableComponent;
import net.minecraft.network.chat.TextComponent;
import net.minecraft.ChatFormatting;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package com.jozufozu.flywheel.config;


import java.util.function.Supplier;

import net.minecraft.network.FriendlyByteBuf;
import net.minecraftforge.fmllegacy.network.NetworkEvent;

import java.util.function.Supplier;

/**
* Thanks, @zelophed
*/
Expand Down
Loading

0 comments on commit 279e089

Please sign in to comment.