Merge branch 'master' of https://bitbucket.org/AlgorithmX2/appliedenergistics2 into rv1
Conflicts: items/materials/MaterialType.java util/Platform.java
This commit is contained in:
@@ -13,6 +13,8 @@ import appeng.api.parts.IPartCollsionHelper;
|
||||
import appeng.api.parts.IPartRenderHelper;
|
||||
import appeng.api.parts.ISimplifiedBundle;
|
||||
import appeng.block.AEBaseBlock;
|
||||
import appeng.core.AEConfig;
|
||||
import appeng.core.features.AEFeature;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
@@ -103,6 +105,39 @@ public class BusRenderHelper implements IPartRenderHelper
|
||||
|
||||
BoundBoxCalculator bbc = new BoundBoxCalculator();
|
||||
|
||||
int renderingForPass = 0;
|
||||
int currentPass = 0;
|
||||
int itemsRendered = 0;
|
||||
boolean noAlphaPass = AEConfig.instance.isFeatureEnabled( AEFeature.AlphaPass ) == false;
|
||||
|
||||
public int getItemsRendered()
|
||||
{
|
||||
return itemsRendered;
|
||||
}
|
||||
|
||||
public void setPass(int pass)
|
||||
{
|
||||
renderingForPass = 0;
|
||||
currentPass = pass;
|
||||
itemsRendered = 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderForPass(int pass)
|
||||
{
|
||||
renderingForPass = pass;
|
||||
}
|
||||
|
||||
public boolean renderThis()
|
||||
{
|
||||
if ( renderingForPass == currentPass || noAlphaPass )
|
||||
{
|
||||
itemsRendered++;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void normalRendering()
|
||||
{
|
||||
@@ -255,6 +290,9 @@ public class BusRenderHelper implements IPartRenderHelper
|
||||
@Override
|
||||
public void renderBlock(int x, int y, int z, RenderBlocks renderer)
|
||||
{
|
||||
if ( !renderThis() )
|
||||
return;
|
||||
|
||||
AEBaseBlock blk = (AEBaseBlock) AEApi.instance().blocks().blockMultiPart.block();
|
||||
BlockRenderInfo info = blk.getRendererInstance();
|
||||
ForgeDirection forward = BusRenderHelper.instance.az;
|
||||
@@ -285,14 +323,26 @@ public class BusRenderHelper implements IPartRenderHelper
|
||||
bbr.renderBlockBounds( renderer, minX, minY, minZ, maxX, maxY, maxZ, ax, ay, az );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setFacesToRender(EnumSet<ForgeDirection> faces)
|
||||
{
|
||||
BusRenderer.instance.renderer.faces = faces;
|
||||
}
|
||||
|
||||
public void renderBlockCurrentBounds(int x, int y, int z, RenderBlocks renderer)
|
||||
{
|
||||
if ( !renderThis() )
|
||||
return;
|
||||
|
||||
renderer.renderStandardBlock( renderer.blockAccess.getBlock( x, y, z ), x, y, z );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderFaceCutout(int x, int y, int z, IIcon ico, ForgeDirection face, float edgeThickness, RenderBlocks renderer)
|
||||
{
|
||||
if ( !renderThis() )
|
||||
return;
|
||||
|
||||
switch (face)
|
||||
{
|
||||
case DOWN:
|
||||
@@ -325,6 +375,9 @@ public class BusRenderHelper implements IPartRenderHelper
|
||||
@Override
|
||||
public void renderFace(int x, int y, int z, IIcon ico, ForgeDirection face, RenderBlocks renderer)
|
||||
{
|
||||
if ( !renderThis() )
|
||||
return;
|
||||
|
||||
prepareBounds( renderer );
|
||||
switch (face)
|
||||
{
|
||||
|
||||
@@ -10,10 +10,13 @@ import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import appeng.api.parts.IAlphaPassItem;
|
||||
import appeng.api.parts.IFacadePart;
|
||||
import appeng.api.parts.IPart;
|
||||
import appeng.api.parts.IPartItem;
|
||||
import appeng.client.ClientHelper;
|
||||
import appeng.core.AEConfig;
|
||||
import appeng.core.features.AEFeature;
|
||||
import appeng.facade.IFacadeItem;
|
||||
import appeng.util.Platform;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
@@ -63,11 +66,24 @@ public class BusRenderer implements IItemRenderer
|
||||
|
||||
GL11.glPushMatrix();
|
||||
GL11.glPushAttrib( GL11.GL_ALL_ATTRIB_BITS );
|
||||
GL11.glEnable( GL11.GL_ALPHA_TEST );
|
||||
GL11.glEnable( GL11.GL_DEPTH_TEST );
|
||||
GL11.glEnable( GL11.GL_TEXTURE_2D );
|
||||
GL11.glEnable( GL11.GL_LIGHTING );
|
||||
GL11.glDisable( GL11.GL_BLEND );
|
||||
|
||||
if ( AEConfig.instance.isFeatureEnabled( AEFeature.AlphaPass ) && item.getItem() instanceof IAlphaPassItem
|
||||
&& ((IAlphaPassItem) item.getItem()).useAlphaPass( item ) )
|
||||
{
|
||||
GL11.glBlendFunc( GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA );
|
||||
GL11.glColor4f( 1.0f, 1.0f, 1.0f, 1.0f );
|
||||
GL11.glDisable( GL11.GL_ALPHA_TEST );
|
||||
GL11.glEnable( GL11.GL_BLEND );
|
||||
}
|
||||
else
|
||||
{
|
||||
GL11.glAlphaFunc( GL11.GL_GREATER, 0.4f );
|
||||
GL11.glEnable( GL11.GL_ALPHA_TEST );
|
||||
GL11.glDisable( GL11.GL_BLEND );
|
||||
}
|
||||
|
||||
if ( type == ItemRenderType.EQUIPPED_FIRST_PERSON )
|
||||
{
|
||||
@@ -79,7 +95,6 @@ public class BusRenderer implements IItemRenderer
|
||||
GL11.glRotatef( 90.0f, 0.0f, 1.0f, 0.0f );
|
||||
GL11.glScalef( 0.8f, 0.8f, 0.8f );
|
||||
GL11.glTranslatef( -0.8f, -0.87f, -0.7f );
|
||||
|
||||
}
|
||||
|
||||
if ( type == ItemRenderType.INVENTORY )
|
||||
|
||||
@@ -7,6 +7,7 @@ import net.minecraft.world.IBlockAccess;
|
||||
import net.minecraftforge.client.IItemRenderer.ItemRenderType;
|
||||
import appeng.block.AEBaseBlock;
|
||||
import appeng.client.render.BaseBlockRender;
|
||||
import appeng.client.render.BusRenderHelper;
|
||||
import appeng.client.render.BusRenderer;
|
||||
import appeng.tile.AEBaseTile;
|
||||
import appeng.tile.networking.TileCableBus;
|
||||
@@ -38,7 +39,7 @@ public class RendererCableBus extends BaseBlockRender
|
||||
BusRenderer.instance.renderer.renderAllFaces = false;
|
||||
}
|
||||
|
||||
return true;
|
||||
return BusRenderHelper.instance.getItemsRendered() > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user