Skip to content

Commit

Permalink
update bs, threadsafe rendering
Browse files Browse the repository at this point in the history
  • Loading branch information
bombcar committed Jan 3, 2024
1 parent e452a63 commit 7c7ba2c
Show file tree
Hide file tree
Showing 11 changed files with 605 additions and 270 deletions.
769 changes: 556 additions & 213 deletions build.gradle

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions dependencies.gradle
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
// Add your dependencies here

dependencies {
compile("com.github.GTNewHorizons:CodeChickenLib:1.1.5.1:dev")
compile("com.github.GTNewHorizons:CodeChickenCore:1.1.3:dev")
api("com.github.GTNewHorizons:CodeChickenLib:1.2.0:dev")
api("com.github.GTNewHorizons:CodeChickenCore:1.2.0:dev")

compileOnly("com.github.GTNewHorizons:NotEnoughItems:2.1.22-GTNH:dev") {
compileOnly("com.github.GTNewHorizons:NotEnoughItems:2.4.13-GTNH:dev") {
transitive = false
}
}
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
4 changes: 2 additions & 2 deletions gradlew
Original file line number Diff line number Diff line change
Expand Up @@ -144,15 +144,15 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
case $MAX_FD in #(
max*)
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
# shellcheck disable=SC3045
MAX_FD=$( ulimit -H -n ) ||
warn "Could not query maximum file descriptor limit"
esac
case $MAX_FD in #(
'' | soft) :;; #(
*)
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
# shellcheck disable=SC3045
ulimit -n "$MAX_FD" ||
warn "Could not set maximum file descriptor limit to $MAX_FD"
esac
Expand Down
7 changes: 0 additions & 7 deletions repositories.gradle
Original file line number Diff line number Diff line change
@@ -1,11 +1,4 @@
// Add any additional repositories for your dependencies here

repositories {
maven {
name = "GTNH Maven"
url = "http://jenkins.usrv.eu:8081/nexus/content/groups/public/"
}
maven {
url = "https://jitpack.io"
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -31,15 +31,16 @@ public void renderItem(ItemRenderType type, ItemStack item, Object... data) {
int rotation = 0;
if (type == ItemRenderType.ENTITY) rotation = 3;

final CCRenderState state = CCRenderState.instance();
switch (item.getItemDamage() >> 12) {
case 0:
EnderChestRenderer.renderChest(rotation, freq, !owner.equals("global"), d.x, d.y, d.z, 0, 0);
EnderChestRenderer.renderChest(state, rotation, freq, !owner.equals("global"), d.x, d.y, d.z, 0, 0);
break;
case 1:
CCRenderState.reset();
CCRenderState.pullLightmap();
CCRenderState.useNormals = true;
EnderTankRenderer.renderTank(rotation, 0, freq, !owner.equals("global"), d.x, d.y, d.z, 0);
state.reset();
state.pullLightmap();
state.useNormals = true;
EnderTankRenderer.renderTank(state, rotation, 0, freq, !owner.equals("global"), d.x, d.y, d.z, 0);
EnderTankRenderer.renderLiquid(TankSynchroniser.getClientLiquid(freq, owner), d.x, d.y, d.z);
break;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ public class EnderChestRenderer extends TileEntitySpecialRenderer {

public EnderChestRenderer() {}

public static void renderChest(int rotation, int freq, boolean owned, double x, double y, double z, int offset,
float lidAngle) {
public static void renderChest(CCRenderState state, int rotation, int freq, boolean owned, double x, double y,
double z, int offset, float lidAngle) {
if (!EnderStorage.disableFXChest) {
TileEntityRendererDispatcher info = TileEntityRendererDispatcher.instance;
renderEndPortal.render(
Expand All @@ -41,7 +41,7 @@ public static void renderChest(int rotation, int freq, boolean owned, double x,
}
GL11.glColor4f(1, 1, 1, 1);

CCRenderState.changeTexture("enderstorage:textures/enderchest.png");
state.changeTexture("enderstorage:textures/enderchest.png");
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
GL11.glPushMatrix();
GL11.glColor4f(1, 1, 1, 1);
Expand All @@ -67,10 +67,10 @@ public static void renderChest(int rotation, int freq, boolean owned, double x,
0.04);

GL11.glDisable(GL11.GL_LIGHTING);
CCRenderState.changeTexture("enderstorage:textures/hedronmap.png");
CCRenderState.startDrawing(4);
state.changeTexture("enderstorage:textures/hedronmap.png");
state.startDrawing(4);
CCModelLibrary.icosahedron4.render(pearlMat);
CCRenderState.draw();
state.draw();
GL11.glEnable(GL11.GL_LIGHTING);
}

Expand Down Expand Up @@ -129,12 +129,14 @@ private static void addVecWithUV(Vector3 vec, double u, double v) {
}

public void renderTileEntityAt(TileEntity tile, double d, double d1, double d2, float f) {
CCRenderState.reset();
CCRenderState.setBrightness(tile.getWorldObj(), tile.xCoord, tile.yCoord, tile.zCoord);
CCRenderState.useNormals = true;
final CCRenderState state = CCRenderState.instance();
state.reset();
state.setBrightness(tile.getWorldObj(), tile.xCoord, tile.yCoord, tile.zCoord);
state.useNormals = true;

TileEnderChest chest = (TileEnderChest) tile;
renderChest(
state,
chest.rotation,
chest.freq,
!chest.owner.equals("global"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,11 +68,13 @@ public class EnderTankRenderer extends TileEntitySpecialRenderer {
public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float f) {
TileEnderTank tank = (TileEnderTank) tile;

CCRenderState.reset();
CCRenderState.pullLightmap();
CCRenderState.useNormals = true;
final CCRenderState state = CCRenderState.instance();
state.reset();
state.pullLightmap();
state.useNormals = true;

renderTank(
state,
tank.rotation,
(float) MathHelper.interpolate(tank.pressure_state.b_rotate, tank.pressure_state.a_rotate, f)
* 0.01745F,
Expand All @@ -85,8 +87,8 @@ public void renderTileEntityAt(TileEntity tile, double x, double y, double z, fl
renderLiquid(tank.liquid_state.c_liquid, x, y, z);
}

public static void renderTank(int rotation, float valve, int freq, boolean owned, double x, double y, double z,
int offset) {
public static void renderTank(CCRenderState state, int rotation, float valve, int freq, boolean owned, double x,
double y, double z, int offset) {
if (!EnderStorage.disableFXTank) {
TileEntityRendererDispatcher info = TileEntityRendererDispatcher.instance;
renderEndPortal.render(
Expand All @@ -106,25 +108,25 @@ public static void renderTank(int rotation, float valve, int freq, boolean owned
GL11.glTranslated(x + 0.5, y, z + 0.5);
GL11.glRotatef(-90 * (rotation + 2), 0, 1, 0);

CCRenderState.changeTexture("enderstorage:textures/endertank.png");
CCRenderState.startDrawing(4);
state.changeTexture("enderstorage:textures/endertank.png");
state.startDrawing(4);
tankModel.render();
CCRenderState.draw();
state.draw();

CCRenderState.changeTexture("enderstorage:textures/buttons.png");
CCRenderState.startDrawing(7);
state.changeTexture("enderstorage:textures/buttons.png");
state.startDrawing(7);
for (int i = 0; i < 3; i++) {
int colour = EnderStorageManager.getColourFromFreq(freq, i);
buttons[i].render(new UVTranslation(0.25 * (colour % 4), 0.25 * (colour / 4)));
}
CCRenderState.draw();
state.draw();

new Rotation(valve, new Vector3(0, 0, 1)).at(new Vector3(0, 0.4165, 0)).glApply();

CCRenderState.changeTexture("enderstorage:textures/endertank.png");
CCRenderState.startDrawing(4);
state.changeTexture("enderstorage:textures/endertank.png");
state.startDrawing(4);
valveModel.render(new UVTranslation(0, owned ? 13 / 64D : 0));
CCRenderState.draw();
state.draw();
GL11.glPopMatrix();
GL11.glDisable(GL12.GL_RESCALE_NORMAL);

Expand All @@ -135,10 +137,10 @@ public static void renderTank(int rotation, float valve, int freq, boolean owned
0.04);

GL11.glDisable(GL11.GL_LIGHTING);
CCRenderState.changeTexture("enderstorage:textures/hedronmap.png");
CCRenderState.startDrawing(4);
state.changeTexture("enderstorage:textures/hedronmap.png");
state.startDrawing(4);
CCModelLibrary.icosahedron4.render(pearlMat);
CCRenderState.draw();
state.draw();
GL11.glEnable(GL11.GL_LIGHTING);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@
import net.minecraftforge.event.world.WorldEvent.Unload;
import net.minecraftforge.fluids.FluidStack;

import com.google.common.collect.Sets;
import com.google.common.collect.Sets.SetView;

import codechicken.core.ClientUtils;
import codechicken.core.ServerUtils;
import codechicken.core.fluid.FluidUtils;
Expand All @@ -17,10 +20,6 @@
import codechicken.enderstorage.internal.EnderStorageSPH;
import codechicken.lib.math.MathHelper;
import codechicken.lib.packet.PacketCustom;

import com.google.common.collect.Sets;
import com.google.common.collect.Sets.SetView;

import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.PlayerEvent.PlayerChangedDimensionEvent;
import cpw.mods.fml.common.gameevent.PlayerEvent.PlayerLoggedInEvent;
Expand Down
13 changes: 4 additions & 9 deletions src/main/resources/mcmod.info
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,13 @@
{
"modid": "${modId}",
"name": "${modName}",
"description": "Stores your stuff in the END!

Credits: Ecu - original idea, design,
chest and pouch texture
Rosethorns - tank model
Soaryn - tank texture

Supporters: Blkdragon112",
"description": "Stores your stuff in the END!",
"Credits": "Ecu - original idea, design, chest and pouch texture. Rosethorns - tank model. Soaryn - tank texture",
"Supporters": "Blkdragon112",
"version": "${modVersion}",
"mcversion": "${minecraftVersion}",
"url": "http://www.minecraftforum.net/topic/909223",
"authorList": [ "ChickenBones" ],
"dependencies": [ "CodeChickenCore" ]
}
]
]

0 comments on commit 7c7ba2c

Please sign in to comment.