I've used assets in Unity made with Spine.
GameObjects I create from SkeletonData files will look like this:
At first glance the problem seems obvious; In the Mesh renderer, it says the material is missing. However, adding my material won't work here and it says:
Problematic Texture / Material Settings found: It is recommended to disable `Alpha Is Transparency` on `Premultiply alpha` textures.
Firstly, it doesn't sound like a good idea to disable this in the first place, because alpha channels should be transparency, right? Also I did some digging and found this query on the Spine forums. In this thread, the user says what worked for them was: deleting the line
_ALPHAPREMULTIPLY_ON
in their material file. Despite the user uttering concern about this solution, my file doesn't even have that line to delete. This is the code of my material file:
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: spineboy-pro_Material
m_Shader: {fileID: 4800000, guid: 1e8a610c9e01c3648bac42585e5fc676, type: 3}
m_ValidKeywords: []
m_InvalidKeywords:
- _USE8NEIGHBOURHOOD_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _MainTex:
m_Texture: {fileID: 2800000, guid: 581a7e3dd3386284391da5fa454a3ddd, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _Cutoff: 0.1
- _OutlineMipLevel: 0
- _OutlineOpaqueAlpha: 1
- _OutlineReferenceTexWidth: 1024
- _OutlineSmoothness: 1
- _OutlineWidth: 3
- _StencilComp: 8
- _StencilRef: 1
- _StraightAlphaInput: 0
- _ThresholdEnd: 0.25
- _Use8Neighbourhood: 1
m_Colors:
- _OutlineColor: {r: 1, g: 1, b: 0, a: 1}
m_BuildTextureStacks: []
I've tried three different Spine projects, they all have the same problem. Even the Spine Examples included in the Spine package will look like this. Weirdly enough, I can assign these materials to Vanilla Unity GamebeObjects tho.