- Home /
Can I use the UnityEngine namespace in a personal Application?
I just want to know if this is legal?
The reason I'm asking is. I am making a virtual Shop using unity. I will be using Unity to make the client but I am make a windows form server using .net sockets. So There will be a database containing all the meshes and materials of the various items in the shop. So I want to know if I can use the UnityEngine
namespace in my server application to use the mesh
and material
classes for serialization purposes?
I'm also open to suggestions on how to do this in other ways. But I do need a windows form server, I can't use Unity Networking.
Answer by Bunny83 · Jul 13, 2016 at 09:44 PM
That's not possible as well as not allowed. First of all the UnityEngine.dll is just a .NET wrapper for the Unity engine core. The engine core is written mainly in C++ and is part of the Unity player. The standalone player is mainly the "exe" that is exported when you build your Unity application.
All "assets" that Unity provides may only be used inside a Unity application. Most things are explained in the terms of service. You could theoretically build a seperate Unity application that is used on the server, but it's possible that you require an additional license for that due to streaming restrictions.
Apart from that i doubt that any UnityEngine tools would help you much when creating mesh and material data since those can't really be serialized at runtime. For this you would need the Unity Editor. The Unity editor has seperate license conditions if you plan to use it as a background service on your server.
NOTE: This is just a general advice based on common knowledge and experience. If you want to make sure you're not breaking the license conditions, you should contact the Unity support and ask if the actions you plan are allowed or if they require an extra license.
If you plan to contact the support, make sure you already know what you want to do / what you want to use and in which way so you can get a clear answer. Avoid asking too general or too vague questions (like this one).
Just to make that clear again: UnityAnswers is a mainly community run resource of information and may not be used as source to answer legal questions.
Yea I though as much, I was having serialization problems when using the dll but I won't use it. I made a separate class called mesh data that holds the vertices, norms, uv1, uv2 and triangles and I managed to serialize that and send it via the connection. Just using the values to recreate the meshes on the client side. Was just curious if it was possible to use the unity engine namespace in a personal application, but I kind of knew it wasn't my best idea. Thanks a million.
Answer by NickWu · Jul 13, 2016 at 09:26 PM
If you are using Visual Studio, you can go to solution explorer right click reference and choose add reference.
From there browse and find UnityEngine.dll
And then you should be able to use UnityEngine namespace.
Your answer
Follow this Question
Related Questions
Updating UV in imported mesh without having to re-material 0 Answers
Sending Level Data over Network 1 Answer
How does assigning materials to MeshRenderer.sharedMaterials work? 1 Answer
[Solved] Applying multiple materials to a generated mesh object 1 Answer
How to modify enemy players meshs with Photon Unity Networking? 1 Answer