Commit Graph

730 Commits

Author SHA1 Message Date
Alexander Bock
f307dfb64a Merge branch 'master' into feature/shadows
# Conflicts:
#	modules/base/rendering/renderablemodel.h
#	modules/globebrowsing/src/renderableglobe.cpp
#	modules/globebrowsing/src/renderableglobe.h
#	src/rendering/renderengine.cpp
2025-12-18 16:19:33 +01:00
Alexander Bock
c327443886 Extracting Shadower/Shadowee classes and making registering shadow caster explicit 2025-12-18 16:06:12 +01:00
Alexander Bock
1fa8cc3e48 Add the ability to paste into the Lua console with the middle mouse button 2025-12-17 20:33:52 +01:00
Alexander Bock
c02e59b9f8 Fixing more includes and forward declarations (#3876) 2025-12-16 13:40:19 +01:00
Alexander Bock
a269205f5d Pass for coding style 2025-12-08 23:36:19 +01:00
Alexander Bock
6b20d114c8 Global pass over optimizing includes (#3862) 2025-12-08 20:13:31 +01:00
benpm
5c433720ea addressing some minor issues (formatting, comments) 2025-11-04 15:26:15 -07:00
benpm
9ea34bf5db added a boolean flag to prevent shadowmaps being redundantly rendered multiple times per frame 2025-11-04 15:10:29 -07:00
Alexander Bock
02fc614256 Some more cleanup 2025-10-28 15:53:05 +01:00
Alexander Bock
44b2d14961 Moving shadow map rendering into separate pass (WIP) 2025-10-28 10:34:31 +01:00
Alexander Bock
65281e5ff4 Second phase WIP (something is broken) 2025-10-27 17:50:06 +01:00
benpm
9c2f283ab9 removed debug render program 2025-10-27 08:12:56 -06:00
benpm
122ea028f3 Merge remote-tracking branch 'origin/master' into feature/shadows 2025-09-26 13:14:29 -06:00
Alexander Bock
32cff07bf8 New ScreenSpaceText objects (#3794)
* First version of new screenspacetext and screenspacetextdate
* Code restructuring and adding new types
 - ScreenSpaceFramebuffer -> ScreenSpaceRenderableFramebuffer
 - ScreenSpaceText -> ScreenSpaceRenderableText
 - Add new user-facing ScreenSpaceText
 - Add examples
* Add documentation for new ScreenSpace objects
* Add visual tests to new screenspace objects
* Address PR comments
2025-09-26 15:35:05 +02:00
benpm
617b94a7b8 Merge remote-tracking branch 'origin/master' into feature/shadows 2025-09-23 09:55:48 -06:00
Andreas Engberg
5d473cc449 Issue/1188 improve console (#3772)
* Refactor keyboard handling, fix ctrl + left / right arrow key not being consumed correctly

* Adds ctrl + backspace and ctrl + delete shortcuts to delete whole words

* Add tab completion for paths and nester openspace lua functions

* Render command overflow as rows instead of horizontal scrolling
2025-09-15 09:50:11 +02:00
Alexander Bock
630823e6be Remove unused default variables in the DashboardTextItem 2025-09-11 23:22:12 +02:00
benpm
ca9ca94637 Merge remote-tracking branch 'origin/master' into feature/shadows
(this is not a complete merge of all of moon-shot's features, it's only shadow mapping)
2025-09-10 16:09:32 -06:00
Alexander Bock
0e72a2cb0d Add rendering for mouse interaction (#3781) 2025-09-07 15:36:46 +02:00
Alexander Bock
19e9e2c1fb Adapt to new compile option style and fix warnings (#3773) 2025-08-12 14:19:45 +02:00
Alexander Bock
93c0f75ef2 Remove Clang warnings 2025-06-14 15:42:38 +02:00
Alexander Bock
fbd4128b34 Pass through the coding styles 2025-06-05 10:59:58 +02:00
Alexander Bock
8495acd171 Remove unused boolean return value for ScreenSpaceRenderable initialize and deinitialize functions 2025-05-16 23:57:40 +02:00
Alexander Bock
6dc738e54e Move functions about globe locations from the GlobeBrowsingModule into the core (#3613)
* Make GlobeRotation and GlobeTranslation work for non-globes and move them to the base module
* Move ellipsoid and geodetic classes into the core
* Allow more things to take scene graph nodes instead of RenderableGlobes
* Move goToGeo and related Lua functions into the core
* Move more functions from the pathnavigation namespace into the navigation namespace

---------

Co-authored-by: Emma Broman <emma.broman@liu.se>
2025-04-23 16:15:17 +02:00
Alexander Bock
8a364c16e3 Fix layout issues with Dashboards (#3614)
- Correctly render multiline text passed to a DashboardItemText
  - Invert the property for the Dashboard location to no longer need a negative y-axis
  - Use the current lineheight instead of pointsize for the ScreenLog
  - Remove the unused size function from DashboardItems
2025-04-21 01:10:02 +02:00
Alexander Bock
af20b97dc7 Add ability to configure horizontal field of view per window instead (#3584) 2025-04-14 19:47:54 +02:00
Alexander Bock
fc9b2ab091 Increase the compilation speed (#3545)
- Remove toStringConversion function and move json_helper include out of numericalproperty.inl
  - Optimizing some header files
  - Remove duplicate Lua functions from properties. 
  - Move List,Option,Selection,String, and TriggerProperty into misc folder
  - Move lua_helper include out of inline file
  - Add lua_helper to the precompiled header
  - Declare property functions as final. No longer have OptionProperty derive from IntProperty
  - Remove Dictionary header from properties
2025-03-14 11:22:40 +01:00
Alexander Bock
8cb3ce8b94 Add the ability to limit-rate the dashboard updating (#3527)
Co-authored-by: Emma Broman <emma.broman@liu.se>
2025-02-18 16:49:47 +01:00
Alexander Bock
096363fd06 Make constructors explicit 2025-02-05 23:22:32 +01:00
Alexander Bock
efb7599b3d Reenable checking loading screen entries against the logo without the endless loop 2025-02-04 01:24:09 +01:00
Alexander Bock
820e90eab4 Happy new year 2025-01-14 16:21:08 +01:00
Andreas Engberg
0fc9265837 Feature/assetvalidation (#3396)
# To run the script
Make sure to install the latest Python API version `openspace-api 0.1.2`
The script is located in `OpenSpace/support/assetvalidation`, the main script takes a few command line arguments

`--dir` - specify the OpenSpace directory 
`--filter` - optionally supply a regex string to filter which assets to validate
`--verbose` - flag to print debug info to log and also console (default off), if off only warnings and errors are logged
`--start` - flag to start OpenSpace as a subprocess (default on) if this is off it assumes OpenSpace is already running, useful if you want to run OpenSpace via Visual Studio for example. 
`--at` - specify an index to start at a specific asset

run eg: 
`python main.py --dir="C:/User/Desktop/OpenSpace" --filter="examples" --verbose=True --start=False --at=35`
2024-10-10 15:55:53 +02:00
Ylva Selling
8ad84b6d35 Make useAcceleratedRendering a uniform for screenspace renderables 2024-09-17 17:17:46 +02:00
Joakim Kilby
43d8ec2298 add ability to render textures to Screen quad for dbg 2024-08-30 10:42:46 +02:00
Ylva Selling
11bb8e7ac5 GPU accelerate CEF (#3386)
* 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>
2024-08-23 09:37:01 +02:00
Alexander Bock
43ada7fa1f Add the ability to feather borders of screenspace renderables 2024-08-13 13:37:39 +02:00
Alexander Bock
aec4f473dc No longer specify an inaccurate version number on the master branch. 2024-08-06 10:51:26 +02:00
Alexander Bock
6337b8e5aa Move the statistics and frame info rendering from the RenderEngine into the debugging module (closes #1248) 2024-07-17 13:17:03 +02:00
Alexander Bock
78e7c7e321 Add the ability to scale th statistics graphs 2024-06-26 21:12:09 -04:00
Alexander Bock
866aad2187 Global pass over the coding style 2024-06-12 14:51:25 +02:00
Alexander Bock
6edea5cae7 Apply the hue, value, saturation, and gamma values from the renderengine to screenspace renderables. Change the screenspace's own gamma value into an offset (#3293)
* 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
2024-06-04 16:28:52 +02:00
Emma Broman
075f6c8f65 Properly fix useCaching for point cloud colormaps
Forgot the update function in 1092948518, oops
2024-05-02 13:56:48 +02:00
Emma Broman
1092948518 Make useCaching for point cloud also affect color map
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
2024-05-02 11:08:59 +02:00
Alexander Bock
203cff04cc Make use of the new uniform cache method that uses the variable names as uniform names (#3217) 2024-04-30 08:12:33 +02:00
Alexander Bock
4328476d26 Use more filesystem::path where applicable 2024-04-06 23:55:59 +02:00
Emma Broman
3f8bff5a62 General performance improvements (#3142)
* 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>
2024-03-28 01:10:07 +01:00
Alexander Bock
e0ab7ae1d6 Coding style fixes 2024-03-19 14:49:44 +01:00
Alexander Bock
534f92c485 Second linting pass and adding .clang_tidy file (#3128) 2024-03-18 22:46:17 +01:00
Alexander Bock
2759c00e4b Pass through the code to address clang-tidy linting (#3083) 2024-03-17 00:58:50 +01:00
Alexander Bock
fff6f8a627 General pass for code cleanup 2024-03-08 00:36:54 +01:00