We don't have a way to draw custom OpenGL. You might be able to achieve something that can suffice for the time being. Here are some ideas:
- Display Graphics. Graphics will be for vector shapes only, so you could define polygons as a Graphic object (inside a GraphicsOverlay) and display various symbol fills with SimpleFillSymbol, PictureFillSymbol, or HatchFillSymbolLayer.
- Another option could be to create a Raster file with various cell values and then apply one of our RasterRenderers to the RasterLayer - RasterRenderer Class | ArcGIS for Developers
- Another option would be to attempt to create and style your map in ArcGIS Online or ArcGIS Pro first. You can save as a Web Map (and consume with the Map c'tor that takes a URL) or as a MobileMapPackage. Both of these authoring tools (Pro and Online) have advanced styling options and have more things you can do than what we have exposed as developer APIs. However, our API will render what is defined. For example, you can define a HeatMapRenderer or display color ramps in ArcGIS Online and view them in Runtime, but we don't have ways to create either programmatically in Runtime at the moment.
- Finally, you could use our MapView::locationToScreen (https://developers.arcgis.com/qt/latest/cpp/api-reference/esri-arcgisruntime-mapview.html#locationTo... ) API to convert the real world coordinates of where you want your smoke layer to draw into screen coordinates. Then, you can display your custom OpenGL layer within those screen coordinates. I think this might be your best option.
Let us know if any of these seem like options.