[Solved] dotNet DLL Support


#1

Is it possible to include a dotNet DLL? In this case only for windows.
Background: I have a DLL which has a dotNet 4.x (C#) API to communicate with an USB Device.
It‘s easy to use in Visual Studio as reference. But I have no idea how to use it with Xenko.
I think I have to build a wrapper (bridge) a plugin for Xenko. But how?
Is it possible to use DLLs?


#2

Not sure what your issue is. Yes you can use it directly.
Just change the target platform of your game project to be on .Net framework only. Then add a reference to that assembly.


#3

Yes it works. Thanks. Just import the dll and use it without change a setting. (xenko default). No inherits or wrapper required in my case. I tested it with a simple c# dll. But I am confident that it will work with the other dll as well.
I’m new with Xenko but that could be the beginning of a long friendship. :smiley: So far I like xenko.


#4

This is the reason why I like Xenko. Instead of a .Net sandbox, it’s entirely .Net and you can essentially use every single .Net assembly with no extra steps :slight_smile:


#5

yes indeed, the fact that a xenko game is basically a normal .NET visual studio solution is very welcoming. i felt at home immediately.


#6

I hope Xenko will grow fast and kicks Unity from his throne.
I tried to implement my DLL in unity and failed. I don’t know how to create a Unity Plugin and am not sure if this will ever work. I’m new in Xenko and have done this in easy steps.

Xenko is jung and there is still a long way to go. I hope for more features like Vehicle Physics etc. But so far I like the IDE / UI and the easy usage.

Xenko should be more famous. Spread the words to grow the community.
I also hope for interests of AAA Studios and Indies.


#7

Thanks for the words of support. The engine really, without exaggeration, has a huge potential, if the community will grow rapidly, the engine will in many respects be able to compete with unity.


#8

And we’re just getting started, this part should get even better soon :slight_smile:

Example of use cases I would like to unlock:

  • create solution from VS & add Xenko from NuGet package manager, then open it with Game Studio
  • use only specific part of Xenko in VS project
  • create nuget packages from your code/assets and publish them on nuget so that anybody can use them easily

#9

I really like the first two points :wink:

Once there are done for the runtime, I’ll try to do the same for some of the non-UI editor projects (e.g. Core.Design). The idea being that people might want to create tools to manipulate a project without relying on the full editor (Game Studio).

There are three steps for that:

  1. move some assemblies to target .Net Standard (some are already fully compatible)
  2. move Windows specific (and in general UI-dependent types) into separate projects/assemblies and extract some interfaces (in a platform-agnostic way).
  3. ??? profit

I think it could unlock some scenarios where you want to create a tool that embed a game and use the same type of communication from the main application to the game that we use in the editor (so mostly quantum library and game propagator).