mirror of
https://github.com/vrm-c/UniVRM.git
synced 2026-09-10 12:59:17 -05:00
AlphaBlend
This commit is contained in:
@@ -45,7 +45,7 @@ MonoBehaviour:
|
||||
value: 65472
|
||||
diffusion:
|
||||
overrideState: 1
|
||||
value: 7
|
||||
value: 6.4
|
||||
anamorphicRatio:
|
||||
overrideState: 0
|
||||
value: 0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,10 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 868190a58757d6242bb3ca456402f82f
|
||||
ScriptedImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3}
|
||||
@@ -14,12 +14,21 @@ namespace UniVRM10.VRM10Viewer
|
||||
public UrpGltfPbrMaterialImporter PbrMaterialImporter { get; } = new();
|
||||
public UrpGltfDefaultMaterialImporter DefaultMaterialImporter { get; } = new();
|
||||
|
||||
public Material Material { get; set; }
|
||||
|
||||
public Material OpaqueMaterial { get; set; }
|
||||
public Material AlphaBlendMaterial { get; set; }
|
||||
|
||||
/// <param name="material">TinyPbr material</param>
|
||||
public TinyPbrMaterialDescriptorGenerator(Material material)
|
||||
public TinyPbrMaterialDescriptorGenerator(
|
||||
Material opaque,
|
||||
Material alphaBlend
|
||||
)
|
||||
{
|
||||
Material = material;
|
||||
if (opaque == null)
|
||||
{
|
||||
throw new ArgumentNullException("opaque");
|
||||
}
|
||||
OpaqueMaterial = opaque;
|
||||
AlphaBlendMaterial = alphaBlend ?? opaque;
|
||||
}
|
||||
|
||||
public MaterialDescriptor Get(GltfData data, int i)
|
||||
@@ -50,7 +59,7 @@ namespace UniVRM10.VRM10Viewer
|
||||
var src = data.GLTF.materials[i];
|
||||
matDesc = new MaterialDescriptor(
|
||||
GltfMaterialImportUtils.ImportMaterialName(i, src),
|
||||
Material.shader,
|
||||
src.alphaMode == "BLEND" ? AlphaBlendMaterial.shader : OpaqueMaterial.shader,
|
||||
null,
|
||||
new Dictionary<string, TextureDescriptor>(),
|
||||
new Dictionary<string, float>(),
|
||||
|
||||
@@ -30638,7 +30638,11 @@ MonoBehaviour:
|
||||
Root: {fileID: 124675793}
|
||||
m_version: {fileID: 1268276256}
|
||||
m_faceCamera: {fileID: 1150163685}
|
||||
m_customMaterial: {fileID: -876546973899608171, guid: ac58f8c11a130e04ba883a82ae4b78e4,
|
||||
m_opaqueMaterial: {fileID: -876546973899608171, guid: ac58f8c11a130e04ba883a82ae4b78e4,
|
||||
type: 3}
|
||||
m_alphaBlendMaterial: {fileID: -876546973899608171, guid: 868190a58757d6242bb3ca456402f82f,
|
||||
type: 3}
|
||||
m_cutoffMaterial: {fileID: -876546973899608171, guid: 9a01f29343f749440b30e3ff1c26b013,
|
||||
type: 3}
|
||||
m_useCustomMaterial: {fileID: 731212246}
|
||||
m_openModel: {fileID: 2009818433}
|
||||
|
||||
@@ -24,7 +24,9 @@ namespace UniVRM10.VRM10Viewer
|
||||
|
||||
[Header("Material")]
|
||||
[SerializeField]
|
||||
Material m_customMaterial = default;
|
||||
Material m_opaqueMaterial = default;
|
||||
[SerializeField]
|
||||
Material m_alphaBlendMaterial = default;
|
||||
|
||||
[Header("UI")]
|
||||
[SerializeField]
|
||||
@@ -499,7 +501,7 @@ namespace UniVRM10.VRM10Viewer
|
||||
Motion = BvhMotion.LoadBvhFromText(m_motion.text);
|
||||
if (m_useCustomMaterial.isOn)
|
||||
{
|
||||
Motion.SetBoxManMaterial(Instantiate(m_customMaterial));
|
||||
Motion.SetBoxManMaterial(Instantiate(m_opaqueMaterial));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -773,7 +775,10 @@ namespace UniVRM10.VRM10Viewer
|
||||
{
|
||||
if (m_useCustomMaterial.isOn)
|
||||
{
|
||||
return new TinyPbrMaterialDescriptorGenerator(m_customMaterial);
|
||||
return new TinyPbrMaterialDescriptorGenerator(
|
||||
m_opaqueMaterial,
|
||||
m_alphaBlendMaterial
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user