FindosgShadow
Finds the osgShadow NodeKit from the OpenSceneGraph toolkit.
Note
In most cases, it's recommended to use the FindOpenSceneGraph module instead and list osgShadow as a component. This will automatically handle dependencies such as the OpenThreads and core osg libraries:
find_package(OpenSceneGraph COMPONENTS osgShadow)
This module is used internally by FindOpenSceneGraph to find the osgShadow NodeKit. It is not intended to be included directly during typical use of the find_package() command. However, it is available as a standalone module for advanced use cases where finer control over detection is needed. For example, to find the osgShadow explicitly or bypass automatic component detection:
find_package(osgShadow)
OpenSceneGraph and osgShadow headers are intended to be included in C++ project source code as:
example.cxx#include <osg/PositionAttitudeTransform> #include <osgShadow/ShadowTexture> // ...
When working with the OpenSceneGraph toolkit, other libraries such as OpenGL may also be required.
Result Variables
This module defines the following variables:
-
osgShadow_FOUND -
Added in version 3.3.
Boolean indicating whether the osgShadow NodeKit of the OpenSceneGraph toolkit was found.
-
OSGSHADOW_LIBRARIES -
The libraries needed to link against to use osgShadow.
-
OSGSHADOW_LIBRARY -
A result variable that is set to the same value as the
OSGSHADOW_LIBRARIESvariable.
Cache Variables
The following cache variables may also be set:
-
OSGSHADOW_INCLUDE_DIR -
The include directory containing headers needed to use osgShadow.
-
OSGSHADOW_LIBRARY_DEBUG -
The path to the osgShadow debug library.
Hints
This module accepts the following variables:
-
OSGDIR -
Environment variable that can be set to help locate the OpenSceneGraph toolkit, including its osgShadow NodeKit, when installed in a custom location. It should point to the OpenSceneGraph installation prefix used when it was configured, built, and installed:
./configure --prefix=$OSGDIR.
Deprecated Variables
The following variables are provided for backward compatibility:
-
OSGSHADOW_FOUND -
Deprecated since version 4.2: Use
osgShadow_FOUND, which has the same value.Boolean indicating whether the osgShadow NodeKit of the OpenSceneGraph toolkit was found.
Examples
Finding osgShadow explicitly with this module and creating an interface imported target that encapsulates its usage requirements for linking it to a project target:
find_package(osgShadow)
if(osgShadow_FOUND AND NOT TARGET osgShadow::osgShadow)
add_library(osgShadow::osgShadow INTERFACE IMPORTED)
set_target_properties(
osgShadow::osgShadow
PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${OSGSHADOW_INCLUDE_DIR}"
INTERFACE_LINK_LIBRARIES "${OSGSHADOW_LIBRARIES}"
)
endif()
target_link_libraries(example PRIVATE osgShadow::osgShadow)
See Also
- The
FindOpenSceneGraphmodule to find OpenSceneGraph toolkit.
© 2000–2026 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/module/FindosgShadow.html