Skip to content

Commit

Permalink
reformat code
Browse files Browse the repository at this point in the history
  • Loading branch information
FalsePattern committed Jun 1, 2022
1 parent fdede8e commit a293043
Show file tree
Hide file tree
Showing 15 changed files with 119 additions and 74 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
@API(apiVersion="1.1", owner=ModInfo.MODID, provides="triangulator tessellator quad toggle")
@API(apiVersion = "1.1",
owner = ModInfo.MODID,
provides = "triangulator tessellator quad toggle")
package com.falsepattern.triangulator.api;

import com.falsepattern.triangulator.ModInfo;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,6 @@

public interface IQuadComparatorMixin {
void enableTriMode();

void enableShaderMode();
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,17 @@ public interface ITessellatorMixin {
void setAlternativeTriangulation();

boolean isDrawingTris();

boolean hackedQuadRendering();

boolean quadTriangulationActive();

boolean shaderOn();

void shaderOn(boolean state);

Comparator<?> hackQuadComparator(Comparator<?> comparator);

int hackQuadCounting(int constant);

void triangulate();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,10 @@
import com.falsepattern.triangulator.mixin.helper.ITessellatorMixin;
import net.minecraft.client.renderer.Tessellator;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.*;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Constant;
import org.spongepowered.asm.mixin.injection.ModifyArg;
import org.spongepowered.asm.mixin.injection.ModifyConstant;

import java.util.Comparator;

Expand All @@ -13,8 +16,8 @@
public abstract class TessellatorFoamFixMixin implements ITessellatorMixin {
@ModifyArg(method = {"getVertexState_foamfix_old"},
at = @At(value = "INVOKE",
target = "Ljava/util/PriorityQueue;<init>(ILjava/util/Comparator;)V",
remap = false),
target = "Ljava/util/PriorityQueue;<init>(ILjava/util/Comparator;)V",
remap = false),
index = 1,
remap = false,
require = 1)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,10 @@
import com.falsepattern.triangulator.mixin.helper.ITessellatorMixin;
import net.minecraft.client.renderer.Tessellator;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.*;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Constant;
import org.spongepowered.asm.mixin.injection.ModifyArg;
import org.spongepowered.asm.mixin.injection.ModifyConstant;

import java.util.Comparator;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@
@Mixin(Tessellator.class)
public abstract class TessellatorOptiFineMixin implements ITessellatorMixin {

@Shadow private int drawMode;
@Shadow
private int drawMode;

private boolean trollOptifineAddVertex;

Expand Down Expand Up @@ -47,6 +48,7 @@ private void stateSwitchingForDrawCallStart(CallbackInfoReturnable<Integer> cir)
drawMode = GL11.GL_TRIANGLES;
}
}

@Inject(method = "draw",
at = @At(value = "RETURN"),
require = 1)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,16 @@
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;

@Mixin(value = RedstonePasteHighlighter.class, remap = false)
@Mixin(value = RedstonePasteHighlighter.class,
remap = false)
public abstract class RedstonePasteHighlighterMixin {
@Inject(method = "drawLineLoop",
at = @At("HEAD"),
require = 1)
private void turnOffTriangulator(CallbackInfo ci) {
((ToggleableTessellator) Tessellator.instance).disableTriangulator();
}

@Inject(method = "drawLineLoop",
at = @At("RETURN"),
require = 1)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,17 @@

@Mixin(QuadComparator.class)
public abstract class QuadComparatorMixin implements IQuadComparatorMixin {
@Shadow private float field_147630_a;
@Shadow
private float field_147630_a;

@Shadow private float field_147628_b;
@Shadow
private float field_147628_b;

@Shadow private float field_147629_c;
@Shadow
private float field_147629_c;

@Shadow private int[] field_147627_d;
@Shadow
private int[] field_147627_d;

private boolean triMode;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,29 +16,53 @@
@Mixin(RenderBlocks.class)
public abstract class RenderBlocksMixin {

@Shadow(aliases = "colorRedTopLeftF") public float colorRedTopLeft;
@Shadow(aliases = "colorRedTopLeftF")
public float colorRedTopLeft;

@Shadow(aliases = "colorGreenTopLeftF") public float colorGreenTopLeft;
@Shadow(aliases = "colorGreenTopLeftF")
public float colorGreenTopLeft;

@Shadow(aliases = "colorBlueTopLeftF") public float colorBlueTopLeft;
@Shadow(aliases = "colorBlueTopLeftF")
public float colorBlueTopLeft;

@Shadow(aliases = "colorRedBottomLeftF") public float colorRedBottomLeft;
@Shadow(aliases = "colorRedBottomLeftF")
public float colorRedBottomLeft;

@Shadow(aliases = "colorGreenBottomLeftF") public float colorGreenBottomLeft;
@Shadow(aliases = "colorGreenBottomLeftF")
public float colorGreenBottomLeft;

@Shadow(aliases = "colorBlueBottomLeftF") public float colorBlueBottomLeft;
@Shadow(aliases = "colorBlueBottomLeftF")
public float colorBlueBottomLeft;

@Shadow(aliases = "colorRedBottomRightF") public float colorRedBottomRight;
@Shadow(aliases = "colorRedBottomRightF")
public float colorRedBottomRight;

@Shadow(aliases = "colorGreenBottomRightF") public float colorGreenBottomRight;
@Shadow(aliases = "colorGreenBottomRightF")
public float colorGreenBottomRight;

@Shadow(aliases = "colorBlueBottomRightF") public float colorBlueBottomRight;
@Shadow(aliases = "colorBlueBottomRightF")
public float colorBlueBottomRight;

@Shadow(aliases = "colorRedTopRightF") public float colorRedTopRight;
@Shadow(aliases = "colorRedTopRightF")
public float colorRedTopRight;

@Shadow(aliases = "colorGreenTopRightF") public float colorGreenTopRight;
@Shadow(aliases = "colorGreenTopRightF")
public float colorGreenTopRight;

@Shadow(aliases = "colorBlueTopRightF") public float colorBlueTopRight;
@Shadow(aliases = "colorBlueTopRightF")
public float colorBlueTopRight;

private static float avg(final float a, final float b) {
return (a + b) * 0.5F;
}

private static float avg(final float r, final float g, final float b) {
return (r + g + b) * 0.3333333333333333F;
}

private static float diff(final float a, final float b) {
return Math.abs(a - b);
}

@Inject(method = {"renderStandardBlockWithAmbientOcclusion", "renderStandardBlockWithAmbientOcclusionPartial"},
at = {
Expand All @@ -61,7 +85,7 @@ private void aoFix(CallbackInfoReturnable<Boolean> cir) {
val avgBottomLeft = avg(colorRedBottomLeft, colorGreenBottomLeft, colorBlueBottomLeft);
val avgBottomRight = avg(colorRedBottomRight, colorGreenBottomRight, colorBlueBottomRight);
val avgTopRight = avg(colorRedTopRight, colorGreenTopRight, colorBlueTopRight);
val mainDiagonalDiff= diff(avgTopLeft, avgBottomRight);
val mainDiagonalDiff = diff(avgTopLeft, avgBottomRight);
val altDiagonalDiff = diff(avgBottomLeft, avgTopRight);
if (Math.abs(mainDiagonalDiff - altDiagonalDiff) < 0.01) {
val mainDiagonalAvg = avg(avgTopLeft, avgBottomRight);
Expand Down Expand Up @@ -205,16 +229,4 @@ private int incrementXValue4(int x) {
private int decrementXValue5(int x) {
return x - 1;
}

private static float avg(final float a, final float b) {
return (a + b) * 0.5F;
}

private static float avg(final float r, final float g, final float b) {
return (r + g + b) * 0.3333333333333333F;
}

private static float diff(final float a, final float b) {
return Math.abs(a - b);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,9 @@
import org.spongepowered.asm.lib.Opcodes;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.*;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.Redirect;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;

import java.util.Comparator;
Expand All @@ -20,9 +22,12 @@ public abstract class TessellatorMixin implements ITessellatorMixin, ToggleableT
@Shadow
private int drawMode;

@Shadow private int[] rawBuffer;
@Shadow private int rawBufferIndex;
@Shadow private int vertexCount;
@Shadow
private int[] rawBuffer;
@Shadow
private int rawBufferIndex;
@Shadow
private int vertexCount;
private boolean hackedQuadRendering = false;
@Getter
private boolean drawingTris = false;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,12 @@

@Mixin(TileEntityBeaconRenderer.class)
public abstract class TileEntityBeaconRendererMixin extends TileEntitySpecialRenderer {
@Shadow @Final private static ResourceLocation field_147523_b;

@Shadow
@Final
private static ResourceLocation field_147523_b;

private static int displayList;

private static void runDisplayList() {
if (displayList == 0) {
displayList = GLAllocation.generateDisplayLists(1);
Expand Down Expand Up @@ -119,10 +121,9 @@ private void renderTileEntityAt(TileEntityBeacon beacon, double x, double y, dou
ci.cancel();
float f1 = beacon.func_146002_i();

if (f1 > 0.0F)
{
if (f1 > 0.0F) {
bindTexture(field_147523_b);
double tickTime = (double)beacon.getWorldObj().getTotalWorldTime() + partialTickTime;
double tickTime = (double) beacon.getWorldObj().getTotalWorldTime() + partialTickTime;
double rotation = tickTime * 2;
double textureMove = tickTime / 10d;
GL11.glMatrixMode(GL11.GL_TEXTURE);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,21 +13,21 @@
@RequiredArgsConstructor
public enum Mixin implements IMixin {
//region Minecraft->client
QuadComparatorMixin(Side.CLIENT, always(),"vanilla.QuadComparatorMixin"),
TileEntityBeaconRendererMixin(Side.CLIENT, always(),"vanilla.TileEntityBeaconRendererMixin"),
RenderBlocksMixin(Side.CLIENT, always(),"vanilla.RenderBlocksMixin"),
TessellatorMixin(Side.CLIENT, always(),"vanilla.TessellatorMixin"),
QuadComparatorMixin(Side.CLIENT, always(), "vanilla.QuadComparatorMixin"),
TileEntityBeaconRendererMixin(Side.CLIENT, always(), "vanilla.TileEntityBeaconRendererMixin"),
RenderBlocksMixin(Side.CLIENT, always(), "vanilla.RenderBlocksMixin"),
TessellatorMixin(Side.CLIENT, always(), "vanilla.TessellatorMixin"),
//endregion Minecraft->client
//region FoamFix->client
FFTessellatorVanillaMixin(Side.CLIENT, avoid(TargetedMod.FOAMFIX), "foamfix.TessellatorVanillaMixin"),
FFTessellatorFoamFixMixin(Side.CLIENT, require(TargetedMod.FOAMFIX), "foamfix.TessellatorFoamFixMixin"),
FFTessellatorVanillaMixin(Side.CLIENT, avoid(TargetedMod.FOAMFIX), "foamfix.TessellatorVanillaMixin"),
FFTessellatorFoamFixMixin(Side.CLIENT, require(TargetedMod.FOAMFIX), "foamfix.TessellatorFoamFixMixin"),
//endregion FoamFix->client
//region OptiFine->client
OFTessellatorVanillaMixin(Side.CLIENT, avoid(TargetedMod.OPTIFINE), "optifine.TessellatorVanillaMixin"),
OFTessellatorOptiFineMixin(Side.CLIENT, require(TargetedMod.OPTIFINE), "optifine.TessellatorOptiFineMixin"),
OFTessellatorVanillaMixin(Side.CLIENT, avoid(TargetedMod.OPTIFINE), "optifine.TessellatorVanillaMixin"),
OFTessellatorOptiFineMixin(Side.CLIENT, require(TargetedMod.OPTIFINE), "optifine.TessellatorOptiFineMixin"),
//endregion OptiFine->client
//region RedstonePaste->client
RedstonePasteHighlighterMixin(Side.CLIENT, require(TargetedMod.REDSTONEPASTE), "redstonepaste.RedstonePasteHighlighterMixin"),
RedstonePasteHighlighterMixin(Side.CLIENT, require(TargetedMod.REDSTONEPASTE), "redstonepaste.RedstonePasteHighlighterMixin"),
//endregion RedstonePaste->client
;

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

import java.util.function.Predicate;

import static com.falsepattern.lib.mixin.ITargetedMod.PredicateHelpers.*;
import static com.falsepattern.lib.mixin.ITargetedMod.PredicateHelpers.contains;
import static com.falsepattern.lib.mixin.ITargetedMod.PredicateHelpers.startsWith;

@RequiredArgsConstructor
public enum TargetedMod implements ITargetedMod {
FOAMFIX("FoamFix", false, startsWith("foamfix")),
OPTIFINE("OptiFine", false,
startsWith("optifine")
.and( contains("d7")
.or(contains("d8"))
.or(contains("e3"))
.or(contains("e7")))),
.and(contains("d7")
.or(contains("d8"))
.or(contains("e3"))
.or(contains("e7")))),
REDSTONEPASTE("RedstonePaste", false, startsWith("redstonepaste")),
;

Expand Down
4 changes: 2 additions & 2 deletions src/main/resources/LICENSE.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ the Free Software Foundation, either version 3 of the License, or

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
along with this program. If not, see <https://www.gnu.org/licenses/>.
28 changes: 16 additions & 12 deletions src/main/resources/mcmod.info
Original file line number Diff line number Diff line change
@@ -1,14 +1,18 @@
[
{
"modid": "${modId}",
"name": "${modName}",
"description": "A small library for modernizing the way minecraft renders quads.",
"version": "${modVersion}",
"mcversion": "${minecraftVersion}",
"url": "https://github.com/FalsePattern/Triangulator",
"authorList": ["FalsePattern"],
"parent": "",
"dependencies": ["spongemixins"],
"useDependencyInformation": true
}
{
"modid": "${modId}",
"name": "${modName}",
"description": "A small library for modernizing the way minecraft renders quads.",
"version": "${modVersion}",
"mcversion": "${minecraftVersion}",
"url": "https://github.com/FalsePattern/Triangulator",
"authorList": [
"FalsePattern"
],
"parent": "",
"dependencies": [
"spongemixins"
],
"useDependencyInformation": true
}
]

0 comments on commit a293043

Please sign in to comment.