- Fix issue where a propertyowner would not report its uri correctly
- Fix inconsistency with number->string conversions
- Adapt SPICE tests to now baked-in leap seconds kernel
- Disable CreateSingleColorImage test as it requires an OpenGL context
* Restructuring the queueScript function
* Don't log the contents of actions that are triggered. Add the ability to do verbose logging in the scriptlog
* Add possibility to capture, edit & replay camera-keyframes
* fix compilation on non-windows systems
* use cbegin/cend instead of std::views
* Coding style adaptions
* Member variable names
* add Keyframe struct, fix pr suggestions
* add function to remove keyframes
* add lua function to fetch keyframes
* Update lua documentation
* add constexpr keys for json entries
* Add log info messages, input checks and general pr suggestions
* update comments to doxygen style
* batch of pr suggestions
* add jump to keyframe function
* update docs
---------
Co-authored-by: Alexander Bock <mail@alexanderbock.eu>
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
Co-authored-by: Andreas Engberg <adde.engberg@gmail.com>
* Update CEF version number
* Set OpenSpace_Helper version of C++ to 20
* Update C++ syntax to v 20
* Remove deprecated function (now default)
* Set the cache folder for cef
* Make static function in webbrowsermodule that determines if we can use accelerated rendering
* Add flag for accelerated rendering to webrenderhandler
* Use accelerated rendering
* Implement function to see if gui should absorb click
* Adhere to 80 char linewidth
* Make only the UI GPU accelerated
* Use dirty rects size for the texture to remove crash
* Better comments
* Make has content function work for GPU acceleration
* Make it so all browsers can be accelerated
Tried making it so only the gui was accelerated for simplicity. Performance plummeted, so reverted that
* Tidy up
* Add accelerated rendering flag to the screenspacerenderable shader
* Add temporary fix to make the sky browser work
* Remove flag from gui render handler
* Enable webgl in a nicer way
* Unbind texture in screenspacerenderable
* Add better comments for error handling
* Tidy up
* Address PR comments
* Make the acceleration Windows only
* Remove unnecessary setting of shader dictionary
* Add display handler to browser client
* Make glfw change mouse cursor depending on cef cursor
* formatting
* Add switch to main
* Update modules/webbrowser/src/browserclient.cpp
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Address comments on PR
* Update again
* Update modules/webbrowser/src/browserclient.cpp
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Address PR comments
---------
Co-authored-by: Ylva Selling <ylva.selling@liu.se>
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Update CEF version number
* Set OpenSpace_Helper version of C++ to 20
* Update C++ syntax to v 20
* Remove deprecated function (now default)
* Set the cache folder for cef
* Make static function in webbrowsermodule that determines if we can use accelerated rendering
* Add flag for accelerated rendering to webrenderhandler
* Use accelerated rendering
* Implement function to see if gui should absorb click
* Adhere to 80 char linewidth
* Make only the UI GPU accelerated
* Use dirty rects size for the texture to remove crash
* Better comments
* Make has content function work for GPU acceleration
* Make it so all browsers can be accelerated
Tried making it so only the gui was accelerated for simplicity. Performance plummeted, so reverted that
* Tidy up
* Add accelerated rendering flag to the screenspacerenderable shader
* Add temporary fix to make the sky browser work
* Remove flag from gui render handler
* Enable webgl in a nicer way
* Unbind texture in screenspacerenderable
* Add better comments for error handling
* Tidy up
* Address PR comments
* Make the acceleration Windows only
* Remove unnecessary setting of shader dictionary
* Allow web dev tools to connect to CEF
* Update modules/webbrowser/include/browserinstance.h
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Update modules/webbrowser/include/webrenderhandler.h
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Apply suggestions from code review
Co-authored-by: Emma Broman <emma.broman@liu.se>
---------
Co-authored-by: Ylva Selling <ylva.selling@liu.se>
Co-authored-by: Emma Broman <emma.broman@liu.se>
* remove code for controlling group sorting in ImGui
We only use this for debug and the sorting here is no longer relevant
* Add feature to add custom ordering to UI groups
* Tiny cleanup
* Add numerical ordering for night sky planets
* Update Lua function name and create an event when ordering updated
* Set top-level ordering
* Add function documentation
* Add a custom ordering that previously was hardcoded in UI
* Apply suggestions from code review
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Rename GUI ordering function
* Update GUI hash
---------
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Remove events for scenegraphnodes and screenspacerenderables
* Add events for updating the property tree
* Remove duplicate function calls
* Update src/properties/propertyowner.cpp
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Address PR comments and make helper functions with better comments
* Make uri function not return the identifier if the uri is not valid
* Rename fullyQualifiedIdentifier to uri
* Update gui hash
---------
Co-authored-by: Ylva Selling <ylva.selling@liu.se>
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Add possiblity to sort SGNs in GUI based on numerical value
And apply to grids
* Fix mistake in docs
* Apply suggestions from code review
Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
* Rename Order -> Ordering and remove unused getter functions
* Update GUI hash to match the UI changes
---------
Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
* Remove unused shortcut manager
* Add events for adding and removing actions
* Publish event when an action is added
* Add get_action event to shortcut topic which sends requested action to the topic
* Add better comments to events
* Publish event action removed when removing an action
* Rename actions to shortcuts in the json object
* Remove subscriptions and rename action to shortcut
* Make it possible to query a propertyowner by uri with the getpropertytopic
* Remove automatic reloading of ui from drag and drop script
* Add function for uri for propertyowners
* Add uri to the to_json for the propertyowner
* Add comment for the propertyOwner function and update the comment for the property function to clearer distinguish between uris and identifiers
* Go back to the old events but with uris instead as their member
* Apply feedback from PR
* Address PR comments
---------
Co-authored-by: Ylva Selling <ylva.selling@liu.se>
* Apply the hue, value, saturation, and gamma values from the renderengine to screenspace renderables. Change the screenspace's own gamma value into an offset
* Make it clearer that the gamma correction is now an offset
* Remove unused bool argument in globebrowsing functions
* Refactor some globe browsing functions
* Start updating goToGeo function to fade instead of just jump
* Add choice for whtehr to use default or arrival height when flying to a geo2
* Update / add docs for fly-to and go-to functions
* Rename function and add deprecated version of `goToGeo`
Makes it so that changes can be done to the color map file without having to delete the cache, and decreases confusion about that one file is cached when the other isn't
* Add script for jumpTo scene graph node and navigation state
* Add property to control how long the fading takes (navigation handler)
* Update GUI hash
---------
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Always add GUI properties, even if tag is not in the asset
To make objects wihtout GUI tag be included in the UI
* Hide the hover circle, to clean up scene menu list a little
* set root node gui hidden property to true
* Properly add the gui properties for all scene graph nodes (even root)
* Update GUI hash
* Adding some Tracy zones
* Move point cloud dataset loading to initialize function to speed up startup
* Switch order of operations in memoryaware tile cache to speed up startup
* Move point cloud dataset loading to initialize function
* Add more Zone Scoped and rearrange SDSS loading
* More speed up
---------
Co-authored-by: Alexander Bock <mail@alexanderbock.eu>
* Add optional timestamp to navigation state
* add option to include timetamp when setting/loading navigation state
* Don't require file extension when loading navstate
for symmetry with save function
* Update Navstate docs
* Apply suggestions from code review
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
---------
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* WIP: Start usign texture arrays instead of just a single texture
Now the texture array is sucessfully created, sent over and sampled on the GPU
* Include information about the texture format alpha channel and do a conversion
* Make one draw wcall per texture array
* Add scale to size mapping and move to a separate component
* WIP: Make single textures work again, with texture array
Although this breaks the polygon cloud..
* Also make the polygon cloud work again
* Refactor rendering code
* handle array layer seprately from texture coordinates
* Make sure use size mapping uniform is always set
Fixes point cloud disappearing when multi-textures points are enabled
* Add has value check to size mapping
* Fix indentation
* Make sure points are rendered even when no texture is used
* Clean up texture handling a bit and add comment about storage creation
* Add comment and temporary asset changes
* Clean up handling of color mode (number of colro channels)
* Make interpolated points work with new rendering code
* Refactor
* Bring back check for valid index for color and size data
* Make sure to check if the provided data file exists
* Fix full path ont showing in error message
* Refactor rendering code a bit
* Change how the multitexture setup is configured in the asset and add documentation
Separating made documentation a lot easier..
* Add a todo comment for future discussion
* Add settings for texture compression
* Preserve aspects ratio of rendered textures
* Restructure input parameters for texture details
* Simplify color mode - we decided to not support grayscale
* Add option to set "useAlpha" from asset
* Enable texture per default and fix aspect ratio problem when no texture is used
* tiny refactor
* Fix polygon rendering that broke when adding texture compression
* Remove color in polygon shader
The color would be applied twice in rendering
* Restructure textures code and prevent loading the same texture twice
* Better handling of extra texture parameter in speck files
That does not lead to limitations in using dashes in texture names
* Add some docs and communicate texture mode to the user
* Fix so that single texture can be changed during runtime
* Allow changing compression and usealpha during runtime
* Update texture storage allocation to something that works in older OpenGL versions
* Add a check that checks if we use more texture layers than allowed
* Even more robust check of texture line in speck file (allow extra whitespaces)
* Update data mapping to include texture information and clean up code a bit
* Error handling and prevent loading non-used textures in texture map
* Update some docs
* Small cleanup
* Add one more error message for fault texture map file format
* Remove test version of tully images dataset
* Small refactor
* Add example asset
* Update Ghoul - for larger uniform cache
* Purge texture from ram when we're done with it
* Cleanup (comments, ugly png check, etc)
* Apply suggestions from code review
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Apply suggestions from code review
* Adress some more review comments and fix broken asset
* More code review fixes
* Read provided sizemapping parameter from asset
* Fix warnings from trying to shift 16 bit int 32 bits :)
* simplify datamapping hash string
* Update comment that was not 100% correct. The file names may be specified as relative paths to a folder
* Small update based on previous code review comments
* Fix multi textured points gui path not same as other points
* Update Folder description to reduce some confusion
* Apply suggestions from code review
Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
* Prevent updates to polygon cloud texture during runtime
This lead to rendering problems.
* Add describing comments to data files
* Clarify why speck version is disabled per default
* Update and clarify confusing size mapping parameters
* Apply suggestions from code review
Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
* Apply suggestions from code review
---------
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
Co-authored-by: Ylva Selling <ylva.selling@gmail.com>