-
Notifications
You must be signed in to change notification settings - Fork 1
Folder Structure
Marcus Hudritsch edited this page Jul 1, 2024
·
6 revisions
After cloning the GIT repository you will have the following folders in the root folder. Only the main folders and files are shown here:
- .gitignore: Important hidden file with all file and folder patterns that GIT should ignore.
- .clangformat: Important hidden configuration file for the clangformat formatting system. See also Coding Style.
-
apps:
- app_demo: SLProject demo app for GLFW desktop, iOS and Android OS.
- app_imgui: Demo app from the ImGui UI framework. This original ImGui demo app could be used as a simple starting point for any platform-independent GUI app. See the YouTube video from the Cerno why and how you can do that.
- app_node: GLFW-app that demonstrates all node transform possibilities.
- app_webgl: Demo application for the new WebGPU graphics API from the World Wide Web Consortium (W3C). See the extensive documentation within the source code.
- exercises: Folder with minimal OpenGL and OpenCV exercises.
-
sources: Source files common to all apps.
-
platforms:
- android: Top-level code for the Android platform.
- emscripten: Top-level code for the Emscripten web platform.
- glfw: Top-level code for the glfw desktop platform.
- iOS: Top-level code for the iOS platform.
-
platforms:
- cmake: Various cmake scripts are included in the CMakeLists files.
-
data: Folder with assets loaded at runtime
- calibrations: Folder with video calibration and tracking marker files
- images: Folder with texture and font images
- models: Folder with 3DS model files
- opencv: Folder for OpenCV data
- shaders: Folder with the static GLSL shader files that are not generated.
- videos: Folder with all videos from the video examples
-
docs: Folder with all files needed for the Doxygen-generated documentation.
- See live examples in your web browser.
-
externals:
- eigen: A header-only linear algebra library.
- lib-optix: Nvidia Optix library for accelerated ray tracing on Windows.
- libiigl: An easy to use C++ geometry processing library used in SLMesh.
- prebuild_scripts: Script for building the prebuilt libraries.
- prebuilt: Downloaded and prebuilt libraries such as OpenCV.
- utils: External libraries used in the utils library module.
-
modules: The library modules, each with its own CMakeLists.txt file:
- math: A math helper library
- sens: A sensor library
- utils: A utility library
- wai: The Where Am I (SLAM) library
- cv: A wrapper around OpenCV functions
-
sl: The SLProject scenegraph library:
-
source: Folder with all SLProject header and source files.
- gl: All classes that use OpenGL
- input: All input related classes
- mesh: All SLMesh inherited classes
- node: All SLNode inherited classes
- optix: All classes for real-time ray tracing with Optix
- ray: All ray tracing classes
-
source: Folder with all SLProject header and source files.
- scripts: Some additional shell scripts.
- CMakeLists.txt: Top-level CMake project definition file.
- readme.md: Top-level readme in markup language.