Quantcast
Channel: Questions in topic: "dll"
Viewing all articles
Browse latest Browse all 706

Embedded resources for the managed plugin pictures

$
0
0
Hi, I am developing a Unity managed plugin where my dll consists of classes and functions. As I want to embed png images to my dll- embedded resources- I can not read the images from the released dll at the Unity environment. Here are my checklist for the embedded resources: -images are dragged and dropped to the solution, I can see them at the mono with my classes. -each of them has a unique id -each of them are signed with the EmbeddedResource build action Here is my code from dll function that is called at the Unity project's OnGui: System.Reflection.Assembly myAssembly = System.Reflection.Assembly.GetExecutingAssembly(); System.IO.Stream myStream = myAssembly.GetManifestResourceStream("QBoard"); byte[] img = ReadFully (myStream); questionTexture.LoadImage(img) myAssembly = Assembly.GetExecutingAssembly(); GUI.Box (new Rect (dWidth/2-50, dHeight/2-50,200,50),new GUIContent(my2DTexture)); ReadFully function: public static byte[] ReadFully(Stream input) { byte[] buffer = new byte[16*1024]; using (MemoryStream ms = new MemoryStream()) { int read; while ((read = input.Read(buffer, 0, buffer.Length)) > 0) { ms.Write(buffer, 0, read); } return ms.ToArray(); } } Since the problem is from dll, the errors at the Unity is: NullReferenceException: Object reference not set to an instance of an object Finally, as a small test, if I call the image from the embedded resources and print its size it works however the problem is at loading image to texture. try { System.Reflection.Assembly myAssembly = System.Reflection.Assembly.GetExecutingAssembly(); System.IO.Stream myStream = myAssembly.GetManifestResourceStream("QBoard"); img = ReadFully (myStream); print(img.Length); } Will be thankful for the helps or any ideas.

Viewing all articles
Browse latest Browse all 706

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>