@@ -793,6 +793,7 @@ public void EffectPipelineLayoutsUseStackBackedDescriptors()
793793 string acisSolid = ReadSource ( "src" , "ProGPU.Scene" , "Extensions" , "AcisSolidExtensionPipeline.cs" ) ;
794794 string hatch = ReadSource ( "src" , "ProGPU.Scene" , "Extensions" , "HatchExtensionPipeline.cs" ) ;
795795 string mesh3D = ReadSource ( "src" , "ProGPU.Scene" , "Extensions" , "Mesh3DExtensionPipeline.cs" ) ;
796+ string scatterSeries = ReadSource ( "src" , "ProGPU.Scene" , "Extensions" , "GpuScatterSeriesExtensionPipeline.cs" ) ;
796797 string pipelineCache = ReadSource ( "src" , "ProGPU.Backend" , "RenderPipelineCache.cs" ) ;
797798
798799 Assert . Contains ( "Span<VertexAttribute> vectorAttrs = stackalloc VertexAttribute[8];" , compositor , StringComparison . Ordinal ) ;
@@ -804,6 +805,7 @@ public void EffectPipelineLayoutsUseStackBackedDescriptors()
804805 Assert . Contains ( "Span<VertexBufferLayout> vertexLayouts = stackalloc VertexBufferLayout[1];" , compositor , StringComparison . Ordinal ) ;
805806 Assert . Contains ( "ArrayStride = (uint)Unsafe.SizeOf<VectorVertex>()" , compositor , StringComparison . Ordinal ) ;
806807 Assert . Contains ( "ArrayStride = (uint)Unsafe.SizeOf<GlyphInstance>()" , compositor , StringComparison . Ordinal ) ;
808+ Assert . Contains ( "ArrayStride = (uint)Unsafe.SizeOf<Vector3>()" , compositor , StringComparison . Ordinal ) ;
807809 Assert . DoesNotContain ( "var vertexAttribs = new VertexAttribute[]" , compositor , StringComparison . Ordinal ) ;
808810 Assert . DoesNotContain ( "var textVertexAttribs = new VertexAttribute[]" , compositor , StringComparison . Ordinal ) ;
809811 Assert . DoesNotContain ( "var scatterAttribs = new VertexAttribute[]" , compositor , StringComparison . Ordinal ) ;
@@ -823,6 +825,7 @@ public void EffectPipelineLayoutsUseStackBackedDescriptors()
823825 AssertStackBackedLayout ( acisSolid , 8 , "VectorVertex" ) ;
824826 AssertStackBackedLayout ( hatch , 8 , "VectorVertex" ) ;
825827 AssertStackBackedLayout ( mesh3D , 2 , "GpuVertex3D" ) ;
828+ AssertStackBackedLayout ( scatterSeries , 2 , "Vector3" ) ;
826829
827830 Assert . Contains ( "ReadOnlySpan<VertexBufferLayout> vertexBufferLayouts" , pipelineCache , StringComparison . Ordinal ) ;
828831 Assert . Contains ( "fixed (VertexBufferLayout* pLayouts = vertexBufferLayouts)" , pipelineCache , StringComparison . Ordinal ) ;
@@ -841,7 +844,9 @@ static void AssertStackBackedLayout(string source, int attributeCount, string ve
841844 Assert . Contains ( $ "Span<VertexAttribute> attrs = stackalloc VertexAttribute[{ attributeCount } ];", source , StringComparison . Ordinal ) ;
842845 Assert . Contains ( "Span<VertexBufferLayout> layouts = stackalloc VertexBufferLayout[1];" , source , StringComparison . Ordinal ) ;
843846 Assert . Contains ( $ "ArrayStride = (uint)Unsafe.SizeOf<{ vertexType } >()", source , StringComparison . Ordinal ) ;
847+ Assert . DoesNotContain ( "new VertexAttribute[]" , source , StringComparison . Ordinal ) ;
844848 Assert . DoesNotContain ( "new VertexBufferLayout[]" , source , StringComparison . Ordinal ) ;
849+ Assert . DoesNotContain ( "new[] {" , source , StringComparison . Ordinal ) ;
845850 Assert . DoesNotContain ( "Marshal.AllocHGlobal(Marshal.SizeOf<VertexAttribute>()" , source , StringComparison . Ordinal ) ;
846851 Assert . DoesNotContain ( "Marshal.FreeHGlobal((IntPtr)layouts[0].Attributes)" , source , StringComparison . Ordinal ) ;
847852 }
0 commit comments