Java 类net.minecraft.client.renderer.texture.ITextureObject 实例源码

项目:BaseClient    文件:ShadersTex.java   
public static void bindTexture(ITextureObject tex)
{
    int i = tex.getGlTextureId();

    if (tex instanceof TextureMap)
    {
        Shaders.atlasSizeX = ((TextureMap)tex).atlasWidth;
        Shaders.atlasSizeY = ((TextureMap)tex).atlasHeight;
        bindTextures(tex.getMultiTexID());
    }
    else
    {
        Shaders.atlasSizeX = 0;
        Shaders.atlasSizeY = 0;
        bindTextures(tex.getMultiTexID());
    }
}
项目:BaseClient    文件:ShadersTex.java   
static void updateTextureMinMagFilter()
{
    TextureManager texturemanager = Minecraft.getMinecraft().getTextureManager();
    ITextureObject itextureobject = texturemanager.getTexture(TextureMap.locationBlocksTexture);

    if (itextureobject != null)
    {
        MultiTexID multitexid = itextureobject.getMultiTexID();
        GlStateManager.bindTexture(multitexid.base);
        GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MIN_FILTER, Shaders.texMinFilValue[Shaders.configTexMinFilB]);
        GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, Shaders.texMagFilValue[Shaders.configTexMagFilB]);
        GlStateManager.bindTexture(multitexid.norm);
        GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MIN_FILTER, Shaders.texMinFilValue[Shaders.configTexMinFilN]);
        GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, Shaders.texMagFilValue[Shaders.configTexMagFilN]);
        GlStateManager.bindTexture(multitexid.spec);
        GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MIN_FILTER, Shaders.texMinFilValue[Shaders.configTexMinFilS]);
        GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, Shaders.texMagFilValue[Shaders.configTexMagFilS]);
        GlStateManager.bindTexture(0);
    }
}
项目:BaseClient    文件:CustomItemProperties.java   
public float getTextureWidth(TextureManager p_getTextureWidth_1_)
{
    if (this.textureWidth <= 0)
    {
        if (this.textureLocation != null)
        {
            ITextureObject itextureobject = p_getTextureWidth_1_.getTexture(this.textureLocation);
            int i = itextureobject.getGlTextureId();
            int j = GlStateManager.getBoundTexture();
            GlStateManager.bindTexture(i);
            this.textureWidth = GL11.glGetTexLevelParameteri(GL11.GL_TEXTURE_2D, 0, GL11.GL_TEXTURE_WIDTH);
            GlStateManager.bindTexture(j);
        }

        if (this.textureWidth <= 0)
        {
            this.textureWidth = 16;
        }
    }

    return (float)this.textureWidth;
}
项目:BaseClient    文件:CustomItemProperties.java   
public float getTextureHeight(TextureManager p_getTextureHeight_1_)
{
    if (this.textureHeight <= 0)
    {
        if (this.textureLocation != null)
        {
            ITextureObject itextureobject = p_getTextureHeight_1_.getTexture(this.textureLocation);
            int i = itextureobject.getGlTextureId();
            int j = GlStateManager.getBoundTexture();
            GlStateManager.bindTexture(i);
            this.textureHeight = GL11.glGetTexLevelParameteri(GL11.GL_TEXTURE_2D, 0, GL11.GL_TEXTURE_HEIGHT);
            GlStateManager.bindTexture(j);
        }

        if (this.textureHeight <= 0)
        {
            this.textureHeight = 16;
        }
    }

    return (float)this.textureHeight;
}
项目:BaseClient    文件:TextureUtils.java   
public static ITextureObject getTexture(ResourceLocation p_getTexture_0_)
{
    ITextureObject itextureobject = Config.getTextureManager().getTexture(p_getTexture_0_);

    if (itextureobject != null)
    {
        return itextureobject;
    }
    else if (!Config.hasResource(p_getTexture_0_))
    {
        return null;
    }
    else
    {
        SimpleTexture simpletexture = new SimpleTexture(p_getTexture_0_);
        Config.getTextureManager().loadTexture(p_getTexture_0_, simpletexture);
        return simpletexture;
    }
}
项目:BaseClient    文件:TextureUtils.java   
public static ITextureObject getTexture(ResourceLocation p_getTexture_0_)
{
    ITextureObject itextureobject = Config.getTextureManager().getTexture(p_getTexture_0_);

    if (itextureobject != null)
    {
        return itextureobject;
    }
    else if (!Config.hasResource(p_getTexture_0_))
    {
        return null;
    }
    else
    {
        SimpleTexture simpletexture = new SimpleTexture(p_getTexture_0_);
        Config.getTextureManager().loadTexture(p_getTexture_0_, simpletexture);
        return simpletexture;
    }
}
项目:Backmemed    文件:ShadersTex.java   
public static void bindTexture(ITextureObject tex)
{
    int i = tex.getGlTextureId();

    if (tex instanceof TextureMap)
    {
        Shaders.atlasSizeX = ((TextureMap)tex).atlasWidth;
        Shaders.atlasSizeY = ((TextureMap)tex).atlasHeight;
        bindTextures(tex.getMultiTexID());
    }
    else
    {
        Shaders.atlasSizeX = 0;
        Shaders.atlasSizeY = 0;
        bindTextures(tex.getMultiTexID());
    }
}
项目:Backmemed    文件:ShadersTex.java   
static void updateTextureMinMagFilter()
{
    TextureManager texturemanager = Minecraft.getMinecraft().getTextureManager();
    ITextureObject itextureobject = texturemanager.getTexture(TextureMap.LOCATION_BLOCKS_TEXTURE);

    if (itextureobject != null)
    {
        MultiTexID multitexid = itextureobject.getMultiTexID();
        GlStateManager.bindTexture(multitexid.base);
        GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MIN_FILTER, Shaders.texMinFilValue[Shaders.configTexMinFilB]);
        GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, Shaders.texMagFilValue[Shaders.configTexMagFilB]);
        GlStateManager.bindTexture(multitexid.norm);
        GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MIN_FILTER, Shaders.texMinFilValue[Shaders.configTexMinFilN]);
        GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, Shaders.texMagFilValue[Shaders.configTexMagFilN]);
        GlStateManager.bindTexture(multitexid.spec);
        GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MIN_FILTER, Shaders.texMinFilValue[Shaders.configTexMinFilS]);
        GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, Shaders.texMagFilValue[Shaders.configTexMagFilS]);
        GlStateManager.bindTexture(0);
    }
}
项目:Backmemed    文件:CustomItemProperties.java   
public float getTextureWidth(TextureManager p_getTextureWidth_1_)
{
    if (this.textureWidth <= 0)
    {
        if (this.textureLocation != null)
        {
            ITextureObject itextureobject = p_getTextureWidth_1_.getTexture(this.textureLocation);
            int i = itextureobject.getGlTextureId();
            int j = GlStateManager.getBoundTexture();
            GlStateManager.bindTexture(i);
            this.textureWidth = GL11.glGetTexLevelParameteri(GL11.GL_TEXTURE_2D, 0, GL11.GL_TEXTURE_WIDTH);
            GlStateManager.bindTexture(j);
        }

        if (this.textureWidth <= 0)
        {
            this.textureWidth = 16;
        }
    }

    return (float)this.textureWidth;
}
项目:Backmemed    文件:CustomItemProperties.java   
public float getTextureHeight(TextureManager p_getTextureHeight_1_)
{
    if (this.textureHeight <= 0)
    {
        if (this.textureLocation != null)
        {
            ITextureObject itextureobject = p_getTextureHeight_1_.getTexture(this.textureLocation);
            int i = itextureobject.getGlTextureId();
            int j = GlStateManager.getBoundTexture();
            GlStateManager.bindTexture(i);
            this.textureHeight = GL11.glGetTexLevelParameteri(GL11.GL_TEXTURE_2D, 0, GL11.GL_TEXTURE_HEIGHT);
            GlStateManager.bindTexture(j);
        }

        if (this.textureHeight <= 0)
        {
            this.textureHeight = 16;
        }
    }

    return (float)this.textureHeight;
}
项目:Backmemed    文件:TextureUtils.java   
public static ITextureObject getTexture(ResourceLocation p_getTexture_0_)
{
    ITextureObject itextureobject = Config.getTextureManager().getTexture(p_getTexture_0_);

    if (itextureobject != null)
    {
        return itextureobject;
    }
    else if (!Config.hasResource(p_getTexture_0_))
    {
        return null;
    }
    else
    {
        SimpleTexture simpletexture = new SimpleTexture(p_getTexture_0_);
        Config.getTextureManager().loadTexture(p_getTexture_0_, simpletexture);
        return simpletexture;
    }
}
项目:blockbuster    文件:SubCommandModelClearCache.java   
@Override
public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException
{
    TextureManager manager = Minecraft.getMinecraft().renderEngine;
    Map<ResourceLocation, ITextureObject> map = getTextures(manager);

    if (map != null)
    {
        Iterator<Map.Entry<ResourceLocation, ITextureObject>> it = map.entrySet().iterator();

        while (it.hasNext())
        {
            Map.Entry<ResourceLocation, ITextureObject> entry = it.next();

            if (entry.getKey().getResourceDomain().equals("blockbuster.actors") && entry.getValue() instanceof DynamicTexture)
            {
                TextureUtil.deleteTexture(entry.getValue().getGlTextureId());

                it.remove();
            }
        }
    }
}
项目:blockbuster    文件:SubCommandModelClearCache.java   
/**
 * Get texture map from texture manager using reflection API
 */
@SuppressWarnings("unchecked")
public static Map<ResourceLocation, ITextureObject> getTextures(TextureManager manager)
{
    if (TEXTURE_MAP == null)
    {
        setupTextureMapField(manager);
    }

    try
    {
        return (Map<ResourceLocation, ITextureObject>) TEXTURE_MAP.get(manager);
    }
    catch (Exception e)
    {
        return null;
    }
}
项目:Resilience-Client-Source    文件:TextureUtils.java   
public static ITextureObject getTexture(ResourceLocation loc)
{
    ITextureObject tex = Config.getTextureManager().getTexture(loc);

    if (tex != null)
    {
        return tex;
    }
    else if (!Config.hasResource(loc))
    {
        return null;
    }
    else
    {
        SimpleTexture tex1 = new SimpleTexture(loc);
        Config.getTextureManager().loadTexture(loc, tex1);
        return tex1;
    }
}
项目:ForgeHax    文件:MapDownloader.java   
private ResourceLocation findResourceLocation(String name) {
    Map<ResourceLocation, ITextureObject> mapTextureObjects = FastReflection.Fields.TextureManager_mapTextureObjects.get(MC.getTextureManager());

    return mapTextureObjects.keySet()
                            .stream()
                            .filter(k -> k.getResourcePath().contains(name))
                            .findFirst()
                            .orElse(null);
}
项目:ForgeHax    文件:MapMod.java   
private void updateHeldMapTexture(String url) {
    if (MC.player == null || !(MC.player.getHeldItemMainhand().getItem() instanceof ItemMap)) return;

    MC.addScheduledTask(() -> { // allows DynamicTexture to work
        ItemMap map = (ItemMap) MC.player.getHeldItemMainhand().getItem();
        MapData heldMapData = map.getMapData(MC.player.getHeldItemMainhand(), MC.world);

        try {
            BufferedImage image = getImageFromUrl(url);

            DynamicTexture dynamicTexture = new DynamicTexture(image);
            dynamicTexture.loadTexture(MC.getResourceManager());

            Map<ResourceLocation, ITextureObject> mapTextureObjects = FastReflection.Fields.TextureManager_mapTextureObjects.get(MC.getTextureManager());

            ResourceLocation textureLocation =
                    mapTextureObjects.keySet()
                                     .stream()
                                     .filter(k -> k.getResourcePath().contains(heldMapData.mapName))
                                     .findFirst()
                                     .orElse(null);

            mapTextureObjects.put(textureLocation, dynamicTexture); // overwrite old texture with our custom one

        } catch (Exception e) {
            e.printStackTrace();
        }
    });
}
项目:BaseClient    文件:ShadersTex.java   
public static ITextureObject createDefaultTexture()
{
    DynamicTexture dynamictexture = new DynamicTexture(1, 1);
    dynamictexture.getTextureData()[0] = -1;
    dynamictexture.updateDynamicTexture();
    return dynamictexture;
}
项目:connor41-etfuturum2    文件:NewSkinManager.java   
@Override
public ResourceLocation func_152789_a(final MinecraftProfileTexture texture, final Type type, final SkinManager.SkinAvailableCallback callBack) {
    if (type != Type.SKIN)
        return super.func_152789_a(texture, type, callBack);

    final boolean isSpecialCallBack = callBack instanceof ISkinDownloadCallback;
    final ResourceLocation resLocationOld = new ResourceLocation("skins/" + texture.getHash());
    final ResourceLocation resLocation = new ResourceLocation(Reference.MOD_ID, resLocationOld.getResourcePath());
    ITextureObject itextureobject = textureManager.getTexture(resLocation);

    if (itextureobject != null) {
        if (callBack != null)
            callBack.func_152121_a(type, resLocation);
    } else {
        File file1 = new File(skinFolder, texture.getHash().substring(0, 2));
        File file2 = new File(file1, texture.getHash());
        final NewImageBufferDownload imgDownload = new NewImageBufferDownload();
        ITextureObject imgData = new NewThreadDownloadImageData(file2, texture.getUrl(), field_152793_a, imgDownload, resLocationOld, new IImageBuffer() {

            @Override
            public BufferedImage parseUserSkin(BufferedImage buffImg) {
                if (buffImg != null)
                    PlayerModelManager.analyseTexture(buffImg, resLocation);
                return imgDownload.parseUserSkin(buffImg);
            }

            @Override
            public void func_152634_a() {
                imgDownload.func_152634_a();
                if (callBack != null)
                    callBack.func_152121_a(type, isSpecialCallBack ? resLocation : resLocationOld);
            }
        });
        textureManager.loadTexture(resLocation, imgData);
        textureManager.loadTexture(resLocationOld, imgData); // Avoid thrown exception if the image is requested before the download is done
    }

    return isSpecialCallBack ? resLocation : resLocationOld;
}
项目:Backmemed    文件:ShadersTex.java   
public static ITextureObject createDefaultTexture()
{
    DynamicTexture dynamictexture = new DynamicTexture(1, 1);
    dynamictexture.getTextureData()[0] = -1;
    dynamictexture.updateDynamicTexture();
    return dynamictexture;
}
项目:Backmemed    文件:Shaders.java   
private static void bindCustomTextures(CustomTexture[] cts)
{
    if (cts != null)
    {
        for (int i = 0; i < cts.length; ++i)
        {
            CustomTexture customtexture = cts[i];
            GlStateManager.setActiveTexture(33984 + customtexture.getTextureUnit());
            ITextureObject itextureobject = customtexture.getTexture();
            GlStateManager.bindTexture(itextureobject.getGlTextureId());
        }
    }
}
项目:Backmemed    文件:Shaders.java   
private static void deleteCustomTextures(CustomTexture[] cts)
{
    if (cts != null)
    {
        for (int i = 0; i < cts.length; ++i)
        {
            CustomTexture customtexture = cts[i];
            ITextureObject itextureobject = customtexture.getTexture();
            TextureUtil.deleteTexture(itextureobject.getGlTextureId());
        }
    }
}
项目:MineLittlePony    文件:Pony.java   
@Nullable
private BufferedImage getBufferedImage(@Nonnull ResourceLocation textureResourceLocation) {
    BufferedImage skinImage = null;
    try {
        IResource skin = Minecraft.getMinecraft().getResourceManager().getResource(textureResourceLocation);
        skinImage = TextureUtil.readBufferedImage(skin.getInputStream());
        MineLittlePony.logger.debug("Obtained skin from resource location {}", textureResourceLocation);
        // this.checkSkin(skinImage);
    } catch (IOException e) {

        try {
            ITextureObject e2 = Minecraft.getMinecraft().getTextureManager().getTexture(textureResourceLocation);
            if (e2 instanceof ThreadDownloadImageData) {

                skinImage = PonyFields.downloadedImage.get((ThreadDownloadImageData) e2);
                if (skinImage != null) {
                    MineLittlePony.logger.debug("Successfully reflected downloadedImage from texture object", e);
                    // this.checkSkin(skinImage);
                }
            } else if (e2 instanceof ThreadDownloadImageETag) {
                skinImage = ((ThreadDownloadImageETag) e2).getBufferedImage();
            } else if (e2 instanceof DynamicTextureImage) {
                skinImage = ((DynamicTextureImage) e2).getImage();
            }
        } catch (Exception ignored) {

        }
    }

    return skinImage;
}
项目:MineLittlePony    文件:HDSkinManager.java   
private void loadTexture(GameProfile profile, final Type type, final SkinAvailableCallback callback) {
    if (profile.getId() != null) {
        Map<Type, MinecraftProfileTexture> data = getProfileData(profile);
        final MinecraftProfileTexture texture = data.get(type);

        String skinDir = type.toString().toLowerCase() + "s/";
        final ResourceLocation skin = new ResourceLocation("hdskins", skinDir + texture.getHash());
        File file2 = new File(LiteLoader.getAssetsDirectory(), "hd/" + skinDir + texture.getHash().substring(0, 2) + "/" + texture.getHash());

        final IImageBuffer imagebufferdownload = type == Type.SKIN ? new ImageBufferDownloadHD() : null;

        ITextureObject texObject = new ThreadDownloadImageETag(file2, texture.getUrl(),
                DefaultPlayerSkin.getDefaultSkinLegacy(),
                new IImageBuffer() {
                    @Nonnull
                    @Override
                    public BufferedImage parseUserSkin(@Nonnull BufferedImage image) {
                        BufferedImage image1 = image;
                        if (imagebufferdownload != null) {
                            image1 = imagebufferdownload.parseUserSkin(image);
                        }
                        return image1 == null ? image : image1;
                    }

                    @Override
                    public void skinAvailable() {
                        if (imagebufferdownload != null) {
                            imagebufferdownload.skinAvailable();
                        }
                        callback.skinAvailable(type, skin, texture);
                    }
                });

        // schedule texture loading on the main thread.
        TextureLoader.loadTexture(skin, texObject);
    }
}
项目:TextureDump    文件:TextureDump.java   
@SubscribeEvent
@SideOnly(Side.CLIENT)
public void onMainMenuOpen(GuiOpenEvent event) {
    if (!dumped && event.getGui() instanceof GuiMainMenu) {
        dumped = true;
        TextureManager textureManager = Minecraft.getMinecraft().getTextureManager();
        for (Map.Entry<ResourceLocation, ITextureObject> entry : textureManager.mapTextureObjects.entrySet()) {
            ITextureObject textureObject = entry.getValue();
            if (textureObject instanceof TextureMap) {
                String name = entry.getKey().toString().replace(':', '_').replace('/', '_');
                dumpTextureMap((TextureMap) textureObject, name);
            }
        }
    }
}
项目:Et-Futurum    文件:NewSkinManager.java   
@Override
public ResourceLocation func_152789_a(final MinecraftProfileTexture texture, final Type type, final SkinManager.SkinAvailableCallback callBack) {
    if (type != Type.SKIN)
        return super.func_152789_a(texture, type, callBack);

    final boolean isSpecialCallBack = callBack instanceof ISkinDownloadCallback;
    final ResourceLocation resLocationOld = new ResourceLocation("skins/" + texture.getHash());
    final ResourceLocation resLocation = new ResourceLocation(Reference.MOD_ID, resLocationOld.getResourcePath());
    ITextureObject itextureobject = textureManager.getTexture(resLocation);

    if (itextureobject != null) {
        if (callBack != null)
            callBack.func_152121_a(type, resLocation);
    } else {
        File file1 = new File(skinFolder, texture.getHash().substring(0, 2));
        File file2 = new File(file1, texture.getHash());
        final NewImageBufferDownload imgDownload = new NewImageBufferDownload();
        ITextureObject imgData = new NewThreadDownloadImageData(file2, texture.getUrl(), field_152793_a, imgDownload, resLocationOld, new IImageBuffer() {

            @Override
            public BufferedImage parseUserSkin(BufferedImage buffImg) {
                if (buffImg != null)
                    PlayerModelManager.analyseTexture(buffImg, resLocation);
                return imgDownload.parseUserSkin(buffImg);
            }

            @Override
            public void func_152634_a() {
                imgDownload.func_152634_a();
                if (callBack != null)
                    callBack.func_152121_a(type, isSpecialCallBack ? resLocation : resLocationOld);
            }
        });
        textureManager.loadTexture(resLocation, imgData);
        textureManager.loadTexture(resLocationOld, imgData); // Avoid thrown exception if the image is requested before the download is done
    }

    return isSpecialCallBack ? resLocation : resLocationOld;
}
项目:minedriod    文件:TextureDrawable.java   
public TextureDrawable(ITextureObject texture, double tLeft, double tTop, double tRight, double tBottom) {
    this.texture = texture;
    this.size = new Point(255, 255);
    originalSize = size.clone();
    this.tLeft = tLeft;
    this.tTop = tTop;
    this.tRight = tRight;
    this.tBottom = tBottom;
}
项目:LoreExpansion_old    文件:SubTexture.java   
public void draw(int x, int y, int z) {
    // We don't want to bind textures unless necessary
    TextureManager manager = Minecraft.getMinecraft().getTextureManager();
    ITextureObject textureObject = manager.getTexture(texture);
    int bound = GL11.glGetInteger(GL11.GL_TEXTURE_BINDING_2D);
    if (textureObject == null || bound != textureObject.getGlTextureId()) {
        manager.bindTexture(texture);
    }

    // ...and then we draw
    SubTexture.drawTexturedModalRect(x, y, z, this.u, this.v, this.w, this.h);
}
项目:ShadowsOfPhysis    文件:TextureHelper.java   
public static BufferedImage getImageForResource(ResourceLocation resource) throws IOException{
    ITextureObject texob = Minecraft.getMinecraft().getTextureManager().getTexture(resource);

    if( texob instanceof PhysisAbstractTexture) {
        return ((PhysisAbstractTexture)texob).generatedImage;
    } else {
        InputStream layer = Minecraft.getMinecraft().getResourceManager().getResource(resource).getInputStream();
        return ImageIO.read(layer);
    }
}
项目:Battlegear2    文件:HeraldryCrestItemRenderer.java   
private void doMapRendering(ItemStack item, HeraldryData heraldryData, IHeraldryItem item1) {
    glPushMatrix();

    //glDepthFunc(GL11.GL_EQUAL);
    //glEnable(GL_BLEND);
    //glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);

    Tessellator tess = Tessellator.getInstance();

    Minecraft.getMinecraft().getTextureManager().bindTexture(map_overlay);
    tess.getBuffer().begin(GL11.GL_QUADS, DefaultVertexFormats.ITEM);
    tess.getBuffer().pos(-8, 136, -.01).tex(0, 1).endVertex();
    tess.getBuffer().pos(136, 136, -.01).tex(1, 1).endVertex();
    tess.getBuffer().pos(136, -8, -.01).tex(1, 0).endVertex();
    tess.getBuffer().pos(-8, -8, -.01).tex(0, 0).endVertex();
    tess.draw();

    //glDisable(GL_BLEND);
    //glDepthFunc(GL11.GL_LEQUAL);
    RefreshableTexture currentCrest = new RefreshableTexture(32, 32);
    currentCrest.refreshWith(heraldryData, false);
    ResourceLocation crestLocation = Minecraft.getMinecraft().getTextureManager().getDynamicTextureLocation("gui_crest", currentCrest);
    ITextureObject texture = Minecraft.getMinecraft().getTextureManager().getTexture(crestLocation);
    if(texture == null){
        texture = new HeraldryTextureSmall(heraldryData);
        Minecraft.getMinecraft().getTextureManager().loadTexture(crestLocation, texture);
    }
    Minecraft.getMinecraft().getTextureManager().bindTexture(crestLocation);


    tess.getBuffer().begin(GL11.GL_QUADS, DefaultVertexFormats.ITEM);
    tess.getBuffer().pos(8, 120, -0.015).tex(0, 1).endVertex();
    tess.getBuffer().pos(120, 120, -0.015).tex(1, 1).endVertex();
    tess.getBuffer().pos(120, 8, -0.015).tex(1, 0).endVertex();
    tess.getBuffer().pos(8, 8, -0.015).tex(0, 0).endVertex();
    tess.draw();


    glPopMatrix();
}
项目:OpenBlocks    文件:TileEntityTrophyRenderer.java   
private AbstractTexture getBlockTexture() {
    final TextureManager texturemanager = rendererDispatcher.renderEngine;
    if (texturemanager != null) {
        final ITextureObject texture = texturemanager.getTexture(TextureMap.LOCATION_BLOCKS_TEXTURE);
        if (texture instanceof AbstractTexture)
            return (AbstractTexture)texture;
    }

    return null;
}
项目:JustJunk    文件:PotionSick.java   
public int getStatusIconIndex(){
    ITextureObject texture = Minecraft.getMinecraft().renderEngine.getTexture(icon);
    Minecraft.getMinecraft().renderEngine.bindTexture(icon);
    return super.getStatusIconIndex();
}
项目:DecompiledMinecraft    文件:ShaderManager.java   
public void useShader()
{
    this.isDirty = false;
    staticShaderManager = this;
    this.field_148016_p.func_148109_a();

    if (this.program != currentProgram)
    {
        OpenGlHelper.glUseProgram(this.program);
        currentProgram = this.program;
    }

    if (this.useFaceCulling)
    {
        GlStateManager.enableCull();
    }
    else
    {
        GlStateManager.disableCull();
    }

    for (int i = 0; i < this.shaderSamplerLocations.size(); ++i)
    {
        if (this.shaderSamplers.get(this.samplerNames.get(i)) != null)
        {
            GlStateManager.setActiveTexture(OpenGlHelper.defaultTexUnit + i);
            GlStateManager.enableTexture2D();
            Object object = this.shaderSamplers.get(this.samplerNames.get(i));
            int j = -1;

            if (object instanceof Framebuffer)
            {
                j = ((Framebuffer)object).framebufferTexture;
            }
            else if (object instanceof ITextureObject)
            {
                j = ((ITextureObject)object).getGlTextureId();
            }
            else if (object instanceof Integer)
            {
                j = ((Integer)object).intValue();
            }

            if (j != -1)
            {
                GlStateManager.bindTexture(j);
                OpenGlHelper.glUniform1i(OpenGlHelper.glGetUniformLocation(this.program, (CharSequence)this.samplerNames.get(i)), i);
            }
        }
    }

    for (ShaderUniform shaderuniform : this.shaderUniforms)
    {
        shaderuniform.upload();
    }
}
项目:DecompiledMinecraft    文件:SkinManager.java   
/**
 * May download the skin if its not in the cache, can be passed a SkinManager#SkinAvailableCallback for handling
 */
public ResourceLocation loadSkin(final MinecraftProfileTexture profileTexture, final Type p_152789_2_, final SkinManager.SkinAvailableCallback skinAvailableCallback)
{
    final ResourceLocation resourcelocation = new ResourceLocation("skins/" + profileTexture.getHash());
    ITextureObject itextureobject = this.textureManager.getTexture(resourcelocation);

    if (itextureobject != null)
    {
        if (skinAvailableCallback != null)
        {
            skinAvailableCallback.skinAvailable(p_152789_2_, resourcelocation, profileTexture);
        }
    }
    else
    {
        File file1 = new File(this.skinCacheDir, profileTexture.getHash().length() > 2 ? profileTexture.getHash().substring(0, 2) : "xx");
        File file2 = new File(file1, profileTexture.getHash());
        final IImageBuffer iimagebuffer = p_152789_2_ == Type.SKIN ? new ImageBufferDownload() : null;
        ThreadDownloadImageData threaddownloadimagedata = new ThreadDownloadImageData(file2, profileTexture.getUrl(), DefaultPlayerSkin.getDefaultSkinLegacy(), new IImageBuffer()
        {
            public BufferedImage parseUserSkin(BufferedImage image)
            {
                if (iimagebuffer != null)
                {
                    image = iimagebuffer.parseUserSkin(image);
                }

                return image;
            }
            public void skinAvailable()
            {
                if (iimagebuffer != null)
                {
                    iimagebuffer.skinAvailable();
                }

                if (skinAvailableCallback != null)
                {
                    skinAvailableCallback.skinAvailable(p_152789_2_, resourcelocation, profileTexture);
                }
            }
        });
        this.textureManager.loadTexture(resourcelocation, threaddownloadimagedata);
    }

    return resourcelocation;
}
项目:BaseClient    文件:CapeUtils.java   
public static void downloadCape(final AbstractClientPlayer p_downloadCape_0_)
{
    String s = p_downloadCape_0_.getNameClear();

    if (s != null && !s.isEmpty())
    {
        String s1 = "http://s.optifine.net/capes/" + s + ".png";
        String s2 = FilenameUtils.getBaseName(s1);
        final ResourceLocation resourcelocation = new ResourceLocation("capeof/" + s2);
        TextureManager texturemanager = Minecraft.getMinecraft().getTextureManager();
        ITextureObject itextureobject = texturemanager.getTexture(resourcelocation);

        if (itextureobject != null && itextureobject instanceof ThreadDownloadImageData)
        {
            ThreadDownloadImageData threaddownloadimagedata = (ThreadDownloadImageData)itextureobject;

            if (threaddownloadimagedata.imageFound != null)
            {
                if (threaddownloadimagedata.imageFound.booleanValue())
                {
                    p_downloadCape_0_.setLocationOfCape(resourcelocation);
                }

                return;
            }
        }

        IImageBuffer iimagebuffer = new IImageBuffer()
        {
            ImageBufferDownload ibd = new ImageBufferDownload();
            public BufferedImage parseUserSkin(BufferedImage image)
            {
                return CapeUtils.parseCape(image);
            }
            public void skinAvailable()
            {
                p_downloadCape_0_.setLocationOfCape(resourcelocation);
            }
        };
        ThreadDownloadImageData threaddownloadimagedata1 = new ThreadDownloadImageData((File)null, s1, (ResourceLocation)null, iimagebuffer);
        threaddownloadimagedata1.pipeline = true;
        texturemanager.loadTexture(resourcelocation, threaddownloadimagedata1);
    }
}
项目:BaseClient    文件:TextureAnimation.java   
public boolean updateTexture()
{
    if (this.dstTextId < 0)
    {
        ITextureObject itextureobject = TextureUtils.getTexture(this.dstTexLoc);

        if (itextureobject == null)
        {
            return false;
        }

        this.dstTextId = itextureobject.getGlTextureId();
    }

    if (this.imageData == null)
    {
        this.imageData = GLAllocation.createDirectByteBuffer(this.srcData.length);
        this.imageData.put(this.srcData);
        this.srcData = null;
    }

    if (!this.nextFrame())
    {
        return false;
    }
    else
    {
        int k = this.frameWidth * this.frameHeight * 4;
        int i = this.getActiveFrameIndex();
        int j = k * i;

        if (j + k > this.imageData.capacity())
        {
            return false;
        }
        else
        {
            this.imageData.position(j);
            GlStateManager.bindTexture(this.dstTextId);
            GL11.glTexSubImage2D(GL11.GL_TEXTURE_2D, 0, this.dstX, this.dstY, this.frameWidth, this.frameHeight, GL11.GL_RGBA, GL11.GL_UNSIGNED_BYTE, (ByteBuffer)this.imageData);
            return true;
        }
    }
}
项目:BaseClient    文件:ShaderManager.java   
public void useShader()
{
    this.isDirty = false;
    staticShaderManager = this;
    this.field_148016_p.func_148109_a();

    if (this.program != currentProgram)
    {
        OpenGlHelper.glUseProgram(this.program);
        currentProgram = this.program;
    }

    if (this.useFaceCulling)
    {
        GlStateManager.enableCull();
    }
    else
    {
        GlStateManager.disableCull();
    }

    for (int i = 0; i < this.shaderSamplerLocations.size(); ++i)
    {
        if (this.shaderSamplers.get(this.samplerNames.get(i)) != null)
        {
            GlStateManager.setActiveTexture(OpenGlHelper.defaultTexUnit + i);
            GlStateManager.enableTexture2D();
            Object object = this.shaderSamplers.get(this.samplerNames.get(i));
            int j = -1;

            if (object instanceof Framebuffer)
            {
                j = ((Framebuffer)object).framebufferTexture;
            }
            else if (object instanceof ITextureObject)
            {
                j = ((ITextureObject)object).getGlTextureId();
            }
            else if (object instanceof Integer)
            {
                j = ((Integer)object).intValue();
            }

            if (j != -1)
            {
                GlStateManager.bindTexture(j);
                OpenGlHelper.glUniform1i(OpenGlHelper.glGetUniformLocation(this.program, (CharSequence)this.samplerNames.get(i)), i);
            }
        }
    }

    for (ShaderUniform shaderuniform : this.shaderUniforms)
    {
        shaderuniform.upload();
    }
}
项目:BaseClient    文件:SkinManager.java   
/**
 * May download the skin if its not in the cache, can be passed a SkinManager#SkinAvailableCallback for handling
 */
public ResourceLocation loadSkin(final MinecraftProfileTexture profileTexture, final Type p_152789_2_, final SkinManager.SkinAvailableCallback skinAvailableCallback)
{
    final ResourceLocation resourcelocation = new ResourceLocation("skins/" + profileTexture.getHash());
    ITextureObject itextureobject = this.textureManager.getTexture(resourcelocation);

    if (itextureobject != null)
    {
        if (skinAvailableCallback != null)
        {
            skinAvailableCallback.skinAvailable(p_152789_2_, resourcelocation, profileTexture);
        }
    }
    else
    {
        File file1 = new File(this.skinCacheDir, profileTexture.getHash().length() > 2 ? profileTexture.getHash().substring(0, 2) : "xx");
        File file2 = new File(file1, profileTexture.getHash());
        final IImageBuffer iimagebuffer = p_152789_2_ == Type.SKIN ? new ImageBufferDownload() : null;
        ThreadDownloadImageData threaddownloadimagedata = new ThreadDownloadImageData(file2, profileTexture.getUrl(), DefaultPlayerSkin.getDefaultSkinLegacy(), new IImageBuffer()
        {
            public BufferedImage parseUserSkin(BufferedImage image)
            {
                if (iimagebuffer != null)
                {
                    image = iimagebuffer.parseUserSkin(image);
                }

                return image;
            }
            public void skinAvailable()
            {
                if (iimagebuffer != null)
                {
                    iimagebuffer.skinAvailable();
                }

                if (skinAvailableCallback != null)
                {
                    skinAvailableCallback.skinAvailable(p_152789_2_, resourcelocation, profileTexture);
                }
            }
        });
        this.textureManager.loadTexture(resourcelocation, threaddownloadimagedata);
    }

    return resourcelocation;
}
项目:BaseClient    文件:TextureUtils.java   
public static ITextureObject getTexture(String p_getTexture_0_)
{
    return getTexture(new ResourceLocation(p_getTexture_0_));
}
项目:BaseClient    文件:TextureAnimation.java   
public boolean updateTexture()
{
    if (this.dstTextId < 0)
    {
        ITextureObject itextureobject = TextureUtils.getTexture(this.dstTexLoc);

        if (itextureobject == null)
        {
            return false;
        }

        this.dstTextId = itextureobject.getGlTextureId();
    }

    if (this.imageData == null)
    {
        this.imageData = GLAllocation.createDirectByteBuffer(this.srcData.length);
        this.imageData.put(this.srcData);
        this.srcData = null;
    }

    if (!this.nextFrame())
    {
        return false;
    }
    else
    {
        int k = this.frameWidth * this.frameHeight * 4;
        int i = this.getActiveFrameIndex();
        int j = k * i;

        if (j + k > this.imageData.capacity())
        {
            return false;
        }
        else
        {
            this.imageData.position(j);
            GlStateManager.bindTexture(this.dstTextId);
            GL11.glTexSubImage2D(GL11.GL_TEXTURE_2D, 0, this.dstX, this.dstY, this.frameWidth, this.frameHeight, GL11.GL_RGBA, GL11.GL_UNSIGNED_BYTE, (ByteBuffer)this.imageData);
            return true;
        }
    }
}
项目:BaseClient    文件:AbstractClientPlayer.java   
private void downloadCape(String p_downloadCape_1_)
{
    if (p_downloadCape_1_ != null && !p_downloadCape_1_.isEmpty())
    {
        p_downloadCape_1_ = StringUtils.stripControlCodes(p_downloadCape_1_);
        String s = "http://s.optifine.net/capes/" + p_downloadCape_1_ + ".png";
        String s1 = FilenameUtils.getBaseName(s);
        final ResourceLocation resourcelocation = new ResourceLocation("capeof/" + s1);
        TextureManager texturemanager = Minecraft.getMinecraft().getTextureManager();
        ITextureObject itextureobject = texturemanager.getTexture(resourcelocation);

        if (itextureobject != null && itextureobject instanceof ThreadDownloadImageData)
        {
            ThreadDownloadImageData threaddownloadimagedata = (ThreadDownloadImageData)itextureobject;

            if (threaddownloadimagedata.imageFound != null)
            {
                if (threaddownloadimagedata.imageFound.booleanValue())
                {
                    this.ofLocationCape = resourcelocation;
                }

                return;
            }
        }

        IImageBuffer iimagebuffer = new IImageBuffer()
        {
            ImageBufferDownload ibd = new ImageBufferDownload();
            public BufferedImage parseUserSkin(BufferedImage image)
            {
                return AbstractClientPlayer.this.parseCape(image);
            }
            public void skinAvailable()
            {
                AbstractClientPlayer.this.ofLocationCape = resourcelocation;
            }
        };
        ThreadDownloadImageData threaddownloadimagedata1 = new ThreadDownloadImageData((File)null, s, (ResourceLocation)null, iimagebuffer);
        texturemanager.loadTexture(resourcelocation, threaddownloadimagedata1);
    }
}