Jump to content

1.6.2 models made have invisible parts


mrgreaper

Recommended Posts

ok yeah the title sucks but how do i summerise the issue in a title?

 

[embed=425,349]http://www.youtube.com/watch?v=n7rtgyOESEk[/embed]

 

the vid explains the issue fully, im completly stuck, theres very few guides on using models (i only found one on using obj files and it just didnt work) im guessing i missed something obvious but, well im stuck

Link to comment
Share on other sites

only found one on using obj files and it just didnt work)

whos guide ? mine ? (on forge wiki)

 

cuz id blame techne since its pretty much crap :\

 

this guide http://minalien.com/tutorial-advancedmodelloader/

 

ill have a look on the forge wikki latter on, i relied on google to find a good guide (damn you google!)

 

and yeah, techne has to be the worst 3d model maker i have ever seen...cubes only? really. no dragging items about... just horrible but its the only thing that has come close to getting an object into the world for me :( though glitched as you can see)

Link to comment
Share on other sites

techne has to be the worst 3d model maker i have ever seen...cubes only?

someone else share my opinion ?!?!?? this must be my birthday or something

 

but yeah look on forge wii youll see my tutorial and just download like blender3d or something and start using wavefront (aka real men modeling)

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Link to comment
Share on other sites

techne has to be the worst 3d model maker i have ever seen...cubes only?

someone else share my opinion ?!?!?? this must be my birthday or something

 

but yeah look on forge wii youll see my tutorial and just download like blender3d or something and start using wavefront (aka real men modeling)

on the wiki i found http://www.minecraftforge.net/wiki/Using_wavefront_model

 

is that the one?

Link to comment
Share on other sites

the material file has nothign to do with the texture, it only hold the reflection/diffuse indice and other metarial related property, to make png youll have to check with your 3d modeling software

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Link to comment
Share on other sites

well i just cant figure it out, my setup is a little different to yours but the principles seem the same, but the object doesnt appear in game, if you look at the commented out code thats my techne attempt and that does appear in game so the entity is fine

 

damn you minecraft why do you have to be so damn confusing!

 

my item (not really that relevent i know)

https://github.com/mrgreaper/TwistedMod/blob/master/TwistedMod_common/com/mrgreaper/twisted/items/ItemDeathOrb.java

 

the entity:

https://github.com/mrgreaper/TwistedMod/blob/master/TwistedMod_common/com/mrgreaper/twisted/entities/EntityDeathOrb.java

 

the model class

https://github.com/mrgreaper/TwistedMod/blob/master/TwistedMod_common/com/mrgreaper/twisted/client/ModelDeathOrb.java

 

the renderer for the model

https://github.com/mrgreaper/TwistedMod/blob/master/TwistedMod_common/com/mrgreaper/twisted/client/RenderDeathOrb.java

 

the obj file (just a quick dirty object for the test

https://github.com/mrgreaper/TwistedMod/blob/master/Resources/assets/twisted/models/deathorb.obj

 

the texture

https://github.com/mrgreaper/TwistedMod/blob/master/Resources/assets/twisted/models/metal1.png

Link to comment
Share on other sites

heu .. well yeah that makes sens

 

 

model.render(deathorb, 0F, 0F, 0F, 0F, 0F, 0.0625f);

 

thsi method calls the ModelBase model to render

 

while a obj is a IModelCustom, a thing that you are never calling

 

 

add this method inside modeldeathorb

 

public void renderWavefront(){

    modelDeathOrb.renderAll();

}

 

edit:

also obviously call renderWavefront instead of "render(deathorb, 0F, 0F, 0F, 0F, 0F, 0.0625f);"

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Link to comment
Share on other sites

yep that was it, the guide that i was using (vswe`s guide) mentioned that models are too large by default so you scale them down...only he was on about techne model style.

 

now i just need to make a proper model in blender (should take a while and figure out how to get blender to export me a compatable texture map lol)

 

The model bit of my mod was spose to be a nice quick diversion before i got back to other stuff.. when will i learn things are often not that easy!

 

but thank you very much for the help it is greatly appreciated!

Link to comment
Share on other sites

well i approve the part where you scale, because in blender you could shit models that are like 250 block tall so you would have to use scale, but what i dont get it why -1, -1, -1, that implies you want the model to be flipped on all axis :\

 

and to texturing is not hard in blender, just go on youtube there will be a lot of tuts to help you :)

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Link to comment
Share on other sites

well i approve the part where you scale, because in blender you could shit models that are like 250 block tall so you would have to use scale, but what i dont get it why -1, -1, -1, that implies you want the model to be flipped on all axis :\

 

and to texturing is not hard in blender, just go on youtube there will be a lot of tuts to help you :)

 

ah yes the texturing inside blender is a breeze (when you know how) but i mean the act of exporting the texture map to a png that minecraft can use to wrap around the model the same as it is in blender. sadly that seems rather specialised and not common enough to warrent youtube videos (though im at work at mo and youtube does play up so i may of missed it) if you know of a good vid please link me up

Link to comment
Share on other sites

no no search google/youtube for  "blender texture unwrapping", fortunatelly minecraft is using the same convention as everyone on earth for rendering triangles, so if you unwrap your texture in blender your obj will keep the data on how to unwrap the texture, after that just bind and render

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • They were already updated, and just to double check I even did a cleanup and fresh update from that same page. I'm quite sure drivers are not the problem here. 
    • i tried downloading the drivers but it says no AMD graphics hardware has been detected    
    • Update your AMD/ATI drivers - get the drivers from their website - do not update via system  
    • As the title says i keep on crashing on forge 1.20.1 even without any mods downloaded, i have the latest drivers (nvidia) and vanilla minecraft works perfectly fine for me logs: https://pastebin.com/5UR01yG9
    • Hello everyone, I'm making this post to seek help for my modded block, It's a special block called FrozenBlock supposed to take the place of an old block, then after a set amount of ticks, it's supposed to revert its Block State, Entity, data... to the old block like this :  The problem I have is that the system breaks when handling multi blocks (I tried some fix but none of them worked) :  The bug I have identified is that the function "setOldBlockFields" in the item's "setFrozenBlock" function gets called once for the 1st block of multiblock getting frozen (as it should), but gets called a second time BEFORE creating the first FrozenBlock with the data of the 1st block, hence giving the same data to the two FrozenBlock :   Old Block Fields set BlockState : Block{minecraft:black_bed}[facing=east,occupied=false,part=head] BlockEntity : net.minecraft.world.level.block.entity.BedBlockEntity@73681674 BlockEntityData : id:"minecraft:bed",x:3,y:-60,z:-6} Old Block Fields set BlockState : Block{minecraft:black_bed}[facing=east,occupied=false,part=foot] BlockEntity : net.minecraft.world.level.block.entity.BedBlockEntity@6d1aa3da BlockEntityData : {id:"minecraft:bed",x:2,y:-60,z:-6} Frozen Block Entity set BlockState : Block{minecraft:black_bed}[facing=east,occupied=false,part=foot] BlockPos{x=3, y=-60, z=-6} BlockEntity : net.minecraft.world.level.block.entity.BedBlockEntity@6d1aa3da BlockEntityData : {id:"minecraft:bed",x:2,y:-60,z:-6} Frozen Block Entity set BlockState : Block{minecraft:black_bed}[facing=east,occupied=false,part=foot] BlockPos{x=2, y=-60, z=-6} BlockEntity : net.minecraft.world.level.block.entity.BedBlockEntity@6d1aa3da BlockEntityData : {id:"minecraft:bed",x:2,y:-60,z:-6} here is the code inside my custom "freeze" item :    @Override     public @NotNull InteractionResult useOn(@NotNull UseOnContext pContext) {         if (!pContext.getLevel().isClientSide() && pContext.getHand() == InteractionHand.MAIN_HAND) {             BlockPos blockPos = pContext.getClickedPos();             BlockPos secondBlockPos = getMultiblockPos(blockPos, pContext.getLevel().getBlockState(blockPos));             if (secondBlockPos != null) {                 createFrozenBlock(pContext, secondBlockPos);             }             createFrozenBlock(pContext, blockPos);             return InteractionResult.SUCCESS;         }         return super.useOn(pContext);     }     public static void createFrozenBlock(UseOnContext pContext, BlockPos blockPos) {         BlockState oldState = pContext.getLevel().getBlockState(blockPos);         BlockEntity oldBlockEntity = oldState.hasBlockEntity() ? pContext.getLevel().getBlockEntity(blockPos) : null;         CompoundTag oldBlockEntityData = oldState.hasBlockEntity() ? oldBlockEntity.serializeNBT() : null;         if (oldBlockEntity != null) {             pContext.getLevel().removeBlockEntity(blockPos);         }         BlockState FrozenBlock = setFrozenBlock(oldState, oldBlockEntity, oldBlockEntityData);         pContext.getLevel().setBlockAndUpdate(blockPos, FrozenBlock);     }     public static BlockState setFrozenBlock(BlockState blockState, @Nullable BlockEntity blockEntity, @Nullable CompoundTag blockEntityData) {         BlockState FrozenBlock = BlockRegister.FROZEN_BLOCK.get().defaultBlockState();         ((FrozenBlock) FrozenBlock.getBlock()).setOldBlockFields(blockState, blockEntity, blockEntityData);         return FrozenBlock;     }  
  • Topics

×
×
  • Create New...

Important Information

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