Example #1
0
	void Water::_OnOptimizeCullResult(Event * _sender)
	{
		VisibleCullResult * result = (VisibleCullResult *)_sender->GetParam(0);

		SceneNodeList & list = result->nodes;

		SceneNodeList::Iterator whr = list.Begin();
		SceneNodeList::Iterator end = list.End();

		while (whr != end)
		{
			SceneNode * node = *whr;

			Vec3 pos = node->GetWorldAabb().GetCenter();

			if (!HasWater(pos.x, pos.z))
				node->_setVisibleMask(false);

			++whr;
		}
	}