mirror of
https://github.com/vrm-c/UniVRM.git
synced 2026-04-25 07:28:51 -05:00
Merge pull request #1349 from 0b5vr/mtoon-emissive-colorspace
fix (VRM1.0, MToon): exported emissive factor should be in linear colorspace
This commit is contained in:
commit
7935258363
|
|
@ -84,6 +84,7 @@ namespace UniVRM10
|
|||
mtoon.GiEqualizationFactor = context.GiEqualizationFactor;
|
||||
|
||||
// Emission
|
||||
// Emissive factor is stored in Linear space
|
||||
dst.emissiveFactor = context.EmissiveFactorLinear.ToFloat3(ColorSpace.Linear, ColorSpace.Linear);
|
||||
var emissiveTextureIndex = textureExporter.RegisterExportingAsSRgb(context.EmissiveTexture, needsAlpha: false);
|
||||
if (emissiveTextureIndex != -1)
|
||||
|
|
|
|||
|
|
@ -72,6 +72,7 @@ namespace UniVRM10
|
|||
// GI
|
||||
|
||||
// Emission
|
||||
// Emissive factor should be stored in Linear space
|
||||
var emissionColor = material?.emissiveFactor?.ToColor3(gltfColorSpace, ColorSpace.Linear);
|
||||
if (emissionColor.HasValue)
|
||||
{
|
||||
|
|
@ -79,7 +80,7 @@ namespace UniVRM10
|
|||
}
|
||||
|
||||
// Rim Lighting
|
||||
var rimColor = mToon?.ParametricRimColorFactor?.ToColor3(gltfColorSpace, ColorSpace.Linear);
|
||||
var rimColor = mToon?.ParametricRimColorFactor?.ToColor3(gltfColorSpace, ColorSpace.sRGB);
|
||||
if (rimColor.HasValue)
|
||||
{
|
||||
yield return (MToon10Prop.ParametricRimColorFactor.ToUnityShaderLabName(), rimColor.Value);
|
||||
|
|
|
|||
|
|
@ -102,7 +102,8 @@ namespace VRMShaders.VRM10.MToon10.Runtime
|
|||
// Emission
|
||||
public Color EmissiveFactorLinear
|
||||
{
|
||||
get => _material.GetColor(MToon10Prop.EmissiveFactor).linear;
|
||||
// Emissive factor is stored in Linear space
|
||||
get => _material.GetColor(MToon10Prop.EmissiveFactor);
|
||||
}
|
||||
|
||||
public Texture EmissiveTexture
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user