当前位置: 首页>>代码示例>>Java>>正文


Java BlockModelRenderer类代码示例

本文整理汇总了Java中net.minecraft.client.renderer.BlockModelRenderer的典型用法代码示例。如果您正苦于以下问题:Java BlockModelRenderer类的具体用法?Java BlockModelRenderer怎么用?Java BlockModelRenderer使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


BlockModelRenderer类属于net.minecraft.client.renderer包,在下文中一共展示了BlockModelRenderer类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: renderBlockDamage

import net.minecraft.client.renderer.BlockModelRenderer; //导入依赖的package包/类
static void renderBlockDamage(IBlockAccess world, BlockPos pos, IBlockState state, TextureAtlasSprite sprite) {
    ICCBlockRenderer renderer = blockRendererList.get(state.getRenderType());
    if (renderer != null) {
        state = state.getActualState(world, pos);
        //TODO This needs to be optimized, probably not the most efficient thing in the world..
        BufferBuilder parent = Tessellator.getInstance().getBuffer();
        BakingVertexBuffer buffer = BakingVertexBuffer.create();
        buffer.setTranslation(-pos.getX(), -pos.getY(), -pos.getZ());
        buffer.begin(7, parent.getVertexFormat());
        renderer.handleRenderBlockDamage(world, pos, state, sprite, buffer);
        buffer.finishDrawing();
        buffer.setTranslation(0, 0, 0);
        BlockModelRenderer modelRenderer = Minecraft.getMinecraft().getBlockRendererDispatcher().getBlockModelRenderer();
        modelRenderer.renderModel(world, new PerspectiveAwareBakedModel(buffer.bake(), TransformUtils.DEFAULT_BLOCK, new ModelProperties(true, true, null)), state, pos, parent, true);
    }
}
 
开发者ID:TheCBProject,项目名称:CodeChickenLib,代码行数:17,代码来源:BlockRenderingRegistry.java

示例2: renderBackpack

import net.minecraft.client.renderer.BlockModelRenderer; //导入依赖的package包/类
private static void renderBackpack(IBackpack backpack, float ticks, boolean renderStraps) {
	ItemStack stack = backpack.getStack();
	int color = ProxyClient.ITEM_COLOR.colorMultiplier(stack, 0);
	
	BlockModelRenderer renderer = Minecraft.getMinecraft().getBlockRendererDispatcher().getBlockModelRenderer();
	Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE);
	
	float r = (color >> 16 & 0xFF) / 255.0F;
	float g = (color >> 8 & 0xFF) / 255.0F;
	float b = (color & 0xFF) / 255.0F;
	renderModel(backpack, renderer, ticks, renderStraps, r, g, b, false);
	
	if (stack.isItemEnchanted())
		renderEnchanted(backpack, renderer, ticks, renderStraps);
}
 
开发者ID:copygirl,项目名称:WearableBackpacks,代码行数:16,代码来源:RendererBackpack.java

示例3: renderModel

import net.minecraft.client.renderer.BlockModelRenderer; //导入依赖的package包/类
private static void renderModel(IBackpack backpack, BlockModelRenderer renderer,
                                float ticks, boolean renderStraps,
                                float r, float g, float b, boolean useEnch) {
	
	IBakedModel baseModel = (useEnch ? ProxyClient.MODEL_BACKPACK_ENCH : ProxyClient.MODEL_BACKPACK);
	renderer.renderModelBrightnessColor(baseModel, 1.0F, r, g, b);
	if (renderStraps)
		renderer.renderModelBrightnessColor(ProxyClient.MODEL_BACKPACK_STRAPS, 1.0F, r, g, b);
	
	float lidAngle = 0.0F;
	IBackpackType type = backpack.getType();
	if (type != null) {
		int lidTicks = backpack.getLidTicks();
		int prevLidTicks = backpack.getPrevLidTicks();
		lidAngle = type.getLidAngle(lidTicks, prevLidTicks, ticks % 1);
	}
	
	// FIXME: Allow for custom, adjustable lid position.
	float lidYOffset = 9 / 16.0F;
	float lidZOffset = 5 / 16.0F;
	
	GlStateManager.pushMatrix();
	GlStateManager.translate(0.0F, lidYOffset, lidZOffset);
	GlStateManager.rotate(lidAngle, -1.0F, 0.0F, 0.0F);
	GlStateManager.translate(0.0F, -lidYOffset, -lidZOffset);
	IBakedModel topModel = (useEnch ? ProxyClient.MODEL_BACKPACK_ENCH_TOP : ProxyClient.MODEL_BACKPACK_TOP);
	renderer.renderModelBrightnessColor(topModel, 1.0F, r, g, b);
	GlStateManager.popMatrix();
	
}
 
开发者ID:copygirl,项目名称:WearableBackpacks,代码行数:31,代码来源:RendererBackpack.java

示例4: getAoFace

import net.minecraft.client.renderer.BlockModelRenderer; //导入依赖的package包/类
public BlockModelRenderer.AmbientOcclusionFace getAoFace()
{
    return this.aoFace;
}
 
开发者ID:SkidJava,项目名称:BaseClient,代码行数:5,代码来源:RenderEnv.java

示例5: getBlockModelRenderer

import net.minecraft.client.renderer.BlockModelRenderer; //导入依赖的package包/类
@Override
public BlockModelRenderer getBlockModelRenderer() {
    return parentDispatcher.getBlockModelRenderer();
}
 
开发者ID:TheCBProject,项目名称:CodeChickenLib,代码行数:5,代码来源:CCBlockRendererDispatcher.java

示例6: renderEnchanted

import net.minecraft.client.renderer.BlockModelRenderer; //导入依赖的package包/类
private static void renderEnchanted(IBackpack backpack, BlockModelRenderer renderer,
                                    float ticks, boolean renderStraps) {
	
	Minecraft mc = Minecraft.getMinecraft();
	float glintStrength = WearableBackpacks.CONFIG.cosmetic.enchantEffectOpacity.get().floatValue();
	if (glintStrength <= 0) return;
	float glintScale   = 1.5F;
	float animProgress = ticks / 10;
	
	int color = IntermodUtils.getRuneColor(backpack.getStack());
	float r = (color >> 16 & 0xFF) / 255.0F * glintStrength;
	float g = (color >>  8 & 0xFF) / 255.0F * glintStrength;
	float b = (color       & 0xFF) / 255.0F * glintStrength;
	
	mc.getTextureManager().bindTexture(ENCHANTED_ITEM_GLINT);
	mc.entityRenderer.setupFogColor(true);
	
	GlStateManager.disableLighting();
	GlStateManager.depthMask(false);
	GlStateManager.depthFunc(GL11.GL_EQUAL);
	GlStateManager.enableBlend();
	GlStateManager.blendFunc(GlStateManager.SourceFactor.SRC_COLOR, GlStateManager.DestFactor.ONE);
	
	for (int i = 0; i < 2; ++i) {
		GlStateManager.matrixMode(GL11.GL_TEXTURE);
		GlStateManager.loadIdentity();
		GlStateManager.scale(glintScale, glintScale, glintScale);
		GlStateManager.rotate(30.0F - i * 60.0F, 0.0F, 0.0F, 1.0F);
		GlStateManager.translate(0.0F, animProgress * (0.001F + i * 0.003F) * 20.0F, 0.0F);
		GlStateManager.matrixMode(GL11.GL_MODELVIEW);
		renderModel(backpack, renderer, ticks, renderStraps, r, g, b, true);
	}
	
	GlStateManager.matrixMode(GL11.GL_TEXTURE);
	GlStateManager.loadIdentity();
	GlStateManager.matrixMode(GL11.GL_MODELVIEW);
	
	GlStateManager.blendFunc(GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO);
	GlStateManager.disableBlend();
	GlStateManager.depthFunc(GL11.GL_LEQUAL);
	GlStateManager.depthMask(true);
	GlStateManager.enableLighting();
	
	mc.entityRenderer.setupFogColor(false);
	
}
 
开发者ID:copygirl,项目名称:WearableBackpacks,代码行数:47,代码来源:RendererBackpack.java


注:本文中的net.minecraft.client.renderer.BlockModelRenderer类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。