I have a .dds file and I want a .png file. Although I already found out about the DevIL.NET library, the API design there of one static class does not parallelize, so I am h
From the top of my head (haven't used XNA for a while):
It seems to me that you are using the wrong tool for the job, although I couldn't tell another one except DevIL, which you already dismissed.
If you have a command line app that needs to create an XNA graphics device, the code in this answer should be of some assistance.
In a nutshell, you need some of the classes from the WinForms sample to avoid having to mess around creating a graphics device services and so on (specifically the classes ServiceContainer
and GraphicsDeviceService
).
Then you can do this:
Form form = new Form(); // Dummy form for creating a graphics device
GraphicsDeviceService gds = GraphicsDeviceService.AddRef(form.Handle,
form.ClientSize.Width, form.ClientSize.Height);
ServiceContainer services = new ServiceContainer();
services.AddService<IGraphicsDeviceService>(gds);
content = new ContentManager(services, "Content");
Tada - now you have a working ContentManager
that you can use to load stuff. I believe you should be able to get the actual GraphicsDevice
from the GraphicsDeviceService
, too.
The form you create is never displayed. Remember to reference System.Windows.Forms.dll
in your project.
Disclaimer: This was written for XNA 3.1. I haven't tested it in 4.0, but I suspect it will work with little or no modification.