Commit Graph

65 Commits

Author SHA1 Message Date
Alexander Bock f7170a9506 Turn the scaling transformation into providing three scaling factors (x, y, z)
Add NonUniformStaticScale class to provide independent scaling factors (closes #1151)
2020-05-12 15:27:24 +02:00
Alexander Bock d8e9db76a3 Update the copyright header to 2020 2020-02-10 21:51:01 +01:00
Jonathas Costa 63470f03ec Merge branch 'master' into feature/planetlabels 2019-12-08 14:51:39 -05:00
liuloppan 386ce8bec6 Feature/nodelines (#1013)
* Setup line render between Mars and Earth

* Updating property handling

* Precision fix

* Cleanup and making functions and variables private

* Adding linewidth property

* Using opacity property for line color

* Cleanup from review
2019-12-02 15:10:11 +01:00
Jonathas Costa c6b460ab74 Added planet label rendering. Added Earth's label. 2019-11-22 18:11:49 -05:00
Emil Axelsson c97d5126ec Feature/timeline translation (#931)
* Work on timeline translations
* Add Apollo 11 Descent data
* Ability to display negative altitudes
* Expose globe translation properties
* Added timeline rotation, and some scene updates. 
* Cleaning up apollo_sites scene; fixing boulder 1 in place to adress heightmap issue
* Use quaternion slerp instaet of linear interpolation + Cleanup
* Change to old lem model while waiting for new version to be pushed to data repo
* Small fixes
2019-07-17 15:21:13 +02:00
Alexander Bock bb3db7ada7 Feature/jenkins fix (#816)
* Cleanup
* CMake cleanups
* Update current year
* Update copyright header
* Use script to return list of all modules
* Update credits, license and ghoul
2019-03-24 11:19:39 +01:00
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