Commit Graph

636 Commits

Author SHA1 Message Date
Emil Axelsson 5ebd4d5327 Add missing file 2017-08-15 12:03:25 +02:00
Emil Axelsson 2426545a05 Merge branch 'master' of github.com:OpenSpace/OpenSpace into feature/data-management
Conflicts:
	src/rendering/renderengine.cpp
	src/scene/scene.cpp
	src/scene/sceneloader.cpp
	tests/test_concurrentjobmanager.inl
	tests/test_concurrentqueue.inl
	tests/test_sceneloader.inl
2017-08-15 11:43:18 +02:00
Emil Axelsson 6c36fa7bfd Merge branch 'feature/data-management' of github.com:OpenSpace/OpenSpace into feature/data-management
Conflicts:
	include/openspace/util/concurrentjobmanager.h
	include/openspace/util/concurrentjobmanager.inl
	include/openspace/util/concurrentqueue.h
	include/openspace/util/concurrentqueue.inl
	include/openspace/util/threadpool.h
	modules/globebrowsing/tile/tileloadjob.h
	modules/sync/syncmodule.cpp
	src/util/threadpool.cpp
2017-08-15 11:34:54 +02:00
Alexander Bock c275b2f833 Feature/cmake cleanup (#381)
* Rename OnScreenGui module to ImGui
* Support multiple external module folders (closes #31)
* Cleaning up CMake files
  * Restructure application specification
  * Add parameter for library mode to all modules
  * Add functions to handle global variable state
* Misc/remove warnings (#383)
* Increase build timeout and do a clean rebuild every commit
2017-08-14 09:38:32 -04:00
Jonathas Costa 20003d5b32 Merged master into NewAtmosphere. 2017-07-21 15:02:24 -04:00
Emil Axelsson 1160831b66 Merge branch 'master' of github.com:OpenSpace/OpenSpace into feature/core-threadpool 2017-07-21 11:25:42 +02:00
Emil Axelsson 92c85bbd34 Move GlobeBrowsing thread pool to OpenSpace core 2017-07-21 11:25:30 +02:00
Alexander Bock 0963184293 Removing more warnings 2017-07-18 01:05:59 -04:00
Jonathas Costa b0c65d416b Merged master into NewAtmosphere. 2017-07-17 16:22:33 -04:00
Alexander Bock 0e9edaeb12 Fix byte order mark commits
Update Ghoul
2017-07-17 15:54:00 -04:00
Alexander Bock 4dba552fd1 Started switching OpenSpace projects to nested namespaces
Various cleanups
2017-07-15 20:01:55 -04:00
Alexander Bock 713b5bb97b Fix compile error in iSWA module
Update warning specification for modules
Disable unreferenced local function warning
Update Ghoul
2017-07-15 17:48:03 -04:00
Kalle Bladin 2e4f31ded8 Interaction Updates (#353)
* Interaction speed is not dependent on framerate

* Split up interaction code in files and perform smooth interpolation when changing focus

* Abstract interaction code in to functions.

* Interpolation time is dependent on angle to focus node.

* Use correct delta time when interpolating

* Fix bug regarding decomposition of camera rotation.

* Make orbital interaction mode behave as globe browsing and no longer use interactiondepth below ellipsoid.

* Do not always rotate with object. Depending on distance

* Remove interaction depth below ellipsoid. Now able to interact without renderable

* Remove specification of interactionDepthBelowEllipsoid and cameraMinHeight

* Remove GlobeBrowsingInteractionMode

* Rename OrbitalInteractionMode to OrbitalNavigator and no longer extend interactionmode.

* Move properties from interaction handler to orbital navigator

* Use smooth step for follow rotation interpolator

* Rename KeyframeInteractionMode to KeyframeNavigator

* Rename files

* Clean up.

* Separate mousestate from orbitalnavigator

* Clean up

* Split keybindingmanager from interactionhandler interactionhandler

* Rename interactionhandler to navigationhandler

* Rename files

* Clean up

* Take back usage of gotochunk and gotogeo

* Rename lua library navigation

* Move functionality from navigationhandler to keyframenavigator

* Update scripts for navigation

* Comment code

* Clean up

* Solve but that caused NaN values for camera position when being in center of globe and setting focus to the globe.

* Update jenkins file to remove build folder before building.

* Fix error in jenkins script

* Update jenkins file

* Update jenkins file

* Revert jenkins file

* I hope this makes Jenkins happy.

* Line endings God damnit

* Line endings

* Clean up

* Fix compilation issue

* Take back default scene.

* Fix indentation

* Move functions goToGeo and goToChunk to GlobeBrowsingModule.

* Include algorithm for std::find

* Remove auto and other clean up
2017-07-14 17:17:17 +02:00
Jonathas Costa 3df6dbb036 Merge branch 'master' into feature/NewAtmosphere 2017-06-08 12:13:32 -04:00
Alexander Bock 9a7eba16bd Remove warnings
Update Ghoul repository
Fix spelling mistake in openspace.cfg
2017-06-08 00:07:51 -04:00
Jonathas Costa 0965ec95ba Merged Master into ATM. 2017-06-02 19:02:29 -04:00
Kalle Bladin f51f293989 Feature/globebrowsing optimization (#310)
* Simplest possible PBO implementation.

* Add PBO class

* TileLoadJob owns raw tile data

* Working on a soluton to cache textures and reuse them

* PBO and cached textures working for one texture type. Color textures.

* Threadpool for tile requests uses LRU cache as queue

* Remove framesUntilRequestFlush

* Clean up

* Clean up

* Use prioritizing concurrent job manager

* Use TileTextureInitData to initialize RawTileDataReader.

* Class TextureContainer owns the textures to use for tiles.

* Using TileTextureInitData to determine if new caches need to be created.

* Remove WriteDataDescription

* Remove TileDataLayout

* Rendering many different layer types again

* TileProviderByLevel gives layergroup id to tile providers

* Comment away use of PBO

* Erase unfinished requests to make room for new ones

* Enable choice of PBO or not.

* Enable resetting of asynctiledataprovider

* Add the ability to use PBO and also load to CPU

* Update ghoul

* Solve culling issue.

* Texture pointer of Tile is now a raw pointer. Currently break single image tile provider and text tile provider.

* Add gpudata

* Move fetching of shader preprocessing data to LayerManager

* No comparisons to determine shader recompilation.

* Show the tile cache size in the GUI

* Clean up and comment.

* Solve bug where float is interpreted as NaN

* Enable ability to blend between layers again

* Fix single image provider

* Fix windows build error

* Fix OSX compile issue.

* Some clean up

* Showing correct texture data size

* Enable use of text tile providers again. No backgroupd image path however.

* Change cache size from GUI

* Clean up

* Solve osx compilation error.

* Update ghoul

* Make it possible to switch between PBO and not during runtime.

* Enable resetting of tile datasets

* change function module in moduleengine to identify module by name

* MemoryAwareTileCache is no longer a singleton

* Update ownership of properties for globe browsing

* Logging info about resetting tile reader.

* Logging info

* Fix requested changes

* Fix some compile warnings.

* Fix compilation warnings

* Add ability to blend values with blend parameter. Also define settings through lua dict.

* Fix some comments on pull request.

* Change formatting

* Change formatting

* Change formatting

* Fix pull request comments.

* Those are details

* Make Mercury great again.

* Make Earth great again.

* Solve conflict

* Test to sometimes use valueblending and sometimes not

* Not always use value blending

* Update ghoul

* Change from auto to explicit type.

* Update test for LRU Cache

* Include algorithm.
2017-05-30 15:37:05 +02:00
Jonathas Costa 0cd56d776c Merged master into NewAtmosphere. 2017-05-24 16:53:34 -04:00
Emil Axelsson 752081d31b feature/time-refactor (#294)
- Change Time class to become a non-singleton
- Move ownership of the current time to TimeManager(instead of singleton access).
- Store the Time as a Syncable in TimeManager instead of representing all member variables of Time as Syncables.
- Pass a Time object around in the update/render methods, so that renderables don't have to query the OpenSpaceEngine to know if time is paused or if it jumped.
- Introduce Timeline and Keyframe classes
- Make use of Timelineand Keyframeclasses in KeyframeInteractionMode and TimeManager
- Added basic unit tests for Timelineand Keyframe

Future work: Add interpolation schemes for keyframes. Possibly use keyframes+interpolation feature to tween/morph properties, or figure out if this should be a separate mechanism.
2017-05-22 14:01:08 +02:00
Jonathas Costa d632b41710 Merged master into NewAtmosphere. 2017-05-18 12:33:08 -04:00
Matthew Territo 0a1101d0e4 Missing Destructors: Issue #307 (#308)
* Adding empty destructor for Scene.

* RenderEngine Destructor empty/no longer default

* Create empty ~ScreenLog
2017-05-18 10:13:20 +02:00
Alexander Bock 5ebf2a4913 Rename Documented to DocumentationGenerator 2017-05-11 18:16:30 -04:00
Alexander Bock 17fe85afba Add documentation 2017-05-11 18:01:36 -04:00
Alexander Bock d597750398 Some more refactoring of the documentation feature 2017-05-11 13:56:06 -04:00
Alexander Bock ddc9ef1bc5 Add abstract class to handle Handlebar-based documentation file generation
Apply Documented class to the InteractionHandler
Update Ghoul
2017-05-09 18:06:14 +01:00
Jonathas Costa 8d6fcf6635 Merged master into NewAtmopshere branch. 2017-05-01 11:33:54 -04:00
Alexander Bock da3e912026 Remove warnings on MacOS in Clang 2017-04-25 19:12:42 -04:00
Jonathas Costa 8615860686 Added Deferred Support for Atmosphere. 2017-04-19 13:45:06 -04:00
Emil Axelsson 4b38b33e18 Clean up code for planet radius and bounding sphere calculation (#289)
- Remove some power scaled coordaintes.
- Remove spice dependency from sphere geometry.
- Remove dead code.
2017-04-18 09:58:27 +02:00
Jonathas Costa 454e530ad6 Added deferred rendering support files. Fixed Volume rendering in framebufferrender. 2017-04-18 00:04:29 -04:00
Alexander Bock dd32a812e1 Change tabs to spaces 2017-04-17 15:00:15 -04:00
Emil Axelsson 5589de995b Feature/domecasting (#288)
* Improve dome casting feature. Add basic GUI for domecasting.

* Reenable remote scripting from Lua console. Add more settings and debug information for domecasting.

* Do not try to reconnect to parallel connection forever

* Fix interpolation bug for dome casting with globe browsing interaction mode

* Show parallel connection properties in correct GUI

* Fix bug for dome casting with globe browsing interaction mode. Add property for time tolerance.

* Update header file

* Clean up dome casting code

* Remove obsolete lua functions from ParallelConnection.
2017-04-13 23:16:00 +02:00
Emil Axelsson b06864eefe Merge branch 'develop' of github.com:OpenSpace/OpenSpace into pr/scenegraph-refactor 2017-03-16 16:35:29 +01:00
Alexander Bock ea4d9c8e44 Cleanup of RenderableCrawlingLine
Cleanup of RenderableFOV
Add function to SpiceManager that does not return the light travel time
2017-03-12 16:05:14 -04:00
Alexander Bock dc40812df9 Fix warnings in code
Make OpenSpaceTest not flood the console on Jenkins
Fix Vec3 property to signal change correctly
Let RenderablePlanetProject correctly reload base map and height map
Update Ghoul
2017-03-11 11:26:25 -05:00
Emil Axelsson 7da999c332 Merge branch 'develop' of github.com:OpenSpace/OpenSpace into pr/scenegraph-refactor
Conflicts:
	include/openspace/engine/openspaceengine.h
	src/engine/openspaceengine.cpp
	src/engine/settingsengine.cpp
	src/engine/syncengine.cpp
	src/interaction/interactionhandler.cpp
	src/rendering/renderengine.cpp
	src/scene/scene.cpp
	src/scene/scenegraph.cpp
	src/scene/scenegraphnode.cpp
	tests/test_scenegraphloader.inl
2017-03-07 10:57:50 +01:00
Alexander Bock dcc9d6228d Some minor cleanup 2017-03-05 20:08:24 -05:00
Emil Axelsson d7cd3a01a5 Merge branch 'develop' of github.com:OpenSpace/OpenSpace into pr/kameleonvolume
Conflicts:
	src/engine/openspaceengine.cpp
2017-03-03 18:08:29 +01:00
Emil Axelsson b32c416615 Improvements from code review 2017-03-03 17:39:23 +01:00
Alexander Bock c12bd7182b Some cleanup of ModuleEngine
Some cleanup of SettingsEngine
Some cleanup of SyncEngine
2017-03-02 17:24:44 -05:00
Alexander Bock d6b5bb753b - Some cleanup of LuaConsole
- Moved dedicated Lua commands into a visible property
  - Disallow non-ASCII characters
- Remove unused KeyboardController
- Remove unused DeviceIdentifier
- Some cleanup of LogFactory
  - Move and use documentation into the class
2017-03-02 14:27:18 -05:00
Emil Axelsson 0377737843 Adapt to new interfaces 2017-03-02 18:53:05 +01:00
Emil Axelsson 442969f2b1 Jenkins compilation fix 2017-03-02 18:50:11 +01:00
Emil Axelsson cb7e81cf3d Add support for converting and rendering volumetric data in the cdf format. Replace DataConverter by a more general purpose TaskRunner.
Conflicts:
	modules/volume/CMakeLists.txt
	modules/volume/linearlrucache.h
	src/engine/openspaceengine.cpp
2017-03-02 18:20:01 +01:00
Alexander Bock 3274882ec2 Add checks for inline files in style checker 2017-03-01 21:17:12 -05:00
Alexander Bock fbea8389c8 - Add check in style guide that prevents ‘using namespace’ in header files
- Remove using namespace ghoul::opengl from Globebrowsing and adjust
2017-03-01 21:02:33 -05:00
Alexander Bock 8fd60ce8e6 - Remove documentation.h include and replace with forward declaration
- Move Documentation struct into documentation namespace
2017-03-01 18:13:15 -05:00
Alexander Bock 6199289e91 Code cleanup 2017-02-27 23:03:07 -05:00
Alexander Bock 11fbff5fbc Reduce the dependency of libOpenSpace on modules
- Enable module callbacks for OpenSpaceEngine
 - Add OpenSpaceModule function that returns a Lua library
2017-02-16 16:43:34 -05:00
Alexander Bock 8456087cf5 Add a style check that checks whether the correct GLM header is used
Adapted files to use the correct GLM headers
2017-02-14 13:12:59 -05:00