
Dyeing or putting a banner on elytra only gives me one wing.
xKazIsKoolx opened this issue ยท 14 comments
Mod list:
Bookshelf
AdditionalBanners
Collective
ElytraPhysics
EasyElytraTakeoff
Numble
UnderwaterEnchanting
TheFletchingTableMod
InfiniteMusic
MapTooltip
ExtendedBonemeal
WildBackport
Accurate Block Placement
Better Impaling
FishingOverhaul
NotEnoughAnimations
VoidFog
MoreHorseArmor
End's Phantasm
LibraryFerret
AwesomeDungeonEnd
Enderite
MoreLeads
DragonFight
InsaneLib
Iceologer
Layered Snowfall
StairsInTheWoods
RedstoneLampsPlus
ProgressiveBosses
GameMenuModOption
Paperdoll
Simple Coordinates
SpiffyHud
YungsApi
CopperGolem
SheepConsistency
Global Packs Forge
TorchSlabMod
DoubleSlabs
Enhanced Celestials
Controllable
ClientTweaks
Shulker Enchantments
ExperienceBugFix
FM Audio Extension
AutoRegLib
Quark
TerraBlender
Balm
XPFromHarvest
KleeSlabs
PassthroughSigns
ScaffoldingDropsNearby
PrettyBeaches
GetItTogetherDrops
Inferno's Herobrine
Clumps
Fancymenu
Forge
Placebo
GiantSpawn
ShutUpExperimentalSettings
ForgeCutomCursorMod
Auudio
Konkrete
DrippyLoadingScreen
ClothConfig
TyrannotitanLib
MissingLinks
DoubleDoors
OldCombatMod
SoundPhysics
Optifine
Hmm, could it be that the resourece pack modifies the vanilla generated.json
model located in assets/minecraft/models/item/generated.json
? All the other item models (usually) base their rendering off of that one, so if the resource pack changes it, that might break something as obscure as this feature. Although this is an area that I've barely touched so I'm not 100% sure on this.
That sounds about right. I have a generated.json
that makes all handheld items 2d. Thanks for the help
That could definitely be it. I know that the color for parts of the model (quads) is decided using the following logic:
i = this.itemColors.getColor(item, bakedquad.getTintIndex());
So if that generated.json
does stuff related to the tint index, that might be the source of the issue?
My generated.json
is as follows
{
"textures": {
"particle": "#layer0"
},
"ambientocclusion": false,
"elements": [
{
"from": [0, 0, 7.99],
"to": [16, 16, 8.01],
"faces": {
"north": {"uv": [16, 0, 0, 16], "texture": "#layer0", "tintindex": 0 },
"south": {"uv": [0, 0, 16, 16], "texture": "#layer0", "tintindex": 0 }
}
}
],
"gui_light": "front",
"display": {
"ground": {
"rotation": [ 0, 0, 0 ],
"translation": [ 0, 2, 0],
"scale":[ 0.5, 0.5, 0.5 ]
},
"head": {
"rotation": [ 0, 180, 0 ],
"translation": [ 0, 13, 7],
"scale":[ 1, 1, 1]
},
"thirdperson_righthand": {
"rotation": [ 0, 0, 0 ],
"translation": [ 0, 3, 1 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson_righthand": {
"rotation": [ 0, -90, 25 ],
"translation": [ 1.13, 3.2, 1.13],
"scale": [ 0.68, 0.68, 0.68 ]
},
"fixed": {
"rotation": [ 0, 180, 0 ],
"scale": [ 1, 1, 1 ]
},
"gui": {
"rotation": [ -45, 0, 0 ],
"scale": [ 1, 1.414, 1 ]
}
}
}
Sorry, I don't know how to do the thing to make it look like code lol. I tried and it compressed it all into one paragraph
Hmm, I see you're forcing the north and south faces to use texture layer 0. Maybe that's it? The JSON for the customizable elytra model (firework star is similar but with its own layers) is like this:
{
"parent": "item/generated",
"textures": {
"layer0": "item/firework_star",
"layer1": "item/firework_star_overlay"
}
}
If you want an easy fix, you might be able to just write a custom model JSON file for these two items, where the additional layer is added in somehow? (Again, not sure how these files work but perhaps it's adding another value to the elements
key that's the same as the existing one but with layer1 instead of layer0, and then they'd both get rendered?
Also, to add a code block like that you use this syntax:
```language
code goes here
```
so for example,
```json
{
"test": "value"
}
```
becomes
{
"test": "value"
}
As a side note, from looking at what I can see in terms of Minecraft's code, I think that usually the faces are generated by code, which is the special parent listed in generated.json
as builtin/generated
. It looks like it creates stuff as needed based on the model data of the item itself in vanilla, which the resource pack overrides.
Does one of your mods mess with UI code? The colored elytra is made up of two layers and it seems like something is messing with it and preventing it from coloring the second layer, thus making one wing look missing
If that's the case, I have no idea which mod it would be. None of them mess with the ui in any way except for fancymenu, but I didn't use it to change anything about the crafting interface
Hmm, if you craft a Firework Star (the vanilla item), does it also have this issue where one of the layers is entirely transparent like the elytra? If it works fine the firework star should be gray with colored spots representing the color of the firework star..
So at this point, I'm aware that it has nothing to do with your mod, but is there any chance you could try to help me fix this?
I've tried picking some of the mods in your list at random and checking their source code to see if they mess with it but haven't found any yet.
The best thing I can recommend you to do at the moment is to try to do a binary search on your mod list to find which mod is causing this; Remove half of your mods (obviously ensuring their dependencies are met and such) and boot up the game, if the items still render incorrectly, remove another half and repeat. If the items render correctly, you know the problematic mod is in the half you removed, so you can try that half of the mods and repeat. This is pretty much the fastest way to narrow down your mod list to the mod (or at least a far smaller list of mods) that is causing the issue.
I've narrowed it down to the texture pack that I'm using. Do you know which file handles this second layer? I could fix it pretty easily if I knew which file I needed to edit