🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Best C# library for implementing graphic editor's functions

Started by
3 comments, last by ferrous 8 years, 4 months ago

Asking here because it's more game-related task than business-project related.

The following features must be supported:
1. Fast drawing of many(more that 10-100k) single points and small lines.
2. Fast drawing of several (up to 10-100) images with high resolution(~1500x1000), which can be
a) partially out of view
b) all images in view at the same time scaled to small size
c) all in view with big size having transparency
3. Graphic control should be able to take only part of Windows Form (because UI is written using DevExpress)

Currently my choices are OpenTK and MonoGame, but I'm not sure they can do all this easily.

Advertisement

I think most modern graphics libraries can do this, monogame should do the job. Failing that you could just go lower level and use something like SlimDX, cutting out a few middle-men in the process?

Microsoft has already done the hard job of adapting their Direct3D 11 API for use in apps that require high performance 2D graphics for which GDI+ is insufficent, and it is fully-featured because it's the rendering technology of WPF. The result is what we call Direct2D and DirectWrite.

If you don't mind C++/CLI interop code, I would recommend that you write a C++/CLI wrapper around the D2D features that you need and use that. That is what I did for my game editor in Windows Forms and it's order of magnitudes faster than GDI.

If you don't want to write C++/CLI you can access Direct2D via SlimDX or SharpDX but I had issues with those libraries.

Have you confirmed that WPF or WinForms are not up to the task?

You could try Win2D.

Granted it's win8+, failing that, I'd go with SlimDX (or whatever the best d2d wrapper is) or WPF. Though WPF is likely to die on you, I was never all that impressed with it's performance.

This topic is closed to new replies.

Advertisement