Commit Graph

58 Commits

Author SHA1 Message Date
Emil Axelsson
0d2935c43b Feature/gaia mission merge (#766)
* Add Adam Aslegård's module that renders Gaia mission stars
 * Add module for Gaia mission
 * Add CCfits and cfitsio submodules and the implemented fitsfilereader module from the OpenSpace-sun-earth-event branch
 * Add a TaskRunner to read from a fits file
2018-11-20 18:19:08 -05:00
Emil Axelsson
1632c09af3 Coordinate Axes
* Add coordinate axes renderable
 * Add debug helper
 * Add example asset
 * Fix bug with dynamic loading of assets. (#763)
2018-11-13 08:09:14 -05:00
Alexander Bock
8ddc794cda Feature/alex is flying (#729)
* Correctly specify maximum text sizes for grids
 * Use StaticScale transformations in grids and remove fixed radius
 * Fix Verifier to let grids accept non-integer min and max sizes
 * Add a new scale that changes it's value based on the current time and a reference time
 * Add a proper radiosphere that grows in real time (closes #728)
 * Add default globe customization folders to the assets (closes #724)
 * Add new dashboarditem that shows the current camera velocity (closes #702)
 * Add ability to add interesting times to a scene (closes #715)
 * Reenable keybindings gui element
 * Add ShortcutManager
 * Add ability to bind keyless keybinds to use as arbitrary shortcuts (closes #710)
2018-10-08 03:00:35 -04:00
Alexander Bock
0774348fc2 General cleanup
Adapt to changes in Ghoul
Make use of TextureManager
Jenkins compile fix
2018-07-19 14:43:53 -04:00
Alexander Bock
54d1a506c3 Add rotation class that provides a constant rotation based on in-game time (closes #662)
Refactor functions for rotation, scaling, and translation to take UpdateData rather than current time
2018-07-18 15:28:24 -04:00
Emil Axelsson
6007f1d70d Feature/model lighting (#670)
* Fix NH texture and add lighting options
* Add missing comma
* Light sources: work in progress.
* Add light sources
* Remove unused values
* Add types to documentation
* Add light sources to various missions
* Code cleanup based on review
2018-07-13 09:01:43 +02:00
Emil Axelsson
1b3df16c28 Feature/time frame (#642)
* First implementation of time frames
* Add TimeFrameUnion. Only show solar system 1850-2150.
* Consider dependencies when determining whether time frame is active
* Code review fixes.
2018-07-11 10:42:06 +02:00
Alexander Bock
d0f97901d4 Add DashboardItem that can display a property value
Fix documentation of most other dashboard items
2018-06-18 12:49:03 +02:00
Alexander Bock
4952f8f977 Code cleanup branch (#618)
* Make height map fallback layer work again
  * Add documentation to joystick button bindings
  * Removed grouped property headers
  * Add new version number constant generated by CMake
  * Make Joystick deadzone work properly
  * Change the startup date on Earth to today
  * Fix key modifier handling
  * Add debugging indices for TreeNodeDebugging
  * Fix script schedule for OsirisRex
  * Do not open Mission schedule automatically
  * Upload default projection texture automatically

  * General code cleanup
  * Fix check_style_guide warnings
  * Remove .clang-format
  * MacOS compile fixes
  * Clang analyzer fixes
2018-06-10 04:47:34 +00:00
Alexander Bock
40dbf875c5 Issue/525 (#593)
* Add initializeGL and deinitializeGL methods to OpenSpaceModule Call releaseAll from ProgramObjectManager in deinitializeGL to guard against errors when deinitializing assets

* Change removeProgramObject function in RenderEngine to take a non-owning pointer instead of a reference to a unique pointer to make it compatible with the ProgramObjectManager
Update Ghoul repository

* Using ProgramObjectManager in more modules to reduce the number of programs compiled at startup
2018-04-10 15:55:52 -04:00
Alexander Bock
a3c849843f Feature/new formatting (#547)
* Change to new logging format (closes #542)
 * Adds a screenshots folder that uses the application startup time
 * Creating focus nodes for VRT files if the info files contain location information
 * Fix issue with removing virtual properties
 * Add a method for returning the cartesian coordinates for a geolocation on a planet
2018-03-07 18:10:32 -05:00
Alexander Bock
58f79a8851 Issue/518 (#529)
* Adding ScreenSpaceSpout object to display spout textures in screen space
 * Enable the clearing of option properties
 * Fix crash in ScreenSpaceImageLocal specification
 * Split RenderablePlane into RenderablePlaneImageLocal and RenderablePlaneImageOnline
 * Add RenderablePlane Spout
 * Rename Texture parameter in ScreenSpaceImageOnline into URL

Closes #518
2018-02-23 13:24:35 -05:00
Alexander Bock
cac2f24b40 Only make an internalInitialize in OpenSpaceModule that accepts a ghoul::Dictionary 2017-12-31 17:32:40 -05:00
Alexander Bock
dcfef3557f Update copyright header 2017-12-29 20:11:22 +01:00
Alexander Bock
167222c814 Feature/dashboard (#431)
Merging Dashboard branch that introduces the Dashboard, DashboardItem and moves most of the screen rendering code into a component-based layout that can also be displayed as a screenspace renderable

* Add Onscreen Dashboard
  * Add Dashboard class
  * Add DashboardItem classes and subclasses
  * Added font and fontsize customization to dashboarditems
  * Add default dashboard specifications to all scenes
  * Add tests.scene to test dashboard items
  * Add configuration options to DashboardItemDistance
  * Fix distance conversion to correctly use singular or plural values
  * Make DashboardItems unique when adding them to a dashboard
  * Correctly position test with different font sizes
  * Add Dashboard Item that enables spacing between other items
  * Add performance measurement to dashboard rendering
  * Add method to DashboardItemDistance that computes distance to surface
  * Add DashboardItemAngle that computes and prints the angle between three objects
  * Add DashboardItemInstruments that shows the instruments on New Horizons
  * Add ability to OpenSpaceModules to return a list of Luascripts defined by child objects
  * Make it possible for ScreenSpaceDashboard to work with its own dashboard or the main one
2017-12-13 17:11:54 -05:00
Alexander Bock
8e0fde947d Cleanup ScreenSpaceFramebuffer (fix orientation issue)
Add Dashboard for on-screen information (#closes 201)
2017-11-26 14:46:54 -05:00
Alexander Bock
f29b15a37f Add a rotation method that follows a fixed scene graph node
Add missing file for ImGui
2017-11-10 17:15:00 -05:00
Alexander Bock
8866a13ff6 More coding style fixes 2017-11-08 21:36:06 -06:00
Alexander Bock
97445f4f9f Add Scaling, Rotation, and Translation that is based on evaluation of Lua scripts 2017-10-23 14:43:25 -07:00
Alexander Bock
aa969795cc Factor ScreenSpaceImage into separate classes for local loading and online download (closes #296) 2017-10-10 14:16:55 -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
db9db49716 Provide a static member variable Name for all OpenSpaceModules 2017-07-12 13:59:16 -04:00
Alexander Bock
0b1c6706dd Remove unused RenderablePath
Add documentations to base module classes
Change RenderableSphere to not use power scaled coordinates
2017-05-12 11:28:10 -04:00
Alexander Bock
773828c057 Adding documentations to more classes 2017-05-11 22:51:11 -04: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
4b688fd149 Move Rotation and Scale factories from base module to OpenSpace core 2016-12-14 14:27:12 +01:00
Alexander Bock
dbb599a5fa Separate base module into base and space 2016-12-13 14:43:44 +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
96e27913ca Add documentation to RenderableRings
Change Size to be specified in meters instead of powerscaled scalars
2016-10-29 15:24:39 +02:00
Alexander Bock
18b8aab898 Changes in ProjectionComponent initialization
- Remove parsing function
  - Make ProjectionComponent accept sub-dictionary
Remove "Rotation" key-value from RenderableModelProjection
  - Information moved into RenderableFOV to do conversion between object and frame
Changes in mod files to reflect ProjectionComponent and RenderableModelProjection changes
Added Documentation to
  - RenderablePlanetProjection
  - RenderableModelProjection
  - ProjectionComponent
  - PlanetGeometry
  - ModelGeometry
2016-10-27 21:45:49 +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
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
Alexander Bock
a25a9b4a2d Add the ability to the FactoryManager to write documentation about all registered classes
Enable this feature on default in openspace.cfg
Move all generated documentations into a documentation folder
Adapt gitignore accordingly
2016-09-16 17:37:02 +02:00
Alexander Bock
a354f13ef3 Adding DocumentationEngine 2016-09-15 13:48:28 +02:00
Kalle Bladin
57d47cd856 Implement class RenderableTrailNew and use it for osiris rex. Higher precision than the old one. 2016-08-23 17:29:51 -04:00
Kalle Bladin
542b9e11e6 Update SceneGraphNode to have a full transformation defined in terms of translation, scale and rotation. 2016-08-17 00:19:25 -04:00
Alexander Bock
635ce1713b Add initial implementation of rings for Saturn 2016-07-29 07:54:16 +02:00
Michael Nilsson
bf9a819617 windows fix, add base module as dependency to iswa 2016-05-04 12:43:59 -04:00
Michael Nilsson
0d49076c54 solve merge conflict with develop 2016-05-03 17:11:28 -04:00
Michael Nilsson
4d61694f75 ScreenSpaceRenderables can be creates through scripts, ScreenSpaceRenderable is now a factory 2016-05-03 10:39:32 -04:00
Alexander Bock
c6ffc48c10 Remove DynamicEphemeris as it is superseded by StaticEphemeris 2016-04-25 14:04:05 +02:00
Jonathas Costa
3a9e5e5790 Removed WavefrontGeometry class register and added the MultiModelGeometry class register. 2016-03-16 09:05:16 -04:00
Alexander Bock
877a4d1ba6 Updated copyright header 2016-02-05 17:43:21 +01:00
Alexander Bock
0735d0fc2d More cleanup of FactoryManager 2015-12-14 17:55:24 -08:00
Alexander Bock
6eca5c0f68 More module cleanup 2015-12-14 11:46:44 -08:00