Publish gravity fog through generic Eve fields
This commit is contained in:
parent
84429ad6eb
commit
6f0375f4ad
22 changed files with 293 additions and 230 deletions
|
|
@ -506,6 +506,13 @@ public class DaemonRuntimeDocumentTests
|
|||
Assert.IsTrue(ContainsSurfaceProp(surface.Surface.Root, "entityViewSchema",
|
||||
EveEntitySoaViewDocument.SchemaId));
|
||||
Assert.IsFalse(ContainsSurfaceKind(surface.Surface.Root, "world.entity3d"));
|
||||
Assert.IsTrue(ContainsSurfaceKind(surface.Surface.Root, "field.volume3d"));
|
||||
Assert.IsTrue(ContainsSurfaceProp(surface.Surface.Root, "materialAssetRef",
|
||||
"shader.environment.gravity-fog"));
|
||||
Assert.IsTrue(ContainsSurfaceProp(surface.Surface.Root, "documentSchema",
|
||||
AetheriaRuntimeDaemonSchemas.RenderSplatsViewport));
|
||||
Assert.IsFalse(ContainsSurfaceValueFragment(surface.Surface.Root, "_Nebula"),
|
||||
"The semantic Eve surface must not own Unity shader property names.");
|
||||
Assert.AreEqual(EveEntitySoaViewDocument.SchemaId, portable.Schema);
|
||||
Assert.AreEqual(42, portable.Generation);
|
||||
Assert.AreEqual(AetheriaRuntimeDaemonSoaColumnKinds.Position, portable.Columns.Single().Semantic);
|
||||
|
|
@ -708,6 +715,13 @@ public class DaemonRuntimeDocumentTests
|
|||
Assert.IsTrue(assetManifest.Assets.Any(asset =>
|
||||
asset.Ref.AssetKey == "prefab.entity.ship" &&
|
||||
asset.Ref.Kind == AetheriaRuntimeAssetKinds.Prefab));
|
||||
Assert.IsTrue(assetManifest.Assets.Any(asset =>
|
||||
asset.Ref.AssetKey == "shader.environment.gravity-fog" &&
|
||||
asset.Ref.Kind == AetheriaRuntimeAssetKinds.Shader &&
|
||||
asset.Ref.Metadata["unity.volume.texturePort.surfaceHeight"] == "_NebulaSurfaceHeight"));
|
||||
Assert.IsTrue(assetManifest.Assets.Any(asset =>
|
||||
asset.Ref.AssetKey == "texture.environment.volume-dither" &&
|
||||
asset.Ref.Kind == AetheriaRuntimeAssetKinds.Texture));
|
||||
var editorTuiSurface = result.EditorTuiSurface;
|
||||
Assert.AreEqual("aetheria.daemon", editorTuiSurface.ProviderId);
|
||||
Assert.AreEqual("editor.daemon", editorTuiSurface.ProviderKind);
|
||||
|
|
@ -6224,6 +6238,14 @@ public class DaemonRuntimeDocumentTests
|
|||
component.Children.Any(child => ContainsSurfaceKind(child, kind));
|
||||
}
|
||||
|
||||
private static bool ContainsSurfaceValueFragment(AetheriaRuntimeSurfaceComponent component, string fragment)
|
||||
{
|
||||
if (component.Props.Values.Any(value =>
|
||||
value != null && value.IndexOf(fragment, StringComparison.Ordinal) >= 0))
|
||||
return true;
|
||||
return component.Children.Any(child => ContainsSurfaceValueFragment(child, fragment));
|
||||
}
|
||||
|
||||
private static bool ContainsSurfaceStateBinding(
|
||||
AetheriaRuntimeSurfaceComponent component,
|
||||
string targetProp,
|
||||
|
|
|
|||
Loading…
Reference in a new issue