Commit Graph

1231 Commits

Author SHA1 Message Date
Alexander Bock
2e6465d888 Correctly order the Property::Visibility enum 2017-07-22 23:09:38 -04:00
Alexander Bock
04bac9293b Encapsulate identifier, guiName, and description into a PropertyInfo struct 2017-07-22 17:36:03 -04:00
Alexander Bock
b584f0197e Add description to Propertys 2017-07-21 16:31:58 -04:00
Alexander Bock
e661324002 Remove style guide errors
Add missing newline errors
2017-07-21 11:52:25 -04:00
Alexander Bock
008ab4e613 Replacing void Renderable::render(const RenderData&) with Renderable::render(const RenderData&, RendererTasks&) 2017-07-18 15:47:48 -04:00
Alexander Bock
0963184293 Removing more warnings 2017-07-18 01:05:59 -04:00
Alexander Bock
7cfa358f04 Convert std::bad_any_cast back to ghoul::bad_any_cast 2017-07-17 16:25:27 -04:00
Alexander Bock
40926aa68f Remove <any> include 2017-07-17 16:19:26 -04:00
Alexander Bock
0e9edaeb12 Fix byte order mark commits
Update Ghoul
2017-07-17 15:54:00 -04:00
Alexander Bock
90e0364c5a Revert to using ghoul::any due to lack of support on macOS 2017-07-17 13:46:35 -04:00
Alexander Bock
4dba552fd1 Started switching OpenSpace projects to nested namespaces
Various cleanups
2017-07-15 20:01:55 -04:00
Alexander Bock
3b1c2b37a0 Update ghoul repository
Adapt to the change from ghoul::any to std::any
2017-07-15 18:13:52 -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
Alexander Bock
6f524f4a67 Add centralized escaping of JSON strings
Enable correct escaping of " character thus removing the need to outlaw "s in comments
2017-07-14 16:58:18 -04:00
Alexander Bock
6a198c5d93 Started some warning cleanup 2017-07-14 14:21:01 -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
Matthew Territo
9a9fcf0ac1 Alex's recommended changes in pull #357. Add check for log directory existence
and creation
2017-07-13 20:16:01 -06:00
Matthew Territo
b4c128306f Merge branch 'master' into feature/statlogs
* master:
  Add the ability to add OpenGL error checking and function call logging though the openspace.cfg file
  Automatically set SGCT_SPOUT_SUPPORT when OPENSPACE_SPOUT_SUPPORT is set
2017-07-13 18:16:23 -06:00
Alexander Bock
c3929f5d6d Add the ability to add OpenGL error checking and function call logging though the openspace.cfg file 2017-07-13 14:52:13 -04:00
Matthew Territo
cdb84ac111 Merge remote-tracking branch 'origin/master' into feature/statlogs 2017-07-13 09:06:13 -06:00
Alexander Bock
db9db49716 Provide a static member variable Name for all OpenSpaceModules 2017-07-12 13:59:16 -04:00
Matthew Territo
f1417210fa Merge remote-tracking branch 'origin/master' into feature/statlogs 2017-07-11 13:56:40 -06:00
Alexander Bock
6d0c80cc91 Change the mouse scroll callback to accept two dimensional arguments 2017-07-11 14:35:39 -04:00
Alexander Bock
314c6c0848 Enable Property to have multiple callbacks 2017-07-11 14:23:17 -04:00
Matthew Territo
115bb998c9 Remove colons and cat filename together with formatLogName. 2017-07-07 10:44:16 -06:00
Matthew Territo
a165af8c59 Output to files. Function files aren't writing for some reason. 2017-07-06 18:34:38 -06:00
Matthew Territo
a91e48efe7 Add PerformanceMeasurement logging variables to ConfigurationManager. Read from logDir and file prefix from config file in PerformanceManager. 2017-07-06 17:01:21 -06:00
Matthew Territo
810c2ec493 Enable PerformanceManager logging with ImGui checkbox. 2017-07-06 12:07:50 -06:00
Matthew Territo
81164e0d8d Stub for Performance Manager & GUI Button 2017-07-03 13:46:17 -06:00
eriksunden
0d05d30396 Feature/packaging (#333)
* Added proper CPACK structure and added generation of openspace.h header to add verisoning information in CMake.

* Packaging(ZIP on Windows, TGZ on UNIX) and installer creation(Windows Only via NSIS) is now working.

* Fixes for packing an archive on OSX.

* Add missing files in packaging
Add install setting to the globebrowsing module to copy required gdal_data
Update Credits

* Updated application icon
2017-07-01 14:04:37 -04:00
Alexander Bock
9e4e681d1e More cleanup 2017-06-09 19:29:20 -04:00
Alexander Bock
9a7eba16bd Remove warnings
Update Ghoul repository
Fix spelling mistake in openspace.cfg
2017-06-08 00:07:51 -04:00
Gene Payne
be1b211dfb Feature/satellites (#325)
* Initial commit of satellites test branch

* Modified code to work with batch TLE files from online links specified in .mod file. Does not yet auto-download the files.

* Added debug function to mod file for testing static points in orbit

* Fixed time offset bug that was corrupting satellite positions

* Minor changes for debug output and camera position.

* Changed to circle billboard for rendering satellite position

* Added satellite group name to each renderable title, and keyboard shortcuts for toggling visibility

* Added support for using ghoul luasocket lib to download latest satellite TLE files from celestrak.com

* Adding reference to updated Ghoul submodule containing luasocket changes

* Updating reference to latest Ghoul submodule in feature/satellites

* Updated reference to new ghoul version

* Updated reference to new ghoul submodule version for satellites

* Updated reference to new ghoul submodule version for satellits

* Updated versions of TLE files

* Added new Lua-accessible downloader available for scene loading

* Improved error handling for TLE files

* Updated submodule reference for ext/ghoul prior to luasocket addition

* Update SGCT reference
2017-06-06 13:42:38 -04:00
Alexander Bock
994ba32f44 Add the ability for LuaLibrary%s to reference script files that will be executed (closing #328)
Create documentation for Lua scripts
Add Lua script to check if a file exists
2017-06-02 17:36:00 -04:00
Emil Axelsson
5c67189c8d Add possibility to check if OsEng is instantiated 2017-06-01 14:09:06 +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
Emil Axelsson
219501d4f4 Feature/luaconsole (#316)
* LuaConsole: Fix bug related to horizontal scrolling 

* LuaConsole: Sanitize input and avoid crash when the input is very long

* Split up long lines of code

* Add consts and replace auto by real type

* LuaConsole: Do not consume modifier keys
2017-05-25 18:01:21 +02: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
Matthew Territo
3a5635d2a8 Merge pull request #312 from OpenSpace/feature/launcherconfigs
Merge feature/launcherconfigs
2017-05-22 00:03:59 -06:00
Alexander Bock
f22be1273a Fix property visibility to correctly ignore hidden properties 2017-05-19 16:57:12 -04:00
Matthew Territo
5086d1e5ea Merge branch 'master' into feature/launcherconfigs 2017-05-19 11:41:22 -06:00
Emil Axelsson
05a541aacb Merge branch 'master' of github.com:OpenSpace/OpenSpace into feature/luaconsole 2017-05-18 10:17:37 +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
Emil Axelsson
4fcb92385c Fix inconsistent order of members in header file and initialization 2017-05-17 21:28:20 +02:00
Emil Axelsson
1eee40887d Tweak animation and appearance of lua console + Remove some duplicate code 2017-05-17 21:21:51 +02:00
Alexander Bock
11c3e29ca0 Rendering a cursor to show the current text entry state 2017-05-17 11:27:43 -04:00
Alexander Bock
cefedabd84 More work on LuaConsole 2017-05-17 10:49:28 -04:00
Alexander Bock
65d284efc7 More work on LuaConsole
Don't have the console consume function keys
2017-05-16 16:13:52 -04:00
Alexander Bock
38e2521743 Some more work on new LuaConsole
Add Inconsolata font
2017-05-16 14:47:44 -04:00
Alexander Bock
2e38f29eb0 Enable color picking for vec3 and vec4 properties marked as color properties 2017-05-16 14:47:17 -04:00