├── .clang-format ├── .gitattributes ├── .github └── FUNDING.yml ├── .gitignore ├── .gitmodules ├── .travis.yml ├── CMake ├── FindOGRE.cmake ├── FindOIS.cmake ├── FindPkgMacros.cmake ├── FindRapidjson.cmake ├── FindRemotery.cmake ├── FindSDL2.cmake ├── MacroLogFeature.cmake ├── OgreAddTargets.cmake ├── OgreConfigTargets.cmake ├── OgreFindFrameworks.cmake ├── OgreGetVersion.cmake ├── Ogre_glTF_ConfigTargets.cmake ├── PrecompiledHeader.cmake ├── PreprocessorUtils.cmake ├── VisualStudioUserFile.vcproj.user.in └── VisualStudioUserFile.vcxproj.user.in ├── CMakeLists.txt ├── CODE_OF_CONDUCT.md ├── Doxygen └── Doxyfile ├── LICENSE ├── Media ├── BrainStem.glb ├── CesiumMan.glb ├── Corset.glb ├── Monster.glb ├── MyCube.glb ├── RiggedFigure.glb ├── RiggedSimple.glb ├── blob.glb ├── damagedHelmet │ ├── Assets │ │ └── Models │ │ │ └── PBR │ │ │ └── damagedHelmet │ │ │ └── textures │ │ │ ├── Default_AO.jpg │ │ │ ├── Default_MetalSmooth_converted_metalRoughness.jpg │ │ │ ├── Default_albedo.jpg │ │ │ ├── Default_emissive.jpg │ │ │ └── Default_normal.jpg │ ├── LICENSE.txt │ ├── damagedHelmet.bin │ └── damagedHelmet.gltf ├── gizmo.blend ├── gizmo.glb ├── gltfFiles.zip ├── marker.glb └── spring.glb ├── README.md ├── Samples ├── CMakeLists.txt ├── Common │ ├── CMakeLists.txt │ ├── SamplesCommon.cpp │ └── SamplesCommon.h ├── LoadMesh │ ├── CMakeLists.txt │ └── main.cpp └── SkinnedMesh │ ├── CMakeLists.txt │ └── main.cpp ├── _config.yml ├── appveyor.yml ├── demo.gif ├── demo2.gif ├── docs ├── _config.yml ├── _runme.sh ├── demo.gif ├── demo2.gif ├── doxygen │ ├── _ogre__gl_t_f_8cpp_source.html │ ├── _ogre__gl_t_f_8hpp_source.html │ ├── _ogre__gl_t_f___d_l_l_8hpp_source.html │ ├── _ogre__gl_t_f___ogre_plugin_8cpp_source.html │ ├── _ogre__gl_t_f___ogre_plugin_8hpp_source.html │ ├── _ogre__gl_t_f___ogre_resource_8cpp_source.html │ ├── _ogre__gl_t_f___ogre_resource_8hpp_source.html │ ├── _ogre__gl_t_f__common_8cpp_source.html │ ├── _ogre__gl_t_f__common_8hpp_source.html │ ├── _ogre__gl_t_f__internal__utils_8hpp_source.html │ ├── _ogre__gl_t_f__material_loader_8cpp_source.html │ ├── _ogre__gl_t_f__material_loader_8hpp_source.html │ ├── _ogre__gl_t_f__model_converter_8cpp_source.html │ ├── _ogre__gl_t_f__model_converter_8hpp_source.html │ ├── _ogre__gl_t_f__skeleton_importer_8cpp_source.html │ ├── _ogre__gl_t_f__skeleton_importer_8hpp_source.html │ ├── _ogre__gl_t_f__texture_importer_8cpp_source.html │ ├── _ogre__gl_t_f__texture_importer_8hpp_source.html │ ├── annotated.html │ ├── annotated_dup.js │ ├── bc_s.png │ ├── bdwn.png │ ├── class_ogre__gl_t_f_1_1_glb_file-members.html │ ├── class_ogre__gl_t_f_1_1_glb_file.html │ ├── class_ogre__gl_t_f_1_1_glb_file.js │ ├── class_ogre__gl_t_f_1_1_glb_file.png │ ├── class_ogre__gl_t_f_1_1_glb_file_manager-members.html │ ├── class_ogre__gl_t_f_1_1_glb_file_manager.html │ ├── class_ogre__gl_t_f_1_1_glb_file_manager.js │ ├── class_ogre__gl_t_f_1_1_glb_file_manager.png │ ├── class_ogre__gl_t_f_1_1geometry_buffer-members.html │ ├── class_ogre__gl_t_f_1_1geometry_buffer.html │ ├── class_ogre__gl_t_f_1_1geometry_buffer.js │ ├── class_ogre__gl_t_f_1_1geometry_buffer.png │ ├── class_ogre__gl_t_f_1_1geometry_buffer__base-members.html │ ├── class_ogre__gl_t_f_1_1geometry_buffer__base.html │ ├── class_ogre__gl_t_f_1_1geometry_buffer__base.js │ ├── class_ogre__gl_t_f_1_1geometry_buffer__base.png │ ├── class_ogre__gl_t_f_1_1gl_t_f_loader-members.html │ ├── class_ogre__gl_t_f_1_1gl_t_f_loader.html │ ├── class_ogre__gl_t_f_1_1gl_t_f_loader.js │ ├── class_ogre__gl_t_f_1_1gl_t_f_loader.png │ ├── class_ogre__gl_t_f_1_1gl_t_f_loader_plugin-members.html │ ├── class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html │ ├── class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.js │ ├── class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.png │ ├── class_ogre__gl_t_f_1_1loader_adapter-members.html │ ├── class_ogre__gl_t_f_1_1loader_adapter.html │ ├── class_ogre__gl_t_f_1_1loader_adapter.js │ ├── class_ogre__gl_t_f_1_1material_loader-members.html │ ├── class_ogre__gl_t_f_1_1material_loader.html │ ├── class_ogre__gl_t_f_1_1material_loader.js │ ├── class_ogre__gl_t_f_1_1model_converter-members.html │ ├── class_ogre__gl_t_f_1_1model_converter.html │ ├── class_ogre__gl_t_f_1_1model_converter.js │ ├── class_ogre__gl_t_f_1_1skeleton_importer-members.html │ ├── class_ogre__gl_t_f_1_1skeleton_importer.html │ ├── class_ogre__gl_t_f_1_1skeleton_importer.js │ ├── class_ogre__gl_t_f_1_1texture_importer-members.html │ ├── class_ogre__gl_t_f_1_1texture_importer.html │ ├── class_ogre__gl_t_f_1_1texture_importer.js │ ├── classes.html │ ├── closed.png │ ├── dir_68267d1309a1af8e8297ef4c3efbcdba.html │ ├── dir_68267d1309a1af8e8297ef4c3efbcdba.js │ ├── dir_a91c8a98b5018f6a00270b1d102aba85.html │ ├── dir_a91c8a98b5018f6a00270b1d102aba85.js │ ├── dir_d44c64559bbebec7f509842c48db8b23.html │ ├── dir_d44c64559bbebec7f509842c48db8b23.js │ ├── doc.png │ ├── doxygen.css │ ├── doxygen.png │ ├── dynsections.js │ ├── files.html │ ├── files_dup.js │ ├── folderclosed.png │ ├── folderopen.png │ ├── functions.html │ ├── functions_enum.html │ ├── functions_func.html │ ├── functions_vars.html │ ├── hierarchy.html │ ├── hierarchy.js │ ├── index.html │ ├── jquery.js │ ├── menu.js │ ├── menudata.js │ ├── nav_f.png │ ├── nav_g.png │ ├── nav_h.png │ ├── navtree.css │ ├── navtree.js │ ├── navtreedata.js │ ├── navtreeindex0.js │ ├── open.png │ ├── resize.js │ ├── search │ │ ├── all_0.html │ │ ├── all_0.js │ │ ├── all_1.html │ │ ├── all_1.js │ │ ├── all_10.html │ │ ├── all_10.js │ │ ├── all_11.html │ │ ├── all_11.js │ │ ├── all_2.html │ │ ├── all_2.js │ │ ├── all_3.html │ │ ├── all_3.js │ │ ├── all_4.html │ │ ├── all_4.js │ │ ├── all_5.html │ │ ├── all_5.js │ │ ├── all_6.html │ │ ├── all_6.js │ │ ├── all_7.html │ │ ├── all_7.js │ │ ├── all_8.html │ │ ├── all_8.js │ │ ├── all_9.html │ │ ├── all_9.js │ │ ├── all_a.html │ │ ├── all_a.js │ │ ├── all_b.html │ │ ├── all_b.js │ │ ├── all_c.html │ │ ├── all_c.js │ │ ├── all_d.html │ │ ├── all_d.js │ │ ├── all_e.html │ │ ├── all_e.js │ │ ├── all_f.html │ │ ├── all_f.js │ │ ├── classes_0.html │ │ ├── classes_0.js │ │ ├── classes_1.html │ │ ├── classes_1.js │ │ ├── classes_2.html │ │ ├── classes_2.js │ │ ├── classes_3.html │ │ ├── classes_3.js │ │ ├── classes_4.html │ │ ├── classes_4.js │ │ ├── classes_5.html │ │ ├── classes_5.js │ │ ├── classes_6.html │ │ ├── classes_6.js │ │ ├── close.png │ │ ├── enums_0.html │ │ ├── enums_0.js │ │ ├── functions_0.html │ │ ├── functions_0.js │ │ ├── functions_1.html │ │ ├── functions_1.js │ │ ├── functions_2.html │ │ ├── functions_2.js │ │ ├── functions_3.html │ │ ├── functions_3.js │ │ ├── functions_4.html │ │ ├── functions_4.js │ │ ├── functions_5.html │ │ ├── functions_5.js │ │ ├── functions_6.html │ │ ├── functions_6.js │ │ ├── functions_7.html │ │ ├── functions_7.js │ │ ├── functions_8.html │ │ ├── functions_8.js │ │ ├── functions_9.html │ │ ├── functions_9.js │ │ ├── functions_a.html │ │ ├── functions_a.js │ │ ├── functions_b.html │ │ ├── functions_b.js │ │ ├── functions_c.html │ │ ├── functions_c.js │ │ ├── functions_d.html │ │ ├── functions_d.js │ │ ├── functions_e.html │ │ ├── functions_e.js │ │ ├── mag_sel.png │ │ ├── nomatches.html │ │ ├── search.css │ │ ├── search.js │ │ ├── search_l.png │ │ ├── search_m.png │ │ ├── search_r.png │ │ ├── searchdata.js │ │ ├── variables_0.html │ │ ├── variables_0.js │ │ ├── variables_1.html │ │ ├── variables_1.js │ │ ├── variables_2.html │ │ ├── variables_2.js │ │ ├── variables_3.html │ │ ├── variables_3.js │ │ ├── variables_4.html │ │ ├── variables_4.js │ │ ├── variables_5.html │ │ ├── variables_5.js │ │ ├── variables_6.html │ │ ├── variables_6.js │ │ ├── variables_7.html │ │ └── variables_7.js │ ├── splitbar.png │ ├── struct_ogre__gl_t_f_1_1gl_t_f_loader_interface-members.html │ ├── struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html │ ├── struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.js │ ├── struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.png │ ├── struct_ogre__gl_t_f_1_1gltf_plugin_accessor-members.html │ ├── struct_ogre__gl_t_f_1_1gltf_plugin_accessor.html │ ├── struct_ogre__gl_t_f_1_1gltf_plugin_accessor.js │ ├── struct_ogre__gl_t_f_1_1gltf_plugin_accessor.png │ ├── struct_ogre__gl_t_f_1_1vertex_buffer_part-members.html │ ├── struct_ogre__gl_t_f_1_1vertex_buffer_part.html │ ├── struct_ogre__gl_t_f_1_1vertex_buffer_part.js │ ├── structgl_t_f_loader_1_1gl_t_f_loader_impl-members.html │ ├── structgl_t_f_loader_1_1gl_t_f_loader_impl.html │ ├── structgl_t_f_loader_1_1gl_t_f_loader_impl.js │ ├── structloader_adapter_1_1impl-members.html │ ├── structloader_adapter_1_1impl.html │ ├── structloader_adapter_1_1impl.js │ ├── sync_off.png │ ├── sync_on.png │ ├── tab_a.png │ ├── tab_b.png │ ├── tab_h.png │ ├── tab_s.png │ └── tabs.css ├── guide.md ├── index.md └── test.md ├── format.sh ├── include ├── Ogre_glTF.hpp ├── Ogre_glTF_DLL.hpp ├── Ogre_glTF_OgrePlugin.hpp └── Ogre_glTF_OgreResource.hpp └── src ├── Ogre_glTF.cpp ├── Ogre_glTF_OgrePlugin.cpp ├── Ogre_glTF_OgreResource.cpp ├── Ogre_glTF_common.cpp ├── Ogre_glTF_materialLoader.cpp ├── Ogre_glTF_modelConverter.cpp ├── Ogre_glTF_skeletonImporter.cpp ├── Ogre_glTF_textureImporter.cpp └── private_headers ├── Ogre_glTF_common.hpp ├── Ogre_glTF_internal_utils.hpp ├── Ogre_glTF_materialLoader.hpp ├── Ogre_glTF_modelConverter.hpp ├── Ogre_glTF_skeletonImporter.hpp └── Ogre_glTF_textureImporter.hpp /.clang-format: -------------------------------------------------------------------------------- 1 | BasedOnStyle: WebKit 2 | IndentWidth: 4 3 | AlignAfterOpenBracket: true 4 | AlignConsecutiveAssignments: true 5 | AlignEscapedNewlines: Right 6 | AlignTrailingComments: true 7 | AllowAllParametersOfDeclarationOnNextLine: true 8 | AllowShortBlocksOnASingleLine: true 9 | AllowShortCaseLabelsOnASingleLine: true 10 | AllowShortFunctionsOnASingleLine: All 11 | AllowShortIfStatementsOnASingleLine: true 12 | AllowShortLoopsOnASingleLine: true 13 | AlwaysBreakBeforeMultilineStrings: false 14 | AlwaysBreakTemplateDeclarations: true 15 | BinPackArguments: false 16 | BinPackParameters: false 17 | BreakBeforeBraces: Custom 18 | BraceWrapping: 19 | AfterClass: true 20 | AfterStruct: true 21 | AfterControlStatement: true 22 | AfterEnum: false 23 | AfterFunction: true 24 | AfterNamespace: true 25 | AfterUnion: true 26 | BeforeCatch: true 27 | BeforeElse: true 28 | IndentBraces: false 29 | SplitEmptyFunction: false 30 | SplitEmptyRecord: false 31 | SplitEmptyNamespace: false 32 | BreakConstructorInitializers: AfterColon 33 | ColumnLimit: 160 34 | ConstructorInitializerAllOnOneLineOrOnePerLine: false 35 | ConstructorInitializerIndentWidth: 1 36 | IndentCaseLabels: true 37 | Language: Cpp 38 | MaxEmptyLinesToKeep: 1 39 | NamespaceIndentation: All 40 | PointerAlignment: Left 41 | ReflowComments: false 42 | SortUsingDeclarations: true 43 | SortIncludes: false 44 | SpaceAfterTemplateKeyword: true 45 | SpaceBeforeAssignmentOperators: true 46 | SpaceBeforeParens: Never 47 | SpaceInEmptyParentheses: false 48 | SpacesBeforeTrailingComments: 1 49 | SpacesInAngles: false 50 | SpacesInCStyleCastParentheses: false 51 | SpacesInContainerLiterals: true 52 | SpacesInParentheses: false 53 | SpacesInSquareBrackets: false 54 | TabWidth: 4 55 | UseTab: Always 56 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | CMake/* linguist-vendored 2 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ybalrid] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: https://www.paypal.me/Ybalrid 13 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | #For some reason Visual Studio started creating theses files everywhere 2 | *.TMP 3 | 4 | .idea/ 5 | 6 | build/ 7 | Doxygen/ 8 | 9 | # Prerequisites 10 | *.d 11 | 12 | # Compiled Object files 13 | *.slo 14 | *.lo 15 | *.o 16 | *.obj 17 | 18 | # Precompiled Headers 19 | *.gch 20 | *.pch 21 | 22 | # Compiled Dynamic libraries 23 | *.so 24 | *.dylib 25 | *.dll 26 | 27 | # Fortran module files 28 | *.mod 29 | *.smod 30 | 31 | # Compiled Static libraries 32 | *.lai 33 | *.la 34 | *.a 35 | *.lib 36 | 37 | # Executables 38 | *.exe 39 | *.out 40 | *.app 41 | 42 | # VSCode 43 | .vscode 44 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "thirdParty/tinygltf"] 2 | path = thirdParty/tinygltf 3 | url = https://github.com/syoyo/tinygltf 4 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | dist: trusty 2 | sudo: required 3 | language: cpp 4 | compiler: gcc 5 | 6 | before_install: 7 | - sudo apt-get update 8 | - sudo apt-get install -y build-essential mercurial cmake libzip-dev libxaw7-dev libfreeimage-dev libfreetype6-dev git libtinyxml-dev libzzip-dev libois-dev 9 | 10 | addons: 11 | apt: 12 | sources: 13 | - ubuntu-toolchain-r-test 14 | packages: 15 | - gcc-7 16 | - g++-7 17 | - cmake 18 | 19 | before_script: 20 | - goback=$(pwd) 21 | - cd /tmp 22 | - mkdir prefix 23 | - cd prefix 24 | - wget http://ybalrid.info/files/ogre21.tar.xz 25 | - tar xvJf ogre21.tar.xz 26 | - rm ogre21.tar.xz 27 | - sudo cp -r * / 28 | - sudo ldconfig -v 29 | - cd $goback 30 | 31 | script: 32 | - sudo ln -s /usr/bin/gcc-7 /usr/local/bin/gcc 33 | - sudo ln -s /usr/bin/g++-7 /usr/local/bin/g++ 34 | - export CC=/usr/bin/gcc-7 35 | - export CXX=/usr/bin/g++-7 36 | - gcc -v && g++ -v && cmake --version 37 | - mkdir build 38 | - cd build 39 | - cmake .. 40 | - make 41 | 42 | 43 | -------------------------------------------------------------------------------- /CMake/FindOIS.cmake: -------------------------------------------------------------------------------- 1 | #------------------------------------------------------------------- 2 | # This file is part of the CMake build system for OGRE 3 | # (Object-oriented Graphics Rendering Engine) 4 | # For the latest info, see http://www.ogre3d.org/ 5 | # 6 | # The contents of this file are placed in the public domain. Feel 7 | # free to make use of it in any way you like. 8 | #------------------------------------------------------------------- 9 | 10 | # - Try to find OIS 11 | # Once done, this will define 12 | # 13 | # OIS_FOUND - system has OIS 14 | # OIS_INCLUDE_DIRS - the OIS include directories 15 | # OIS_LIBRARIES - link these to use OIS 16 | # OIS_BINARY_REL / OIS_BINARY_DBG - DLL names (windows only) 17 | 18 | include(FindPkgMacros) 19 | findpkg_begin(OIS) 20 | 21 | # Get path, convert backslashes as ${ENV_${var}} 22 | getenv_path(OIS_HOME) 23 | getenv_path(OGRE_SDK) 24 | getenv_path(OGRE_HOME) 25 | getenv_path(OGRE_SOURCE) 26 | getenv_path(OGRE_DEPENDENCIES_DIR) 27 | 28 | # construct search paths 29 | set(OIS_PREFIX_PATH ${OIS_HOME} ${ENV_OIS_HOME} 30 | ${OGRE_DEPENDENCIES_DIR} ${ENV_OGRE_DEPENDENCIES_DIR} 31 | ${OGRE_SOURCE}/iOSDependencies ${ENV_OGRE_SOURCE}/iOSDependencies 32 | ${OGRE_SOURCE}/Dependencies ${ENV_OGRE_SOURCE}/Dependencies 33 | ${OGRE_SDK} ${ENV_OGRE_SDK} 34 | ${OGRE_HOME} ${ENV_OGRE_HOME}) 35 | create_search_paths(OIS) 36 | # redo search if prefix path changed 37 | clear_if_changed(OIS_PREFIX_PATH 38 | OIS_LIBRARY_FWK 39 | OIS_LIBRARY_REL 40 | OIS_LIBRARY_DBG 41 | OIS_INCLUDE_DIR 42 | ) 43 | 44 | set(OIS_LIBRARY_NAMES OIS) 45 | get_debug_names(OIS_LIBRARY_NAMES) 46 | 47 | use_pkgconfig(OIS_PKGC OIS) 48 | 49 | # For OIS, prefer static library over framework (important when referencing OIS source build) 50 | set(CMAKE_FIND_FRAMEWORK "LAST") 51 | 52 | findpkg_framework(OIS) 53 | if (OIS_HOME) 54 | # OIS uses the 'includes' path for its headers in the source release, not 'include' 55 | set(OIS_INC_SEARCH_PATH ${OIS_INC_SEARCH_PATH} ${OIS_HOME}/includes) 56 | endif() 57 | if (APPLE AND OIS_HOME) 58 | # OIS source build on Mac stores libs in a different location 59 | # Also this is for static build 60 | set(OIS_LIB_SEARCH_PATH ${OIS_LIB_SEARCH_PATH} ${OIS_HOME}/Mac/XCode-2.2/build) 61 | endif() 62 | find_path(OIS_INCLUDE_DIR NAMES OIS.h HINTS ${OIS_INC_SEARCH_PATH} ${OIS_PKGC_INCLUDE_DIRS} PATH_SUFFIXES OIS) 63 | find_library(OIS_LIBRARY_REL NAMES ${OIS_LIBRARY_NAMES} HINTS ${OIS_LIB_SEARCH_PATH} ${OIS_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Release RelWithDebInfo MinSizeRel) 64 | find_library(OIS_LIBRARY_DBG NAMES ${OIS_LIBRARY_NAMES_DBG} HINTS ${OIS_LIB_SEARCH_PATH} ${OIS_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Debug) 65 | 66 | make_library_set(OIS_LIBRARY) 67 | 68 | if (WIN32) 69 | set(OIS_BIN_SEARCH_PATH ${OGRE_DEPENDENCIES_DIR}/bin ${CMAKE_SOURCE_DIR}/Dependencies/bin ${OIS_HOME}/dll 70 | ${ENV_OIS_HOME}/dll ${ENV_OGRE_DEPENDENCIES_DIR}/bin 71 | ${OGRE_SOURCE}/Dependencies/bin ${ENV_OGRE_SOURCE}/Dependencies/bin 72 | ${OGRE_SDK}/bin ${ENV_OGRE_SDK}/bin 73 | ${OGRE_HOME}/bin ${ENV_OGRE_HOME}/bin) 74 | find_file(OIS_BINARY_REL NAMES "OIS.dll" HINTS ${OIS_BIN_SEARCH_PATH} 75 | PATH_SUFFIXES "" Release RelWithDebInfo MinSizeRel) 76 | find_file(OIS_BINARY_DBG NAMES "OIS_d.dll" HINTS ${OIS_BIN_SEARCH_PATH} 77 | PATH_SUFFIXES "" Debug ) 78 | endif() 79 | mark_as_advanced(OIS_BINARY_REL OIS_BINARY_DBG) 80 | 81 | 82 | findpkg_finish(OIS) 83 | 84 | # add parent of OIS folder to support OIS/OIS.h 85 | add_parent_dir(OIS_INCLUDE_DIRS OIS_INCLUDE_DIR) 86 | 87 | # Reset framework finding 88 | set(CMAKE_FIND_FRAMEWORK "FIRST") 89 | -------------------------------------------------------------------------------- /CMake/FindRapidjson.cmake: -------------------------------------------------------------------------------- 1 | #------------------------------------------------------------------- 2 | # This file is part of the CMake build system for OGRE 3 | # (Object-oriented Graphics Rendering Engine) 4 | # For the latest info, see http://www.ogre3d.org/ 5 | # 6 | # The contents of this file are placed in the public domain. Feel 7 | # free to make use of it in any way you like. 8 | #------------------------------------------------------------------- 9 | 10 | # - Try to find Rapidjson 11 | # Once done, this will define 12 | # 13 | # Rapidjson_FOUND - system has Rapidjson 14 | # Rapidjson_INCLUDE_DIRS - the Rapidjson include directories 15 | 16 | include(FindPackageHandleStandardArgs) 17 | include(FindPkgMacros) 18 | findpkg_begin(Rapidjson) 19 | 20 | # Get path, convert backslashes as ${ENV_${var}} 21 | getenv_path(Rapidjson_HOME) 22 | getenv_path(OGRE_SDK) 23 | getenv_path(OGRE_HOME) 24 | getenv_path(OGRE_SOURCE) 25 | getenv_path(OGRE_DEPENDENCIES_DIR) 26 | 27 | # construct search paths 28 | set(Rapidjson_PREFIX_PATH ${Rapidjson_HOME} ${ENV_Rapidjson_HOME} 29 | ${OGRE_DEPENDENCIES_DIR} ${ENV_OGRE_DEPENDENCIES_DIR} 30 | ${OGRE_SOURCE}/iOSDependencies ${ENV_OGRE_SOURCE}/iOSDependencies 31 | ${OGRE_SOURCE}/Dependencies ) 32 | create_search_paths(Rapidjson) 33 | # redo search if prefix path changed 34 | clear_if_changed(Rapidjson_PREFIX_PATH 35 | Rapidjson_INCLUDE_DIR 36 | ) 37 | 38 | use_pkgconfig(Rapidjson_PKGC Rapidjson) 39 | 40 | # For Rapidjson, prefer static library over framework (important when referencing Rapidjson source build) 41 | set(CMAKE_FIND_FRAMEWORK "LAST") 42 | 43 | findpkg_framework(Rapidjson) 44 | 45 | find_path(Rapidjson_INCLUDE_DIR NAMES rapidjson/rapidjson.h HINTS ${Rapidjson_INC_SEARCH_PATH} ${Rapidjson_PKGC_INCLUDE_DIRS}) 46 | 47 | find_package_handle_standard_args( Rapidjson DEFAULT_MSG Rapidjson_INCLUDE_DIR ) 48 | 49 | if( Rapidjson_INCLUDE_DIR ) 50 | set( Rapidjson_FOUND TRUE ) 51 | set( Rapidjson_INCLUDE_DIRS ${Rapidjson_INCLUDE_DIR} ) 52 | endif() 53 | 54 | findpkg_finish(Rapidjson) 55 | 56 | # add parent of Rapidjson folder to support rapidjson/rapidjson.h 57 | #add_parent_dir(Rapidjson_INCLUDE_DIRS Rapidjson_INCLUDE_DIR) 58 | 59 | # Reset framework finding 60 | set(CMAKE_FIND_FRAMEWORK "FIRST") 61 | -------------------------------------------------------------------------------- /CMake/FindRemotery.cmake: -------------------------------------------------------------------------------- 1 | #------------------------------------------------------------------- 2 | # This file is part of the CMake build system for OGRE 3 | # (Object-oriented Graphics Rendering Engine) 4 | # For the latest info, see http://www.ogre3d.org/ 5 | # 6 | # The contents of this file are placed in the public domain. Feel 7 | # free to make use of it in any way you like. 8 | #------------------------------------------------------------------- 9 | 10 | # - Try to find Remotery 11 | # Once done, this will define 12 | # 13 | # Remotery_FOUND - system has Remotery 14 | # Remotery_INCLUDE_DIRS - the Remotery include directories 15 | # Remotery_LIBRARIES - link these to use Remotery 16 | 17 | include(FindPkgMacros) 18 | 19 | findpkg_begin(Remotery) 20 | 21 | # Get path, convert backslashes as ${ENV_${var}} 22 | getenv_path(Remotery_HOME) 23 | getenv_path(OGRE_SDK) 24 | getenv_path(OGRE_HOME) 25 | getenv_path(OGRE_SOURCE) 26 | getenv_path(OGRE_DEPENDENCIES_DIR) 27 | 28 | # construct search paths 29 | set(Remotery_PREFIX_PATH ${Remotery_HOME} ${ENV_Remotery_HOME} 30 | ${OGRE_DEPENDENCIES_DIR} ${ENV_OGRE_DEPENDENCIES_DIR} 31 | ${OGRE_SOURCE}/iOSDependencies ${ENV_OGRE_SOURCE}/iOSDependencies 32 | ${OGRE_SOURCE}/Dependencies ) 33 | create_search_paths(Remotery) 34 | # redo search if prefix path changed 35 | clear_if_changed(Remotery_PREFIX_PATH 36 | Remotery_INCLUDE_DIR 37 | Remotery_LIBRARIES_REL 38 | Remotery_LIBRARIES_DBG 39 | ) 40 | 41 | use_pkgconfig(Remotery_PKGC Remotery) 42 | 43 | # For Remotery, prefer static library over framework (important when referencing Remotery source build) 44 | set(CMAKE_FIND_FRAMEWORK "LAST") 45 | 46 | findpkg_framework(Remotery) 47 | 48 | find_path(Remotery_INCLUDE_DIR NAMES Remotery.h HINTS ${Remotery_INC_SEARCH_PATH} ${Remotery_PKGC_INCLUDE_DIRS}) 49 | find_library(Remotery_LIBRARIES_REL NAMES Remotery HINTS ${Remotery_LIB_SEARCH_PATH} ${Remotery_PKGC_LIBRARIES_DIRS} PATH_SUFFIXES Release RelWithDebInfo MinSizeRel) 50 | find_library(Remotery_LIBRARIES_DBG NAMES Remotery_d HINTS ${Remotery_LIB_SEARCH_PATH} ${Remotery_PKGC_LIBRARIES_DIRS} PATH_SUFFIXES Debug) 51 | 52 | make_library_set(Remotery_LIBRARIES) 53 | 54 | find_package_handle_standard_args( Remotery DEFAULT_MSG Remotery_INCLUDE_DIR Remotery_LIBRARIES ) 55 | 56 | if( Remotery_INCLUDE_DIR AND Remotery_LIBRARIES ) 57 | set( Remotery_FOUND TRUE ) 58 | set( Remotery_INCLUDE_DIRS ${Remotery_INCLUDE_DIR} ) 59 | endif() 60 | 61 | if (WIN32) 62 | set(Remotery_BIN_SEARCH_PATH ${OGRE_DEPENDENCIES_DIR}/bin ${CMAKE_SOURCE_DIR}/Dependencies/bin ${Remotery_HOME}/dll 63 | ${ENV_Remotery_HOME}/dll ${ENV_OGRE_DEPENDENCIES_DIR}/bin 64 | ${OGRE_SOURCE}/Dependencies/bin ${ENV_OGRE_SOURCE}/Dependencies/bin 65 | ${OGRE_SDK}/bin ${ENV_OGRE_SDK}/bin 66 | ${OGRE_HOME}/bin ${ENV_OGRE_HOME}/bin) 67 | find_file(Remotery_BINARY_REL NAMES "Remotery.dll" HINTS ${Remotery_BIN_SEARCH_PATH} 68 | PATH_SUFFIXES "" Release RelWithDebInfo MinSizeRel) 69 | find_file(Remotery_BINARY_DBG NAMES "Remotery_d.dll" HINTS ${Remotery_BIN_SEARCH_PATH} 70 | PATH_SUFFIXES "" Debug ) 71 | endif() 72 | mark_as_advanced(Remotery_BINARY_REL Remotery_BINARY_DBG) 73 | 74 | findpkg_finish(Remotery) 75 | 76 | # add parent of Remotery folder to support Remotery/Remotery.h 77 | #add_parent_dir(Remotery_INCLUDE_DIRS Remotery_INCLUDE_DIR) 78 | 79 | # Reset framework finding 80 | set(CMAKE_FIND_FRAMEWORK "FIRST") 81 | -------------------------------------------------------------------------------- /CMake/OgreFindFrameworks.cmake: -------------------------------------------------------------------------------- 1 | #------------------------------------------------------------------- 2 | # This file is part of the CMake build system for OGRE 3 | # (Object-oriented Graphics Rendering Engine) 4 | # For the latest info, see http://www.ogre3d.org/ 5 | # 6 | # The contents of this file are placed in the public domain. Feel 7 | # free to make use of it in any way you like. 8 | #------------------------------------------------------------------- 9 | 10 | # - helper module to find OSX frameworks 11 | # Adapted from standard CMake version, but added dependencies 12 | # Standard finder does not look in any variable locations such as 13 | # CMAKE_FRAMEWORK_PATH (not sure why not) 14 | 15 | IF(NOT OGRE_FIND_FRAMEWORKS_INCLUDED) 16 | SET(OGRE_FIND_FRAMEWORKS_INCLUDED 1) 17 | MACRO(OGRE_FIND_FRAMEWORKS fwk) 18 | IF(APPLE) 19 | SET(${fwk}_FRAMEWORKS) 20 | SET(OGRE_FRAMEWORK_PATH 21 | ${OGRE_DEPENDENCIES_DIR} 22 | ~/Library/Frameworks 23 | /Library/Frameworks 24 | /System/Library/Frameworks 25 | /Network/Library/Frameworks 26 | ) 27 | FOREACH(dir ${OGRE_FRAMEWORK_PATH}) 28 | SET(fwkpath ${dir}/${fwk}.framework) 29 | IF(EXISTS ${fwkpath}) 30 | SET(${fwk}_FRAMEWORKS ${${fwk}_FRAMEWORKS} ${fwkpath}) 31 | ENDIF(EXISTS ${fwkpath}) 32 | ENDFOREACH(dir) 33 | ENDIF(APPLE) 34 | ENDMACRO(OGRE_FIND_FRAMEWORKS) 35 | ENDIF(NOT OGRE_FIND_FRAMEWORKS_INCLUDED) 36 | -------------------------------------------------------------------------------- /CMake/OgreGetVersion.cmake: -------------------------------------------------------------------------------- 1 | #------------------------------------------------------------------- 2 | # This file is part of the CMake build system for OGRE 3 | # (Object-oriented Graphics Rendering Engine) 4 | # For the latest info, see http://www.ogre3d.org/ 5 | # 6 | # The contents of this file are placed in the public domain. Feel 7 | # free to make use of it in any way you like. 8 | #------------------------------------------------------------------- 9 | 10 | include(PreprocessorUtils) 11 | 12 | macro(ogre_get_version HEADER) 13 | file(READ ${HEADER} TEMP_VAR_CONTENTS) 14 | get_preprocessor_entry(TEMP_VAR_CONTENTS OGRE_VERSION_MAJOR OGRE_VERSION_MAJOR) 15 | get_preprocessor_entry(TEMP_VAR_CONTENTS OGRE_VERSION_MINOR OGRE_VERSION_MINOR) 16 | get_preprocessor_entry(TEMP_VAR_CONTENTS OGRE_VERSION_PATCH OGRE_VERSION_PATCH) 17 | get_preprocessor_entry(TEMP_VAR_CONTENTS OGRE_VERSION_NAME OGRE_VERSION_NAME) 18 | get_preprocessor_entry(TEMP_VAR_CONTENTS OGRE_VERSION_SUFFIX OGRE_VERSION_SUFFIX) 19 | set(OGRE_VERSION "${OGRE_VERSION_MAJOR}.${OGRE_VERSION_MINOR}.${OGRE_VERSION_PATCH}${OGRE_VERSION_SUFFIX}") 20 | set(OGRE_SOVERSION "${OGRE_VERSION_MAJOR}.${OGRE_VERSION_MINOR}.${OGRE_VERSION_PATCH}") 21 | set(OGRE_VERSION_DASH_SEPARATED "${OGRE_VERSION_MAJOR}-${OGRE_VERSION_MINOR}-${OGRE_VERSION_PATCH}${OGRE_VERSION_SUFFIX}") 22 | 23 | endmacro() 24 | -------------------------------------------------------------------------------- /CMake/Ogre_glTF_ConfigTargets.cmake: -------------------------------------------------------------------------------- 1 | function(Ogre_glTF_config_sample PROJECTNAME) 2 | file(GLOB SOURCES ./*.cpp ./*.hpp ./include/*.hpp) 3 | 4 | add_executable(${PROJECTNAME} WIN32 MACOSX_BUNDLE ${SAMPLES_COMMON_HEADER_FILES} ${SAMPLES_COMMON_SOURCE_FILES} ${SOURCES}) 5 | add_dependencies(${PROJECTNAME} Ogre_glTF) 6 | 7 | target_include_directories( ${PROJECTNAME} PUBLIC 8 | #Ogre and the physics based high level material system 9 | ${OGRE_INCLUDE_DIRS} 10 | ${OGRE_HlmsPbs_INCLUDE_DIRS} 11 | ${OGRE_INCLUDE_DIR}/Hlms/Common 12 | ${CMAKE_SOURCE_DIR}/Samples/Common 13 | ) 14 | 15 | target_link_libraries(${PROJECTNAME} 16 | ${OGRE_LIBRARIES} 17 | ${OGRE_HlmsPbs_LIBRARIES} 18 | Ogre_glTF 19 | ) 20 | 21 | if (Ogre_glTF_STATIC AND UNIX) 22 | target_link_libraries(${PROJECTNAME} 23 | ${OGRE_RenderSystem_GL3Plus_LIBRARIES} 24 | ) 25 | 26 | if (NOT APPLE) 27 | target_link_libraries(${PROJECTNAME} 28 | dl 29 | pthread 30 | Xt 31 | X11 32 | Xaw 33 | Xrandr 34 | ) 35 | endif () 36 | endif () 37 | 38 | set_target_properties(${PROJECTNAME} PROPERTIES 39 | RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) 40 | set_property(TARGET ${PROJECTNAME} PROPERTY VS_DEBUGGER_WORKING_DIRECTORY ${PROJECT_BINARY_DIR}) 41 | endfunction(Ogre_glTF_config_sample) 42 | -------------------------------------------------------------------------------- /CMake/PrecompiledHeader.cmake: -------------------------------------------------------------------------------- 1 | #------------------------------------------------------------------- 2 | # This file is part of the CMake build system for OGRE 3 | # (Object-oriented Graphics Rendering Engine) 4 | # For the latest info, see http://www.ogre3d.org/ 5 | # 6 | # The contents of this file are placed in the public domain. Feel 7 | # free to make use of it in any way you like. 8 | #------------------------------------------------------------------- 9 | 10 | ################################################################## 11 | # Support macro to use a precompiled header 12 | # Usage: 13 | # use_precompiled_header(TARGET HEADER_FILE SRC_FILE) 14 | ################################################################## 15 | 16 | macro(use_precompiled_header TARGET HEADER_FILE SRC_FILE) 17 | get_filename_component(HEADER ${HEADER_FILE} NAME) 18 | 19 | # Use MSVC_IDE to exclude NMake from using PCHs 20 | if (MSVC AND NOT NMAKE AND NOT JOM AND NOT OGRE_UNITY_BUILD AND NOT ${CMAKE_GENERATOR} MATCHES Ninja) 21 | add_definitions(/Yu"${HEADER}") 22 | set_source_files_properties(${SRC_FILE} 23 | PPROPERTIES COMPILE_FLAGS /Yc"${HEADER}" 24 | ) 25 | 26 | elseif (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANGXX) 27 | # disabled because it seems to increase compile time 28 | ## this is some serious hack... we definitely need native 29 | ## support in CMake for this! 30 | ## we will generate the precompiled header via a workaround 31 | ## first give the header a new name with the proper extension 32 | #set(PRECOMP_HEADER ${CMAKE_CURRENT_BINARY_DIR}/hacked/${HEADER}.gch) 33 | #configure_file(${HEADER_FILE} ${PRECOMP_HEADER} COPYONLY) 34 | ## retrieve some info about the target's build settings 35 | #get_target_property(${TARGET} PRECOMP_TYPE TYPE) 36 | #if (PRECOMP_TYPE STREQUAL "SHARED_LIBRARY") 37 | # set(PRECOMP_LIBTYPE "SHARED") 38 | #else () 39 | # set(PRECOMP_LIBTYPE "STATIC") 40 | #endif () 41 | #get_target_property(${TARGET} PRECOMP_DEFINITIONS COMPILE_DEFINITIONS) 42 | #get_target_property(${TARGET} PRECOMP_FLAGS COMPILE_FLAGS) 43 | # 44 | ## add a new target which compiles the header 45 | #add_library(__precomp_header ${PRECOMP_LIBTYPE} ${PRECOMP_HEADER}) 46 | #add_dependencies(${TARGET} __precomp_header) 47 | #set_target_properties(__precomp_header PROPERTIES 48 | # COMPILE_DEFINITIONS ${PRECOMP_DEFINITIONS} 49 | # COMPILE_FLAGS ${PRECOMP_FLAGS} 50 | # HAS_CXX TRUE 51 | #) 52 | #set_source_files_properties(${PRECOMP_HEADER} PROPERTIES 53 | # HEADER_FILE_ONLY FALSE 54 | # KEEP_EXTENSION TRUE 55 | # COMPILE_FLAGS "-x c++-header" 56 | # LANGUAGE CXX 57 | #) 58 | # 59 | ## finally, we need to ensure that gcc can find the precompiled header 60 | ## this is another dirty hack 61 | #include_directories(BEFORE "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/__precomp_header.dir/hacked") 62 | 63 | endif () 64 | endmacro(use_precompiled_header) 65 | -------------------------------------------------------------------------------- /CMake/PreprocessorUtils.cmake: -------------------------------------------------------------------------------- 1 | #------------------------------------------------------------------- 2 | # This file is part of the CMake build system for OGRE 3 | # (Object-oriented Graphics Rendering Engine) 4 | # For the latest info, see http://www.ogre3d.org/ 5 | # 6 | # The contents of this file are placed in the public domain. Feel 7 | # free to make use of it in any way you like. 8 | #------------------------------------------------------------------- 9 | 10 | macro(get_preprocessor_entry CONTENTS KEYWORD VARIABLE) 11 | string(REGEX MATCH 12 | "# *define +${KEYWORD} +((\"([^\n]*)\")|([^ \n]*))" 13 | PREPROC_TEMP_VAR 14 | ${${CONTENTS}} 15 | ) 16 | if (CMAKE_MATCH_3) 17 | set(${VARIABLE} ${CMAKE_MATCH_3}) 18 | else () 19 | set(${VARIABLE} ${CMAKE_MATCH_4}) 20 | endif () 21 | endmacro() 22 | 23 | macro(has_preprocessor_entry CONTENTS KEYWORD VARIABLE) 24 | string(REGEX MATCH 25 | "\n *# *define +(${KEYWORD})" 26 | PREPROC_TEMP_VAR 27 | ${${CONTENTS}} 28 | ) 29 | if (CMAKE_MATCH_1) 30 | set(${VARIABLE} TRUE) 31 | else () 32 | set(${VARIABLE} FALSE) 33 | endif () 34 | endmacro() 35 | 36 | macro(replace_preprocessor_entry VARIABLE KEYWORD NEW_VALUE) 37 | string(REGEX REPLACE 38 | "(// *)?# *define +${KEYWORD} +[^ \n]*" 39 | "#define ${KEYWORD} ${NEW_VALUE}" 40 | ${VARIABLE}_TEMP 41 | ${${VARIABLE}} 42 | ) 43 | set(${VARIABLE} ${${VARIABLE}_TEMP}) 44 | endmacro() 45 | 46 | macro(set_preprocessor_entry VARIABLE KEYWORD ENABLE) 47 | if (${ENABLE}) 48 | set(TMP_REPLACE_STR "#define ${KEYWORD}") 49 | else () 50 | set(TMP_REPLACE_STR "// #define ${KEYWORD}") 51 | endif () 52 | string(REGEX REPLACE 53 | "(// *)?# *define +${KEYWORD} *\n" 54 | ${TMP_REPLACE_STR} 55 | ${VARIABLE}_TEMP 56 | ${${VARIABLE}} 57 | ) 58 | set(${VARIABLE} ${${VARIABLE}_TEMP}) 59 | endmacro() 60 | 61 | -------------------------------------------------------------------------------- /CMake/VisualStudioUserFile.vcproj.user.in: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 11 | 35 | 36 | 39 | 63 | 64 | 67 | 91 | 92 | 95 | 119 | 120 | 121 | 122 | -------------------------------------------------------------------------------- /CMake/VisualStudioUserFile.vcxproj.user.in: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(TargetPath) 5 | @OGRE_WORK_DIR@/bin/$(Configuration) 6 | WindowsLocalDebugger 7 | 8 | 9 | $(TargetPath) 10 | @OGRE_WORK_DIR@/bin/$(Configuration) 11 | WindowsLocalDebugger 12 | 13 | 14 | $(TargetPath) 15 | @OGRE_WORK_DIR@/bin/$(Configuration) 16 | WindowsLocalDebugger 17 | 18 | 19 | $(TargetPath) 20 | @OGRE_WORK_DIR@/bin/$(Configuration) 21 | WindowsLocalDebugger 22 | 23 | 24 | $(TargetPath) 25 | @OGRE_WORK_DIR@/bin/$(Configuration) 26 | WindowsLocalDebugger 27 | 28 | 29 | $(TargetPath) 30 | @OGRE_WORK_DIR@/bin/$(Configuration) 31 | WindowsLocalDebugger 32 | 33 | 34 | $(TargetPath) 35 | @OGRE_WORK_DIR@/bin/$(Configuration) 36 | WindowsLocalDebugger 37 | 38 | 39 | $(TargetPath) 40 | @OGRE_WORK_DIR@/bin/$(Configuration) 41 | WindowsLocalDebugger 42 | 43 | 44 | -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 3.8) 2 | 3 | project(Ogre_glTF) 4 | 5 | #to build a library 6 | set(CMAKE_CXX_STANDARD 14) 7 | set(CMAKE_POSITION_INDEPENDENT_CODE ON) 8 | set(CMAKE_INSTALL_PREFIX "./output") 9 | set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG=1 -D_DEBUG=1") 10 | 11 | if(NOT CMAKE_DEBUG_POSTFIX) 12 | set(CMAKE_DEBUG_POSTFIX "_d") 13 | endif() 14 | 15 | set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/CMake) 16 | 17 | include(Ogre_glTF_ConfigTargets) 18 | 19 | option(Ogre_glTF_STATIC "Static build" FALSE) 20 | 21 | if (Ogre_glTF_STATIC) 22 | add_definitions(-DOgre_glTF_STATIC) 23 | set(Ogre_glTF_LIB_TYPE STATIC) 24 | set(Ogre_glTF_LIB_SUFFIX "Static") 25 | else () 26 | set(Ogre_glTF_LIB_TYPE SHARED) 27 | set(Ogre_glTF_LIB_SUFFIX "") 28 | endif () 29 | 30 | #Get Ogre from your system. May need to set some variables for Windows folks 31 | find_package(OGRE COMPONENTS HlmsPbs REQUIRED) 32 | file(GLOB librarySources ./src/*.cpp ./src/private_headers/*.hpp ./include/*.hpp) 33 | 34 | add_library(${PROJECT_NAME} ${Ogre_glTF_LIB_TYPE} ${librarySources}) 35 | 36 | target_compile_definitions(${PROJECT_NAME} PUBLIC Ogre_glTF_DLL_EXPORT_CONFIG_ON) 37 | 38 | set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}${Ogre_glTF_LIB_SUFFIX}) 39 | 40 | target_include_directories( Ogre_glTF PUBLIC 41 | #Ogre and the physics based high level material system 42 | ${OGRE_INCLUDE_DIRS} 43 | ${OGRE_HlmsPbs_INCLUDE_DIRS} 44 | ${OGRE_INCLUDE_DIR}/Hlms/Common 45 | #local include directory 46 | ./include 47 | ./src/private_headers 48 | ./thirdParty/tinygltf/ 49 | ) 50 | 51 | target_link_libraries(Ogre_glTF 52 | ${OGRE_LIBRARIES} 53 | ${OGRE_HlmsPbs_LIBRARIES} 54 | ) 55 | 56 | add_subdirectory(Samples) 57 | 58 | #installation 59 | 60 | install(FILES 61 | ./include/Ogre_glTF.hpp 62 | ./include/Ogre_glTF_OgrePlugin.hpp 63 | ./include/Ogre_glTF_OgreResource.hpp 64 | ./include/Ogre_glTF_DLL.hpp 65 | DESTINATION 66 | "include") 67 | 68 | install(TARGETS Ogre_glTF DESTINATION "bin") 69 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Contributor Covenant Code of Conduct 2 | 3 | ## Our Pledge 4 | 5 | In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation. 6 | 7 | ## Our Standards 8 | 9 | Examples of behavior that contributes to creating a positive environment include: 10 | 11 | * Using welcoming and inclusive language 12 | * Being respectful of differing viewpoints and experiences 13 | * Gracefully accepting constructive criticism 14 | * Focusing on what is best for the community 15 | * Showing empathy towards other community members 16 | 17 | Examples of unacceptable behavior by participants include: 18 | 19 | * The use of sexualized language or imagery and unwelcome sexual attention or advances 20 | * Trolling, insulting/derogatory comments, and personal or political attacks 21 | * Public or private harassment 22 | * Publishing others' private information, such as a physical or electronic address, without explicit permission 23 | * Other conduct which could reasonably be considered inappropriate in a professional setting 24 | 25 | ## Our Responsibilities 26 | 27 | Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior. 28 | 29 | Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. 30 | 31 | ## Scope 32 | 33 | This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers. 34 | 35 | ## Enforcement 36 | 37 | Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at ybalrid@ybalrid.info. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately. 38 | 39 | Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. 40 | 41 | ## Attribution 42 | 43 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version] 44 | 45 | [homepage]: http://contributor-covenant.org 46 | [version]: http://contributor-covenant.org/version/1/4/ 47 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017-2018 Arthur Brainville 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Media/BrainStem.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/BrainStem.glb -------------------------------------------------------------------------------- /Media/CesiumMan.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/CesiumMan.glb -------------------------------------------------------------------------------- /Media/Corset.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/Corset.glb -------------------------------------------------------------------------------- /Media/Monster.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/Monster.glb -------------------------------------------------------------------------------- /Media/MyCube.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/MyCube.glb -------------------------------------------------------------------------------- /Media/RiggedFigure.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/RiggedFigure.glb -------------------------------------------------------------------------------- /Media/RiggedSimple.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/RiggedSimple.glb -------------------------------------------------------------------------------- /Media/blob.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/blob.glb -------------------------------------------------------------------------------- /Media/damagedHelmet/Assets/Models/PBR/damagedHelmet/textures/Default_AO.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/damagedHelmet/Assets/Models/PBR/damagedHelmet/textures/Default_AO.jpg -------------------------------------------------------------------------------- /Media/damagedHelmet/Assets/Models/PBR/damagedHelmet/textures/Default_MetalSmooth_converted_metalRoughness.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/damagedHelmet/Assets/Models/PBR/damagedHelmet/textures/Default_MetalSmooth_converted_metalRoughness.jpg -------------------------------------------------------------------------------- /Media/damagedHelmet/Assets/Models/PBR/damagedHelmet/textures/Default_albedo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/damagedHelmet/Assets/Models/PBR/damagedHelmet/textures/Default_albedo.jpg -------------------------------------------------------------------------------- /Media/damagedHelmet/Assets/Models/PBR/damagedHelmet/textures/Default_emissive.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/damagedHelmet/Assets/Models/PBR/damagedHelmet/textures/Default_emissive.jpg -------------------------------------------------------------------------------- /Media/damagedHelmet/Assets/Models/PBR/damagedHelmet/textures/Default_normal.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/damagedHelmet/Assets/Models/PBR/damagedHelmet/textures/Default_normal.jpg -------------------------------------------------------------------------------- /Media/damagedHelmet/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Battle Damaged Sci-fi Helmet - PBR by theblueturtle_, published under a Creative Commons Attribution-NonCommercial license 2 | https://sketchfab.com/models/b81008d513954189a063ff901f7abfe4 3 | https://sketchfab.com/theblueturtle_ 4 | -------------------------------------------------------------------------------- /Media/damagedHelmet/damagedHelmet.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/damagedHelmet/damagedHelmet.bin -------------------------------------------------------------------------------- /Media/gizmo.blend: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/gizmo.blend -------------------------------------------------------------------------------- /Media/gizmo.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/gizmo.glb -------------------------------------------------------------------------------- /Media/gltfFiles.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/gltfFiles.zip -------------------------------------------------------------------------------- /Media/marker.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/marker.glb -------------------------------------------------------------------------------- /Media/spring.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Media/spring.glb -------------------------------------------------------------------------------- /Samples/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory(Common) 2 | add_subdirectory(LoadMesh) 3 | add_subdirectory(SkinnedMesh) 4 | 5 | add_custom_target(CopyHLMS ALL 6 | ${CMAKE_COMMAND} -E copy_directory ${OGRE_MEDIA_DIR}/Hlms ${PROJECT_BINARY_DIR}/Media/Hlms 7 | ) -------------------------------------------------------------------------------- /Samples/Common/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(SAMPLES_COMMON_HEADER_FILES SamplesCommon.h) 2 | set(SAMPLES_COMMON_SOURCE_FILES SamplesCommon.cpp) -------------------------------------------------------------------------------- /Samples/Common/SamplesCommon.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/Samples/Common/SamplesCommon.cpp -------------------------------------------------------------------------------- /Samples/Common/SamplesCommon.h: -------------------------------------------------------------------------------- 1 | #include 2 | //To create workspace definitions and workspaces 3 | #include 4 | //To use the hlms 5 | #include 6 | #include 7 | //To load Hlms 8 | #include 9 | //To use objects 10 | #include 11 | #include 12 | #include 13 | #include 14 | //To play animations 15 | #include 16 | //To use smart pointers 17 | #include 18 | 19 | //The library we are trying out in this program 20 | #include 21 | 22 | #ifdef _DEBUG 23 | const char GL_RENDER_PLUGIN[] = "RenderSystem_GL3Plus_d"; 24 | #else 25 | const char GL_RENDER_PLUGIN[] = "RenderSystem_GL3Plus"; 26 | #endif 27 | 28 | #ifdef _WIN32 29 | #ifdef _DEBUG 30 | const char D3D11_RENDER_PLUGIN[] = "RenderSystem_Direct3D11_d"; 31 | #else 32 | const char D3D11_RENDER_PLUGIN[] = "RenderSystem_Direct3D11"; 33 | #endif 34 | #endif 35 | 36 | #ifdef Ogre_glTF_STATIC 37 | #include 38 | #endif 39 | 40 | #ifdef _WIN32 41 | #define NOMINMAX 42 | #include 43 | #define main() WINAPI WinMain(HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT) 44 | #else 45 | #define main() main(int argc, char* argv[]) 46 | #endif 47 | 48 | void DeclareHlmsLibrary(Ogre::String dataFolder) 49 | { 50 | //Make sure the string we got is a valid path 51 | if(dataFolder.empty()) 52 | dataFolder = "./"; 53 | else if(dataFolder[dataFolder.size() - 1] != '/') 54 | dataFolder += '/'; 55 | 56 | //For retrieval of the paths to the different folders needed 57 | Ogre::String dataFolderPath; 58 | Ogre::StringVector libraryFoldersPaths; 59 | 60 | #ifdef USE_UNLIT //We are loading materials based on physics 61 | //Get the path to all the subdirectories used by HlmsUnlit 62 | Ogre::HlmsUnlit::getDefaultPaths(dataFolderPath, libraryFoldersPaths); 63 | 64 | //Create the Ogre::Archive objects needed 65 | Ogre::Archive* archiveUnlit = Ogre::ArchiveManager::getSingletonPtr()->load(dataFolder + dataFolderPath, "FileSystem", true); 66 | Ogre::ArchiveVec archiveUnlitLibraryFolders; 67 | for(const auto& libraryFolderPath : libraryFoldersPaths) 68 | { 69 | Ogre::Archive* archiveLibrary = Ogre::ArchiveManager::getSingletonPtr()->load(dataFolder + libraryFolderPath, "FileSystem", true); 70 | archiveUnlitLibraryFolders.push_back(archiveLibrary); 71 | } 72 | 73 | //Create and register the unlit Hlms 74 | Ogre::HlmsUnlit* hlmsUnlit = OGRE_NEW Ogre::HlmsUnlit(archiveUnlit, &archiveUnlitLibraryFolders); 75 | Ogre::Root::getSingleton().getHlmsManager()->registerHlms(hlmsUnlit); 76 | hlmsUnlit->setDebugOutputPath(false, false); 77 | #endif 78 | 79 | //Do the same for HlmsPbs: 80 | Ogre::HlmsPbs::getDefaultPaths(dataFolderPath, libraryFoldersPaths); 81 | Ogre::Archive* archivePbs = Ogre::ArchiveManager::getSingletonPtr()->load(dataFolder + dataFolderPath, "FileSystem", true); 82 | 83 | //Get the library archive(s) 84 | Ogre::ArchiveVec archivePbsLibraryFolders; 85 | for(const auto& libraryFolderPath : libraryFoldersPaths) 86 | { 87 | Ogre::Archive* archiveLibrary = Ogre::ArchiveManager::getSingletonPtr()->load(dataFolder + libraryFolderPath, "FileSystem", true); 88 | archivePbsLibraryFolders.push_back(archiveLibrary); 89 | } 90 | 91 | //Create and register 92 | Ogre::HlmsPbs* hlmsPbs = OGRE_NEW Ogre::HlmsPbs(archivePbs, &archivePbsLibraryFolders); 93 | Ogre::Root::getSingleton().getHlmsManager()->registerHlms(hlmsPbs); 94 | hlmsPbs->setDebugOutputPath(false, false); 95 | } -------------------------------------------------------------------------------- /Samples/LoadMesh/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | Ogre_glTF_config_sample(LoadMesh) -------------------------------------------------------------------------------- /Samples/LoadMesh/main.cpp: -------------------------------------------------------------------------------- 1 | #include "SamplesCommon.h" 2 | 3 | int main() 4 | { 5 | #ifdef Ogre_glTF_STATIC 6 | // Must instantiate before Root so that it'll be destroyed afterwards. 7 | // Otherwise we get a crash on Ogre::Root::shutdownPlugins() 8 | #if __linux__ 9 | auto glPlugin = std::make_unique(); 10 | #endif 11 | #endif 12 | 13 | //Init Ogre 14 | auto root = std::make_unique(); 15 | Ogre::LogManager::getSingleton().setLogDetail(Ogre::LoggingLevel::LL_BOREME); 16 | 17 | #ifdef Ogre_glTF_STATIC 18 | #if __linux__ 19 | root->installPlugin(glPlugin.get()); 20 | #endif 21 | #else 22 | root->loadPlugin(GL_RENDER_PLUGIN); 23 | #ifdef _WIN32 24 | root->loadPlugin(D3D11_RENDER_PLUGIN); 25 | #endif 26 | #endif 27 | root->showConfigDialog(); 28 | root->getRenderSystem()->setConfigOption("FSAA", "16"); 29 | root->getRenderSystem()->setConfigOption("sRGB Gamma Conversion", "Yes"); 30 | root->initialise(false); 31 | 32 | //Create a window and a scene 33 | Ogre::NameValuePairList params; 34 | params["FSAA"] = "16"; 35 | const auto window = root->createRenderWindow("glTF test!", 800, 600, false, ¶ms); 36 | 37 | auto smgr = root->createSceneManager(Ogre::ST_GENERIC, 2, Ogre::INSTANCING_CULLING_THREADED); 38 | smgr->showBoundingBoxes(true); 39 | smgr->setDisplaySceneNodes(true); 40 | auto camera = smgr->createCamera("cam"); 41 | 42 | //Setup rendering pipeline 43 | auto compositor = root->getCompositorManager2(); 44 | const char workspaceName[] = "workspace0"; 45 | compositor->createBasicWorkspaceDef(workspaceName, Ogre::ColourValue { 0.2f, 0.3f, 0.4f }); 46 | auto workspace = compositor->addWorkspace(smgr, window, camera, workspaceName, true); 47 | 48 | DeclareHlmsLibrary("./Media"); 49 | 50 | Ogre::ResourceGroupManager::getSingleton().addResourceLocation("../Media/gltfFiles.zip", "Zip"); 51 | Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(true); 52 | 53 | auto gltf = std::make_unique(); 54 | Ogre::SceneNode* objectNode = nullptr; 55 | 56 | try 57 | { 58 | auto adapter = gltf->loadFromFileSystem("../Media/damagedHelmet/damagedHelmet.gltf"); 59 | objectNode = adapter.getFirstSceneNode(smgr); 60 | 61 | // On a scene with multiple root objects `loadMainScene` can be used to load all objects. 62 | /* 63 | auto root = smgr->getRootSceneNode(); 64 | adapter.loadMainScene(root, smgr); 65 | auto childIt = root->getChildIterator(); 66 | while(childIt.hasMoreElements()) 67 | { 68 | auto child = childIt.getNext(); 69 | if(child->getName() == "UnityGlTF_root") 70 | { 71 | objectNode = static_cast(child); 72 | break; 73 | } 74 | }*/ 75 | } 76 | catch(std::exception& e) 77 | { 78 | Ogre::LogManager::getSingleton().logMessage(e.what()); 79 | return -1; 80 | } 81 | 82 | camera->setNearClipDistance(0.001f); 83 | camera->setFarClipDistance(100); 84 | camera->setPosition(2.5f, 0.6f, 2.5f); 85 | camera->lookAt({ 0, -0.1f, 0 }); 86 | camera->setAutoAspectRatio(true); 87 | 88 | auto light = smgr->createLight(); 89 | smgr->getRootSceneNode()->createChildSceneNode()->attachObject(light); 90 | light->setType(Ogre::Light::LT_DIRECTIONAL); 91 | light->setDirection(Ogre::Vector3 { -1, -1, -0.5f }); 92 | light->setPowerScale(5); 93 | 94 | light = smgr->createLight(); 95 | smgr->getRootSceneNode()->createChildSceneNode()->attachObject(light); 96 | light->setType(Ogre::Light::LT_DIRECTIONAL); 97 | light->setDirection(Ogre::Vector3 { +1, +1, +0.5f }); 98 | light->setPowerScale(5); 99 | 100 | auto last = root->getTimer()->getMilliseconds(); 101 | auto now = last; 102 | Ogre::Real accumulator = 0; 103 | 104 | while(!window->isClosed()) 105 | { 106 | now = root->getTimer()->getMilliseconds(); 107 | accumulator += (now - last) / 1000.0f; 108 | last = now; 109 | 110 | objectNode->setOrientation(Ogre::Quaternion(Ogre::Radian(accumulator), Ogre::Vector3::UNIT_Y)); 111 | 112 | root->renderOneFrame(); 113 | Ogre::WindowEventUtilities::messagePump(); 114 | } 115 | 116 | return 0; 117 | } 118 | -------------------------------------------------------------------------------- /Samples/SkinnedMesh/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | Ogre_glTF_config_sample(SkinnedMesh) -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | theme: jekyll-theme-midnight -------------------------------------------------------------------------------- /appveyor.yml: -------------------------------------------------------------------------------- 1 | version: 0.0.{build} 2 | image: Visual Studio 2017 3 | install: 4 | - cmd: >- 5 | git submodule update --init --recursive 6 | 7 | set build_dir=%cd% 8 | 9 | echo %cd% 10 | 11 | cd C:\ 12 | 13 | curl -fsS -o ogre.7z http://ybalrid.info/files/Ogre21SDK.7z 14 | 15 | 7z x -y ogre.7z 16 | 17 | cd %build_dir% 18 | 19 | echo %CD% 20 | 21 | dir 22 | before_build: 23 | - cmd: cmake . -G "Visual Studio 15 2017 Win64" -DOGRE_HOME="C:\Ogre21SDK\" 24 | 25 | build: 26 | project: Ogre_glTF.sln 27 | verbosity: minimal 28 | 29 | 30 | -------------------------------------------------------------------------------- /demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/demo.gif -------------------------------------------------------------------------------- /demo2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/demo2.gif -------------------------------------------------------------------------------- /docs/_config.yml: -------------------------------------------------------------------------------- 1 | theme: jekyll-theme-midnight -------------------------------------------------------------------------------- /docs/_runme.sh: -------------------------------------------------------------------------------- 1 | echo "cleaning doxygen folder for the website..." 2 | rm -rf ./doxygen/* 3 | echo "copying lattest doxygen output to it..." 4 | cp -rf ../Doxygen/out/html/* ./doxygen/ 5 | echo "done!" 6 | -------------------------------------------------------------------------------- /docs/demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/demo.gif -------------------------------------------------------------------------------- /docs/demo2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/demo2.gif -------------------------------------------------------------------------------- /docs/doxygen/annotated_dup.js: -------------------------------------------------------------------------------- 1 | var annotated_dup = 2 | [ 3 | [ "Ogre_glTF", null, [ 4 | [ "geometryBuffer", "class_ogre__gl_t_f_1_1geometry_buffer.html", "class_ogre__gl_t_f_1_1geometry_buffer" ], 5 | [ "geometryBuffer_base", "class_ogre__gl_t_f_1_1geometry_buffer__base.html", "class_ogre__gl_t_f_1_1geometry_buffer__base" ], 6 | [ "GlbFile", "class_ogre__gl_t_f_1_1_glb_file.html", "class_ogre__gl_t_f_1_1_glb_file" ], 7 | [ "GlbFileManager", "class_ogre__gl_t_f_1_1_glb_file_manager.html", "class_ogre__gl_t_f_1_1_glb_file_manager" ], 8 | [ "glTFLoader", "class_ogre__gl_t_f_1_1gl_t_f_loader.html", "class_ogre__gl_t_f_1_1gl_t_f_loader" ], 9 | [ "glTFLoaderInterface", "struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html", "struct_ogre__gl_t_f_1_1gl_t_f_loader_interface" ], 10 | [ "glTFLoaderPlugin", "class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html", "class_ogre__gl_t_f_1_1gl_t_f_loader_plugin" ], 11 | [ "gltfPluginAccessor", "struct_ogre__gl_t_f_1_1gltf_plugin_accessor.html", "struct_ogre__gl_t_f_1_1gltf_plugin_accessor" ], 12 | [ "loaderAdapter", "class_ogre__gl_t_f_1_1loader_adapter.html", "class_ogre__gl_t_f_1_1loader_adapter" ], 13 | [ "materialLoader", "class_ogre__gl_t_f_1_1material_loader.html", "class_ogre__gl_t_f_1_1material_loader" ], 14 | [ "MeshAndDataBlock", "struct_ogre__gl_t_f_1_1_mesh_and_data_block.html", "struct_ogre__gl_t_f_1_1_mesh_and_data_block" ], 15 | [ "modelConverter", "class_ogre__gl_t_f_1_1model_converter.html", "class_ogre__gl_t_f_1_1model_converter" ], 16 | [ "ModelInformation", "struct_ogre__gl_t_f_1_1_model_information.html", "struct_ogre__gl_t_f_1_1_model_information" ], 17 | [ "skeletonImporter", "class_ogre__gl_t_f_1_1skeleton_importer.html", "class_ogre__gl_t_f_1_1skeleton_importer" ], 18 | [ "textureImporter", "class_ogre__gl_t_f_1_1texture_importer.html", "class_ogre__gl_t_f_1_1texture_importer" ], 19 | [ "vertexBufferPart", "struct_ogre__gl_t_f_1_1vertex_buffer_part.html", "struct_ogre__gl_t_f_1_1vertex_buffer_part" ] 20 | ] ] 21 | ]; -------------------------------------------------------------------------------- /docs/doxygen/bc_s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/bc_s.png -------------------------------------------------------------------------------- /docs/doxygen/bdwn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/bdwn.png -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1_glb_file.js: -------------------------------------------------------------------------------- 1 | var class_ogre__gl_t_f_1_1_glb_file = 2 | [ 3 | [ "GlbFile", "class_ogre__gl_t_f_1_1_glb_file.html#a1245ba1c2383cde294a69f74a3e0b512", null ], 4 | [ "~GlbFile", "class_ogre__gl_t_f_1_1_glb_file.html#ac4c118830620b0d89f5bc74f6f50f0dd", null ], 5 | [ "calculateSize", "class_ogre__gl_t_f_1_1_glb_file.html#a8d09ec646fc05af0d63730b99b11e0e3", null ], 6 | [ "getData", "class_ogre__gl_t_f_1_1_glb_file.html#a3f9682be0696572d73b9a50020ea8070", null ], 7 | [ "getSize", "class_ogre__gl_t_f_1_1_glb_file.html#af856b3a71a9591c3fb5fca07b61da553", null ], 8 | [ "loadImpl", "class_ogre__gl_t_f_1_1_glb_file.html#aed8efa1502e499ad8e264bdd045edd42", null ], 9 | [ "unloadImpl", "class_ogre__gl_t_f_1_1_glb_file.html#a5ec116597334c084b992c23c76847c4b", null ] 10 | ]; -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1_glb_file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/class_ogre__gl_t_f_1_1_glb_file.png -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1_glb_file_manager.js: -------------------------------------------------------------------------------- 1 | var class_ogre__gl_t_f_1_1_glb_file_manager = 2 | [ 3 | [ "GlbFileManager", "class_ogre__gl_t_f_1_1_glb_file_manager.html#ab52e0d903463635a91eaeefb923bedb4", null ], 4 | [ "~GlbFileManager", "class_ogre__gl_t_f_1_1_glb_file_manager.html#aa5d6d9beda468a81f609a675862fcfe8", null ], 5 | [ "createImpl", "class_ogre__gl_t_f_1_1_glb_file_manager.html#a9c6f32e99a79e21bdeda66530c630620", null ], 6 | [ "load", "class_ogre__gl_t_f_1_1_glb_file_manager.html#a00d534d4810fb5316d5cc4b5ff0d0a7b", null ] 7 | ]; -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1_glb_file_manager.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/class_ogre__gl_t_f_1_1_glb_file_manager.png -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1geometry_buffer.js: -------------------------------------------------------------------------------- 1 | var class_ogre__gl_t_f_1_1geometry_buffer = 2 | [ 3 | [ "geometryBuffer", "class_ogre__gl_t_f_1_1geometry_buffer.html#aea7ece66d09b7cd339338aa9ad22f56a", null ], 4 | [ "~geometryBuffer", "class_ogre__gl_t_f_1_1geometry_buffer.html#af5762569985fc2c84a160b133b1fb7cc", null ], 5 | [ "geometryBuffer", "class_ogre__gl_t_f_1_1geometry_buffer.html#a079ba701513d6b5f41eb53e9a494ee87", null ], 6 | [ "geometryBuffer", "class_ogre__gl_t_f_1_1geometry_buffer.html#a927d38d212a162c02030383a2691d205", null ], 7 | [ "_debugContentToLog", "class_ogre__gl_t_f_1_1geometry_buffer.html#aab778a369ca82fa116e38810e4489446", null ], 8 | [ "data", "class_ogre__gl_t_f_1_1geometry_buffer.html#aee1e475bb4e8f08f2fc936eafad003ae", null ], 9 | [ "dataAddress", "class_ogre__gl_t_f_1_1geometry_buffer.html#a3002f7a7d6dbfb4605890edd3cb9f52e", null ], 10 | [ "dataSize", "class_ogre__gl_t_f_1_1geometry_buffer.html#ab2d3d1b9cd17f33d2611441d2b6e6072", null ], 11 | [ "elementSize", "class_ogre__gl_t_f_1_1geometry_buffer.html#a757a1ee5ebe3962ffcc3426ba587e3e9", null ], 12 | [ "operator=", "class_ogre__gl_t_f_1_1geometry_buffer.html#a7fcd3c4570d200b057a36011e6a167d6", null ], 13 | [ "operator=", "class_ogre__gl_t_f_1_1geometry_buffer.html#acbef2e3597dd5773eb8fd296834b3c43", null ], 14 | [ "size", "class_ogre__gl_t_f_1_1geometry_buffer.html#a5db35182582fc2f8d60a6a8a87223706", null ] 15 | ]; -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1geometry_buffer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/class_ogre__gl_t_f_1_1geometry_buffer.png -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1geometry_buffer__base.js: -------------------------------------------------------------------------------- 1 | var class_ogre__gl_t_f_1_1geometry_buffer__base = 2 | [ 3 | [ "geometryBuffer_base", "class_ogre__gl_t_f_1_1geometry_buffer__base.html#a515b5154ede6404db73f34792240ecc6", null ], 4 | [ "geometryBuffer_base", "class_ogre__gl_t_f_1_1geometry_buffer__base.html#ad2e3fe1385e9e1759b5a02cc59f489f3", null ], 5 | [ "geometryBuffer_base", "class_ogre__gl_t_f_1_1geometry_buffer__base.html#a9896dca7e13576741589854015814a59", null ], 6 | [ "~geometryBuffer_base", "class_ogre__gl_t_f_1_1geometry_buffer__base.html#a4308f4d2b7cd30a38b2222ab81e7655e", null ], 7 | [ "_debugContentToLog", "class_ogre__gl_t_f_1_1geometry_buffer__base.html#a37da3c0ac6de98b2c071cefd8991cad6", null ], 8 | [ "dataAddress", "class_ogre__gl_t_f_1_1geometry_buffer__base.html#ae0a911ff53c18546c36c729ba6d75406", null ], 9 | [ "dataSize", "class_ogre__gl_t_f_1_1geometry_buffer__base.html#a45db2470734ca68b3095b96e552e034e", null ], 10 | [ "elementSize", "class_ogre__gl_t_f_1_1geometry_buffer__base.html#a529fac80dab0ee3682ffaa96e70a638b", null ], 11 | [ "operator=", "class_ogre__gl_t_f_1_1geometry_buffer__base.html#a82a36dbd450e499d3778840710b23066", null ], 12 | [ "operator=", "class_ogre__gl_t_f_1_1geometry_buffer__base.html#a7f7da2a2e47fe772b85a74722343611a", null ] 13 | ]; -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1geometry_buffer__base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/class_ogre__gl_t_f_1_1geometry_buffer__base.png -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1gl_t_f_loader.js: -------------------------------------------------------------------------------- 1 | var class_ogre__gl_t_f_1_1gl_t_f_loader = 2 | [ 3 | [ "glTFLoaderImpl", "structgl_t_f_loader_1_1gl_t_f_loader_impl.html", "structgl_t_f_loader_1_1gl_t_f_loader_impl" ], 4 | [ "glTFLoader", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#a3cdf1c1f9d24407a347d430e60ee5207", null ], 5 | [ "glTFLoader", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#a40845fca1ae8c6f3610f5aca55b17c1a", null ], 6 | [ "~glTFLoader", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#a85f0e69d53eb0e87f47d56d7fb5bf203", null ], 7 | [ "glTFLoader", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#ad42c3898cd3baaf3ad5528dd8fba0116", null ], 8 | [ "getItemFromFileSystem", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#ae07109a22311da5ecfb647edc80e0d71", null ], 9 | [ "getItemFromResource", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#ad7f0773e1eef31312a474d07f39c7a3c", null ], 10 | [ "getMeshFromFileSystem", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#a2a850ee80e62c910602df8feafd6ea08", null ], 11 | [ "getMeshFromResource", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#a90bc322cf88bac154bf345b5932cf3f8", null ], 12 | [ "getModelData", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#a6a100aa473b61768dfa556e20df11868", null ], 13 | [ "loadFromFileSystem", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#afac8c41be7c44a6dbb23aedeeaf69a4a", null ], 14 | [ "loadGlbResource", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#a854ae9d5696d874bd6f94e612e4aacc3", null ], 15 | [ "operator=", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#a8197ec374505efbcc52d34b89132792f", null ], 16 | [ "operator=", "class_ogre__gl_t_f_1_1gl_t_f_loader.html#a72bf9234aff75cfa7ab74412f8df7229", null ] 17 | ]; -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1gl_t_f_loader.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/class_ogre__gl_t_f_1_1gl_t_f_loader.png -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.js: -------------------------------------------------------------------------------- 1 | var class_ogre__gl_t_f_1_1gl_t_f_loader_plugin = 2 | [ 3 | [ "glTFLoaderPlugin", "class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html#ab32e2840c97dc4ff1d801811d5f7dce6", null ], 4 | [ "~glTFLoaderPlugin", "class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html#aa3350c2a7f14e61df26ea4d7dbbf2eee", null ], 5 | [ "getLoader", "class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html#ac6cbff1b735bf6164cca03d882e871f6", null ], 6 | [ "getName", "class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html#abc45ccdb5b0d99fd4c3dc6cd08f075d1", null ], 7 | [ "initialise", "class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html#a7b9fabbabe8fb5e3b804dea5ff37b5f4", null ], 8 | [ "install", "class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html#a8e6e8bcbce31abbc974a925dec0dadf5", null ], 9 | [ "shutdown", "class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html#ae7350bcc654ad38febb50d6f324a1291", null ], 10 | [ "uninstall", "class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html#a14e40fea73f164c81142b473411d88d4", null ] 11 | ]; -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.png -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1loader_adapter.js: -------------------------------------------------------------------------------- 1 | var class_ogre__gl_t_f_1_1loader_adapter = 2 | [ 3 | [ "impl", "structloader_adapter_1_1impl.html", "structloader_adapter_1_1impl" ], 4 | [ "loaderAdapter", "class_ogre__gl_t_f_1_1loader_adapter.html#a007f2e62d2ee48b0f5586b1cc1fbcfcb", null ], 5 | [ "~loaderAdapter", "class_ogre__gl_t_f_1_1loader_adapter.html#acf9c1fd0f8ed3b627358eae7ec208ae8", null ], 6 | [ "loaderAdapter", "class_ogre__gl_t_f_1_1loader_adapter.html#a4a32229838720cd617447c8a3543fb3b", null ], 7 | [ "loaderAdapter", "class_ogre__gl_t_f_1_1loader_adapter.html#affd638929e46eeed4b14444b3319654d", null ], 8 | [ "getDatablock", "class_ogre__gl_t_f_1_1loader_adapter.html#adec6084ea93de50084d45dcf5bc15d24", null ], 9 | [ "getDatablockCount", "class_ogre__gl_t_f_1_1loader_adapter.html#a923e23c343b8da4d51ff5969cad27520", null ], 10 | [ "getItem", "class_ogre__gl_t_f_1_1loader_adapter.html#a3dbd195b41463feaf4ad135370cf899a", null ], 11 | [ "getLastError", "class_ogre__gl_t_f_1_1loader_adapter.html#aee03b488647d7f1aa07be904126deed7", null ], 12 | [ "getMesh", "class_ogre__gl_t_f_1_1loader_adapter.html#acc344a61f7cef4addca802707bd1fea4", null ], 13 | [ "getTransform", "class_ogre__gl_t_f_1_1loader_adapter.html#ae61617a049626869954e57ff0a7a2109", null ], 14 | [ "isOk", "class_ogre__gl_t_f_1_1loader_adapter.html#a6b2db7f7f8f4a6b6f1d46a0843f40424", null ], 15 | [ "operator=", "class_ogre__gl_t_f_1_1loader_adapter.html#a408041f691670c6e717a9893ee7bcdd8", null ], 16 | [ "operator=", "class_ogre__gl_t_f_1_1loader_adapter.html#ad0433c4e951b5133d9c7ae93096db90a", null ], 17 | [ "glTFLoader", "class_ogre__gl_t_f_1_1loader_adapter.html#a5419ab1c574a8384f3dce8924ed2e06b", null ] 18 | ]; -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1material_loader.js: -------------------------------------------------------------------------------- 1 | var class_ogre__gl_t_f_1_1material_loader = 2 | [ 3 | [ "materialLoader", "class_ogre__gl_t_f_1_1material_loader.html#a5418ac4d8e75b27f99580517426987f7", null ], 4 | [ "getDatablock", "class_ogre__gl_t_f_1_1material_loader.html#a8f4d260d5207de20de4905d8f0e9227f", null ], 5 | [ "getDatablockCount", "class_ogre__gl_t_f_1_1material_loader.html#a72059ee0ea733ec27aec8cb5ab2a1167", null ] 6 | ]; -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1model_converter.js: -------------------------------------------------------------------------------- 1 | var class_ogre__gl_t_f_1_1model_converter = 2 | [ 3 | [ "modelConverter", "class_ogre__gl_t_f_1_1model_converter.html#ac68f5a0170dfce085252327664db3b4e", null ], 4 | [ "debugDump", "class_ogre__gl_t_f_1_1model_converter.html#a36b8c17a4cb9659f18b4d1694d890d8e", null ], 5 | [ "getOgreMesh", "class_ogre__gl_t_f_1_1model_converter.html#aa1b3645f13f01f0cbc2c5a301579806e", null ], 6 | [ "getTransform", "class_ogre__gl_t_f_1_1model_converter.html#ae2a3346605a5c88a5b1299bf936505ac", null ], 7 | [ "hasSkins", "class_ogre__gl_t_f_1_1model_converter.html#a76a7c5e01bd80b3b84a1cce175f57040", null ] 8 | ]; -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1skeleton_importer.js: -------------------------------------------------------------------------------- 1 | var class_ogre__gl_t_f_1_1skeleton_importer = 2 | [ 3 | [ "skeletonImporter", "class_ogre__gl_t_f_1_1skeleton_importer.html#a11798c5b89ddfa0878c1a852946c5957", null ], 4 | [ "getSkeleton", "class_ogre__gl_t_f_1_1skeleton_importer.html#af910753676d8c5bf1baea2bd3a596bbb", null ] 5 | ]; -------------------------------------------------------------------------------- /docs/doxygen/class_ogre__gl_t_f_1_1texture_importer.js: -------------------------------------------------------------------------------- 1 | var class_ogre__gl_t_f_1_1texture_importer = 2 | [ 3 | [ "textureImporter", "class_ogre__gl_t_f_1_1texture_importer.html#adb7e5a712efa692efe8f1fe5ac6c3748", null ], 4 | [ "generateGreyScaleFromChannel", "class_ogre__gl_t_f_1_1texture_importer.html#af3d16f304458fa4c688ed69d1ef35c5a", null ], 5 | [ "getNormalSNORM", "class_ogre__gl_t_f_1_1texture_importer.html#a2ca2141a31ee86e9ad699ef43200eb4d", null ], 6 | [ "getTexture", "class_ogre__gl_t_f_1_1texture_importer.html#a85af2b1ab4eb724816dc8903da867852", null ], 7 | [ "loadTextures", "class_ogre__gl_t_f_1_1texture_importer.html#a647b3d6ddf7d512607d03178ce31f63c", null ] 8 | ]; -------------------------------------------------------------------------------- /docs/doxygen/closed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/closed.png -------------------------------------------------------------------------------- /docs/doxygen/dir_68267d1309a1af8e8297ef4c3efbcdba.js: -------------------------------------------------------------------------------- 1 | var dir_68267d1309a1af8e8297ef4c3efbcdba = 2 | [ 3 | [ "private_headers", "dir_a91c8a98b5018f6a00270b1d102aba85.html", "dir_a91c8a98b5018f6a00270b1d102aba85" ], 4 | [ "Ogre_glTF.cpp", "_ogre__gl_t_f_8cpp_source.html", null ], 5 | [ "Ogre_glTF_common.cpp", "_ogre__gl_t_f__common_8cpp_source.html", null ], 6 | [ "Ogre_glTF_materialLoader.cpp", "_ogre__gl_t_f__material_loader_8cpp_source.html", null ], 7 | [ "Ogre_glTF_modelConverter.cpp", "_ogre__gl_t_f__model_converter_8cpp_source.html", null ], 8 | [ "Ogre_glTF_OgrePlugin.cpp", "_ogre__gl_t_f___ogre_plugin_8cpp_source.html", null ], 9 | [ "Ogre_glTF_OgreResource.cpp", "_ogre__gl_t_f___ogre_resource_8cpp_source.html", null ], 10 | [ "Ogre_glTF_skeletonImporter.cpp", "_ogre__gl_t_f__skeleton_importer_8cpp_source.html", null ], 11 | [ "Ogre_glTF_textureImporter.cpp", "_ogre__gl_t_f__texture_importer_8cpp_source.html", null ] 12 | ]; -------------------------------------------------------------------------------- /docs/doxygen/dir_a91c8a98b5018f6a00270b1d102aba85.js: -------------------------------------------------------------------------------- 1 | var dir_a91c8a98b5018f6a00270b1d102aba85 = 2 | [ 3 | [ "Ogre_glTF_common.hpp", "_ogre__gl_t_f__common_8hpp_source.html", null ], 4 | [ "Ogre_glTF_internal_utils.hpp", "_ogre__gl_t_f__internal__utils_8hpp_source.html", null ], 5 | [ "Ogre_glTF_materialLoader.hpp", "_ogre__gl_t_f__material_loader_8hpp_source.html", null ], 6 | [ "Ogre_glTF_modelConverter.hpp", "_ogre__gl_t_f__model_converter_8hpp_source.html", null ], 7 | [ "Ogre_glTF_skeletonImporter.hpp", "_ogre__gl_t_f__skeleton_importer_8hpp_source.html", null ], 8 | [ "Ogre_glTF_textureImporter.hpp", "_ogre__gl_t_f__texture_importer_8hpp_source.html", null ] 9 | ]; -------------------------------------------------------------------------------- /docs/doxygen/dir_d44c64559bbebec7f509842c48db8b23.js: -------------------------------------------------------------------------------- 1 | var dir_d44c64559bbebec7f509842c48db8b23 = 2 | [ 3 | [ "Ogre_glTF.hpp", "_ogre__gl_t_f_8hpp_source.html", null ], 4 | [ "Ogre_glTF_DLL.hpp", "_ogre__gl_t_f___d_l_l_8hpp_source.html", null ], 5 | [ "Ogre_glTF_OgrePlugin.hpp", "_ogre__gl_t_f___ogre_plugin_8hpp_source.html", null ], 6 | [ "Ogre_glTF_OgreResource.hpp", "_ogre__gl_t_f___ogre_resource_8hpp_source.html", null ] 7 | ]; -------------------------------------------------------------------------------- /docs/doxygen/doc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/doc.png -------------------------------------------------------------------------------- /docs/doxygen/doxygen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/doxygen.png -------------------------------------------------------------------------------- /docs/doxygen/files_dup.js: -------------------------------------------------------------------------------- 1 | var files_dup = 2 | [ 3 | [ "include", "dir_d44c64559bbebec7f509842c48db8b23.html", "dir_d44c64559bbebec7f509842c48db8b23" ], 4 | [ "src", "dir_68267d1309a1af8e8297ef4c3efbcdba.html", "dir_68267d1309a1af8e8297ef4c3efbcdba" ] 5 | ]; -------------------------------------------------------------------------------- /docs/doxygen/folderclosed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/folderclosed.png -------------------------------------------------------------------------------- /docs/doxygen/folderopen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/folderopen.png -------------------------------------------------------------------------------- /docs/doxygen/hierarchy.js: -------------------------------------------------------------------------------- 1 | var hierarchy = 2 | [ 3 | [ "Ogre_glTF::geometryBuffer_base", "class_ogre__gl_t_f_1_1geometry_buffer__base.html", [ 4 | [ "Ogre_glTF::geometryBuffer< T >", "class_ogre__gl_t_f_1_1geometry_buffer.html", null ] 5 | ] ], 6 | [ "Ogre_glTF::glTFLoader::glTFLoaderImpl", "structgl_t_f_loader_1_1gl_t_f_loader_impl.html", null ], 7 | [ "Ogre_glTF::glTFLoaderInterface", "struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html", [ 8 | [ "Ogre_glTF::glTFLoader", "class_ogre__gl_t_f_1_1gl_t_f_loader.html", null ] 9 | ] ], 10 | [ "Ogre_glTF::gltfPluginAccessor", "struct_ogre__gl_t_f_1_1gltf_plugin_accessor.html", [ 11 | [ "Ogre_glTF::glTFLoaderPlugin", "class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html", null ] 12 | ] ], 13 | [ "Ogre_glTF::loaderAdapter::impl", "structloader_adapter_1_1impl.html", null ], 14 | [ "Ogre_glTF::loaderAdapter", "class_ogre__gl_t_f_1_1loader_adapter.html", null ], 15 | [ "Ogre_glTF::materialLoader", "class_ogre__gl_t_f_1_1material_loader.html", null ], 16 | [ "Ogre_glTF::MeshAndDataBlock", "struct_ogre__gl_t_f_1_1_mesh_and_data_block.html", null ], 17 | [ "Ogre_glTF::modelConverter", "class_ogre__gl_t_f_1_1model_converter.html", null ], 18 | [ "Ogre_glTF::ModelInformation", "struct_ogre__gl_t_f_1_1_model_information.html", null ], 19 | [ "Ogre_glTF::ModelInformation::ModelTransform", "struct_ogre__gl_t_f_1_1_model_information_1_1_model_transform.html", null ], 20 | [ "Plugin", null, [ 21 | [ "Ogre_glTF::glTFLoaderPlugin", "class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html", null ] 22 | ] ], 23 | [ "Resource", null, [ 24 | [ "Ogre_glTF::GlbFile", "class_ogre__gl_t_f_1_1_glb_file.html", null ] 25 | ] ], 26 | [ "ResourceManager", null, [ 27 | [ "Ogre_glTF::GlbFileManager", "class_ogre__gl_t_f_1_1_glb_file_manager.html", null ] 28 | ] ], 29 | [ "Singleton", null, [ 30 | [ "Ogre_glTF::GlbFileManager", "class_ogre__gl_t_f_1_1_glb_file_manager.html", null ] 31 | ] ], 32 | [ "Ogre_glTF::skeletonImporter", "class_ogre__gl_t_f_1_1skeleton_importer.html", null ], 33 | [ "Ogre_glTF::textureImporter", "class_ogre__gl_t_f_1_1texture_importer.html", null ], 34 | [ "Ogre_glTF::vertexBufferPart", "struct_ogre__gl_t_f_1_1vertex_buffer_part.html", null ] 35 | ]; -------------------------------------------------------------------------------- /docs/doxygen/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Ogre_glTF: Main Page 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 |
28 | 29 | 30 | 31 | 36 | 37 | 38 |
32 |
Ogre_glTF 33 |
34 |
glTF import library for Ogre
35 |
39 |
40 | 41 | 42 | 47 | 48 | 49 | 56 | 57 |
58 |
59 | 64 |
66 |
67 |
68 | 73 |
74 | 75 |
79 |
80 | 81 | 82 |
83 | 86 |
87 | 88 |
89 |
90 |
Ogre_glTF Documentation
91 |
92 |
93 |
94 |
95 | 96 | 103 | 104 | 105 | -------------------------------------------------------------------------------- /docs/doxygen/menu.js: -------------------------------------------------------------------------------- 1 | /* 2 | @licstart The following is the entire license notice for the 3 | JavaScript code in this file. 4 | 5 | Copyright (C) 1997-2017 by Dimitri van Heesch 6 | 7 | This program is free software; you can redistribute it and/or modify 8 | it under the terms of the GNU General Public License as published by 9 | the Free Software Foundation; either version 2 of the License, or 10 | (at your option) any later version. 11 | 12 | This program is distributed in the hope that it will be useful, 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License along 18 | with this program; if not, write to the Free Software Foundation, Inc., 19 | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 20 | 21 | @licend The above is the entire license notice 22 | for the JavaScript code in this file 23 | */ 24 | function initMenu(relPath,searchEnabled,serverSide,searchPage,search) { 25 | function makeTree(data,relPath) { 26 | var result=''; 27 | if ('children' in data) { 28 | result+=''; 35 | } 36 | return result; 37 | } 38 | 39 | $('#main-nav').append(makeTree(menudata,relPath)); 40 | $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu'); 41 | if (searchEnabled) { 42 | if (serverSide) { 43 | $('#main-menu').append('
  • '); 44 | } else { 45 | $('#main-menu').append('
  • '); 46 | } 47 | } 48 | $('#main-menu').smartmenus(); 49 | } 50 | /* @license-end */ 51 | -------------------------------------------------------------------------------- /docs/doxygen/menudata.js: -------------------------------------------------------------------------------- 1 | /* 2 | @ @licstart The following is the entire license notice for the 3 | JavaScript code in this file. 4 | 5 | Copyright (C) 1997-2017 by Dimitri van Heesch 6 | 7 | This program is free software; you can redistribute it and/or modify 8 | it under the terms of the GNU General Public License as published by 9 | the Free Software Foundation; either version 2 of the License, or 10 | (at your option) any later version. 11 | 12 | This program is distributed in the hope that it will be useful, 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License along 18 | with this program; if not, write to the Free Software Foundation, Inc., 19 | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 20 | 21 | @licend The above is the entire license notice 22 | for the JavaScript code in this file 23 | */ 24 | var menudata={children:[ 25 | {text:"Main Page",url:"index.html"}, 26 | {text:"Classes",url:"annotated.html",children:[ 27 | {text:"Class List",url:"annotated.html"}, 28 | {text:"Class Index",url:"classes.html"}, 29 | {text:"Class Hierarchy",url:"hierarchy.html"}, 30 | {text:"Class Members",url:"functions.html",children:[ 31 | {text:"All",url:"functions.html",children:[ 32 | {text:"_",url:"functions.html#index__"}, 33 | {text:"b",url:"functions.html#index_b"}, 34 | {text:"c",url:"functions.html#index_c"}, 35 | {text:"d",url:"functions.html#index_d"}, 36 | {text:"e",url:"functions.html#index_e"}, 37 | {text:"f",url:"functions.html#index_f"}, 38 | {text:"g",url:"functions.html#index_g"}, 39 | {text:"h",url:"functions.html#index_h"}, 40 | {text:"i",url:"functions.html#index_i"}, 41 | {text:"l",url:"functions.html#index_l"}, 42 | {text:"m",url:"functions.html#index_m"}, 43 | {text:"o",url:"functions.html#index_o"}, 44 | {text:"p",url:"functions.html#index_p"}, 45 | {text:"s",url:"functions.html#index_s"}, 46 | {text:"t",url:"functions.html#index_t"}, 47 | {text:"u",url:"functions.html#index_u"}, 48 | {text:"v",url:"functions.html#index_v"}, 49 | {text:"w",url:"functions.html#index_w"}, 50 | {text:"~",url:"functions.html#index_0x7e"}]}, 51 | {text:"Functions",url:"functions_func.html",children:[ 52 | {text:"_",url:"functions_func.html#index__"}, 53 | {text:"c",url:"functions_func.html#index_c"}, 54 | {text:"d",url:"functions_func.html#index_d"}, 55 | {text:"e",url:"functions_func.html#index_e"}, 56 | {text:"f",url:"functions_func.html#index_f"}, 57 | {text:"g",url:"functions_func.html#index_g"}, 58 | {text:"h",url:"functions_func.html#index_h"}, 59 | {text:"i",url:"functions_func.html#index_i"}, 60 | {text:"l",url:"functions_func.html#index_l"}, 61 | {text:"m",url:"functions_func.html#index_m"}, 62 | {text:"o",url:"functions_func.html#index_o"}, 63 | {text:"s",url:"functions_func.html#index_s"}, 64 | {text:"t",url:"functions_func.html#index_t"}, 65 | {text:"u",url:"functions_func.html#index_u"}, 66 | {text:"~",url:"functions_func.html#index_0x7e"}]}, 67 | {text:"Variables",url:"functions_vars.html"}, 68 | {text:"Enumerations",url:"functions_enum.html"}]}]}, 69 | {text:"Files",url:"files.html",children:[ 70 | {text:"File List",url:"files.html"}]}]} 71 | -------------------------------------------------------------------------------- /docs/doxygen/nav_f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/nav_f.png -------------------------------------------------------------------------------- /docs/doxygen/nav_g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/nav_g.png -------------------------------------------------------------------------------- /docs/doxygen/nav_h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/nav_h.png -------------------------------------------------------------------------------- /docs/doxygen/navtree.css: -------------------------------------------------------------------------------- 1 | #nav-tree .children_ul { 2 | margin:0; 3 | padding:4px; 4 | } 5 | 6 | #nav-tree ul { 7 | list-style:none outside none; 8 | margin:0px; 9 | padding:0px; 10 | } 11 | 12 | #nav-tree li { 13 | white-space:nowrap; 14 | margin:0px; 15 | padding:0px; 16 | } 17 | 18 | #nav-tree .plus { 19 | margin:0px; 20 | } 21 | 22 | #nav-tree .selected { 23 | background-image: url('tab_a.png'); 24 | background-repeat:repeat-x; 25 | color: #fff; 26 | text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); 27 | } 28 | 29 | #nav-tree img { 30 | margin:0px; 31 | padding:0px; 32 | border:0px; 33 | vertical-align: middle; 34 | } 35 | 36 | #nav-tree a { 37 | text-decoration:none; 38 | padding:0px; 39 | margin:0px; 40 | outline:none; 41 | } 42 | 43 | #nav-tree .label { 44 | margin:0px; 45 | padding:0px; 46 | font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; 47 | } 48 | 49 | #nav-tree .label a { 50 | padding:2px; 51 | } 52 | 53 | #nav-tree .selected a { 54 | text-decoration:none; 55 | color:#fff; 56 | } 57 | 58 | #nav-tree .children_ul { 59 | margin:0px; 60 | padding:0px; 61 | } 62 | 63 | #nav-tree .item { 64 | margin:0px; 65 | padding:0px; 66 | } 67 | 68 | #nav-tree { 69 | padding: 0px 0px; 70 | background-color: #FAFAFF; 71 | font-size:14px; 72 | overflow:auto; 73 | } 74 | 75 | #doc-content { 76 | overflow:auto; 77 | display:block; 78 | padding:0px; 79 | margin:0px; 80 | -webkit-overflow-scrolling : touch; /* iOS 5+ */ 81 | } 82 | 83 | #side-nav { 84 | padding:0 6px 0 0; 85 | margin: 0px; 86 | display:block; 87 | position: absolute; 88 | left: 0px; 89 | width: 250px; 90 | } 91 | 92 | .ui-resizable .ui-resizable-handle { 93 | display:block; 94 | } 95 | 96 | .ui-resizable-e { 97 | background-image:url("splitbar.png"); 98 | background-size:100%; 99 | background-repeat:no-repeat; 100 | background-attachment: scroll; 101 | cursor:ew-resize; 102 | height:100%; 103 | right:0; 104 | top:0; 105 | width:6px; 106 | } 107 | 108 | .ui-resizable-handle { 109 | display:none; 110 | font-size:0.1px; 111 | position:absolute; 112 | z-index:1; 113 | } 114 | 115 | #nav-tree-contents { 116 | margin: 6px 0px 0px 0px; 117 | } 118 | 119 | #nav-tree { 120 | background-image:url('nav_h.png'); 121 | background-repeat:repeat-x; 122 | background-color: #F9FAFC; 123 | -webkit-overflow-scrolling : touch; /* iOS 5+ */ 124 | } 125 | 126 | #nav-sync { 127 | position:absolute; 128 | top:5px; 129 | right:24px; 130 | z-index:0; 131 | } 132 | 133 | #nav-sync img { 134 | opacity:0.3; 135 | } 136 | 137 | #nav-sync img:hover { 138 | opacity:0.9; 139 | } 140 | 141 | @media print 142 | { 143 | #nav-tree { display: none; } 144 | div.ui-resizable-handle { display: none; position: relative; } 145 | } 146 | 147 | -------------------------------------------------------------------------------- /docs/doxygen/navtreedata.js: -------------------------------------------------------------------------------- 1 | /* 2 | @ @licstart The following is the entire license notice for the 3 | JavaScript code in this file. 4 | 5 | Copyright (C) 1997-2017 by Dimitri van Heesch 6 | 7 | This program is free software; you can redistribute it and/or modify 8 | it under the terms of the GNU General Public License as published by 9 | the Free Software Foundation; either version 2 of the License, or 10 | (at your option) any later version. 11 | 12 | This program is distributed in the hope that it will be useful, 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License along 18 | with this program; if not, write to the Free Software Foundation, Inc., 19 | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 20 | 21 | @licend The above is the entire license notice 22 | for the JavaScript code in this file 23 | */ 24 | var NAVTREE = 25 | [ 26 | [ "Ogre_glTF", "index.html", [ 27 | [ "Classes", "annotated.html", [ 28 | [ "Class List", "annotated.html", "annotated_dup" ], 29 | [ "Class Index", "classes.html", null ], 30 | [ "Class Hierarchy", "hierarchy.html", "hierarchy" ], 31 | [ "Class Members", "functions.html", [ 32 | [ "All", "functions.html", null ], 33 | [ "Functions", "functions_func.html", null ], 34 | [ "Variables", "functions_vars.html", null ], 35 | [ "Enumerations", "functions_enum.html", null ] 36 | ] ] 37 | ] ], 38 | [ "Files", "files.html", [ 39 | [ "File List", "files.html", "files_dup" ] 40 | ] ] 41 | ] ] 42 | ]; 43 | 44 | var NAVTREEINDEX = 45 | [ 46 | ".html" 47 | ]; 48 | 49 | var SYNCONMSG = 'click to disable panel synchronisation'; 50 | var SYNCOFFMSG = 'click to enable panel synchronisation'; -------------------------------------------------------------------------------- /docs/doxygen/open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/open.png -------------------------------------------------------------------------------- /docs/doxygen/search/all_0.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_0.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['_5fdebugcontenttolog',['_debugContentToLog',['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#a37da3c0ac6de98b2c071cefd8991cad6',1,'Ogre_glTF::geometryBuffer_base::_debugContentToLog()'],['../class_ogre__gl_t_f_1_1geometry_buffer.html#aab778a369ca82fa116e38810e4489446',1,'Ogre_glTF::geometryBuffer::_debugContentToLog()']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_1.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_1.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['buffer',['buffer',['../struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a981d73ff6baa760bdc1d62fe1699204e',1,'Ogre_glTF::vertexBufferPart']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_10.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_10.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['valid',['valid',['../structloader_adapter_1_1impl.html#ab649b615fd7c007d594e6fa25aa27b65',1,'loaderAdapter::impl']]], 4 | ['vertexbufferpart',['vertexBufferPart',['../struct_ogre__gl_t_f_1_1vertex_buffer_part.html',1,'Ogre_glTF']]], 5 | ['vertexcount',['vertexCount',['../struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a281c887ec55e59d05b6f9ed003495947',1,'Ogre_glTF::vertexBufferPart']]] 6 | ]; 7 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_11.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_11.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['warnings',['warnings',['../structloader_adapter_1_1impl.html#a9e7b3bf5bd1f566a8889cf754fac7df5',1,'loaderAdapter::impl']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_2.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_2.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['calculatesize',['calculateSize',['../class_ogre__gl_t_f_1_1_glb_file.html#a8d09ec646fc05af0d63730b99b11e0e3',1,'Ogre_glTF::GlbFile']]], 4 | ['createimpl',['createImpl',['../class_ogre__gl_t_f_1_1_glb_file_manager.html#a9c6f32e99a79e21bdeda66530c630620',1,'Ogre_glTF::GlbFileManager']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_3.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_3.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['data',['data',['../class_ogre__gl_t_f_1_1geometry_buffer.html#aee1e475bb4e8f08f2fc936eafad003ae',1,'Ogre_glTF::geometryBuffer']]], 4 | ['dataaddress',['dataAddress',['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#ae0a911ff53c18546c36c729ba6d75406',1,'Ogre_glTF::geometryBuffer_base::dataAddress()'],['../class_ogre__gl_t_f_1_1geometry_buffer.html#a3002f7a7d6dbfb4605890edd3cb9f52e',1,'Ogre_glTF::geometryBuffer::dataAddress()']]], 5 | ['datablock',['datablock',['../struct_ogre__gl_t_f_1_1_mesh_and_data_block.html#add3d734b373fcf3091b42f3e755f59ac',1,'Ogre_glTF::MeshAndDataBlock']]], 6 | ['datasize',['dataSize',['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#a45db2470734ca68b3095b96e552e034e',1,'Ogre_glTF::geometryBuffer_base::dataSize()'],['../class_ogre__gl_t_f_1_1geometry_buffer.html#ab2d3d1b9cd17f33d2611441d2b6e6072',1,'Ogre_glTF::geometryBuffer::dataSize()']]], 7 | ['debugdump',['debugDump',['../class_ogre__gl_t_f_1_1model_converter.html#a36b8c17a4cb9659f18b4d1694d890d8e',1,'Ogre_glTF::modelConverter']]], 8 | ['detecttype',['detectType',['../structgl_t_f_loader_1_1gl_t_f_loader_impl.html#a57ee542d4c011a28af46166f2adc6362',1,'glTFLoader::glTFLoaderImpl']]] 9 | ]; 10 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_4.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_4.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['elementsize',['elementSize',['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#a529fac80dab0ee3682ffaa96e70a638b',1,'Ogre_glTF::geometryBuffer_base::elementSize()'],['../class_ogre__gl_t_f_1_1geometry_buffer.html#a757a1ee5ebe3962ffcc3426ba587e3e9',1,'Ogre_glTF::geometryBuffer::elementSize()']]], 4 | ['error',['error',['../structloader_adapter_1_1impl.html#ab1902523c681ab8317d80a64705a3a74',1,'loaderAdapter::impl']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_5.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_5.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['filetype',['FileType',['../structgl_t_f_loader_1_1gl_t_f_loader_impl.html#af58a70adfc0e5e2acd27093732e82d52',1,'glTFLoader::glTFLoaderImpl']]], 4 | ['findplugin',['findPlugin',['../struct_ogre__gl_t_f_1_1gltf_plugin_accessor.html#a86b2e85fa1c4d5b059ce818d7137c64f',1,'Ogre_glTF::gltfPluginAccessor']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_6.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_7.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_7.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['hasskins',['hasSkins',['../class_ogre__gl_t_f_1_1model_converter.html#a76a7c5e01bd80b3b84a1cce175f57040',1,'Ogre_glTF::modelConverter']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_8.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_8.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['impl',['impl',['../structloader_adapter_1_1impl.html',1,'Ogre_glTF::loaderAdapter::impl'],['../structloader_adapter_1_1impl.html#aebc596a65a3b61a03f10e113b2e05e02',1,'Ogre_glTF::loaderAdapter::impl::impl()']]], 4 | ['isok',['isOk',['../class_ogre__gl_t_f_1_1loader_adapter.html#a6b2db7f7f8f4a6b6f1d46a0843f40424',1,'Ogre_glTF::loaderAdapter']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_9.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_9.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['load',['load',['../class_ogre__gl_t_f_1_1_glb_file_manager.html#a00d534d4810fb5316d5cc4b5ff0d0a7b',1,'Ogre_glTF::GlbFileManager']]], 4 | ['loader',['loader',['../structgl_t_f_loader_1_1gl_t_f_loader_impl.html#a45c1ffc29023c24f0ac386cfb113779b',1,'glTFLoader::glTFLoaderImpl']]], 5 | ['loaderadapter',['loaderAdapter',['../class_ogre__gl_t_f_1_1loader_adapter.html',1,'Ogre_glTF::loaderAdapter'],['../class_ogre__gl_t_f_1_1loader_adapter.html#a007f2e62d2ee48b0f5586b1cc1fbcfcb',1,'Ogre_glTF::loaderAdapter::loaderAdapter()'],['../class_ogre__gl_t_f_1_1loader_adapter.html#a4a32229838720cd617447c8a3543fb3b',1,'Ogre_glTF::loaderAdapter::loaderAdapter(const loaderAdapter &)=delete'],['../class_ogre__gl_t_f_1_1loader_adapter.html#affd638929e46eeed4b14444b3319654d',1,'Ogre_glTF::loaderAdapter::loaderAdapter(loaderAdapter &&other) noexcept']]], 6 | ['loadfrom',['LoadFrom',['../struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html#a56f74d9fb7f1b1aae1e962b3c2b18416',1,'Ogre_glTF::glTFLoaderInterface']]], 7 | ['loadfromfilesystem',['loadFromFileSystem',['../class_ogre__gl_t_f_1_1gl_t_f_loader.html#afac8c41be7c44a6dbb23aedeeaf69a4a',1,'Ogre_glTF::glTFLoader']]], 8 | ['loadglbresource',['loadGlbResource',['../class_ogre__gl_t_f_1_1gl_t_f_loader.html#a854ae9d5696d874bd6f94e612e4aacc3',1,'Ogre_glTF::glTFLoader']]], 9 | ['loadimpl',['loadImpl',['../class_ogre__gl_t_f_1_1_glb_file.html#aed8efa1502e499ad8e264bdd045edd42',1,'Ogre_glTF::GlbFile']]], 10 | ['loadinto',['loadInto',['../structgl_t_f_loader_1_1gl_t_f_loader_impl.html#ab24efad6bf9ce8316d08d383eb313678',1,'glTFLoader::glTFLoaderImpl']]], 11 | ['loadtextures',['loadTextures',['../class_ogre__gl_t_f_1_1texture_importer.html#a647b3d6ddf7d512607d03178ce31f63c',1,'Ogre_glTF::textureImporter']]] 12 | ]; 13 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_a.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_a.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['makeitem',['makeItem',['../struct_ogre__gl_t_f_1_1_model_information.html#a8f384f907b05d25364eb035e7a85f813',1,'Ogre_glTF::ModelInformation']]], 4 | ['materialload',['materialLoad',['../structloader_adapter_1_1impl.html#a00bf8d32948b8f5190a343ee4023ec99',1,'loaderAdapter::impl']]], 5 | ['materialloader',['materialLoader',['../class_ogre__gl_t_f_1_1material_loader.html',1,'Ogre_glTF::materialLoader'],['../class_ogre__gl_t_f_1_1material_loader.html#a5418ac4d8e75b27f99580517426987f7',1,'Ogre_glTF::materialLoader::materialLoader()']]], 6 | ['mesh',['Mesh',['../struct_ogre__gl_t_f_1_1_mesh_and_data_block.html#a3ed0ba7f6f859355493de78eb49cf8ec',1,'Ogre_glTF::MeshAndDataBlock::Mesh()'],['../struct_ogre__gl_t_f_1_1_model_information.html#ae8a1964f828958a285ef2dce6324097f',1,'Ogre_glTF::ModelInformation::mesh()']]], 7 | ['meshanddatablock',['MeshAndDataBlock',['../struct_ogre__gl_t_f_1_1_mesh_and_data_block.html',1,'Ogre_glTF']]], 8 | ['model',['model',['../structloader_adapter_1_1impl.html#a017131119684a2a51353488ac21137b2',1,'loaderAdapter::impl']]], 9 | ['modelconv',['modelConv',['../structloader_adapter_1_1impl.html#ab105fd46afde9caf98dba76009ac10ad',1,'loaderAdapter::impl']]], 10 | ['modelconverter',['modelConverter',['../class_ogre__gl_t_f_1_1model_converter.html',1,'Ogre_glTF::modelConverter'],['../class_ogre__gl_t_f_1_1model_converter.html#ac68f5a0170dfce085252327664db3b4e',1,'Ogre_glTF::modelConverter::modelConverter()']]], 11 | ['modelinformation',['ModelInformation',['../struct_ogre__gl_t_f_1_1_model_information.html',1,'Ogre_glTF']]], 12 | ['modeltransform',['ModelTransform',['../struct_ogre__gl_t_f_1_1_model_information_1_1_model_transform.html',1,'Ogre_glTF::ModelInformation']]] 13 | ]; 14 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_b.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_b.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['operator_3d',['operator=',['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#a82a36dbd450e499d3778840710b23066',1,'Ogre_glTF::geometryBuffer_base::operator=(const geometryBuffer_base &)=delete'],['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#a7f7da2a2e47fe772b85a74722343611a',1,'Ogre_glTF::geometryBuffer_base::operator=(geometryBuffer_base &&)=default'],['../class_ogre__gl_t_f_1_1geometry_buffer.html#a7fcd3c4570d200b057a36011e6a167d6',1,'Ogre_glTF::geometryBuffer::operator=(const geometryBuffer &)=delete'],['../class_ogre__gl_t_f_1_1geometry_buffer.html#acbef2e3597dd5773eb8fd296834b3c43',1,'Ogre_glTF::geometryBuffer::operator=(geometryBuffer &&other) noexcept'],['../class_ogre__gl_t_f_1_1loader_adapter.html#a408041f691670c6e717a9893ee7bcdd8',1,'Ogre_glTF::loaderAdapter::operator=(const loaderAdapter &)=delete'],['../class_ogre__gl_t_f_1_1loader_adapter.html#ad0433c4e951b5133d9c7ae93096db90a',1,'Ogre_glTF::loaderAdapter::operator=(loaderAdapter &&other) noexcept'],['../class_ogre__gl_t_f_1_1gl_t_f_loader.html#a8197ec374505efbcc52d34b89132792f',1,'Ogre_glTF::glTFLoader::operator=(glTFLoader &&other) noexcept'],['../class_ogre__gl_t_f_1_1gl_t_f_loader.html#a72bf9234aff75cfa7ab74412f8df7229',1,'Ogre_glTF::glTFLoader::operator=(const glTFLoader &)=delete']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_c.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_c.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['pbrmateriallist',['pbrMaterialList',['../struct_ogre__gl_t_f_1_1_model_information.html#a30409c300254e8eaddd4ed3710b5eb3f',1,'Ogre_glTF::ModelInformation']]], 4 | ['pervertex',['perVertex',['../struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a35944dc7e5c6373ca77971f51108c039',1,'Ogre_glTF::vertexBufferPart']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_d.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_d.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['semantic',['semantic',['../struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a2dc9b040e759fa3523a2abd19c4f9aed',1,'Ogre_glTF::vertexBufferPart']]], 4 | ['size',['size',['../class_ogre__gl_t_f_1_1geometry_buffer.html#a5db35182582fc2f8d60a6a8a87223706',1,'Ogre_glTF::geometryBuffer']]], 5 | ['skeletonimp',['skeletonImp',['../structloader_adapter_1_1impl.html#a910e82c85231e87e90a3ccc7e360ebd0',1,'loaderAdapter::impl']]], 6 | ['skeletonimporter',['skeletonImporter',['../class_ogre__gl_t_f_1_1skeleton_importer.html',1,'Ogre_glTF::skeletonImporter'],['../class_ogre__gl_t_f_1_1skeleton_importer.html#a11798c5b89ddfa0878c1a852946c5957',1,'Ogre_glTF::skeletonImporter::skeletonImporter()']]] 7 | ]; 8 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_e.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_e.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['textureimp',['textureImp',['../structloader_adapter_1_1impl.html#a9af00068eb708150c0a8b82224aac4b7',1,'loaderAdapter::impl']]], 4 | ['textureimporter',['textureImporter',['../class_ogre__gl_t_f_1_1texture_importer.html',1,'Ogre_glTF::textureImporter'],['../class_ogre__gl_t_f_1_1texture_importer.html#adb7e5a712efa692efe8f1fe5ac6c3748',1,'Ogre_glTF::textureImporter::textureImporter()']]], 5 | ['type',['type',['../struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a1f373736926886a45941ca38e8d7930c',1,'Ogre_glTF::vertexBufferPart']]] 6 | ]; 7 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_f.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/all_f.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['unloadimpl',['unloadImpl',['../class_ogre__gl_t_f_1_1_glb_file.html#a5ec116597334c084b992c23c76847c4b',1,'Ogre_glTF::GlbFile']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_0.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_0.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['geometrybuffer',['geometryBuffer',['../class_ogre__gl_t_f_1_1geometry_buffer.html',1,'Ogre_glTF']]], 4 | ['geometrybuffer_5fbase',['geometryBuffer_base',['../class_ogre__gl_t_f_1_1geometry_buffer__base.html',1,'Ogre_glTF']]], 5 | ['glbfile',['GlbFile',['../class_ogre__gl_t_f_1_1_glb_file.html',1,'Ogre_glTF']]], 6 | ['glbfilemanager',['GlbFileManager',['../class_ogre__gl_t_f_1_1_glb_file_manager.html',1,'Ogre_glTF']]], 7 | ['gltfloader',['glTFLoader',['../class_ogre__gl_t_f_1_1gl_t_f_loader.html',1,'Ogre_glTF']]], 8 | ['gltfloaderimpl',['glTFLoaderImpl',['../structgl_t_f_loader_1_1gl_t_f_loader_impl.html',1,'Ogre_glTF::glTFLoader']]], 9 | ['gltfloaderinterface',['glTFLoaderInterface',['../struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html',1,'Ogre_glTF']]], 10 | ['gltfloaderplugin',['glTFLoaderPlugin',['../class_ogre__gl_t_f_1_1gl_t_f_loader_plugin.html',1,'Ogre_glTF']]], 11 | ['gltfpluginaccessor',['gltfPluginAccessor',['../struct_ogre__gl_t_f_1_1gltf_plugin_accessor.html',1,'Ogre_glTF']]] 12 | ]; 13 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_1.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_1.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['impl',['impl',['../structloader_adapter_1_1impl.html',1,'Ogre_glTF::loaderAdapter']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_2.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_2.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['loaderadapter',['loaderAdapter',['../class_ogre__gl_t_f_1_1loader_adapter.html',1,'Ogre_glTF']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_3.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_3.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['materialloader',['materialLoader',['../class_ogre__gl_t_f_1_1material_loader.html',1,'Ogre_glTF']]], 4 | ['meshanddatablock',['MeshAndDataBlock',['../struct_ogre__gl_t_f_1_1_mesh_and_data_block.html',1,'Ogre_glTF']]], 5 | ['modelconverter',['modelConverter',['../class_ogre__gl_t_f_1_1model_converter.html',1,'Ogre_glTF']]], 6 | ['modelinformation',['ModelInformation',['../struct_ogre__gl_t_f_1_1_model_information.html',1,'Ogre_glTF']]], 7 | ['modeltransform',['ModelTransform',['../struct_ogre__gl_t_f_1_1_model_information_1_1_model_transform.html',1,'Ogre_glTF::ModelInformation']]] 8 | ]; 9 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_4.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_4.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['skeletonimporter',['skeletonImporter',['../class_ogre__gl_t_f_1_1skeleton_importer.html',1,'Ogre_glTF']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_5.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_5.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['textureimporter',['textureImporter',['../class_ogre__gl_t_f_1_1texture_importer.html',1,'Ogre_glTF']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_6.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/classes_6.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['vertexbufferpart',['vertexBufferPart',['../struct_ogre__gl_t_f_1_1vertex_buffer_part.html',1,'Ogre_glTF']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/search/close.png -------------------------------------------------------------------------------- /docs/doxygen/search/enums_0.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/enums_0.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['filetype',['FileType',['../structgl_t_f_loader_1_1gl_t_f_loader_impl.html#af58a70adfc0e5e2acd27093732e82d52',1,'glTFLoader::glTFLoaderImpl']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_0.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_0.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['_5fdebugcontenttolog',['_debugContentToLog',['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#a37da3c0ac6de98b2c071cefd8991cad6',1,'Ogre_glTF::geometryBuffer_base::_debugContentToLog()'],['../class_ogre__gl_t_f_1_1geometry_buffer.html#aab778a369ca82fa116e38810e4489446',1,'Ogre_glTF::geometryBuffer::_debugContentToLog()']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_1.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_1.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['calculatesize',['calculateSize',['../class_ogre__gl_t_f_1_1_glb_file.html#a8d09ec646fc05af0d63730b99b11e0e3',1,'Ogre_glTF::GlbFile']]], 4 | ['createimpl',['createImpl',['../class_ogre__gl_t_f_1_1_glb_file_manager.html#a9c6f32e99a79e21bdeda66530c630620',1,'Ogre_glTF::GlbFileManager']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_2.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_2.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['data',['data',['../class_ogre__gl_t_f_1_1geometry_buffer.html#aee1e475bb4e8f08f2fc936eafad003ae',1,'Ogre_glTF::geometryBuffer']]], 4 | ['dataaddress',['dataAddress',['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#ae0a911ff53c18546c36c729ba6d75406',1,'Ogre_glTF::geometryBuffer_base::dataAddress()'],['../class_ogre__gl_t_f_1_1geometry_buffer.html#a3002f7a7d6dbfb4605890edd3cb9f52e',1,'Ogre_glTF::geometryBuffer::dataAddress()']]], 5 | ['datasize',['dataSize',['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#a45db2470734ca68b3095b96e552e034e',1,'Ogre_glTF::geometryBuffer_base::dataSize()'],['../class_ogre__gl_t_f_1_1geometry_buffer.html#ab2d3d1b9cd17f33d2611441d2b6e6072',1,'Ogre_glTF::geometryBuffer::dataSize()']]], 6 | ['debugdump',['debugDump',['../class_ogre__gl_t_f_1_1model_converter.html#a36b8c17a4cb9659f18b4d1694d890d8e',1,'Ogre_glTF::modelConverter']]], 7 | ['detecttype',['detectType',['../structgl_t_f_loader_1_1gl_t_f_loader_impl.html#a57ee542d4c011a28af46166f2adc6362',1,'glTFLoader::glTFLoaderImpl']]] 8 | ]; 9 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_3.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_3.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['elementsize',['elementSize',['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#a529fac80dab0ee3682ffaa96e70a638b',1,'Ogre_glTF::geometryBuffer_base::elementSize()'],['../class_ogre__gl_t_f_1_1geometry_buffer.html#a757a1ee5ebe3962ffcc3426ba587e3e9',1,'Ogre_glTF::geometryBuffer::elementSize()']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_4.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_4.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['findplugin',['findPlugin',['../struct_ogre__gl_t_f_1_1gltf_plugin_accessor.html#a86b2e85fa1c4d5b059ce818d7137c64f',1,'Ogre_glTF::gltfPluginAccessor']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_5.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_6.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_6.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['hasskins',['hasSkins',['../class_ogre__gl_t_f_1_1model_converter.html#a76a7c5e01bd80b3b84a1cce175f57040',1,'Ogre_glTF::modelConverter']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_7.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_7.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['impl',['impl',['../structloader_adapter_1_1impl.html#aebc596a65a3b61a03f10e113b2e05e02',1,'loaderAdapter::impl']]], 4 | ['isok',['isOk',['../class_ogre__gl_t_f_1_1loader_adapter.html#a6b2db7f7f8f4a6b6f1d46a0843f40424',1,'Ogre_glTF::loaderAdapter']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_8.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_8.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['load',['load',['../class_ogre__gl_t_f_1_1_glb_file_manager.html#a00d534d4810fb5316d5cc4b5ff0d0a7b',1,'Ogre_glTF::GlbFileManager']]], 4 | ['loaderadapter',['loaderAdapter',['../class_ogre__gl_t_f_1_1loader_adapter.html#a007f2e62d2ee48b0f5586b1cc1fbcfcb',1,'Ogre_glTF::loaderAdapter::loaderAdapter()'],['../class_ogre__gl_t_f_1_1loader_adapter.html#a4a32229838720cd617447c8a3543fb3b',1,'Ogre_glTF::loaderAdapter::loaderAdapter(const loaderAdapter &)=delete'],['../class_ogre__gl_t_f_1_1loader_adapter.html#affd638929e46eeed4b14444b3319654d',1,'Ogre_glTF::loaderAdapter::loaderAdapter(loaderAdapter &&other) noexcept']]], 5 | ['loadfromfilesystem',['loadFromFileSystem',['../class_ogre__gl_t_f_1_1gl_t_f_loader.html#afac8c41be7c44a6dbb23aedeeaf69a4a',1,'Ogre_glTF::glTFLoader']]], 6 | ['loadglbresource',['loadGlbResource',['../class_ogre__gl_t_f_1_1gl_t_f_loader.html#a854ae9d5696d874bd6f94e612e4aacc3',1,'Ogre_glTF::glTFLoader']]], 7 | ['loadimpl',['loadImpl',['../class_ogre__gl_t_f_1_1_glb_file.html#aed8efa1502e499ad8e264bdd045edd42',1,'Ogre_glTF::GlbFile']]], 8 | ['loadinto',['loadInto',['../structgl_t_f_loader_1_1gl_t_f_loader_impl.html#ab24efad6bf9ce8316d08d383eb313678',1,'glTFLoader::glTFLoaderImpl']]], 9 | ['loadtextures',['loadTextures',['../class_ogre__gl_t_f_1_1texture_importer.html#a647b3d6ddf7d512607d03178ce31f63c',1,'Ogre_glTF::textureImporter']]] 10 | ]; 11 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_9.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_9.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['makeitem',['makeItem',['../struct_ogre__gl_t_f_1_1_model_information.html#a8f384f907b05d25364eb035e7a85f813',1,'Ogre_glTF::ModelInformation']]], 4 | ['materialloader',['materialLoader',['../class_ogre__gl_t_f_1_1material_loader.html#a5418ac4d8e75b27f99580517426987f7',1,'Ogre_glTF::materialLoader']]], 5 | ['modelconverter',['modelConverter',['../class_ogre__gl_t_f_1_1model_converter.html#ac68f5a0170dfce085252327664db3b4e',1,'Ogre_glTF::modelConverter']]] 6 | ]; 7 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_a.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_a.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['operator_3d',['operator=',['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#a82a36dbd450e499d3778840710b23066',1,'Ogre_glTF::geometryBuffer_base::operator=(const geometryBuffer_base &)=delete'],['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#a7f7da2a2e47fe772b85a74722343611a',1,'Ogre_glTF::geometryBuffer_base::operator=(geometryBuffer_base &&)=default'],['../class_ogre__gl_t_f_1_1geometry_buffer.html#a7fcd3c4570d200b057a36011e6a167d6',1,'Ogre_glTF::geometryBuffer::operator=(const geometryBuffer &)=delete'],['../class_ogre__gl_t_f_1_1geometry_buffer.html#acbef2e3597dd5773eb8fd296834b3c43',1,'Ogre_glTF::geometryBuffer::operator=(geometryBuffer &&other) noexcept'],['../class_ogre__gl_t_f_1_1loader_adapter.html#a408041f691670c6e717a9893ee7bcdd8',1,'Ogre_glTF::loaderAdapter::operator=(const loaderAdapter &)=delete'],['../class_ogre__gl_t_f_1_1loader_adapter.html#ad0433c4e951b5133d9c7ae93096db90a',1,'Ogre_glTF::loaderAdapter::operator=(loaderAdapter &&other) noexcept'],['../class_ogre__gl_t_f_1_1gl_t_f_loader.html#a8197ec374505efbcc52d34b89132792f',1,'Ogre_glTF::glTFLoader::operator=(glTFLoader &&other) noexcept'],['../class_ogre__gl_t_f_1_1gl_t_f_loader.html#a72bf9234aff75cfa7ab74412f8df7229',1,'Ogre_glTF::glTFLoader::operator=(const glTFLoader &)=delete']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_b.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_b.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['size',['size',['../class_ogre__gl_t_f_1_1geometry_buffer.html#a5db35182582fc2f8d60a6a8a87223706',1,'Ogre_glTF::geometryBuffer']]], 4 | ['skeletonimporter',['skeletonImporter',['../class_ogre__gl_t_f_1_1skeleton_importer.html#a11798c5b89ddfa0878c1a852946c5957',1,'Ogre_glTF::skeletonImporter']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_c.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_c.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['textureimporter',['textureImporter',['../class_ogre__gl_t_f_1_1texture_importer.html#adb7e5a712efa692efe8f1fe5ac6c3748',1,'Ogre_glTF::textureImporter']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_d.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_d.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['unloadimpl',['unloadImpl',['../class_ogre__gl_t_f_1_1_glb_file.html#a5ec116597334c084b992c23c76847c4b',1,'Ogre_glTF::GlbFile']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_e.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/functions_e.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['_7egeometrybuffer',['~geometryBuffer',['../class_ogre__gl_t_f_1_1geometry_buffer.html#af5762569985fc2c84a160b133b1fb7cc',1,'Ogre_glTF::geometryBuffer']]], 4 | ['_7egeometrybuffer_5fbase',['~geometryBuffer_base',['../class_ogre__gl_t_f_1_1geometry_buffer__base.html#a4308f4d2b7cd30a38b2222ab81e7655e',1,'Ogre_glTF::geometryBuffer_base']]], 5 | ['_7eglbfile',['~GlbFile',['../class_ogre__gl_t_f_1_1_glb_file.html#ac4c118830620b0d89f5bc74f6f50f0dd',1,'Ogre_glTF::GlbFile']]], 6 | ['_7eglbfilemanager',['~GlbFileManager',['../class_ogre__gl_t_f_1_1_glb_file_manager.html#aa5d6d9beda468a81f609a675862fcfe8',1,'Ogre_glTF::GlbFileManager']]], 7 | ['_7egltfloader',['~glTFLoader',['../class_ogre__gl_t_f_1_1gl_t_f_loader.html#a85f0e69d53eb0e87f47d56d7fb5bf203',1,'Ogre_glTF::glTFLoader']]], 8 | ['_7egltfloaderinterface',['~glTFLoaderInterface',['../struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html#af55cba329954d9f2eade9415f05f37b7',1,'Ogre_glTF::glTFLoaderInterface']]], 9 | ['_7eloaderadapter',['~loaderAdapter',['../class_ogre__gl_t_f_1_1loader_adapter.html#acf9c1fd0f8ed3b627358eae7ec208ae8',1,'Ogre_glTF::loaderAdapter']]] 10 | ]; 11 | -------------------------------------------------------------------------------- /docs/doxygen/search/mag_sel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/search/mag_sel.png -------------------------------------------------------------------------------- /docs/doxygen/search/nomatches.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
    9 |
    No Matches
    10 |
    11 | 12 | 13 | -------------------------------------------------------------------------------- /docs/doxygen/search/search_l.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/search/search_l.png -------------------------------------------------------------------------------- /docs/doxygen/search/search_m.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/search/search_m.png -------------------------------------------------------------------------------- /docs/doxygen/search/search_r.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/search/search_r.png -------------------------------------------------------------------------------- /docs/doxygen/search/searchdata.js: -------------------------------------------------------------------------------- 1 | var indexSectionsWithContent = 2 | { 3 | 0: "_bcdefghilmopstuvw~", 4 | 1: "gilmstv", 5 | 2: "_cdefghilmostu~", 6 | 3: "bdelmpstvw", 7 | 4: "fl" 8 | }; 9 | 10 | var indexSectionNames = 11 | { 12 | 0: "all", 13 | 1: "classes", 14 | 2: "functions", 15 | 3: "variables", 16 | 4: "enums" 17 | }; 18 | 19 | var indexSectionLabels = 20 | { 21 | 0: "All", 22 | 1: "Classes", 23 | 2: "Functions", 24 | 3: "Variables", 25 | 4: "Enumerations" 26 | }; 27 | 28 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_0.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_0.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['buffer',['buffer',['../struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a981d73ff6baa760bdc1d62fe1699204e',1,'Ogre_glTF::vertexBufferPart']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_1.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_1.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['datablock',['datablock',['../struct_ogre__gl_t_f_1_1_mesh_and_data_block.html#add3d734b373fcf3091b42f3e755f59ac',1,'Ogre_glTF::MeshAndDataBlock']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_2.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_2.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['error',['error',['../structloader_adapter_1_1impl.html#ab1902523c681ab8317d80a64705a3a74',1,'loaderAdapter::impl']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_3.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_3.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['loader',['loader',['../structgl_t_f_loader_1_1gl_t_f_loader_impl.html#a45c1ffc29023c24f0ac386cfb113779b',1,'glTFLoader::glTFLoaderImpl']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_4.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_4.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['materialload',['materialLoad',['../structloader_adapter_1_1impl.html#a00bf8d32948b8f5190a343ee4023ec99',1,'loaderAdapter::impl']]], 4 | ['mesh',['Mesh',['../struct_ogre__gl_t_f_1_1_mesh_and_data_block.html#a3ed0ba7f6f859355493de78eb49cf8ec',1,'Ogre_glTF::MeshAndDataBlock::Mesh()'],['../struct_ogre__gl_t_f_1_1_model_information.html#ae8a1964f828958a285ef2dce6324097f',1,'Ogre_glTF::ModelInformation::mesh()']]], 5 | ['model',['model',['../structloader_adapter_1_1impl.html#a017131119684a2a51353488ac21137b2',1,'loaderAdapter::impl']]], 6 | ['modelconv',['modelConv',['../structloader_adapter_1_1impl.html#ab105fd46afde9caf98dba76009ac10ad',1,'loaderAdapter::impl']]] 7 | ]; 8 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_5.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_5.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['pbrmateriallist',['pbrMaterialList',['../struct_ogre__gl_t_f_1_1_model_information.html#a30409c300254e8eaddd4ed3710b5eb3f',1,'Ogre_glTF::ModelInformation']]], 4 | ['pervertex',['perVertex',['../struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a35944dc7e5c6373ca77971f51108c039',1,'Ogre_glTF::vertexBufferPart']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_6.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_6.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['semantic',['semantic',['../struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a2dc9b040e759fa3523a2abd19c4f9aed',1,'Ogre_glTF::vertexBufferPart']]], 4 | ['skeletonimp',['skeletonImp',['../structloader_adapter_1_1impl.html#a910e82c85231e87e90a3ccc7e360ebd0',1,'loaderAdapter::impl']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_7.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
    11 |
    Loading...
    12 |
    13 | 18 |
    Searching...
    19 |
    No Matches
    20 | 28 |
    29 | 30 | 31 | -------------------------------------------------------------------------------- /docs/doxygen/search/variables_7.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['textureimp',['textureImp',['../structloader_adapter_1_1impl.html#a9af00068eb708150c0a8b82224aac4b7',1,'loaderAdapter::impl']]], 4 | ['type',['type',['../struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a1f373736926886a45941ca38e8d7930c',1,'Ogre_glTF::vertexBufferPart']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /docs/doxygen/splitbar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/splitbar.png -------------------------------------------------------------------------------- /docs/doxygen/struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.js: -------------------------------------------------------------------------------- 1 | var struct_ogre__gl_t_f_1_1gl_t_f_loader_interface = 2 | [ 3 | [ "LoadFrom", "struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html#a56f74d9fb7f1b1aae1e962b3c2b18416", [ 4 | [ "FileSystem", "struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html#a56f74d9fb7f1b1aae1e962b3c2b18416ae2d63d195b2bce9c8d5bf797a268bcec", null ], 5 | [ "ResourceManager", "struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html#a56f74d9fb7f1b1aae1e962b3c2b18416aed760e01ef8cb789b502ad1c9a3829a2", null ] 6 | ] ], 7 | [ "~glTFLoaderInterface", "struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html#af55cba329954d9f2eade9415f05f37b7", null ], 8 | [ "getItemFromFileSystem", "struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html#a6c3d2dd855148f7402a11f395461cf81", null ], 9 | [ "getItemFromResource", "struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html#a95e25de27484ea401c4310c5006f2f7c", null ], 10 | [ "getMeshFromFileSystem", "struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html#a75e780cc1748f4ee47cc1d7c810159b6", null ], 11 | [ "getMeshFromResource", "struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html#aeb59bfe270efed0b8a6d549c6f748e85", null ], 12 | [ "getModelData", "struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.html#a89b5b19f69478db8179315b28256fa12", null ] 13 | ]; -------------------------------------------------------------------------------- /docs/doxygen/struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/struct_ogre__gl_t_f_1_1gl_t_f_loader_interface.png -------------------------------------------------------------------------------- /docs/doxygen/struct_ogre__gl_t_f_1_1gltf_plugin_accessor.js: -------------------------------------------------------------------------------- 1 | var struct_ogre__gl_t_f_1_1gltf_plugin_accessor = 2 | [ 3 | [ "~gltfPluginAccessor", "struct_ogre__gl_t_f_1_1gltf_plugin_accessor.html#adfbc279ee6aa21004a155f0311bfd9b3", null ], 4 | [ "getLoader", "struct_ogre__gl_t_f_1_1gltf_plugin_accessor.html#a4d1e0547a0c151e99e0ce80ef3305d74", null ] 5 | ]; -------------------------------------------------------------------------------- /docs/doxygen/struct_ogre__gl_t_f_1_1gltf_plugin_accessor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/struct_ogre__gl_t_f_1_1gltf_plugin_accessor.png -------------------------------------------------------------------------------- /docs/doxygen/struct_ogre__gl_t_f_1_1vertex_buffer_part.js: -------------------------------------------------------------------------------- 1 | var struct_ogre__gl_t_f_1_1vertex_buffer_part = 2 | [ 3 | [ "getPartStride", "struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a98ef963b3dfb316b2f833f913aaa2fd3", null ], 4 | [ "buffer", "struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a981d73ff6baa760bdc1d62fe1699204e", null ], 5 | [ "perVertex", "struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a35944dc7e5c6373ca77971f51108c039", null ], 6 | [ "semantic", "struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a2dc9b040e759fa3523a2abd19c4f9aed", null ], 7 | [ "type", "struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a1f373736926886a45941ca38e8d7930c", null ], 8 | [ "vertexCount", "struct_ogre__gl_t_f_1_1vertex_buffer_part.html#a281c887ec55e59d05b6f9ed003495947", null ] 9 | ]; -------------------------------------------------------------------------------- /docs/doxygen/structgl_t_f_loader_1_1gl_t_f_loader_impl.js: -------------------------------------------------------------------------------- 1 | var structgl_t_f_loader_1_1gl_t_f_loader_impl = 2 | [ 3 | [ "FileType", "structgl_t_f_loader_1_1gl_t_f_loader_impl.html#af58a70adfc0e5e2acd27093732e82d52", null ], 4 | [ "glTFLoaderImpl", "structgl_t_f_loader_1_1gl_t_f_loader_impl.html#a332d6762edc2d112ea2da1acbc974cb3", null ], 5 | [ "detectType", "structgl_t_f_loader_1_1gl_t_f_loader_impl.html#a57ee542d4c011a28af46166f2adc6362", null ], 6 | [ "loadGlb", "structgl_t_f_loader_1_1gl_t_f_loader_impl.html#a1a79644748abd2978f41b778fea0fe3e", null ], 7 | [ "loadInto", "structgl_t_f_loader_1_1gl_t_f_loader_impl.html#ab24efad6bf9ce8316d08d383eb313678", null ], 8 | [ "loader", "structgl_t_f_loader_1_1gl_t_f_loader_impl.html#a45c1ffc29023c24f0ac386cfb113779b", null ] 9 | ]; -------------------------------------------------------------------------------- /docs/doxygen/structloader_adapter_1_1impl.js: -------------------------------------------------------------------------------- 1 | var structloader_adapter_1_1impl = 2 | [ 3 | [ "impl", "structloader_adapter_1_1impl.html#aebc596a65a3b61a03f10e113b2e05e02", null ], 4 | [ "error", "structloader_adapter_1_1impl.html#ab1902523c681ab8317d80a64705a3a74", null ], 5 | [ "materialLoad", "structloader_adapter_1_1impl.html#a00bf8d32948b8f5190a343ee4023ec99", null ], 6 | [ "model", "structloader_adapter_1_1impl.html#a017131119684a2a51353488ac21137b2", null ], 7 | [ "modelConv", "structloader_adapter_1_1impl.html#ab105fd46afde9caf98dba76009ac10ad", null ], 8 | [ "skeletonImp", "structloader_adapter_1_1impl.html#a910e82c85231e87e90a3ccc7e360ebd0", null ], 9 | [ "textureImp", "structloader_adapter_1_1impl.html#a9af00068eb708150c0a8b82224aac4b7", null ], 10 | [ "valid", "structloader_adapter_1_1impl.html#ab649b615fd7c007d594e6fa25aa27b65", null ], 11 | [ "warnings", "structloader_adapter_1_1impl.html#a9e7b3bf5bd1f566a8889cf754fac7df5", null ] 12 | ]; -------------------------------------------------------------------------------- /docs/doxygen/sync_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/sync_off.png -------------------------------------------------------------------------------- /docs/doxygen/sync_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/sync_on.png -------------------------------------------------------------------------------- /docs/doxygen/tab_a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/tab_a.png -------------------------------------------------------------------------------- /docs/doxygen/tab_b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/tab_b.png -------------------------------------------------------------------------------- /docs/doxygen/tab_h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/tab_h.png -------------------------------------------------------------------------------- /docs/doxygen/tab_s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ybalrid/Ogre_glTF/6a59adf2f04253a3afb9459549803ab297932e8d/docs/doxygen/tab_s.png -------------------------------------------------------------------------------- /docs/guide.md: -------------------------------------------------------------------------------- 1 | **!!Under construction!!** 2 | -------------------------------------------------------------------------------- /docs/test.md: -------------------------------------------------------------------------------- 1 | #Test 2 | 3 | This page only exist to test GitHub pages and markdown... Will be deleted soon! 4 | -------------------------------------------------------------------------------- /format.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | clang-format -i src/*.cpp src/private_headers/* include/* 4 | -------------------------------------------------------------------------------- /include/Ogre_glTF_DLL.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #ifdef _WIN32 4 | #ifdef Ogre_glTF_DLL_EXPORT_CONFIG_ON 5 | ///Export symbol 6 | #define Ogre_glTF_EXPORT __declspec(dllexport) 7 | #else 8 | ///Import symbol 9 | #define Ogre_glTF_EXPORT __declspec(dllimport) 10 | #endif 11 | #else 12 | ///Don't do anything with this, we're not on Windows :-) 13 | #define Ogre_glTF_EXPORT //dummy 14 | #endif 15 | -------------------------------------------------------------------------------- /include/Ogre_glTF_OgrePlugin.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "Ogre_glTF_DLL.hpp" 4 | #include "Ogre_glTF.hpp" 5 | 6 | #include 7 | #include 8 | 9 | namespace Ogre_glTF 10 | { 11 | ///Interface callable from plugin users without linking the DLL 12 | struct gltfPluginAccessor 13 | { 14 | virtual ~gltfPluginAccessor() = default; 15 | 16 | ///Get you a gltf loader that you can use to get Items made out of glTF meshes 17 | virtual glTFLoaderInterface* getLoader() const = 0; 18 | 19 | ///This to seach throught the list of installed pluigins, finds the gltf one, and up-cast it to a gltfAccessor pointer for you to use 20 | ///This is the user's nomral "entry point" to get access to the glTF Loader 21 | static gltfPluginAccessor* findPlugin() 22 | { 23 | const auto list = Ogre::Root::getSingleton().getInstalledPlugins(); 24 | const auto thisPluginInstanceIterator = std::find_if(std::begin(list), std::end(list), [](const Ogre::Plugin* plugPtr) { 25 | static const Ogre::String name = "Ogre glTF Loader"; 26 | return plugPtr->getName() == name; 27 | }); 28 | 29 | if(thisPluginInstanceIterator != std::end(list)) return dynamic_cast(*thisPluginInstanceIterator); 30 | 31 | return nullptr; 32 | } 33 | }; 34 | 35 | ///Ogre::Plugin object, also implements the gltfPluign Accessor. 36 | class Ogre_glTF_EXPORT glTFLoaderPlugin final : public Ogre::Plugin, public gltfPluginAccessor 37 | { 38 | Ogre::String name = "Ogre glTF Loader"; 39 | 40 | ///The actual library root object is managed by this smart pointer, the rest of is just 41 | std::unique_ptr gltf = nullptr; 42 | 43 | public: 44 | glTFLoaderPlugin(); 45 | virtual ~glTFLoaderPlugin(); 46 | const Ogre::String& getName() const override; 47 | void install() override; 48 | void initialise() override; 49 | void shutdown() override; 50 | void uninstall() override; 51 | 52 | ///This will get you the object you want ;-) 53 | glTFLoaderInterface* getLoader() const override 54 | { 55 | return gltf.get(); 56 | } 57 | }; 58 | } 59 | -------------------------------------------------------------------------------- /include/Ogre_glTF_OgreResource.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include 4 | #include 5 | 6 | #include "Ogre_glTF_DLL.hpp" 7 | 8 | namespace Ogre_glTF 9 | { 10 | ///Represet a GlbFile resource as outputed by the resource manager 11 | class Ogre_glTF_EXPORT GlbFile : public Ogre::Resource 12 | { 13 | ///Internally use a type called "byte" to represent a byte 14 | using byte = Ogre::uint8; 15 | 16 | ///Loaded data is a plain old string of bytes 17 | std::vector data; 18 | 19 | ///Ogre does it's thing, and give you a "data stream". This fetch every byte out of that stream, and write it inside the vector of byte 20 | void readFromStream(Ogre::DataStreamPtr& stream); 21 | 22 | protected: 23 | ///Ogre resource API: called by "load" 24 | void loadImpl() override; 25 | 26 | ///Called by unload 27 | void unloadImpl() override; 28 | 29 | ///Return how many bytes are stored 30 | size_t calculateSize() const override; 31 | 32 | public: 33 | ///Construct a resource. This is intened to be done by OgreResourceManager, not by you really 34 | GlbFile(Ogre::ResourceManager* creator, 35 | const Ogre::String& name, 36 | Ogre::ResourceHandle handle, 37 | const Ogre::String& group, 38 | bool isManual = false, 39 | Ogre::ManualResourceLoader* loader = nullptr); 40 | 41 | ///Resource unloading, will dispose of memory 42 | virtual ~GlbFile(); 43 | 44 | ///Get the address of the data. This is effectively the start of the underlying vector 45 | const byte* getData() const; 46 | 47 | ///Get the number of bytes stored. This is effectivly the size of the vector 48 | size_t getSize() const override; 49 | }; 50 | 51 | ///Define a pointer type 52 | using GlbFilePtr = Ogre::SharedPtr; 53 | 54 | ///File manager. initialized by the plugin, this is for Ogre, not for you 55 | class /*Ogre_glTF_EXPORT*/ GlbFileManager : public Ogre::ResourceManager, public Ogre::Singleton 56 | { 57 | protected: 58 | ///This effectively create a resource 59 | Ogre::Resource* createImpl(const Ogre::String& name, Ogre::ResourceHandle handle, const Ogre::String& group, bool isManual, Ogre::ManualResourceLoader* loader, const Ogre::NameValuePairList* createParams) override; 60 | 61 | public: 62 | ///Create the GlbFileManager. will also initialize the singleton 63 | GlbFileManager(); 64 | 65 | ///Will release the singleton 66 | virtual ~GlbFileManager(); 67 | 68 | ///Load a GLB and return a GlbFile object (using a smart pointer) 69 | virtual GlbFilePtr load(const Ogre::String& name, const Ogre::String& group); 70 | 71 | ///Return the single instance of the manager 72 | static GlbFileManager& getSingleton(); 73 | 74 | ///Return the pointer to the single instance of the manager 75 | static GlbFileManager* getSingletonPtr(); 76 | }; 77 | 78 | } -------------------------------------------------------------------------------- /src/Ogre_glTF_OgrePlugin.cpp: -------------------------------------------------------------------------------- 1 | #include "Ogre_glTF_OgrePlugin.hpp" 2 | 3 | Ogre_glTF::glTFLoaderPlugin* gPluginInstaller = nullptr; 4 | 5 | extern "C" { 6 | 7 | void Ogre_glTF_EXPORT dllStartPlugin(void) 8 | { 9 | if(gPluginInstaller) 10 | { 11 | //In normal usage situation of this plugin, this function is declared inside an extern "C" block 12 | //but is never called from non-C++ code. The only reason this function is extern "C" is for being 13 | //able to retrieve it's address by name independently of compiler mangling. 14 | //We should ignore any warning about this. 15 | #ifdef _MSC_VER 16 | #pragma warning(push) 17 | #pragma warning(disable : 4297) 18 | #endif 19 | throw Ogre_glTF::InitError("Apparently called dllStartPlugin on the Ogre_glTF" 20 | "plugin twice. I'm afraid you can't do that... "); 21 | #ifdef _MSC_VER 22 | #pragma warning(pop) 23 | #endif 24 | } 25 | 26 | gPluginInstaller = new Ogre_glTF::glTFLoaderPlugin; 27 | Ogre::Root::getSingleton().installPlugin(gPluginInstaller); 28 | } 29 | 30 | void Ogre_glTF_EXPORT dllStopPlugin(void) 31 | { 32 | Ogre::Root::getSingleton().uninstallPlugin(gPluginInstaller); 33 | delete gPluginInstaller; 34 | gPluginInstaller = nullptr; 35 | } 36 | } 37 | 38 | Ogre_glTF::glTFLoaderPlugin::glTFLoaderPlugin() : Ogre::Plugin() {} 39 | 40 | Ogre_glTF::glTFLoaderPlugin::~glTFLoaderPlugin() = default; 41 | 42 | const Ogre::String& Ogre_glTF::glTFLoaderPlugin::getName() const { return name; } 43 | 44 | void Ogre_glTF::glTFLoaderPlugin::install() {} 45 | 46 | void Ogre_glTF::glTFLoaderPlugin::initialise() { gltf = std::make_unique(); } 47 | 48 | void Ogre_glTF::glTFLoaderPlugin::shutdown() { gltf = nullptr; } 49 | 50 | void Ogre_glTF::glTFLoaderPlugin::uninstall() {} 51 | -------------------------------------------------------------------------------- /src/Ogre_glTF_OgreResource.cpp: -------------------------------------------------------------------------------- 1 | #include "Ogre_glTF_OgreResource.hpp" 2 | #include "Ogre_glTF.hpp" 3 | 4 | void Ogre_glTF::GlbFile::readFromStream(Ogre::DataStreamPtr& stream) 5 | { 6 | data.resize(stream->size()); 7 | stream->read(reinterpret_cast(data.data()), data.size()); 8 | 9 | if(calculateSize() < 20) throw FileIOError("GLB file needs to be at least 20 bytes long. This cannot be possibly valid!"); 10 | { 11 | char magic[5]; 12 | memcpy(magic, getData(), 4); 13 | magic[4] = 0; 14 | 15 | if(std::string(magic) != "glTF") throw InitError("GLB files needs to start with 0x46546C67 \"glTF\" magic number!"); 16 | } 17 | } 18 | 19 | void Ogre_glTF::GlbFile::loadImpl() 20 | { 21 | auto stream = Ogre::ResourceGroupManager::getSingleton().openResource(mName, mGroup, true, this); 22 | readFromStream(stream); 23 | } 24 | 25 | void Ogre_glTF::GlbFile::unloadImpl() 26 | { 27 | data.clear(); 28 | data.resize(0); 29 | } 30 | 31 | size_t Ogre_glTF::GlbFile::calculateSize() const { return getSize(); } 32 | 33 | Ogre_glTF::GlbFile::GlbFile(Ogre::ResourceManager* creator, 34 | const Ogre::String& name, 35 | Ogre::ResourceHandle handle, 36 | const Ogre::String& group, 37 | bool isManual, 38 | Ogre::ManualResourceLoader* loader) : 39 | Resource(creator, name, handle, group, isManual, loader) 40 | { 41 | createParamDictionary("GlbFile"); 42 | } 43 | 44 | Ogre_glTF::GlbFile::~GlbFile() { GlbFile::unload(); } 45 | 46 | const Ogre_glTF::GlbFile::byte* Ogre_glTF::GlbFile::getData() const { return data.data(); } 47 | 48 | size_t Ogre_glTF::GlbFile::getSize() const { return data.size(); } 49 | 50 | Ogre::Resource* Ogre_glTF::GlbFileManager::createImpl(const Ogre::String& name, 51 | Ogre::ResourceHandle handle, 52 | const Ogre::String& group, 53 | bool isManual, 54 | Ogre::ManualResourceLoader* loader, 55 | const Ogre::NameValuePairList* createParams) 56 | { 57 | return OGRE_NEW GlbFile(this, name, handle, group, isManual, loader); 58 | } 59 | 60 | Ogre_glTF::GlbFileManager::GlbFileManager() 61 | { 62 | mResourceType = "GlbFile"; 63 | mLoadOrder = 2; 64 | Ogre::ResourceGroupManager::getSingleton()._registerResourceManager(mResourceType, this); 65 | } 66 | 67 | Ogre_glTF::GlbFileManager::~GlbFileManager() { Ogre::ResourceGroupManager::getSingleton()._unregisterResourceManager(mResourceType); } 68 | 69 | Ogre_glTF::GlbFilePtr Ogre_glTF::GlbFileManager::load(const Ogre::String& name, const Ogre::String& group) 70 | { 71 | auto file = createOrRetrieve(name, group).first.staticCast(); 72 | file->load(); 73 | return file; 74 | } 75 | 76 | template <> 77 | Ogre_glTF::GlbFileManager* Ogre::Singleton::msSingleton = nullptr; 78 | 79 | Ogre_glTF::GlbFileManager& Ogre_glTF::GlbFileManager::getSingleton() { return *msSingleton; } 80 | 81 | Ogre_glTF::GlbFileManager* Ogre_glTF::GlbFileManager::getSingletonPtr() { return msSingleton; } 82 | -------------------------------------------------------------------------------- /src/Ogre_glTF_common.cpp: -------------------------------------------------------------------------------- 1 | #include "Ogre_glTF_common.hpp" 2 | 3 | #include 4 | 5 | void OgreLog(const std::string& message) 6 | { 7 | #ifdef _DEBUG 8 | Ogre::LogManager::getSingleton().logMessage(message); 9 | #else 10 | //Do something with message? 11 | #endif 12 | } 13 | 14 | void OgreLog(const std::stringstream& message) 15 | { 16 | #ifdef _DEBUG 17 | OgreLog(message.str()); //Also prevent codegen for reading the string insdie that stream 18 | #else 19 | #endif 20 | } 21 | -------------------------------------------------------------------------------- /src/private_headers/Ogre_glTF_common.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "Ogre_glTF_DLL.hpp" 3 | #include 4 | 5 | ///Easilly print a stringto the ogre log 6 | void OgreLog(const std::string& message); 7 | 8 | ///Overload that takes a stringstream 9 | void OgreLog(const std::stringstream& message); -------------------------------------------------------------------------------- /src/private_headers/Ogre_glTF_internal_utils.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include 4 | #include 5 | 6 | namespace Ogre_glTF 7 | { 8 | namespace internal_utils 9 | { 10 | template 11 | void container_double_to_real(inputContainer& in, outputContainer& out) 12 | { 13 | std::transform(std::begin(in), 14 | std::end(in), 15 | std::begin(out), 16 | [](double n) { 17 | return static_cast(n); 18 | }); 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /src/private_headers/Ogre_glTF_materialLoader.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "tiny_gltf.h" 3 | #include 4 | #include 5 | 6 | namespace Ogre_glTF 7 | { 8 | 9 | ///Foward declare the textureImporter 10 | class textureImporter; 11 | 12 | ///Load material information from a model inside Ogre, provide you a datablock to set to an Ogre::Item object 13 | class materialLoader 14 | { 15 | ///Reference to the texture importer that deal with the current model's material 16 | textureImporter& textureImporterRef; 17 | ///The model 18 | tinygltf::Model& model; 19 | 20 | static Ogre::Vector3 convertColor(const tinygltf::ColorValue& color); 21 | 22 | ///Set the diffuse color of the material 23 | /// \param block datablock to set 24 | /// \param color the color diffused by the material 25 | void setBaseColor(Ogre::HlmsPbsDatablock* block, Ogre::Vector3 color) const; 26 | 27 | ///Set the metallness of the material 28 | /// \param block datablock to set 29 | /// \param value floating point value that represent metalness of the surface 30 | void setMetallicValue(Ogre::HlmsPbsDatablock* block, Ogre::Real value) const; 31 | ///Set the roughness of the material 32 | /// \param block datablock to set 33 | /// \param value floating point value that represent metalness of the surface 34 | void setRoughnesValue(Ogre::HlmsPbsDatablock* block, Ogre::Real value) const; 35 | ///Set the emissive of the material 36 | /// \param block datablock to set 37 | /// \param color floating point value that represent metalness of the surface 38 | void setEmissiveColor(Ogre::HlmsPbsDatablock* block, Ogre::Vector3 color) const; 39 | 40 | ///Return true if the texture index is valid 41 | bool isTextureIndexValid(int textureIndex) const; 42 | 43 | ///Set the diffuse texture (baseColorTexture) 44 | /// \param block datablock to set 45 | /// \param value gltf texture index 46 | void setBaseColorTexture(Ogre::HlmsPbsDatablock* block, int value) const; 47 | 48 | ///Set the metalness and roughness textures (metalRoughTexture) 49 | /// \param block datablock to set 50 | /// \param value gltf texture index 51 | void setMetalRoughTexture(Ogre::HlmsPbsDatablock* block, int value) const; 52 | 53 | ///Set the normal texture 54 | /// \param block datablock to set 55 | /// \param value gltf texture index 56 | void setNormalTexture(Ogre::HlmsPbsDatablock* block, int value) const; 57 | 58 | ///Set the occlusion texure (AFAIK, Ogre don't use them, so this does nothing) 59 | /// \param block datablock to set 60 | /// \param value gltf texture index 61 | void setOcclusionTexture(Ogre::HlmsPbsDatablock* block, int value) const; 62 | 63 | ///Set the emissive texture 64 | /// \param block datablock to set 65 | /// \param value gltf texture index 66 | void setEmissiveTexture(Ogre::HlmsPbsDatablock* block, int value) const; 67 | 68 | ///Set the alpha mode 69 | /// \param block datablock to set 70 | /// \param mode string that defines the used alpha mode 71 | void setAlphaMode(Ogre::HlmsPbsDatablock* block, const std::string& mode) const; 72 | 73 | ///Set the alpha cutoff limit, should only be set if the alpha mode is set to MASK. 74 | /// \param block datablock to set 75 | /// \param value Alpha cutoff value 76 | void setAlphaCutoff(Ogre::HlmsPbsDatablock* block, Ogre::Real value) const; 77 | 78 | public: 79 | ///Construct the material loader 80 | /// \param input model to load material from 81 | /// \param textureInterface the texture importer to get Ogre texture from 82 | materialLoader(tinygltf::Model& input, textureImporter& textureInterface); 83 | ///Get the material (the HlmsDatablock) 84 | Ogre::HlmsDatablock* getDatablock(size_t index = 0) const; 85 | size_t getDatablockCount() const; 86 | }; 87 | } 88 | -------------------------------------------------------------------------------- /src/private_headers/Ogre_glTF_textureImporter.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "tiny_gltf.h" 4 | #include 5 | #include 6 | 7 | namespace Ogre_glTF 8 | { 9 | 10 | ///Import textures described in glTF into Ogre 11 | class textureImporter 12 | { 13 | ///List of the loaded basic textures 14 | std::unordered_map loadedTextures; 15 | 16 | ///Static counter to make unique texture name. Incremented by constructor 17 | static size_t id; 18 | 19 | ///Reference to the tinygltf 20 | tinygltf::Model& model; 21 | 22 | ///Load a single texture 23 | /// \param texture reference to the texture that we are loading 24 | void loadTexture(const tinygltf::Texture& texture); 25 | 26 | ///Checks that is hardware gamma enabled 27 | bool isHardwareGammaEnabled() const; 28 | 29 | public: 30 | ///Construct the texture importer object. Inrement the id counter 31 | /// \param input reference to the model that we are loading 32 | textureImporter(tinygltf::Model& input); 33 | 34 | ///Load all the textures in the model 35 | void loadTextures(); 36 | 37 | ///Get the loaded texture that corespound to the given index 38 | /// \param glTFTextureSourceID index of a texture in the gltf file 39 | Ogre::TexturePtr getTexture(int glTFTextureSourceID); 40 | 41 | ///Get the texture that corespound to the given index, but as a greyscale one containing only 42 | ///the information of the given channel. It seems that the order of channel on loaded textures 43 | ///is BGR 44 | /// \param gltfTextureSourceID index of a texture in the gltf file 45 | /// \param channel index of a channel. Starts from zero 46 | Ogre::TexturePtr generateGreyScaleFromChannel(int gltfTextureSourceID, int channel); 47 | 48 | ///Get the normal texture in a compatible format 49 | /// \param gltfTextureSourceID index of a texture in the gltf file 50 | Ogre::TexturePtr getNormalSNORM(int gltfTextureSourceID); 51 | }; 52 | } --------------------------------------------------------------------------------