Commit Graph

1421 Commits

Author SHA1 Message Date
Ylva Selling
7fef92802d Merge pull request #2608 from OpenSpace/feature/video-module
Video module
2023-04-14 18:28:35 -04:00
Ylva Selling
5789d86dab Address comments on PR 2023-04-14 16:29:42 -04:00
Alexander Bock
eb08968bc6 Compile fix for merge conflict 2023-04-13 23:29:12 +02:00
Emma Broman
1d240aa1f5 Fix opacity not being settable from asset for some fadeables 2023-04-13 20:56:55 +02:00
Alexander Bock
7565a91196 Cleanup lambda expressions and directly address Fadeable properties when adding properties 2023-04-12 23:20:53 +02:00
Joakim Kilby
b219638e29 Add ability to cache globe data using MRFs (#2565)
Enables globe-browsing data to be cached using caching mrf's as it is loaded from the original dataset. Subsequent reads of tiles that have been cached do not query the original dataset but picks it up from the mrf data.
Supports anything that can be used a dataset for a gdal raster but raw images such as JPGs are explicitly disallowed as they lack necessary geotransform data.

Activated on a global scale by setting the following keys in openspace.cfg (ModuleConfigurations/GlobeBrowsing)
MRFCacheEnabled = true,
MRFCacheLocation = "<somepath>",
Settings can be overriden on a per-layer basis by adding the following entries to the layer entity of an asset
CacheSettings = { Enabled = true, Compression = "LERC", BlockSize = 512, Quality=25 },

The following per-layer settings are available and override the global module settings:
Enabled : enable/disable caching for this layer.
Compression: The compression algorithm to use for tile cache storage. (JPEG, PNG, or LERC)
BlockSize: Size of tiles in cache, should be a multiple of 2 although this is not required.
Quality: The quality setting of the JPEG compression (when used)

Note that heightlayers must use LERC compresison and this is the default unless overridden by a layer.
2023-04-11 08:46:25 +02:00
Emma Broman
554373eb3e Fading of propertyowners through GUI, and more owners with fade property (#2557)
* Add property in OpenSpaceEngine for fading duration when enabling / disabling

* Add interface for fadeable components and apply to renderable

* Make layers a fadeable component

* Make globelabels a fadeable component

* Make labelscomponent a fadeable, and give it an enabled property

* Make screenspace renderables fadeable components

* Introduce concept of parent fadeables, to fade out subowners with parent

* Make rings fadeable as well

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2023-04-06 12:49:49 +02:00
Alexander Bock
80e2aaf564 Remove whitespaces at the end of files, ' and - characters 2023-04-05 16:58:45 +02:00
Alexander Bock
8eec0e84b9 Fix an issue with being able to add a GIBS layer via addGibsLayer 2023-03-26 20:24:55 +02:00
Malin E
f62d0bb677 Make sure openGL state is reset after rendering globes 2023-03-21 13:53:05 +01:00
Ylva Selling
103d1a11fc Merge remote-tracking branch 'origin/master' into feature/video-module
# Conflicts:
#	modules/globebrowsing/src/tileprovider/tileprovider.cpp
2023-03-20 10:44:45 -04:00
Alexander Bock
23ee2ee5da Add new verifier to handle identifiers and update codegen to be able to use them (closes #2522) 2023-03-11 13:18:12 +01:00
Emma Broman
4a50c4cbc0 Double renderbins for renderables (#2520) 2023-03-08 10:59:32 +01:00
Alexander Bock
a711591c09 Update Doxygen (#2537)
* Modernizing Doxygen
* Remove warnings for Doxygen
2023-03-06 23:41:24 +01:00
Alexander Bock
375e5c6561 Tracy Update (#2534)
* Update the Tracy repository
* Update submodules
2023-03-01 11:48:21 -07:00
Alexander Bock
561e9d7f22 Provide GUI names for Property Owners 2023-02-21 13:00:11 +01:00
Alexander Bock
6468964f68 Improve the reporting of specification errors 2023-02-15 15:26:23 +01:00
Ylva Selling
8cb5bbf49a Move videotileprovider to video module 2023-02-14 15:38:47 -05:00
Ylva Selling
ec8d5beb75 Update cmake file to copy the libpenh264 dll to bin after building 2023-02-14 12:50:55 -05:00
Alexander Bock
c242104baf Improve the reporting of specification errors 2023-02-13 22:16:23 +01:00
Ylva Selling
f7c871743e Change to proper format (double) for input argument to libmpv 2023-02-10 15:41:51 -05:00
Ylva Selling
bb85fd25ec Set flag for when mpv context is being destroyed 2023-02-10 15:41:18 -05:00
Ylva Selling
51385cf208 Fix bug that libmpv sometimes thinks an address to a boolean is true 2023-02-10 15:40:51 -05:00
Ylva Selling
56e8574197 Fix bug with play function and handle property replies more excplicitly again 2023-02-10 13:42:53 -05:00
Ylva Selling
71169eef6e Update some assets 2023-02-09 15:34:14 -05:00
Ylva Selling
b1ed46797f Remove unnecessary ffmpeg library 2023-02-09 15:32:15 -05:00
Ylva Selling
f65c89b088 Fix seeking with map to simulation time to be more exact 2023-02-09 13:23:28 -05:00
Ylva Selling
aa4e42bcae Fix bug with resizing fbo 2023-02-09 13:22:53 -05:00
Ylva Selling
70fd239418 Merge remote-tracking branch 'origin/master' into feature/video-on-globe
# Conflicts:
#	modules/globebrowsing/src/layergroupid.h
#	modules/globebrowsing/src/tileprovider/tileprovider.cpp
2023-02-09 12:55:08 -05:00
Ylva Selling
6935cc571f Update assets to new properties 2023-02-09 12:44:11 -05:00
Ylva Selling
c3d265c12b Make code to get properties on change more compact 2023-02-09 12:35:01 -05:00
Ylva Selling
13762fa4d3 Cleanup, add comments and rename AnimationMode to PlaybackMode 2023-02-09 12:29:25 -05:00
Ylva Selling
e51bd4b337 Get fps from video and set the seek threshold dynamically with that value 2023-02-09 12:02:42 -05:00
Ylva Selling
6f440c0ada Set default resolution for our opengl fbo to a higher value 2023-02-09 12:02:08 -05:00
Ylva Selling
ee22b75da8 Seek to video time if video duration is updated 2023-02-08 17:50:43 -05:00
Ylva Selling
ec7b564d1c Add a comment for seeking 2023-02-08 17:43:33 -05:00
Ylva Selling
079cf50beb Make video loop only for realtime loop mode 2023-02-08 17:43:20 -05:00
Ylva Selling
e67fe569ae Map to simulation time with frame stepping instead of video stretching. Remove resolution and duration as properties 2023-02-08 17:22:18 -05:00
Ylva Selling
7e8962efa0 Clean up getting properties and command handling 2023-02-08 17:18:22 -05:00
Ylva Selling
3207131838 Get video duration 2023-02-08 15:05:07 -05:00
Ylva Selling
a792f5022c Set stretching of time async 2023-02-08 15:04:09 -05:00
Ylva Selling
33326e29f5 Make wakeup function class specific 2023-02-07 11:39:27 -05:00
Alexander Bock
f7ff2e33da Properly report an error when an .info file is missing the identifier, preventing the addition of a layer without one (closes #2490) 2023-02-06 23:07:21 +01:00
Alexander Bock
79ad5776cc CMake cleanup (#2489)
* CMake Cleanup
* Warning suppression with CEF
* Use SGCT tinyxml in skybrowser for now
* Disable warnings about missing field initializers
2023-02-05 23:24:12 +01:00
Ylva Selling
12398c4b1e Add two new assets for the two different types 2023-02-02 16:30:17 -05:00
Ylva Selling
47193d7f7f Make video duration optional as it only applies if the animation mode is map to simulation time 2023-02-02 14:15:02 -05:00
Ylva Selling
c3a94577e8 Create cache for the tiles so we don't have to recreate them each frame 2023-02-02 12:38:33 -05:00
Ylva Selling
4e9fcbbd8d Restructrure header file to make it more readable and make duration and resolution properties 2023-02-02 12:29:25 -05:00
Ylva Selling
d42d7da38e Cleanup - removal of unnecessary variables 2023-02-02 11:33:46 -05:00
Ylva Selling
95233f6c40 Remove tile cache 2023-02-02 11:33:33 -05:00