Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NuGet package has only windows runtimes #295

Open
zarnayp opened this issue Jun 22, 2024 · 5 comments
Open

NuGet package has only windows runtimes #295

zarnayp opened this issue Jun 22, 2024 · 5 comments

Comments

@zarnayp
Copy link

zarnayp commented Jun 22, 2024

I have tried to run dotnet app in linux Ubuntu 24.04 using NuGet package DiligentGraphics.DiligentEngine.Core. It failes to load GraphicsEngineVk. When looking into NuGet package I see only runtimes for windows. Is there any plan to add Linux runtimes?

@TheMostDiligent
Copy link
Contributor

At the moment we do not have plans to add Linux runtimes as this requires significant effort.

@Arktische
Copy link

Arktische commented Jul 1, 2024

@zarnayp
Maybe we can generate .NET bindings automatically by using Mono project CppSharp . Many other .NET native graphics API binding project such as Silk.NET etc. are using it.

@TheMostDiligent
Copy link
Contributor

@MikhailGorobets

@MikhailGorobets
Copy link
Collaborator

MikhailGorobets commented Jul 1, 2024

@Arktische
SharpGenTools more efficient method calls on virtual methods of native instances (calli instruction vs. Marshal.GetDelegateForFunctionPointer)
Not everything uses CppSharp. For example, Veldrid uses Vortice.Windows, which internally relies on SharpGenTools.
Moreover, I think we have a simpler C# interface. We've hidden raw pointers
You can compare with Slik.NET:
https://github.com/dotnet/Silk.NET/blob/main/examples/CSharp/Direct3D11%20Tutorials/Tutorial%201.3%20-%20Textures/Program.cs
https://github.com/DiligentGraphics/DiligentSamples/blob/master/Tutorials/Tutorial03_Texturing-DotNet/src/Tutorial03_Texturing.cs

@zarnayp
Copy link
Author

zarnayp commented Jul 1, 2024

First I will try to generate NuGet with Diligent-SharpGen. I have already tried with modified project file and mapping file as suggested here DiligentGraphics/DiligentCore#424, but looks like I need to modify python script also.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants