目录
前言
前一篇文章有提到利用着色器,实现GeoNode颜色的改变,这篇文章主要是根据osgEarth的一个例子改进,实现鼠标在矢量要素上的一个hover拣选效果。
效果如下:
一、关键代码
shader:
const char* highlight_shader = R"(
#pragma vp_function check_for_highlight, vertex_clip
uniform uint objectid_to_highlight;
uint oe_index_objectid; // Stage global containing object id
flat out int selected;
void check_for_highlight(inout vec4 vertex)
{
selected = (objectid_to_highlight > 1u && objectid_to_highlight == oe_index_objec