[osg-users] questions about developing drivers for osg/osgEarth

speterson at idealaero.com speterson at idealaero.com
Mon Sep 23 13:03:11 PDT 2019


Got shaders to work on geometry’s now just took me getting totally frustrated and taking a walk it seems ☺

osgEarth::ModelLayerOptions layerOptions("test polygon", geomOptions);
osgEarth::ModelLayer* test = new osgEarth::ModelLayer(layerOptions);
osg::StateSet* tss = test->getOrCreateStateSet();
VirtualProgram* vp = VirtualProgram::getOrCreate(tss);
vp->setName("imageLayer");
myshaders shaders;
shaders.load(vp, shaders.myimagecc_Vertex);
shaders.load(vp, shaders.myimagecc_Fragment);
_map->addLayer(test);

Was the code to get it working had to apply it to the ModelLayer not the geometry and add some hooks into my shaders to keep the transparent parts the same.


Now to figure out how to get the data to change for the shaders to act on.


From: osg-users [mailto:osg-users-bounces at lists.openscenegraph.org] On Behalf Of Chris Hanson
Sent: Thursday, September 19, 2019 10:29 AM
To: OpenSceneGraph Users <osg-users at lists.openscenegraph.org>
Subject: Re: [osg-users] questions about developing drivers for osg/osgEarth

Ok. That helps a lot. Thanks.

So, I theorize that you are loading a 2d vector field as a data layer, that represents the 2D wind velocity vector at every data grid point covering the area, and then you use some kind of shader to display that as a colorfield and displays the moving flow lines? And then you update the 2d vector map periodically to represent the current data?

If that's the case, it sounds like you're just needing to load a conventional two-channel 2D image and do all the display work in shaders. That doesn't sound like how you're doing it though?


There's nothing at all that is file-specific about osgEarth, its drivers or its data sources. Many of the drivers talk to network-based data sources without accessing local files, so those shouldn't be an issue.

Glenn can probably comment better on how to best make a driver that updates itself periodically or on cue, but you ought to be able to just poll every 30 seconds or so and see if a data is available and refresh it somehow.


The information contained in this email and any attachments is intended only for the personal and confidential use of the intended recipients. This email message may be or may contain privileged and confidential communications. If the reader of this e-mail is not an intended recipient, you are hereby notified that you have received this communication in error and that any retention, review, use, dissemination, distribution or copying of this communication or the information contained herein is strictly prohibited. If you have received this communication in error, please notify the sender immediately and delete the original message and all attachments from your system. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused, directly or indirectly, by any virus transmitted in this email. This communication may also contain data subject to U.S. export laws. If so, that data subject to the International Traffic in Arms Regulation (ITAR) cannot be disseminated, distributed or copied to foreign nationals, residing in the U.S. or abroad, absent the express prior approval of the U.S. Department of State. If you have received this communication in error, please notify the sender by reply e-mail and destroy the e-mail message and any physical copies made of the communication. Thank you.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20190923/92262d54/attachment.html>


More information about the osg-users mailing list