4 ms·
My specialism is scientific imaging, so here's a few examples off the top of my head: VTK would be one. It's at the core of dozens of scientific and medical i
by rleigh 8y ago
My specialism is scientific imaging, so here's a few examples off the top of my head:
VTK would be one. It's at the core of dozens of scientific and medical imaging applications, and is being used for new specialised applications all the time. This does sophisticated volume rendering of 3D images. Used by both open source applications and proprietary.
Or OpenSceneGraph, again the core of many applications, also 100% OpenGL.
Or Volocity, a commercial OpenGL volume renderer which originated on the Mac, later ported to Windows, which is all OpenGL under the hood.
There are hundreds of bespoke scientific and medical applications out there doing analysis and rendering of images. OpenGL is the fundamental underpinning of most of them. Scientists have been using OpenGL for decades. (The availability of OpenGL on the Mac was why many were able to switch.) Some vendors might use DirectX when Windows only, but these are a rarity outside commercial acquisition software due to the ubiquity of Linux and Macs in this domain. This is just the domain I know most about; there are undoubtedly many more in different domains.
The workstation class GPUs have some features the gaming ones don't, but it's often equivalent hardware with different drivers, or has some extended capabilities. Double-precision floats, etc. If you don't use these extra features, there's not much practical difference. The actual OpenGL implementations are generally stable for all cases in my experience. The main problem is vendor implementation differences in my experience, e.g. nVidia being laxer than AMD/ATI and allowing broken code to work which others would reject.
For new code, I'd like to say Vulkan, but the support isn't fully there yet. For example, Qt 5.12 has Vulkan support but it's not yet universally available, and it's disabled by default unless you compile a custom build from source. I'm currently just starting to get to grips with it for a new project, but it will be hard to deploy for the next year or so. The drivers are there for Windows and Linux, and with the MoltenVk on MacOS X it might well work well enough (I'm yet to progress far enough test this). Unless you are wanting to write multiple rendering backends, Metal and DirectX don't look too great for portable code. I'm hoping Vulkan will be the OpenGL replacement it's touted to be, but we'll see!