Jump to content

PTLC

Members
  • Posts

    9
  • Joined

  • Last visited

Posts posted by PTLC

  1. It was because I wanted to create like red_blockblue_block and green_block but only one of them per Minecraft launch.

    But I can create a colored_block and link it to a texture during the Minecraft start.

    It will be same in game.

    I juste don't how to link my texture (BufferedImage) to my colored_block at Minecraft start.

  2. For exemple, I want to create a block with the id colored_stone

     - if in my config file there is red, the block will be red

     - if there is #FF8080, the block will be colored with this color

     Furthermore I want the possibility to add a pattern amont several patterns (like ore, plant, flower...)

     

  3. It doesn't crash ?

    But it doesn't have effect in game...

    I think the texture can be load from BufferedImage now, but I don't think how to display it as block texture

    With a model (in a file) probably, I try but it doesn't work

    But it's not the final goal because I want blocks with name and id defined in code

    Do you have a solution ? :)

  4. All the stacktrace ?:

    Spoiler

    FATAL ERROR in native method: Thread[Server-Worker-8,5,main]: No context is current or a function that is not available in the current context was called. The JVM will abort execution.
            at org.lwjgl.opengl.GL11C.nglGenTextures(Native Method)
            at org.lwjgl.opengl.GL11C.glGenTextures(GL11C.java:664)
            at org.lwjgl.opengl.GL11.glGenTextures(GL11.java:2492)
            at com.mojang.blaze3d.platform.GlStateManager.genTexture(GlStateManager.java:419)
            at com.mojang.blaze3d.platform.TextureUtil.generateTextureId(TextureUtil.java:27)
            at net.minecraft.client.renderer.texture.Texture.getGlTextureId(Texture.java:45)
            at net.minecraft.client.renderer.texture.DynamicTexture.<init>(DynamicTexture.java:16)
            at fr.ptlc.randomdimensions.CustomTexture.add(CustomTexture.java:28)
            at fr.ptlc.randomdimensions.Main$RegistryEvents.stitcherEventPre(Main.java:124)
            at net.minecraftforge.eventbus.ASMEventHandler_3_RegistryEvents_stitcherEventPre_Pre.invoke(.dynamic)
            at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:80)
            at net.minecraftforge.eventbus.EventBus.post(EventBus.java:258)
            at net.minecraftforge.fml.javafmlmod.FMLModContainer.acceptEvent(FMLModContainer.java:163)
            at net.minecraftforge.fml.ModLoader.lambda$postEvent$30(ModLoader.java:240)
            at net.minecraftforge.fml.ModLoader$$Lambda$2280/2054805916.accept(Unknown Source)
            at java.util.HashMap.forEach(HashMap.java:1289)
            at net.minecraftforge.fml.ModList.forEachModContainer(ModList.java:209)
            at net.minecraftforge.fml.ModLoader.postEvent(ModLoader.java:240)
            at net.minecraftforge.client.ForgeHooksClient.onTextureStitchedPre(ForgeHooksClient.java:171)
            at net.minecraft.client.renderer.texture.AtlasTexture.stitch(AtlasTexture.java:96)
            at net.minecraft.client.renderer.texture.SpriteUploader.prepare(SpriteUploader.java:34)
            at net.minecraft.client.renderer.texture.SpriteUploader.prepare(SpriteUploader.java:10)
            at net.minecraft.client.resources.ReloadListener.lambda$reload$0(ReloadListener.java:12)
            at net.minecraft.client.resources.ReloadListener$$Lambda$2416/905830050.get(Unknown Source)
            at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590)
            at java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1582)
            at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
            at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
            at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
            at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
    FATAL ERROR in native method: Thread[Server-Worker-3,5,main]: No context is current or a function that is not available in the current context was called. The JVM will abort execution.
            at org.lwjgl.opengl.GL11C.nglGenTextures(Native Method)
            at org.lwjgl.opengl.GL11C.glGenTextures(GL11C.java:664)
            at org.lwjgl.opengl.GL11.glGenTextures(GL11.java:2492)
            at com.mojang.blaze3d.platform.GlStateManager.genTexture(GlStateManager.java:419)
            at com.mojang.blaze3d.platform.TextureUtil.generateTextureId(TextureUtil.java:27)
            at net.minecraft.client.renderer.texture.Texture.getGlTextureId(Texture.java:45)
            at net.minecraft.client.renderer.texture.DynamicTexture.<init>(DynamicTexture.java:16)
            at fr.ptlc.randomdimensions.CustomTexture.add(CustomTexture.java:28)
            at fr.ptlc.randomdimensions.Main$RegistryEvents.stitcherEventPre(Main.java:124)
            at net.minecraftforge.eventbus.ASMEventHandler_3_RegistryEvents_stitcherEventPre_Pre.invoke(.dynamic)
            at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:80)
            at net.minecraftforge.eventbus.EventBus.post(EventBus.java:258)
            at net.minecraftforge.fml.javafmlmod.FMLModContainer.acceptEvent(FMLModContainer.java:163)
            at net.minecraftforge.fml.ModLoader.lambda$postEvent$30(ModLoader.java:240)

    I've try to call this method from the events FMLClientSetupEvent and then from TextureStitchEvent.Pre.

  5. Hello,

    I want to create a mod where textures are generated at the start of Minecraft from bufferedImage create in code. ?

    For example, if I want to create a stone with custom color, it will take the stone resource, color it and link it to a ResourceLocation. 

    But I don't know how to do this step.

     

    I try to use DynamicTexture ? :

    public static ResourceLocation addTexture(BufferedImage img, ResourceLocation loc) {
    	TextureManager textureManager = Minecraft.getInstance().getTextureManager();
    	NativeImage n = new NativeImage(img.getWidth(), img.getHeight(), true);
    	for (int i = 0; i < img.getWidth; i++) {
    		for (int j = 0; j < img.getHeight(); j++) {
            	double[] c = img.getRaster().getPixel(i, j, new double[0]);
                color = (((((c[3] >> 8) + c[2]) >> 8) + c[1]) >> 8) + c[0];
    			n.setPixelRGBA(i, j, color);
    		}
    	}
    	DynamicTexture dyn = new DynamicTexture(n);
    	
    	textureManager.loadTexture(loc, dyn);
    	return loc;
    }

     

    But I have errors like that ? :

    FATAL ERROR in native method: Thread[Server-Worker-3,5,main]: No context is current or a function that is not available in the current context was called. The JVM will abort execution.
            at org.lwjgl.opengl.GL11C.nglGenTextures(Native Method)
            at org.lwjgl.opengl.GL11C.glGenTextures(GL11C.java:664)
            at org.lwjgl.opengl.GL11.glGenTextures(GL11.java:2492)
            at com.mojang.blaze3d.platform.GlStateManager.genTexture(GlStateManager.java:419)
            at com.mojang.blaze3d.platform.TextureUtil.generateTextureId(TextureUtil.java:27)
            at net.minecraft.client.renderer.texture.Texture.getGlTextureId(Texture.java:45)
            at net.minecraft.client.renderer.texture.DynamicTexture.<init>(DynamicTexture.java:16)
            at fr.ptlc.randomdimensions.CustomTexture.add(CustomTexture.java:28)

    And I don't know why...

     

    I've made many searches and find nothing working

    I hope you can help me. ?

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.