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