Get Mechanical Pipe rendering working a bit better.
This commit is contained in:
parent
31f8566a1f
commit
98c8068a0f
22 changed files with 368 additions and 39 deletions
common/mekanism
api/transmitters
client/render
common
resources/assets/mekanism
models
transmitter_contents.objtransmitter_large.blendtransmitter_large.objtransmitter_small.blendtransmitter_small.obj
textures/blocks/models
|
@ -5,11 +5,19 @@ import net.minecraft.tileentity.TileEntity;
|
|||
|
||||
public enum TransmissionType
|
||||
{
|
||||
ENERGY,
|
||||
FLUID,
|
||||
GAS;
|
||||
ENERGY(Size.SMALL),
|
||||
FLUID(Size.LARGE),
|
||||
GAS(Size.SMALL),
|
||||
ITEM(Size.LARGE);
|
||||
|
||||
public static TransmissionType[] metaArray = {GAS, ENERGY, FLUID};
|
||||
public Size transmitterSize;
|
||||
|
||||
private TransmissionType(Size size)
|
||||
{
|
||||
transmitterSize = size;
|
||||
}
|
||||
|
||||
public static TransmissionType[] metaArray = {GAS, ENERGY, FLUID, ITEM};
|
||||
|
||||
public static boolean checkTransmissionType(TileEntity sideTile, TransmissionType type)
|
||||
{
|
||||
|
@ -48,4 +56,17 @@ public enum TransmissionType
|
|||
return metaArray[meta];
|
||||
return null;
|
||||
}
|
||||
|
||||
public static enum Size
|
||||
{
|
||||
SMALL(6),
|
||||
LARGE(8);
|
||||
|
||||
public int centreSize;
|
||||
|
||||
private Size(int size) {
|
||||
centreSize = size;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -4,6 +4,7 @@ import java.util.HashMap;
|
|||
import java.util.Map;
|
||||
|
||||
import mekanism.api.transmitters.TransmissionType;
|
||||
import mekanism.api.transmitters.TransmissionType.Size;
|
||||
import mekanism.client.render.MekanismRenderer.DisplayInteger;
|
||||
import mekanism.client.render.MekanismRenderer.Model3D;
|
||||
import mekanism.common.multipart.PartMechanicalPipe;
|
||||
|
@ -34,15 +35,9 @@ import codechicken.lib.vec.Vector3;
|
|||
public class RenderPartTransmitter implements IIconRegister
|
||||
{
|
||||
public static RenderPartTransmitter INSTANCE;
|
||||
|
||||
public static Icon[] uniCableTextures = new Icon[2];
|
||||
public static Icon[] mechPipeTextures = new Icon[2];
|
||||
public static Icon[] pressTubeTextures = new Icon[2];
|
||||
|
||||
public static Icon sideTexture;
|
||||
public static Map<TransmissionType, Icon[]> typeMap = new HashMap<TransmissionType, Icon[]>();
|
||||
|
||||
public static Map<String, CCModel> models;
|
||||
public static Map<String, CCModel> small_models;
|
||||
public static Map<String, CCModel> large_models;
|
||||
public static Map<String, CCModel> cableContentsModels;
|
||||
|
||||
private static final int stages = 40;
|
||||
|
@ -53,16 +48,25 @@ public class RenderPartTransmitter implements IIconRegister
|
|||
|
||||
static
|
||||
{
|
||||
models = CCModel.parseObjModels(new ResourceLocation("mekanism", "models/transmitter.obj"), 7, null);
|
||||
|
||||
for(CCModel c : models.values())
|
||||
small_models = CCModel.parseObjModels(new ResourceLocation("mekanism", "models/transmitter_small.obj"), 7, null);
|
||||
|
||||
for(CCModel c : small_models.values())
|
||||
{
|
||||
c.apply(new Translation(.5, .5, .5));
|
||||
c.computeLighting(LightModel.standardLightModel);
|
||||
c.shrinkUVs(0.0005);
|
||||
}
|
||||
|
||||
cableContentsModels = CCModel.parseObjModels(new ResourceLocation("mekanism", "models/transmitterEnergy.obj"), 7, null);
|
||||
|
||||
large_models = CCModel.parseObjModels(new ResourceLocation("mekanism", "models/transmitter_large.obj"), 7, null);
|
||||
|
||||
for(CCModel c : large_models.values())
|
||||
{
|
||||
c.apply(new Translation(.5, .5, .5));
|
||||
c.computeLighting(LightModel.standardLightModel);
|
||||
c.shrinkUVs(0.0005);
|
||||
}
|
||||
|
||||
cableContentsModels = CCModel.parseObjModels(new ResourceLocation("mekanism", "models/transmitter_contents.obj"), 7, null);
|
||||
|
||||
for(CCModel c : cableContentsModels.values())
|
||||
{
|
||||
|
@ -70,10 +74,6 @@ public class RenderPartTransmitter implements IIconRegister
|
|||
c.computeLighting(LightModel.standardLightModel);
|
||||
c.shrinkUVs(0.0005);
|
||||
}
|
||||
|
||||
typeMap.put(TransmissionType.ENERGY, uniCableTextures);
|
||||
typeMap.put(TransmissionType.FLUID, mechPipeTextures);
|
||||
typeMap.put(TransmissionType.GAS, pressTubeTextures);
|
||||
}
|
||||
|
||||
public static RenderPartTransmitter getInstance()
|
||||
|
@ -355,8 +355,8 @@ public class RenderPartTransmitter implements IIconRegister
|
|||
boolean connected = PartTransmitter.connectionMapContainsSide(transmitter.getAllCurrentConnections(), side);
|
||||
String name = side.name().toLowerCase();
|
||||
name += connected ? "Out" : "In";
|
||||
Icon renderIcon = connected ? sideTexture : getIconForPart(transmitter);
|
||||
renderPart(renderIcon, models.get(name), transmitter.x(), transmitter.y(), transmitter.z());
|
||||
Icon renderIcon = connected ? transmitter.getSideIcon() : transmitter.getCenterIcon();
|
||||
renderPart(renderIcon, getModelForPart(transmitter.getTransmitterSize(), name), transmitter.x(), transmitter.y(), transmitter.z());
|
||||
}
|
||||
|
||||
public void renderEnergySide(ForgeDirection side, PartUniversalCable cable)
|
||||
|
@ -385,22 +385,22 @@ public class RenderPartTransmitter implements IIconRegister
|
|||
cc.render(0, cc.verts.length, new Translation(0, 0, 0), new IconTransformation(icon), new ColourMultiplier(colour));
|
||||
}
|
||||
|
||||
public Icon getIconForPart(PartTransmitter<?> part)
|
||||
{
|
||||
Icon[] icons = typeMap.get(part.getTransmissionType());
|
||||
return icons[part.isActive ? 1 : 0];
|
||||
}
|
||||
public CCModel getModelForPart(Size size, String name)
|
||||
{
|
||||
switch(size)
|
||||
{
|
||||
case SMALL: return small_models.get(name);
|
||||
case LARGE: return large_models.get(name);
|
||||
default: return small_models.get(name);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerIcons(IconRegister register)
|
||||
{
|
||||
sideTexture = register.registerIcon("mekanism:models/TransmitterSide");
|
||||
uniCableTextures[0] = register.registerIcon("mekanism:models/UniversalCable");
|
||||
uniCableTextures[1] = uniCableTextures[0];
|
||||
pressTubeTextures[0] = register.registerIcon("mekanism:models/PressurizedTube");
|
||||
pressTubeTextures[1] = pressTubeTextures[0];
|
||||
mechPipeTextures[0] = register.registerIcon("mekanism:models/MechanicalPipe");
|
||||
mechPipeTextures[1] = register.registerIcon("mekanism:models/MechanicalPipeActive");
|
||||
PartUniversalCable.registerIcons(register);
|
||||
PartMechanicalPipe.registerIcons(register);
|
||||
PartPressurizedTube.registerIcons(register);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -0,0 +1,37 @@
|
|||
package mekanism.client.render.mekanism.client.render;
|
||||
|
||||
import net.minecraft.client.renderer.texture.IconRegister;
|
||||
import net.minecraft.util.Icon;
|
||||
|
||||
public class PartTransmitterIcons {
|
||||
private Icon sideIcon;
|
||||
private Icon[] centerIcons;
|
||||
|
||||
public PartTransmitterIcons(int numCentres)
|
||||
{
|
||||
centerIcons = new Icon[numCentres];
|
||||
}
|
||||
|
||||
public void registerCenterIcons(IconRegister register, String[] filenames)
|
||||
{
|
||||
for(int i=0; i<centerIcons.length; i++)
|
||||
{
|
||||
centerIcons[i] = register.registerIcon("mekanism:models/"+filenames[i]);
|
||||
}
|
||||
}
|
||||
|
||||
public void registerSideIcon(IconRegister register, String filename)
|
||||
{
|
||||
sideIcon = register.registerIcon("mekanism:models/"+filename);
|
||||
}
|
||||
|
||||
public Icon getSideIcon()
|
||||
{
|
||||
return sideIcon;
|
||||
}
|
||||
|
||||
public Icon getCenterIcon(int n)
|
||||
{
|
||||
return centerIcons[n];
|
||||
}
|
||||
}
|
|
@ -65,6 +65,7 @@ import mekanism.common.item.ItemRobit;
|
|||
import mekanism.common.item.ItemScubaTank;
|
||||
import mekanism.common.item.ItemWalkieTalkie;
|
||||
import mekanism.common.multipart.ItemPartTransmitter;
|
||||
import mekanism.common.multipart.MultipartMekanism;
|
||||
import mekanism.common.network.PacketConfigurationUpdate;
|
||||
import mekanism.common.network.PacketConfiguratorState;
|
||||
import mekanism.common.network.PacketDataRequest;
|
||||
|
@ -1229,6 +1230,8 @@ public class Mekanism
|
|||
|
||||
//Register to receive subscribed events
|
||||
MinecraftForge.EVENT_BUS.register(this);
|
||||
|
||||
new MultipartMekanism();
|
||||
|
||||
//Set up VoiceServerManager
|
||||
if(voiceServerEnabled)
|
||||
|
|
|
@ -7,9 +7,12 @@ import mekanism.api.Object3D;
|
|||
import mekanism.api.transmitters.ITransmitter;
|
||||
import mekanism.api.transmitters.TransmissionType;
|
||||
import mekanism.client.render.RenderPartTransmitter;
|
||||
import mekanism.client.render.mekanism.client.render.PartTransmitterIcons;
|
||||
import mekanism.common.FluidNetwork;
|
||||
import mekanism.common.PipeUtils;
|
||||
import net.minecraft.client.renderer.texture.IconRegister;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.Icon;
|
||||
import net.minecraftforge.common.ForgeDirection;
|
||||
import net.minecraftforge.fluids.Fluid;
|
||||
import net.minecraftforge.fluids.FluidContainerRegistry;
|
||||
|
@ -25,6 +28,7 @@ public class PartMechanicalPipe extends PartTransmitter<FluidNetwork> implements
|
|||
{
|
||||
/** The fake tank used for fluid transfer calculations. */
|
||||
public FluidTank dummyTank = new FluidTank(FluidContainerRegistry.BUCKET_VOLUME);
|
||||
public static PartTransmitterIcons pipeIcons;
|
||||
|
||||
@Override
|
||||
public String getType()
|
||||
|
@ -32,7 +36,25 @@ public class PartMechanicalPipe extends PartTransmitter<FluidNetwork> implements
|
|||
return "mekanism:mechanical_pipe";
|
||||
}
|
||||
|
||||
@Override
|
||||
public static void registerIcons(IconRegister register){
|
||||
pipeIcons = new PartTransmitterIcons(2);
|
||||
pipeIcons.registerCenterIcons(register, new String[]{"MechanicalPipe", "MechanicalPipeActive"});
|
||||
pipeIcons.registerSideIcon(register, "MechanicalPipeSide");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Icon getCenterIcon()
|
||||
{
|
||||
return pipeIcons.getCenterIcon(isActive ? 1 : 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Icon getSideIcon()
|
||||
{
|
||||
return pipeIcons.getSideIcon();
|
||||
}
|
||||
|
||||
@Override
|
||||
public TransmissionType getTransmissionType()
|
||||
{
|
||||
return TransmissionType.FLUID;
|
||||
|
|
|
@ -11,18 +11,42 @@ import mekanism.api.gas.IGasAcceptor;
|
|||
import mekanism.api.transmitters.ITransmitter;
|
||||
import mekanism.api.transmitters.TransmissionType;
|
||||
import mekanism.client.render.RenderPartTransmitter;
|
||||
import mekanism.client.render.mekanism.client.render.PartTransmitterIcons;
|
||||
import net.minecraft.client.renderer.texture.IconRegister;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.Icon;
|
||||
import net.minecraftforge.common.ForgeDirection;
|
||||
|
||||
public class PartPressurizedTube extends PartTransmitter<GasNetwork>
|
||||
{
|
||||
public static PartTransmitterIcons tubeIcons;
|
||||
|
||||
@Override
|
||||
public String getType()
|
||||
{
|
||||
return "mekanism:pressurized_tube";
|
||||
}
|
||||
|
||||
@Override
|
||||
public static void registerIcons(IconRegister register)
|
||||
{
|
||||
tubeIcons = new PartTransmitterIcons(1);
|
||||
tubeIcons.registerCenterIcons(register, new String[]{"PressurizedTube"});
|
||||
tubeIcons.registerSideIcon(register, "TransmitterSideSmall");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Icon getCenterIcon()
|
||||
{
|
||||
return tubeIcons.getCenterIcon(0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Icon getSideIcon()
|
||||
{
|
||||
return tubeIcons.getSideIcon();
|
||||
}
|
||||
|
||||
@Override
|
||||
public TransmissionType getTransmissionType()
|
||||
{
|
||||
return TransmissionType.GAS;
|
||||
|
|
|
@ -12,12 +12,15 @@ import mekanism.api.Object3D;
|
|||
import mekanism.api.transmitters.DynamicNetwork;
|
||||
import mekanism.api.transmitters.ITransmitter;
|
||||
import mekanism.api.transmitters.TransmissionType;
|
||||
import mekanism.api.transmitters.TransmissionType.Size;
|
||||
import mekanism.api.transmitters.TransmitterNetworkRegistry;
|
||||
import mekanism.client.render.RenderPartTransmitter;
|
||||
import mekanism.client.render.mekanism.client.render.PartTransmitterIcons;
|
||||
import mekanism.common.ITileNetwork;
|
||||
import mekanism.common.Mekanism;
|
||||
import mekanism.common.item.ItemConfigurator;
|
||||
import net.minecraft.client.particle.EffectRenderer;
|
||||
import net.minecraft.client.renderer.texture.IconRegister;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
|
@ -80,6 +83,16 @@ public abstract class PartTransmitter<N extends DynamicNetwork<?, N>> extends TM
|
|||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public Size getTransmitterSize()
|
||||
{
|
||||
return getTransmissionType().transmitterSize;
|
||||
}
|
||||
|
||||
public abstract Icon getCenterIcon();
|
||||
|
||||
public abstract Icon getSideIcon();
|
||||
|
||||
|
||||
@Override
|
||||
public void bind(TileMultipart t)
|
||||
|
@ -271,13 +284,13 @@ public abstract class PartTransmitter<N extends DynamicNetwork<?, N>> extends TM
|
|||
@Override
|
||||
public Icon getBreakingIcon(Object subPart, int side)
|
||||
{
|
||||
return RenderPartTransmitter.getInstance().getIconForPart(this);
|
||||
return getCenterIcon();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Icon getBrokenIcon(int side)
|
||||
{
|
||||
return RenderPartTransmitter.getInstance().getIconForPart(this);
|
||||
return getCenterIcon();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,6 +15,9 @@ import codechicken.lib.vec.Vector3;
|
|||
import codechicken.multipart.TileMultipart;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import mekanism.client.render.mekanism.client.render.PartTransmitterIcons;
|
||||
import net.minecraft.client.renderer.texture.IconRegister;
|
||||
import net.minecraft.util.Icon;
|
||||
import universalelectricity.core.block.IConductor;
|
||||
import universalelectricity.core.block.IElectrical;
|
||||
import universalelectricity.core.electricity.ElectricityPack;
|
||||
|
@ -48,6 +51,9 @@ import cpw.mods.fml.relauncher.SideOnly;
|
|||
|
||||
public class PartUniversalCable extends PartTransmitter<EnergyNetwork> implements IEnergySink, IEnergyHandler, IElectrical
|
||||
{
|
||||
|
||||
public static PartTransmitterIcons cableIcons;
|
||||
|
||||
public PartUniversalCable()
|
||||
{
|
||||
super();
|
||||
|
@ -59,6 +65,25 @@ public class PartUniversalCable extends PartTransmitter<EnergyNetwork> implement
|
|||
return "mekanism:universal_cable";
|
||||
}
|
||||
|
||||
public static void registerIcons(IconRegister register)
|
||||
{
|
||||
cableIcons = new PartTransmitterIcons(1);
|
||||
cableIcons.registerCenterIcons(register, new String[]{"UniversalCable"});
|
||||
cableIcons.registerSideIcon(register, "TransmitterSideSmall");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Icon getCenterIcon()
|
||||
{
|
||||
return cableIcons.getCenterIcon(0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Icon getSideIcon()
|
||||
{
|
||||
return cableIcons.getSideIcon();
|
||||
}
|
||||
|
||||
@Override
|
||||
public TransmissionType getTransmissionType()
|
||||
{
|
||||
|
|
BIN
resources/assets/mekanism/models/transmitter_large.blend
Normal file
BIN
resources/assets/mekanism/models/transmitter_large.blend
Normal file
Binary file not shown.
184
resources/assets/mekanism/models/transmitter_large.obj
Normal file
184
resources/assets/mekanism/models/transmitter_large.obj
Normal file
|
@ -0,0 +1,184 @@
|
|||
# Blender v2.66 (sub 1) OBJ File: 'transmitter_large.blend'
|
||||
# www.blender.org
|
||||
g downOut
|
||||
v -0.250000 -0.250000 -0.250000
|
||||
v -0.250000 -0.500000 -0.250000
|
||||
v -0.250000 -0.500000 0.250000
|
||||
v -0.250000 -0.250000 0.250000
|
||||
v 0.250000 -0.250000 -0.250000
|
||||
v 0.250000 -0.500000 -0.250000
|
||||
v 0.250000 -0.500000 0.250000
|
||||
v 0.250000 -0.250000 0.250000
|
||||
vt 0.000000 0.750000
|
||||
vt 0.000000 0.250000
|
||||
vt 1.000000 0.250000
|
||||
vt 1.000000 0.750000
|
||||
vn 0.000000 0.000000 -1.000000
|
||||
vn -0.000000 0.000000 1.000000
|
||||
vn -1.000000 -0.000000 0.000000
|
||||
vn 1.000000 0.000000 0.000000
|
||||
s off
|
||||
f 5/1/1 6/2/1 2/3/1 1/4/1
|
||||
f 7/3/2 8/4/2 4/1/2 3/2/2
|
||||
f 1/1/3 2/2/3 3/3/3 4/4/3
|
||||
f 8/1/4 7/2/4 6/3/4 5/4/4
|
||||
g upOut
|
||||
v 0.250000 0.250000 -0.250000
|
||||
v 0.250000 0.500000 -0.250000
|
||||
v 0.250000 0.500000 0.250000
|
||||
v 0.250000 0.250000 0.250000
|
||||
v -0.250000 0.250000 -0.250000
|
||||
v -0.250000 0.500000 -0.250000
|
||||
v -0.250000 0.500000 0.250000
|
||||
v -0.250000 0.250000 0.250000
|
||||
vt 1.000000 0.250000
|
||||
vt 1.000000 0.750000
|
||||
vt 0.000000 0.750000
|
||||
vt 0.000000 0.250000
|
||||
s off
|
||||
f 13/5/1 14/6/1 10/7/1 9/8/1
|
||||
f 15/7/2 16/8/2 12/5/2 11/6/2
|
||||
f 9/5/4 10/6/4 11/7/4 12/8/4
|
||||
f 16/5/3 15/6/3 14/7/3 13/8/3
|
||||
g southOut
|
||||
v 0.250000 -0.250000 0.250000
|
||||
v 0.250000 -0.250000 0.500000
|
||||
v -0.250000 -0.250000 0.500000
|
||||
v -0.250000 -0.250000 0.250000
|
||||
v 0.250000 0.250000 0.250000
|
||||
v 0.250000 0.250000 0.500000
|
||||
v -0.250000 0.250000 0.500000
|
||||
v -0.250000 0.250000 0.250000
|
||||
vt 1.000000 0.250000
|
||||
vt 1.000000 0.750000
|
||||
vt 0.000000 0.750000
|
||||
vt 0.000000 0.250000
|
||||
vn 1.000000 0.000000 -0.000001
|
||||
vn -1.000000 0.000000 0.000001
|
||||
vn 0.000000 -1.000000 0.000000
|
||||
vn 0.000000 1.000000 0.000000
|
||||
s off
|
||||
f 21/9/5 22/10/5 18/11/5 17/12/5
|
||||
f 23/11/6 24/12/6 20/9/6 19/10/6
|
||||
f 17/9/7 18/10/7 19/11/7 20/12/7
|
||||
f 24/9/8 23/10/8 22/11/8 21/12/8
|
||||
g westOut
|
||||
v -0.250000 -0.250000 0.250000
|
||||
v -0.500000 -0.250000 0.250000
|
||||
v -0.500000 -0.250000 -0.250000
|
||||
v -0.250000 -0.250000 -0.250000
|
||||
v -0.250000 0.250000 0.250000
|
||||
v -0.500000 0.250000 0.250000
|
||||
v -0.500000 0.250000 -0.250000
|
||||
v -0.250000 0.250000 -0.250000
|
||||
vt 0.000000 0.750000
|
||||
vt 0.000000 0.250000
|
||||
vt 1.000000 0.250000
|
||||
vt 1.000000 0.750000
|
||||
s off
|
||||
f 29/13/2 30/14/2 26/15/2 25/16/2
|
||||
f 31/15/1 32/16/1 28/13/1 27/14/1
|
||||
f 25/13/7 26/14/7 27/15/7 28/16/7
|
||||
f 32/13/8 31/14/8 30/15/8 29/16/8
|
||||
g northOut
|
||||
v -0.250000 -0.250000 -0.250000
|
||||
v -0.250000 -0.250000 -0.500000
|
||||
v 0.250000 -0.250000 -0.500000
|
||||
v 0.250000 -0.250000 -0.250000
|
||||
v -0.250000 0.250000 -0.250000
|
||||
v -0.250000 0.250000 -0.500000
|
||||
v 0.250000 0.250000 -0.500000
|
||||
v 0.250000 0.250000 -0.250000
|
||||
vt 0.000000 0.750000
|
||||
vt 0.000000 0.250000
|
||||
vt 1.000000 0.250000
|
||||
vt 1.000000 0.750000
|
||||
s off
|
||||
f 37/17/3 38/18/3 34/19/3 33/20/3
|
||||
f 39/19/4 40/20/4 36/17/4 35/18/4
|
||||
f 33/17/7 34/18/7 35/19/7 36/20/7
|
||||
f 40/17/8 39/18/8 38/19/8 37/20/8
|
||||
g eastOut
|
||||
v 0.250000 -0.250000 -0.250000
|
||||
v 0.500000 -0.250000 -0.250000
|
||||
v 0.500000 -0.250000 0.250000
|
||||
v 0.250000 -0.250000 0.250000
|
||||
v 0.250000 0.250000 -0.250000
|
||||
v 0.500000 0.250000 -0.250000
|
||||
v 0.500000 0.250000 0.250000
|
||||
v 0.250000 0.250000 0.250000
|
||||
vt 1.000000 0.250000
|
||||
vt 1.000000 0.750000
|
||||
vt 0.000000 0.750000
|
||||
vt 0.000000 0.250000
|
||||
s off
|
||||
f 45/21/1 46/22/1 42/23/1 41/24/1
|
||||
f 47/23/2 48/24/2 44/21/2 43/22/2
|
||||
f 41/21/7 42/22/7 43/23/7 44/24/7
|
||||
f 48/21/8 47/22/8 46/23/8 45/24/8
|
||||
g southIn
|
||||
v 0.250000 -0.250000 0.250000
|
||||
v -0.250000 -0.250000 0.250000
|
||||
v 0.250000 0.250000 0.250000
|
||||
v -0.250000 0.250000 0.250000
|
||||
vt 1.000000 0.000000
|
||||
vt 1.000000 1.000000
|
||||
vt 0.000000 1.000000
|
||||
vt 0.000000 0.000000
|
||||
s off
|
||||
f 49/25/2 51/26/2 52/27/2 50/28/2
|
||||
g westIn
|
||||
v -0.250000 -0.250000 0.250000
|
||||
v -0.250000 -0.250000 -0.250000
|
||||
v -0.250000 0.250000 0.250000
|
||||
v -0.250000 0.250000 -0.250000
|
||||
vt 1.000000 0.000000
|
||||
vt 1.000000 1.000000
|
||||
vt 0.000000 1.000000
|
||||
vt 0.000000 0.000000
|
||||
s off
|
||||
f 53/29/3 55/30/3 56/31/3 54/32/3
|
||||
g northIn
|
||||
v -0.250000 -0.250000 -0.250000
|
||||
v 0.250000 -0.250000 -0.250000
|
||||
v -0.250000 0.250000 -0.250000
|
||||
v 0.250000 0.250000 -0.250000
|
||||
vt 1.000000 0.000000
|
||||
vt 1.000000 1.000000
|
||||
vt 0.000000 1.000000
|
||||
vt 0.000000 0.000000
|
||||
s off
|
||||
f 57/33/1 59/34/1 60/35/1 58/36/1
|
||||
g eastIn
|
||||
v 0.250000 0.250000 -0.250000
|
||||
v 0.250000 0.250000 0.250000
|
||||
v 0.250000 -0.250000 -0.250000
|
||||
v 0.250000 -0.250000 0.250000
|
||||
vt 1.000000 0.000000
|
||||
vt 1.000000 1.000000
|
||||
vt 0.000000 1.000000
|
||||
vt 0.000000 0.000000
|
||||
s off
|
||||
f 63/37/4 61/38/4 62/39/4 64/40/4
|
||||
g upIn
|
||||
v 0.250000 0.250000 0.250000
|
||||
v -0.250000 0.250000 0.250000
|
||||
v -0.250000 0.250000 -0.250000
|
||||
v 0.250000 0.250000 -0.250000
|
||||
vt 1.000000 0.000000
|
||||
vt 1.000000 1.000000
|
||||
vt 0.000000 1.000000
|
||||
vt 0.000000 0.000000
|
||||
s off
|
||||
f 65/41/8 68/42/8 67/43/8 66/44/8
|
||||
g downIn
|
||||
v -0.250000 -0.250000 0.250000
|
||||
v -0.250000 -0.250000 -0.250000
|
||||
v 0.250000 -0.250000 -0.250000
|
||||
v 0.250000 -0.250000 0.250000
|
||||
vt 1.000000 0.000000
|
||||
vt 1.000000 1.000000
|
||||
vt 0.000000 1.000000
|
||||
vt 0.000000 0.000000
|
||||
s off
|
||||
f 69/45/7 70/46/7 71/47/7 72/48/7
|
BIN
resources/assets/mekanism/models/transmitter_small.blend
Normal file
BIN
resources/assets/mekanism/models/transmitter_small.blend
Normal file
Binary file not shown.
Binary file not shown.
After ![]() (image error) Size: 1.4 KiB |
Binary file not shown.
After ![]() (image error) Size: 608 B |
Binary file not shown.
After ![]() (image error) Size: 244 B |
Binary file not shown.
Before ![]() (image error) Size: 1.8 KiB After ![]() (image error) Size: 1.6 KiB ![]() ![]() |
Binary file not shown.
Before ![]() (image error) Size: 1.8 KiB After ![]() (image error) Size: 1.6 KiB ![]() ![]() |
Binary file not shown.
After ![]() (image error) Size: 242 B |
Binary file not shown.
After ![]() (image error) Size: 1.6 KiB |
Binary file not shown.
After ![]() (image error) Size: 249 B |
Before ![]() (image error) Size: 1.5 KiB After ![]() (image error) Size: 1.5 KiB ![]() ![]() |
Loading…
Add table
Reference in a new issue