Need to get access to ComputeShaders

I need to be able to use compute shaders but Monogame currently does not offer access to them.

I would prefer to use an OpenGL solution to keep my game cross platform, and Monogame looks like it uses OpenTK anyway. (is that right?)

What is the most correct way to reference OpenTK from my projects? Is there a way I can get access through the monogame binaries or do I need to install OpenTK libraries?

Compute shaders support is not built in into MonoGame but they can still be used through SharpDX.

No idea about OpenGL though, but I’m sure they can be used there too. No idea on the OpenTK question either.

While not directly related to the original posters question, he has brought up a thing that is bugging me.

Why are people still using OpenGL?

It’s deader than dodi.

Apple have already replaced it with Metal and will probably drop all OpenGL apps soon the way they have already dropped x32 apps.

All the devices I work on are dropping OpenGL and replacing it with Vulkan

I am just trying to get my head around why OpenGL code is still being written and the OP obviously considers OpenGL a cross platform solution so this seems a good place to ask the question.

There is still older hardware around which does not support vulcan. I can tell you, that there are even devies around which would be considered “ancient”.

afaik, the kronos group is not intending to drop OpenGL. Maybe apple does, because apple is giving a f. … but tbh I dropped apple anyway years ago and stopped delivering to it for a couple reasons, so I can’t tell about them - everyone else will still keep opengl at least as a legacy API (and be it just a layer on top of vulcan) - otherwise millions of older apps would stop working and that’s something noone wants

While I agree with you in principle, I am coming to the conclusion that the powers that be will drop support for OpenGL completely very soon.

Khronos are pushing Vulkan
Apple don’t give a &&%£%^ and will happily drop it overnight without telling anyone first.
Microsoft will probably not support it, but not block people from using it.
Linux … don’t know , don’t care
Android … probably will drop it in favour of Vulkan and again I doubt you will have backward compatibility as that will increase OS image size

It comes down to a (probably off topic) question of how many users we believe will be able to run OpenGL apps in six months time

I am not preaching, I am asking what people think.

Vulkan is more a GPU API than a GFX Api … there is no reason why there should be no OpenGL Interface available which just sit’s on top Vulkan (as XNA or Monogame juts sits on top of DX). So there isn’t a lot what the manufacturers can (or have to) do.

MS don’t care anyway, because it’s up to the driver developers of GPUs what interface they support.

So personally I don’t think OpenGL (as how to access GFX) will not die very soon. That said - I still would love to have Geometry Shaders available, as this becomes a more and more common feature in modern games tbh

So, uh… ComputeShaders in an existing Monogame project targeting Desktops (Windows, Mac, Linux).
What is the most appropriate solution currently?