Coder Social home page Coder Social logo

prograda / skybolt Goto Github PK

View Code? Open in Web Editor NEW
543.0 543.0 44.0 1.77 MB

Planetary rendering engine and aerospace simulation tools

License: Other

C++ 87.14% GLSL 4.79% C 3.04% CMake 3.15% Python 1.88%
aerial-imagery atmospheric-scattering cigi flight-simulation flight-simulator geospatial-visualization image-generator jsbsim ocean-wave-simulation open-street-map planetary-data rendering-engine volumetric-cloud

skybolt's People

Contributors

matthew-reid avatar rouseabout avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

skybolt's Issues

Error while linking FlightSimApp

While linking FlightSimApp on LinuxMint 20.1 (Ubuntu 20.04 LTS) i got this error:
Linking CXX executable ../../../bin/FlightSimApp
/usr/bin/ld: ../../../lib/libExamplesCommon.a(HudSystem.cpp.o): in function skybolt::HudSystem::updatePostDynamics(skybolt::sim::System::StepArgs const&)': /home/cel/Projekty/var/Skybolt/master/Skybolt-master/src/SkyboltExamples/ExamplesCommon/HudSystem.cpp:170: undefined reference to skybolt::HeadingRibbonModel::draw(float, float*)'
/usr/bin/ld: /home/cel/Projekty/var/Skybolt/master/Skybolt-master/src/SkyboltExamples/ExamplesCommon/HudSystem.cpp:178: undefined reference to skybolt::HudHoverVelModel::draw(glm::vec<2, float, (glm::qualifier)0> const&)' /usr/bin/ld: /home/cel/Projekty/var/Skybolt/master/Skybolt-master/src/SkyboltExamples/ExamplesCommon/HudSystem.cpp:185: undefined reference to skybolt::PitchLadderModel::draw(float, float)'
/usr/bin/ld: /home/cel/Projekty/var/Skybolt/master/Skybolt-master/src/SkyboltExamples/ExamplesCommon/HudSystem.cpp:190: undefined reference to skybolt::AltitudeBarModel::draw(float, float const*)' /usr/bin/ld: /home/cel/Projekty/var/Skybolt/master/Skybolt-master/src/SkyboltExamples/ExamplesCommon/HudSystem.cpp:193: undefined reference to skybolt::RollAngleRibbonModel::draw(float)'
/usr/bin/ld: ../../../lib/libExamplesCommon.a(HudSystem.cpp.o): in function std::_MakeUniq<skybolt::HeadingRibbonModel>::__single_object std::make_unique<skybolt::HeadingRibbonModel, skybolt::VisHud*, skybolt::HeadingRibbonModel::Parameters&>(skybolt::VisHud*&&, skybolt::HeadingRibbonModel::Parameters&)': /usr/include/c++/9/bits/unique_ptr.h:857: undefined reference to skybolt::HeadingRibbonModel::HeadingRibbonModel(skybolt::HudDrawer*, skybolt::HeadingRibbonModel::Parameters const&)'
/usr/bin/ld: ../../../lib/libExamplesCommon.a(HudSystem.cpp.o): in function std::_MakeUniq<skybolt::HudHoverVelModel>::__single_object std::make_unique<skybolt::HudHoverVelModel, skybolt::VisHud*, double, double>(skybolt::VisHud*&&, double&&, double&&)': /usr/include/c++/9/bits/unique_ptr.h:857: undefined reference to skybolt::HudHoverVelModel::HudHoverVelModel(skybolt::HudDrawer*, float, float)'
/usr/bin/ld: ../../../lib/libExamplesCommon.a(HudSystem.cpp.o): in function std::_MakeUniq<skybolt::PitchLadderModel>::__single_object std::make_unique<skybolt::PitchLadderModel, skybolt::VisHud*, skybolt::PitchLadderModel::Parameters&>(skybolt::VisHud*&&, skybolt::PitchLadderModel::Parameters&)': /usr/include/c++/9/bits/unique_ptr.h:857: undefined reference to skybolt::PitchLadderModel::PitchLadderModel(skybolt::HudDrawer*, skybolt::PitchLadderModel::Parameters const&)'
/usr/bin/ld: ../../../lib/libExamplesCommon.a(HudSystem.cpp.o): in function std::_MakeUniq<skybolt::AltitudeBarModel>::__single_object std::make_unique<skybolt::AltitudeBarModel, skybolt::VisHud*, skybolt::AltitudeBarModel::Parameters&>(skybolt::VisHud*&&, skybolt::AltitudeBarModel::Parameters&)': /usr/include/c++/9/bits/unique_ptr.h:857: undefined reference to skybolt::AltitudeBarModel::AltitudeBarModel(skybolt::HudDrawer*, skybolt::AltitudeBarModel::Parameters const&)'
/usr/bin/ld: ../../../lib/libExamplesCommon.a(HudSystem.cpp.o): in function std::_MakeUniq<skybolt::RollAngleRibbonModel>::__single_object std::make_unique<skybolt::RollAngleRibbonModel, skybolt::VisHud*, skybolt::RollAngleRibbonModel::Parameters&>(skybolt::VisHud*&&, skybolt::RollAngleRibbonModel::Parameters&)': /usr/include/c++/9/bits/unique_ptr.h:857: undefined reference to skybolt::RollAngleRibbonModel::RollAngleRibbonModel(skybolt::HudDrawer*, skybolt::RollAngleRibbonModel::Parameters const&)'
collect2: error: ld returned 1 exit status

I was able to go around this by changing src/SkyboltExamples/FlightSimApp/CMakeLists.txt:
set(LIBS
-Wl,--start-group
AircraftHud
ExamplesCommon
-Wl,--end-group
)

Black Screen

I got all tests passed and got a mapbox data key, but i got a black screen
image

Customize the component display model

Hi Matthew,I customized a component to add a cow to the helicopter (probably weird, but just for testing), but I found that the cow became transparent and was obscured by the terrain

Error loading 'PlanetEarth': key 'maxLevel' not found

Hi!

I managed to compile SkyBolt (great name btw). Now, I have the following error when running MinimalApp.exe.

[2022-06-10 09:43:47.723899] [0x000008bc] [info]    No --settingsFile program argument specified. Using default settings file location: '"C:\\Users\\xxxxx\\AppData\\Local\\Skybolt\\Settings.json"'
[2022-06-10 09:43:47.723899] [0x000008bc] [info]    Reading settings file '"C:\\Users\\xxxxx\\AppData\\Local\\Skybolt\\Settings.json"'
[2022-06-10 09:43:47.723899] [0x000008bc] [info]    12 CPU cores detected.  Creating 11 background threads.
[2022-06-10 09:43:47.723899] [0x000008bc] [info]    Registered asset package: Core
[2022-06-10 09:43:47.723899] [0x000008bc] [info]    Registered asset package: Globe
[2022-06-10 09:43:47.723899] [0x000008bc] [info]    Registered asset package: Movers
Error loading 'PlanetEarth': [json.exception.out_of_range.403] key 'maxLevel' not found

I managed to bypass the error by adding a maxLevel entry in PlanetEarth.json. I have no idea if it makes sense.

"forest": {
  "minLevel": 12,
  "maxLevel": 12,
  "treesPerLinearMeter": 0.04,
  "treeVisibilityRangeMeters": 10000
}

Thank you!

Problem running example application

Hi,

I built Skybolt using conan and also set SKYBOLT_ASSETS_PATH environment variable correctly. I am getting an error while building

Building

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::Array * __cdecl osg::CopyOp::operator()(class osg::Arr
ay const *)const " (??RCopyOp@osg@@UEBAPEAVArray@1@PEBV21@@Z) already defined in osg.lib(osg.dll) [C:\Softwares\Skybolt
-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::Callback * __cdecl osg::CopyOp::operator()(class osg::
Callback const *)const " (??RCopyOp@osg@@UEBAPEAVCallback@1@PEBV21@@Z) already defined in osg.lib(osg.dll) [C:\Software
s\Skybolt-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::Drawable * __cdecl osg::CopyOp::operator()(class osg::
Drawable const *)const " (??RCopyOp@osg@@UEBAPEAVDrawable@1@PEBV21@@Z) already defined in osg.lib(osg.dll) [C:\Software
s\Skybolt-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::Image * __cdecl osg::CopyOp::operator()(class osg::Ima
ge const *)const " (??RCopyOp@osg@@UEBAPEAVImage@1@PEBV21@@Z) already defined in osg.lib(osg.dll) [C:\Softwares\Skybolt
-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::Node * __cdecl osg::CopyOp::operator()(class osg::Node
 const *)const " (??RCopyOp@osg@@UEBAPEAVNode@1@PEBV21@@Z) already defined in osg.lib(osg.dll) [C:\Softwares\Skybolt-ma
ster\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::Object * __cdecl osg::CopyOp::operator()(class osg::Ob
ject const *)const " (??RCopyOp@osg@@UEBAPEAVObject@1@PEBV21@@Z) already defined in osg.lib(osg.dll) [C:\Softwares\Skyb
olt-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::PrimitiveSet * __cdecl osg::CopyOp::operator()(class o
sg::PrimitiveSet const *)const " (??RCopyOp@osg@@UEBAPEAVPrimitiveSet@1@PEBV21@@Z) already defined in osg.lib(osg.dll)
[C:\Softwares\Skybolt-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::Referenced * __cdecl osg::CopyOp::operator()(class osg
::Referenced const *)const " (??RCopyOp@osg@@UEBAPEAVReferenced@1@PEBV21@@Z) already defined in osg.lib(osg.dll) [C:\So
ftwares\Skybolt-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::Shape * __cdecl osg::CopyOp::operator()(class osg::Sha
pe const *)const " (??RCopyOp@osg@@UEBAPEAVShape@1@PEBV21@@Z) already defined in osg.lib(osg.dll) [C:\Softwares\Skybolt
-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::StateAttribute * __cdecl osg::CopyOp::operator()(class
 osg::StateAttribute const *)const " (??RCopyOp@osg@@UEBAPEAVStateAttribute@1@PEBV21@@Z) already defined in osg.lib(osg
.dll) [C:\Softwares\Skybolt-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::StateAttributeCallback * __cdecl osg::CopyOp::operator
()(class osg::StateAttributeCallback const *)const " (??RCopyOp@osg@@UEBAPEAVStateAttributeCallback@1@PEBV21@@Z) alread
y defined in osg.lib(osg.dll) [C:\Softwares\Skybolt-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests
\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::StateSet * __cdecl osg::CopyOp::operator()(class osg::
StateSet const *)const " (??RCopyOp@osg@@UEBAPEAVStateSet@1@PEBV21@@Z) already defined in osg.lib(osg.dll) [C:\Software
s\Skybolt-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::Texture * __cdecl osg::CopyOp::operator()(class osg::T
exture const *)const " (??RCopyOp@osg@@UEBAPEAVTexture@1@PEBV21@@Z) already defined in osg.lib(osg.dll) [C:\Softwares\Skybolt-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::Uniform * __cdecl osg::CopyOp::operator()(class osg::U
niform const *)const " (??RCopyOp@osg@@UEBAPEAVUniform@1@PEBV21@@Z) already defined in osg.lib(osg.dll) [C:\Softwares\Skybolt-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

osg.lib(CopyOp.obj) : error LNK2005: "public: virtual class osg::UniformCallback * __cdecl osg::CopyOp::operator()(clas
s osg::UniformCallback const *)const " (??RCopyOp@osg@@UEBAPEAVUniformCallback@1@PEBV21@@Z) already defined in osg.lib(
osg.dll) [C:\Softwares\Skybolt-master\Skyboltbuild\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxpro
j]

C:\Softwares\Skybolt-master\Skybolt-build\bin\Release\plugins\FftOceanTests.exe : fatal error LNK1169: one or more multiply defined symbols found [C:\Softwares\Skybolt-master\Skybolt-build\src\Skybolt\SkyboltEnginePlugins\FftOceanTests\FftOceanTests.vcxproj]

and I got an error while running MinimalApp in Examples.
Running MinimalApp

[2022-11-06 18:07:34.208917] [0x000025c8] [info]    No --settingsFile program argument specified. Using default settings file location: '"C:\\Users\\rkaly\\AppData\\Local\\Skybolt\\Settings.json
[2022-11-06 18:07:34.209905] [0x000025c8] [warning] Settings file not found: C:\\Users\\rkaly\\AppData\\Local\\Skybolt\\Settings.json
[2022-11-06 18:07:34.209905] [0x000025c8] [info]    Loaded plugin: FftOcean.dll
[2022-11-06 18:07:34.210905] [0x000025c8] [info]    12 CPU cores detected.  Creating 11 background threads.
[2022-11-06 18:07:34.210905] [0x000025c8] [info]    Registered asset package: Core
[2022-11-06 18:07:34.210905] [0x000025c8] [info]    Registered asset package: Globe
[2022-11-06 18:07:34.210905] [0x000025c8] [info]    Registered asset package: Movers
void StateSet::setGlobalDefaults() ShaderPipeline disabled.

when I run any app from Examples.
I used conan to build this.
The exact commands are somehow like this. Apologies I never used conan before, so found all these commands searching online.

pip install conan
conan install . --install-folder C:\Softwares\Skybolt-master\Skybolt-build --build=missing
conan build --install-folder C:\Softwares\Skybolt-master\Skybolt-install --build-folder C:\Softwares\Skybolt-master\Skybolt-build .

IMO I dont think that the above error is the reason for the message void StateSet::setGlobalDefaults() ShaderPipeline disabled. as it appears while building FftOceanTests.exe
Do you know what might be the problem here?

Thanks.

example can't be run

The example can't run,
there is no entityFactory.createEntity("Camera");
EntityPtr planet = entityFactory.createEntity("PlanetEarth");
....
example will crash.

Error while building in Assets/Core/Shaders/Util/Specular.h

When building the project on LinuxMint 20.1 (Ubuntu 20.04) I got this error:
Building CXX object src/Skybolt/SkyboltVisTests/CMakeFiles/SkyboltVisTests.dir/QuadTreeTileLoaderTests.cpp.o
In file included from /home/cel/Projekty/var/Skybolt/master/Skybolt-master/src/Skybolt/SkyboltVisTests/../../../Assets/Core/Shaders/Brdfs/PrincipledBrdfDirectionalLight.h:13,
from /home/cel/Projekty/var/Skybolt/master/Skybolt-master/src/Skybolt/SkyboltVisTests/PrincipledBrdfTests.cpp:26:
/home/cel/Projekty/var/Skybolt/master/Skybolt-master/src/Skybolt/SkyboltVisTests/../../../Assets/Core/Shaders/Util/Specular.h: In function ‘glm::vec3 fresnelSchlickRoughness(float, glm::vec3, float)’:
/home/cel/Projekty/var/Skybolt/master/Skybolt-master/src/Skybolt/SkyboltVisTests/../../../Assets/Core/Shaders/Util/Specular.h:57:58: error: cannot convert ‘glm::vec<3, float, glm::packed_highp>::rgb’ from type ‘glm::vec<3, float, glm::packed_highp> (glm::vec<3, float, glm::packed_highp>::)() const’ to type ‘glm::vec3’ {aka ‘glm::vec<3, float, glm::packed_highp>’}
57 | return clamp( a0 + F0 * ( a1 - a0 ), vec3(0), vec3(1) ).rgb;

I was able to go around this by simply adding round parentheses:
return clamp( a0 + F0 * ( a1 - a0 ), vec3(0), vec3(1) ).rgb();

But I'm not sure if this is the right way.

Run minimalApp found camera are so sensitive

When I ran the minimalApp example, I found that the movement of the mouse caused the scene to move very quickly, so that I couldn't observe the world very well,please help me.

Regarding all applications (FlightSimApp/MinimalApp) crashes [Resolved]

Hi,
I have successfully build the skybolt engine on windows. When I run the MinimalApp or FlightSimApp, the application closes and the console has this written. Can you please share why the textures are not loaded when they are contained in the Assets folder.

[2022-04-04 19:24:44.439233] [0x00001cd0] [info] Reading settings file '"XYZ:\Skybolt-master\src\SkyboltExamples\Exa
mplesCommon\ExampleSettings.json"'
[2022-04-04 19:24:44.442236] [0x00001cd0] [info] 8 CPU cores detected. Creating 7 background threads.
[2022-04-04 19:24:44.448242] [0x00001cd0] [info] Registered asset package: Assets
[2022-04-04 19:24:44.448242] [0x00001cd0] [info] Registered asset package: Core
void StateSet::setGlobalDefaults() ShaderPipeline disabled.
Error reading file Environment/Space/SunDisc.png: file not found
Error reading file Environment/Space/MoonDisc.jpg: file not found
Could not open image file: Environment/Space/MoonDisc.jpg

XYZ:\Skybolt-master\build\bin\Debug\FlightSimApp.exe (process 688) exited with code 0.
To automatically close the console when debugging stops, enable Tools->Options->Debugging->Automatically close the console when debugging stops.
Press any key to close this window . . .

Building the v1.5.0 with package earcut not found

CMake Error at src/Skybolt/SkyboltVis/CMakeLists.txt:32 (find_package):
  By not providing "Findearcut.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "earcut", but
  CMake did not find one.

  Could not find a package configuration file provided by "earcut" with any
  of the following names:

    earcutConfig.cmake
    earcut-config.cmake

  Add the installation prefix of "earcut" to CMAKE_PREFIX_PATH or set
  "earcut_DIR" to a directory containing one of the above files.  If "earcut"
  provides a separate development package or SDK, be sure it has been
  installed.


-- Configuring incomplete, errors occurred!
See also "/home/jtomczak/git/Skybolt/build/CMakeFiles/CMakeOutput.log".
ERROR: conanfile.py (skybolt/1.5.0): Error in build() method, line 116
	cmake.configure()
	ConanException: Error 1 while executing cd '/home/jtomczak/git/Skybolt/build' && cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE="Release" -DCONAN_IN_LOCAL_CACHE="OFF" -DCONAN_COMPILER="gcc" -DCONAN_COMPILER_VERSION="9" -DCONAN_CXX_FLAGS="-m64" -DCONAN_SHARED_LINKER_FLAGS="-m64" -DCONAN_C_FLAGS="-m64" -DCONAN_LIBCXX="libstdc++" -DBUILD_SHARED_LIBS="OFF" -DCMAKE_INSTALL_PREFIX="/home/jtomczak/git/Skybolt/build/package" -DCMAKE_INSTALL_BINDIR="bin" -DCMAKE_INSTALL_SBINDIR="bin" -DCMAKE_INSTALL_LIBEXECDIR="bin" -DCMAKE_INSTALL_LIBDIR="lib" -DCMAKE_INSTALL_INCLUDEDIR="include" -DCMAKE_INSTALL_OLDINCLUDEDIR="include" -DCMAKE_INSTALL_DATAROOTDIR="share" -DCONAN_CMAKE_POSITION_INDEPENDENT_CODE="ON" -DCMAKE_MODULE_PATH="/home/jtomczak/git/Skybolt/build" -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY="ON" -DCONAN_EXPORTED="1" -DBoost_STATIC_LIBS="True" -DOSG_STATIC_LIBS="True" -DSKYBOLT_PLUGINS_STATIC_BUILD="False" -DCMAKE_POSITION_INDEPENDENT_CODE="True" -DBUILD_FFT_OCEAN_PLUGIN="true" -DCMAKE_TOOLCHAIN_FILE="conan_paths.cmake" -Wno-dev '/home/jtomczak/git/Skybolt'

Hi, I got this error when trying to build project with conan build command. Earcut package seems to be installed in ~/.conan/data/.

System: Ubuntu 20.04

How to use?

I have some special issues when install that package.
In my case i use vcpkg and Visual studio 2017.
So what i do:

  1. Install some libs on vcpkg:
vcpkg install boost:x64-windows
vcpkg install boost:x64-windows-static
  1. Shared vcpkg libs into "CMakeLists.txt":
if(CMAKE_TOOLCHAIN_FILE)
    include(${CMAKE_TOOLCHAIN_FILE})
endif(CMAKE_TOOLCHAIN_FILE)
  1. Configure project on cmake(gui).exe (add some libs from repo SkyboltDependenciesHeaderOnly)
Found Boost: C:/temp/vcpkg/installed/x64-windows/include (found version "1.79.0") found components: log log_setup filesystem thread regex chrono atomic 
Configuring done
Generating done

but have some warning on SkyboltVis:

CMake Warning at C:/Program Files/CMake/share/cmake-3.23/Modules/FindBoost.cmake:1384 (message):
  New Boost version may have incorrect or missing dependencies and imported
  targets
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.23/Modules/FindBoost.cmake:1507 (_Boost_COMPONENT_DEPENDENCIES)
  C:/Program Files/CMake/share/cmake-3.23/Modules/FindBoost.cmake:2117 (_Boost_MISSING_DEPENDENCIES)
  C:/temp/vcpkg/installed/x64-windows/share/boost/vcpkg-cmake-wrapper.cmake:11 (_find_package)
  C:/temp/vcpkg/scripts/buildsystems/vcpkg.cmake:778 (include)
  src/Skybolt/SkyboltVis/CMakeLists.txt:7 (find_package)

Summary when i build (F7) (MinimalApi) VS project :
LNK2019 Skybolt.Vis
what i do wrong? maybe version of boost?

SkyboltExamples MinimalApp error

Hello,
I tried to run MinimalApp and got the following error: Could not locate file: Tiles/Earth/Features

Here is the output:

C:\Users\Leonid.Minkov\Documents\proj\skybolt\bld-17\bin\Debug>minimalapp --sett
ingsFile Settings.json
[2021-04-11 21:42:03.263782] [0x00001ba4] [info] Reading settings file '"Sett
ings.json"'
[2021-04-11 21:42:03.277783] [0x00001ba4] [info] 4 CPU cores detected. Creati
ng 3 background threads.
[2021-04-11 21:42:03.280783] [0x00001ba4] [info] Registered asset module: Cor
e
[2021-04-11 21:42:03.280783] [0x00001ba4] [info] Registered asset module: Sha
ders
[2021-04-11 21:42:12.933335] [0x00001ba4] [error] Could not locate file: Tiles
/Earth/Features

I registered at mapbox.com and got a key.

Here is the content of the settings file:
{
"tileApiKeys": {

    "mapbox": "pk.eyJ1IjoibG1pbmtvdiIsImEiOiJja25ja2MxZHMw....."
}

}

I downloaded 'Core_1_0_0' folder, and copied "Core" folder from it into 'C:\Users\Leonid.Minkov\Documents\proj\skybolt\bld-17\bin\Debug\Assets' but 'Core\Tiles\Earth' folder does not have 'Features' folder.

Please help. Thank you.

Hao to add two maps in the scene graph?

Hello matthew, my development environment cannot be connected to the internet, so I need to read map data from the geoserver. However, there is a blurry global map and a clear local map on the geoserver. After reading your source code, I found that it is impossible to add two maps. Do you have any good ideas?

ERROR: 0:1686: 'OUT' : failed to expand macro

Hi Matthew,

Here is a small extract of errors I now encounter (they are all similar) :

[2022-06-10 10:27:26.411027] [0x00000c94] [error]   FRAGMENT glCompileShader "Shaders/Ocean.frag" FAILED
[2022-06-10 10:27:26.411027] [0x00000c94] [error]   FRAGMENT Shader "Shaders/Ocean.frag" infolog:
ERROR: 0:1686: 'OUT' : failed to expand macro
[2022-06-10 10:27:26.426685] [0x00000c94] [error]   VERTEX glCompileShader "Shaders/OceanProjected.vert" FAILED
[2022-06-10 10:27:26.426685] [0x00000c94] [error]   VERTEX Shader "Shaders/OceanProjected.vert" infolog:
ERROR: 0:1737: 'OUT' : failed to expand macro

What could be causing this?

Thanks.

How to build project

Hi all,

I am an aerospace engineer by trade and hence have not had extensive training on how to use CMake. Is there any chance that you could include a one-paragraph ish tutorial on how to use it and where to point CMake to, what options to use, etc? I am notoriously bad at understanding Cmake and the documentation for how to use it on their website is a little complicated. I have been frustrated with CMake many times on other projects as well.

Usage:

I opened CMake and set the source code directory to C:/Users/Owner/AppData/Local/Programs/Python/Python37/Lib/site-packages/Skybolt/ and I set the build directory to C:/Users/Owner/AppData/Local/Programs/Python/Python37/Lib/site-packages/Skybolt/bin . I used CMAKE_BUILD_TYPE --> RelWithDebInfo but I am not sure if I need to include CMAKE_INSTALL_PREFIX, other parameters etc. I also configured the compiler as MSVC 2017 and added 64 bit to that. I am using Windows 10 64 bit. Let me know what you think! Thanks for your help!

Here is the error message I got while building with CMake.

CMake Error at C:/Program Files/CMake/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:164 (message):
Could NOT find Boost (missing: thread date_time) (found version "1.72.0")
Call Stack (most recent call first):
C:/Program Files/CMake/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:445 (_FPHSA_FAILURE_MESSAGE)
C:/Program Files/CMake/share/cmake-3.17/Modules/FindBoost.cmake:2145 (find_package_handle_standard_args)
src/Skybolt/AircraftHud/CMakeLists.txt:6 (find_package)

Detecting CXX compiler ABI info compiled with the following output:
Change Dir: C:/Users/Owner/AppData/Local/Programs/Python/Python37/Lib/site-packages/Skybolt/bin/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_21adf.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R) Build Engine version 15.5.180.51428 for .NET Framework

Copyright (C) Microsoft Corporation. All rights reserved.

Microsoft (R) C/C++ Optimizing Compiler Version 19.12.25834 for x64

Copyright (C) Microsoft Corporation. All rights reserved.

cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR="Debug"" /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_21adf.dir\Debug\" /Fd"cmTC_21adf.dir\Debug\vc141.pdb" /Gd /TP /errorReport:queue "C:\Program Files\CMake\share\cmake-3.17\Modules\CMakeCXXCompilerABI.cpp"

CMakeCXXCompilerABI.cpp

Missing Environment/Ground/Ground026_1K_Color.jpg

I download the data file from offical webset,but when I run the minimalApp the application crash and tell me Environment/Ground/Ground026_1K_Color.jpg can not be found, then I check the related path on my disk, the result is there is no such file.

Most of the time, the terrain does not show and it fails silently

Hi Matthew,

I've recompiled with the latest version of the master branch (thanks for that). I've been able to see the terrain load properly several times, but most of the time, it does not even show, without errors or warning. It seems thought that the cache is being populated.

Independent from the fact that the terrain does not show, here are some of the errors/warnings I get.

[2022-06-11 06:53:55.435785] [0x000051f4] [error]   Error reading file Tiles/Earth/Attributes/0/0/0.png: file not found
[2022-06-11 06:53:55.440790] [0x000051f4] [error]   Could not load image from XyzTileSource with URL template 'Tiles/Earth/Attributes/{z}/{x}/{y}.png.

runtime settings for api keys

Hello,

I did a vcpkg based build and then tried the minimal sample. Moon was loaded fine but then nothing much happened. The console logged some failures because of missing API keys.. Where do I set these keys ? Is there a config file I need to populate ? Please advise, thank you.

image

Terrain doesn't load in FlightSimApp.

[2024-03-21 16:58:11.742853] [0x00005894] [error] Error reading file https://api.mapbox.com/v4/mapbox.satellite/0/0/0.jpg?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx: file not handled
It gives this error when trying to load terrain, but when I open this url in the browser, it loads. It also works if I put a file path in the asset package. My OSGDB can't load internet images.

Using: conan + cmake Windows 11

SkyboltExamples MinimalApp failure

I am experiencing a segfault when attempting to run the MinimalApp in SkyboltExamples in Ubuntu 20.04. I assume this is due to some configuration issues on my part, but I am not sure. I am fairly new with gl programming so let me know if I can provide any addition information.

The segfault seems to occur when attempting to load tile images. I am running with OpenSceneGraph 3.6.4 and am using a settings file with my mapbox apikey. I have downloaded all 3 asset packages you provided (Core, EarthMed, Seattle). When I run the app, a window is created (it is all black) and a few moments later it segfaults.

I attempted to run the app without loading the PlanetEarth entity to avoid the issue. This does not produce a segfault and the app doesnt die, but the window is just filled black and it doesnt seem to be taking any inputs. Also, I can't close the app via the esc key or the 'x' in the window.

Here is my callstack if it helps:

osgdb_curl.so!osg_curl::EasyCurl::StreamObject::write(char const*, unsigned long) (Unknown Source:0)
osgdb_curl.so!osg_curl::EasyCurl::StreamMemoryCallback(void*, unsigned long, unsigned long, void*) (Unknown Source:0)
libcurl-gnutls.so.4![Unknown/Just-In-Time compiled code] (Unknown Source:0)
libcurl-gnutls.so.4!curl_multi_perform (Unknown Source:0)
libcurl-gnutls.so.4!curl_easy_perform (Unknown Source:0)
osgdb_curl.so!osg_curl::EasyCurl::read(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osg_curl::EasyCurl::StreamObject&, osgDB::Options const*) (Unknown Source:0)
osgdb_curl.so!osg_curl::ReaderWriterCURL::readFile(osg_curl::ObjectType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osgDB::Options const*) const (Unknown Source:0)
osgdb_curl.so!osg_curl::ReaderWriterCURL::readImage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osgDB::Options const*) const (Unknown Source:0)
libosgDB.so.160!osgDB::Registry::ReadImageFunctor::doRead(osgDB::ReaderWriter&) const (Unknown Source:0)
libosgDB.so.160!osgDB::Registry::read(osgDB::Registry::ReadFunctor const&) (Unknown Source:0)
libosgDB.so.160!osgDB::Registry::readImplementation(osgDB::Registry::ReadFunctor const&, osgDB::Options::CacheHintOptions) (Unknown Source:0)
libosgDB.so.160!osgDB::Registry::readImageImplementation(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osgDB::Options const*) (Unknown Source:0)
osgDB::Registry::readImage(osgDB::Registry * const this, const std::__cxx11::string & fileName, const osgDB::Options * options) (/usr/include/osgDB/Registry:222)
skybolt::vis::readImageWithoutWarnings(const std::__cxx11::string & filename) (/home/keaton/Documents/GLRepos/Skybolt-master/src/Skybolt/SkyboltVis/OsgImageHelpers.cpp:138)
skybolt::vis::XyzTileSource::createImage(skybolt::QuadTreeTileKey const&, std::function<bool ()>) const(const skybolt::vis::XyzTileSource * const this, const skybolt::QuadTreeTileKey & key, std::function<bool()> cancelSupplier) (/home/keaton/Documents/GLRepos/Skybolt-master/src/Skybolt/SkyboltVis/Renderable/Planet/Tile/TileSource/XyzTileSource.cpp:40)
skybolt::vis::SphericalMercatorToPlateCarreeTileSource::createImage(skybolt::QuadTreeTileKey const&, std::function<bool ()>) const(const skybolt::vis::SphericalMercatorToPlateCarreeTileSource * const this, const skybolt::QuadTreeTileKey & key, std::function<bool()> cancelSupplier) (/home/keaton/Documents/GLRepos/Skybolt-master/src/Skybolt/SkyboltVis/Renderable/Planet/Tile/TileSource/SphericalMercatorToPlateCarreeTileSource.cpp:97)
skybolt::vis::CachedTileSource::createImage(skybolt::QuadTreeTileKey const&, std::function<bool ()>) const(const skybolt::vis::CachedTileSource * const this, const skybolt::QuadTreeTileKey & key, std::function<bool()> cancelSupplier) (/home/keaton/Documents/GLRepos/Skybolt-master/src/Skybolt/SkyboltVis/Renderable/Planet/Tile/TileSource/CachedTileSource.cpp:36)
skybolt::vis::TileImageLoader::<lambda(const skybolt::QuadTreeTileKey&)>::operator()(const skybolt::QuadTreeTileKey &) const(const skybolt::vis::TileImageLoader::<lambda(const skybolt::QuadTreeTileKey&)> * const __closure, const skybolt::QuadTreeTileKey & key) (/home/keaton/Documents/GLRepos/Skybolt-master/src/Skybolt/SkyboltVis/Renderable/Planet/Tile/TileImageLoader.cpp:138)
std::_Function_handler<osg::ref_ptr<osg::Image>(const skybolt::QuadTreeTileKey&), skybolt::vis::TileImageLoader::load(const skybolt::QuadTreeTileKey&, std::function<bool()>) const::<lambda(const skybolt::QuadTreeTileKey&)> >::_M_invoke(const std::_Any_data &, const skybolt::QuadTreeTileKey &)(const std::_Any_data & __functor,  __args#0) (/usr/include/c++/8/bits/std_function.h:283)
std::function<osg::ref_ptr<osg::Image> (skybolt::QuadTreeTileKey const&)>::operator()(skybolt::QuadTreeTileKey const&) const(const std::function<osg::ref_ptr<osg::Image>(const skybolt::QuadTreeTileKey&)> * const this,  __args#0) (/usr/include/c++/8/bits/std_function.h:687)
skybolt::vis::TileImageLoader::getOrCreateImage(skybolt::QuadTreeTileKey const&, skybolt::vis::TileImageLoader::CacheIndex, std::function<osg::ref_ptr<osg::Image> (skybolt::QuadTreeTileKey const&)>) const(const skybolt::vis::TileImageLoader * const this, const skybolt::QuadTreeTileKey & requestedKey, skybolt::vis::TileImageLoader::CacheIndex cacheIndex, skybolt::vis::TileImageLoader::Factory factory) (/home/keaton/Documents/GLRepos/Skybolt-master/src/Skybolt/SkyboltVis/Renderable/Planet/Tile/TileImageLoader.cpp:202)
skybolt::vis::TileImageLoader::load(skybolt::QuadTreeTileKey const&, std::function<bool ()>) const(const skybolt::vis::TileImageLoader * const this, const skybolt::QuadTreeTileKey & key, std::function<bool()> cancelSupplier) (/home/keaton/Documents/GLRepos/Skybolt-master/src/Skybolt/SkyboltVis/Renderable/Planet/Tile/TileImageLoader.cpp:137)
skybolt::vis::AsyncTileLoader::<lambda()>::operator()(void) const(const skybolt::vis::AsyncTileLoader::<lambda()> * const __closure) (/home/keaton/Documents/GLRepos/Skybolt-master/src/Skybolt/SkyboltVis/Renderable/Planet/Tile/AsyncTileLoader.cpp:49)
std::_Function_handler<void(), skybolt::vis::AsyncTileLoader::load(const skybolt::QuadTreeTileKey&, skybolt::vis::Box2d, const OsgTilePtrPtr&, const ProgressCallbackPtr&)::<lambda()> >::_M_invoke(const std::_Any_data &)(const std::_Any_data & __functor) (/usr/include/c++/8/bits/std_function.h:297)
std::function<void ()>::operator()() const(const std::function<void()> * const this) (/usr/include/c++/8/bits/std_function.h:687)
px_sched::Scheduler::WorkerThreadMain(px_sched::Scheduler * schd, px_sched::Scheduler::Worker * worker_data) (/home/keaton/Documents/GLRepos/SkyboltDependenciesHeaderOnly-master/px_sched/include/px_sched/px_sched.h:1130)
std::__invoke_impl<void, void (*)(px_sched::Scheduler*, px_sched::Scheduler::Worker*), px_sched::Scheduler*, px_sched::Scheduler::Worker*>(void (*&&)(px_sched::Scheduler *, px_sched::Scheduler::Worker *) __f) (/usr/include/c++/8/bits/invoke.h:60)
std::__invoke<void (*)(px_sched::Scheduler*, px_sched::Scheduler::Worker*), px_sched::Scheduler*, px_sched::Scheduler::Worker*>(void (*&&)(px_sched::Scheduler *, px_sched::Scheduler::Worker *) __fn) (/usr/include/c++/8/bits/invoke.h:95)
std::thread::_Invoker<std::tuple<void (*)(px_sched::Scheduler*, px_sched::Scheduler::Worker*), px_sched::Scheduler*, px_sched::Scheduler::Worker*> >::_M_invoke<0ul, 1ul, 2ul>(std::thread::_Invoker<std::tuple<void (*)(px_sched::Scheduler*, px_sched::Scheduler::Worker*), px_sched::Scheduler*, px_sched::Scheduler::Worker*> > * const this) (/usr/include/c++/8/thread:244)
std::thread::_Invoker<std::tuple<void (*)(px_sched::Scheduler*, px_sched::Scheduler::Worker*), px_sched::Scheduler*, px_sched::Scheduler::Worker*> >::operator()(std::thread::_Invoker<std::tuple<void (*)(px_sched::Scheduler*, px_sched::Scheduler::Worker*), px_sched::Scheduler*, px_sched::Scheduler::Worker*> > * const this) (/usr/include/c++/8/thread:253)
std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(px_sched::Scheduler*, px_sched::Scheduler::Worker*), px_sched::Scheduler*, px_sched::Scheduler::Worker*> > >::_M_run(std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(px_sched::Scheduler*, px_sched::Scheduler::Worker*), px_sched::Scheduler*, px_sched::Scheduler::Worker*> > > * const this) (/usr/include/c++/8/thread:196)
libstdc++.so.6![Unknown/Just-In-Time compiled code] (Unknown Source:0)
libpthread.so.0!start_thread(void * arg) (/build/glibc-ZN95T4/glibc-2.31/nptl/pthread_create.c:477)
libc.so.6!clone() (/build/glibc-ZN95T4/glibc-2.31/sysdeps/unix/sysv/linux/x86_64/clone.S:95)

Another note (that may or may not be related) is when I run the SkyboltVisTests, I am getting 2 failures. Here is the output for that:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SkyboltVisTests is a Catch v2.9.2 host application.
Run with -? for options

-------------------------------------------------------------------------------
Precomputed BruentonAtmosphere matches Bruenton's reference implementation
-------------------------------------------------------------------------------
/home/keaton/Documents/GLRepos/Skybolt-master/src/Skybolt/SkyboltVisTests/BrunetonAtmosphereGeneratorTests.cpp:117
...............................................................................

/home/keaton/Documents/GLRepos/Skybolt-master/src/Skybolt/SkyboltVisTests/BrunetonAtmosphereGeneratorTests.cpp:117: FAILED:
due to unexpected exception with message:
  Could not open file: Shaders/ThirdParty/BrunetonAtmosphere/definitions.glsl

No protocol specified
-------------------------------------------------------------------------------
CompositingPipeline renders expected images
-------------------------------------------------------------------------------
/home/keaton/Documents/GLRepos/Skybolt-master/src/Skybolt/SkyboltVisTests/CompositingPipelineFactoryTests.cpp:170
...............................................................................

/home/keaton/Documents/GLRepos/Skybolt-master/src/Skybolt/SkyboltVisTests/CompositingPipelineFactoryTests.cpp:170: FAILED:
due to unexpected exception with message:
  Could not create offscreen OpenGL graphics context

===============================================================================
test cases: 13 | 11 passed | 2 failed
assertions: 34 | 32 passed | 2 failed

RuntimeError: Could not find 'Core' assets package.

Hi everyone!
I get

Traceback (most recent call last):
  File "C:\temp\test.py", line 4, in <module>
    engine = sb.createEngineRootWithDefaults()
RuntimeError: Could not find 'Core' assets package. Ensure working directory or SKYBOLT_ASSETS_PATH is set correctly. Please refer to Skybolt documentation for information about finding assets.

Obviously, only Globe and Movers reside in Assets.

Can skyblt load tms tiles?

When I use the XyzYileSource load the tms tile,I find the following Phenomenon.
123

I don't know if I'm doing the right thing

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.