diff --git a/src/Veldrid.SPIRV/SpirvReflection.cs b/src/Veldrid.SPIRV/SpirvReflection.cs index f0c6a2d..d2286f0 100644 --- a/src/Veldrid.SPIRV/SpirvReflection.cs +++ b/src/Veldrid.SPIRV/SpirvReflection.cs @@ -1,8 +1,3 @@ -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using System; -using System.IO; - namespace Veldrid.SPIRV { /// @@ -12,8 +7,6 @@ namespace Veldrid.SPIRV /// public class SpirvReflection { - private static readonly Lazy s_serializer = new Lazy(CreateSerializer); - /// /// An array containing a description of each vertex element that is used by the compiled shader set. /// This array will be empty for compute shaders. @@ -39,41 +32,5 @@ public SpirvReflection( VertexElements = vertexElements; ResourceLayouts = resourceLayouts; } - - /// - /// Loads a object from a serialized JSON file at the given path. - /// - /// The path to the JSON file. - /// A new object, deserialized from the file. - public static SpirvReflection LoadFromJson(string jsonPath) - { - using (FileStream jsonStream = File.OpenRead(jsonPath)) - { - return LoadFromJson(jsonStream); - } - } - - /// - /// Loads a object from a serialized JSON stream. - /// - /// The stream of serialized JSON text. - /// A new object, deserialized from the stream. - public static SpirvReflection LoadFromJson(Stream jsonStream) - { - using (StreamReader sr = new StreamReader(jsonStream)) - using (JsonTextReader jtr = new JsonTextReader(sr)) - { - return s_serializer.Value.Deserialize(jtr); - } - } - - private static JsonSerializer CreateSerializer() - { - JsonSerializer serializer = new JsonSerializer(); - serializer.Formatting = Formatting.Indented; - StringEnumConverter enumConverter = new StringEnumConverter(); - serializer.Converters.Add(enumConverter); - return serializer; - } } -} \ No newline at end of file +} diff --git a/src/Veldrid.SPIRV/Veldrid.SPIRV.csproj b/src/Veldrid.SPIRV/Veldrid.SPIRV.csproj index 2e3d767..07c2721 100644 --- a/src/Veldrid.SPIRV/Veldrid.SPIRV.csproj +++ b/src/Veldrid.SPIRV/Veldrid.SPIRV.csproj @@ -1,69 +1,71 @@  - - ppy.Veldrid.SPIRV - 0.0.0 - true - + + ppy.Veldrid.SPIRV + 0.0.0 + true + - - net6.0 - ppy.Veldrid.SPIRV - true - $(BinDir)\$(AssemblyName).xml - $(RepositoryRootDirectory)/build/ - + + net8.0 + ppy.Veldrid.SPIRV + true + $(BinDir)\$(AssemblyName).xml + $(RepositoryRootDirectory)/build/ + - - - - - - - - build/MonoAndroid10/Veldrid.SPIRV.targets - true - - - build/net40/Veldrid.SPIRV.targets - true - - + + + - - - PreserveNewest - runtimes/ios/native - true - - + + + build/MonoAndroid10/Veldrid.SPIRV.targets + true + + + build/net40/Veldrid.SPIRV.targets + true + + - - - + + + PreserveNewest + runtimes/ios/native + true + + - - <_NativeAssetName Include="$(Configuration)/win-x86/libveldrid-spirv.dll" PackagePath="runtimes/win-x86/native" /> - <_NativeAssetName Include="$(Configuration)/win-x64/libveldrid-spirv.dll" PackagePath="runtimes/win-x64/native" /> - <_NativeAssetName Include="$(Configuration)/win-arm64/libveldrid-spirv.dll" PackagePath="runtimes/win-arm64/native" /> - <_NativeAssetName Include="$(Configuration)/linux-x64/libveldrid-spirv.so" PackagePath="runtimes/linux-x64/native" /> - <_NativeAssetName Include="$(Configuration)/linux-arm64/libveldrid-spirv.so" PackagePath="runtimes/linux-arm64/native" /> - <_NativeAssetName Include="$(Configuration)/osx/libveldrid-spirv.dylib" PackagePath="runtimes/osx/native" /> - <_NativeAssetName Include="$(Configuration)/ios/**/*" PackagePath="runtimes/ios/native" /> - <_NativeAssetName Include="$(Configuration)/android-arm64-v8a/libveldrid-spirv.so" PackagePath="build/MonoAndroid10/native/arm64-v8a" /> - <_NativeAssetName Include="$(Configuration)/android-armeabi-v7a/libveldrid-spirv.so" PackagePath="build/MonoAndroid10/native/armeabi-v7a" /> - <_NativeAssetName Include="$(Configuration)/android-x86_64/libveldrid-spirv.so" PackagePath="build/MonoAndroid10/native/x86_64" /> + + all + runtime; build; native; contentfiles; analyzers + + - <_ExistingAssets Include="@(_NativeAssetName)" Condition="Exists('$(NativeAssetsPath)%(Identity)')" /> + + + <_NativeAssetName Include="$(Configuration)/win-x86/libveldrid-spirv.dll" PackagePath="runtimes/win-x86/native"/> + <_NativeAssetName Include="$(Configuration)/win-x64/libveldrid-spirv.dll" PackagePath="runtimes/win-x64/native"/> + <_NativeAssetName Include="$(Configuration)/win-arm64/libveldrid-spirv.dll" PackagePath="runtimes/win-arm64/native"/> + <_NativeAssetName Include="$(Configuration)/linux-x64/libveldrid-spirv.so" PackagePath="runtimes/linux-x64/native"/> + <_NativeAssetName Include="$(Configuration)/linux-arm64/libveldrid-spirv.so" PackagePath="runtimes/linux-arm64/native"/> + <_NativeAssetName Include="$(Configuration)/osx/libveldrid-spirv.dylib" PackagePath="runtimes/osx/native"/> + <_NativeAssetName Include="$(Configuration)/ios/**/*" PackagePath="runtimes/ios/native"/> + <_NativeAssetName Include="$(Configuration)/android-arm64-v8a/libveldrid-spirv.so" PackagePath="build/MonoAndroid10/native/arm64-v8a"/> + <_NativeAssetName Include="$(Configuration)/android-armeabi-v7a/libveldrid-spirv.so" PackagePath="build/MonoAndroid10/native/armeabi-v7a"/> + <_NativeAssetName Include="$(Configuration)/android-x86_64/libveldrid-spirv.so" PackagePath="build/MonoAndroid10/native/x86_64"/> - - - + <_ExistingAssets Include="@(_NativeAssetName)" Condition="Exists('$(NativeAssetsPath)%(Identity)')"/> + + + + - - Veldrid integration for the SPIRV-Cross native library. Contains functionality to cross-compile SPIR-V bytecode into HLSL, GLSL, ESSL, and MSL shaders for use with Veldrid. - 3D Graphics Direct3D DirectX Vulkan OpenGL Metal Core Standard Game - + + Veldrid integration for the SPIRV-Cross native library. Contains functionality to cross-compile SPIR-V bytecode into HLSL, GLSL, ESSL, and MSL shaders for use with Veldrid. + 3D Graphics Direct3D DirectX Vulkan OpenGL Metal Core Standard Game +