Commit Graph

96 Commits

Author SHA1 Message Date
Emil Axelsson af8bec1441 Prepare for data sync 2017-09-14 20:16:51 +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
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
Emil Axelsson cb7319d5f2 Merge branch 'master' of github.com:OpenSpace/OpenSpace into feature/data-management
Conflicts:
	data/scene/default.scene
	modules/sync/syncmodule.h
	openspace.cfg
	src/engine/openspaceengine.cpp
	src/scene/scene.cpp
	src/scene/scene_doc.inl
	src/scene/scenegraphnode.cpp
	src/scene/scenegraphnode_doc.inl
	src/scene/sceneloader.cpp
	src/scripting/scriptengine.cpp
2017-08-14 11:17:25 +02:00
Alexander Bock 31377466ba Remove return values from initialize and deinitialize functions 2017-07-28 17:51:25 -04:00
Emil Axelsson 84a52c091a Work on assets 2017-07-20 17:06:34 +02:00
Emil Axelsson 5ced910f79 Merge branch 'master' of github.com:OpenSpace/OpenSpace into feature/data-management
Conflicts:
	include/openspace/scene/scenegraphnode.h
	src/engine/openspaceengine.cpp
	src/interaction/interactionhandler.cpp
	src/interaction/interactionmode.cpp
2017-07-18 10:54:41 +02: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
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
Emil Axelsson 5c342ed6a2 Work on asset organization, cleanup code, handle dependencies better 2017-07-13 17:36:50 +02:00
Emil Axelsson f091444972 Make it possible to toggle asset dependencies in the gui 2017-07-11 17:02:21 +02:00
Emil Axelsson 5ef5db1c6a Introduce asset toggles 2017-07-10 15:05:18 +02:00
Emil Axelsson 15dc2c3441 Fix bugs in scene graph manipulation API 2017-07-07 13:33:29 +02:00
Emil Axelsson 58a423fc56 Loading and unloading assets 2017-07-06 22:33:11 +02:00
Emil Axelsson ee36a97762 Improve asset lua interface. Simplify scene loading. 2017-07-06 16:40:35 +02:00
Emil Axelsson 2e4b908318 Work on asset loading 2017-07-05 20:17:23 +02: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
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 f4ad2ce4c2 More include file cleanup 2017-05-15 15:27:59 -04:00
Alexander Bock 5ebf2a4913 Rename Documented to DocumentationGenerator 2017-05-11 18:16:30 -04:00
Alexander Bock d597750398 Some more refactoring of the documentation feature 2017-05-11 13:56:06 -04:00
Alexander Bock 0ff91e896b Fix style guide check
Fix style guide in files
2017-04-24 15:31:32 -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
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
Gene Payne 4a312c70b8 Merge branch 'master' into feature/grouping 2017-04-13 11:23:15 -06:00
Alexander Bock bef337c0eb Minor various fixes 2017-04-12 14:21:02 -04:00
Emil Axelsson a108ee1f8a Fix requests from code review 2017-04-04 14:25:39 +02:00
GPayne ae2cb222b0 Switched to using propertyowners in grouping, and group/tag name in group syntax 2017-03-21 11:35:09 -06:00
Emil Axelsson f3931551bd Clean up scene loading 2017-03-16 17:06:33 +01:00
Emil Axelsson ca6348194e Clean up scene loading 2017-03-14 13:40:18 +01:00
Emil Axelsson 92df9caf5a Clean up scene loading 2017-03-07 16:33:56 +01: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 1689dc4047 Move the PropertyOwner name specification into the constructor and adjust accordingly 2017-03-02 18:25:13 -05:00
Alexander Bock 2f2fa3b031 Update Ghoul repository to have the factory return unique_ptrs
Adjust accordingly
2017-03-01 22:03:48 -05:00
Alexander Bock 4e52f27f9e Remove Dictionary include with forward declarations 2017-03-01 19:20:00 -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 94e3e11188 Update copyright header to 2017
Update Ghoul repository
Remove libgdal link
2017-02-06 18:02:01 -05:00
Emil Axelsson 4751ce36c4 Refactor scene graph: Move scene loading to separate class. 2016-12-30 17:08:50 +01:00
Emil Axelsson ad3921fda5 Remove unused postRender method for scene graph nodes and renderables 2016-12-14 14:14:53 +01:00
Alexander Bock d139dd2d22 Clean include guards in OpenSpace core
Remove unused files
2016-12-09 13:54:22 +01:00
Alexander Bock fe436748bf Implementing Translation classes for Keplerian elements as well as two-line element formats (#172) 2016-12-02 15:05:49 +01:00
Alexander Bock 683fc8ee53 Pr/trails (#170)
* Implement new RenderableTrails as abstract base class
  - Implement RenderableTrailsOrbit and RenderableTrailsTrajectory as concrete instances
Remove old RenderableTrails and RenderableTrailsNew classes
Adapt mod files to the new structure

* Addressed Pull Request comments
2016-11-23 10:35:46 +01:00
Alexander Bock ed4b8c9fa8 Store Translation, Rotation, and Scaling Performance measurements
If no special sorting is requested in Performance GUI, sort by name
2016-10-28 12:52:54 +02:00
Alexander Bock 4b9bed3b21 Make Translation, Rotation, and Scaling available as Properties in SceneGraphNode 2016-10-28 11:52:44 +02:00
Alexander Bock db4524d2ac - Restructure Rotation classes to make the base class store the rotation to remove an additional virtual function
- Add Matrix verifiers
- Add documentation to StaticRotation and SpiceRotation
2016-10-26 16:47:42 +02:00
Emil Axelsson ea1ca95df9 improve look and feel of scenegraph node property documentation 2016-09-29 13:58:18 +02:00
Alexander Bock 7ddccd8172 Rename Ephemeris files to Translation 2016-09-26 13:49:17 +02:00
Alexander Bock a688a1eee9 Rename Ephemeris to Translation 2016-09-26 13:34:22 +02:00
Alexander Bock 428f488bb6 Add documentation to Ephemeris classes
Remove unused "Reference" specification from mod files
Add osirisrex files to gitgnore
Make Ephemeris values into properties
2016-09-20 19:24:14 +02:00