Commit Graph

1105 Commits

Author SHA1 Message Date
Joakim Kilby 4eccc99c7e add option to override model rendered color 2025-05-08 15:28:51 +02:00
Joakim Kilby 98c8452f10 fixup after rebase 2024-09-02 12:44:44 +02:00
Joakim Kilby d7885280f7 support model <-> model shadowing alongside globes 2024-08-30 10:42:47 +02:00
Joakim Kilby a0c31d1b6a init/de-init depth map resources when castShadow is toggled
fixes an issue where only objects that declared they were casting
shadows in their asset file could cast shadows.
For all other objects they necessary resources were never created.
2024-08-30 10:42:47 +02:00
Joakim Kilby 694138663d check for existance of lightsources before renderings depthmaps 2024-08-30 10:42:47 +02:00
Joakim Kilby 1012841982 add FOV-mode to renderable prism 2024-08-30 10:42:47 +02:00
Joakim Kilby d85f8dbb1f expose configurable euler-sequence as a prop 2024-08-30 10:42:47 +02:00
Joakim Kilby e2d95019ec apply frustum size from dict 2024-08-30 10:42:46 +02:00
Joakim Kilby 0e15b4b6d3 add model self-shadowing via existing depth map 2024-08-30 10:42:46 +02:00
Joakim Kilby 8ab4b4db23 make specular power a property 2024-08-30 10:42:46 +02:00
Joakim Kilby dbed4f3ddb calculate view frustum for shadow mapping automatically
based on model extents as defined by its bounding-radius
2024-08-30 10:42:46 +02:00
Joakim Kilby 78c4eb19f0 ensure that models that do not cast shadows are still rendered 2024-08-30 10:42:46 +02:00
Joakim Kilby 4b77b8d27d support multiple shadowers & addition/removal of shadowers 2024-08-30 10:42:46 +02:00
Joakim Kilby 2c2653fe33 revert face culling 2024-08-30 10:42:46 +02:00
Joakim Kilby 3b2bebb2ad render shadowmaps from greater distance to mimic sun 2024-08-30 10:42:46 +02:00
Joakim Kilby fbf2a289d0 add shadow bias, cull away front-faces 2024-08-30 10:42:46 +02:00
Joakim Kilby 58d402fc67 use lightsource from model specification instead of (hardcoded) sun 2024-08-30 10:42:46 +02:00
Joakim Kilby 2402cbbdc1 swap to orthogonal projection
as it should be for directional lighting which is the case for the sun
2024-08-30 10:42:46 +02:00
Joakim Kilby 2fbced5b23 move depthmap rendering into renderablemodel class 2024-08-30 10:42:46 +02:00
Joakim Kilby 9c2aaebfdd functional first version of shadow mapping 2024-08-30 10:42:46 +02:00
Joakim Kilby 0020e12403 possibly correct depthmap from light's point of view 2024-08-30 10:42:46 +02:00
Joakim Kilby 2f95800428 add basic depth-map rendering of specified shadowers 2024-08-30 10:42:46 +02:00
Joakim Kilby 43d8ec2298 add ability to render textures to Screen quad for dbg 2024-08-30 10:42:46 +02:00
Joakim Kilby 6eade9ba4f allow model caching to be bypassed 2024-08-30 10:42:46 +02:00
Joakim Kilby 3a63055324 enable wireframe rendering of models 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 423d409dc8 Always use the alpha blending independent of the renderbin (closes #3304)
It wasn't really clear why the check for the PreDeferredTransparent bin was in here in the first place
2024-08-22 14:00:51 +02:00
Alexander Bock d0b3cd6e89 Add example for ConstantRotation (#3384) 2024-08-21 10:34:08 +02:00
Alexander Bock a01760a3ca Remove remains of visibility voting 2024-08-18 12:55:55 +02:00
Alexander Bock 43ada7fa1f Add the ability to feather borders of screenspace renderables 2024-08-13 13:37:39 +02:00
Alexander Bock 75b4609c52 Remove explicitly specifying LuaState constructors 2024-08-07 11:34:57 +02:00
Alexander Bock ca6c14e9b5 Make the SampleInterval for RenderableTrailTrajectory optional and use a sample per 2 days by default 2024-08-07 06:53:05 +02:00
Ylva Selling 952f177c54 UI updates (#3358)
* 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>
2024-08-02 16:30:07 +02:00
Alexander Bock c4c82483e0 Update copyright header in CMakeLists files 2024-07-31 10:57:10 +02:00
Emma Broman 9c71ba2f42 Apply opacity to screenspace border (closes #3355) 2024-07-29 09:49:31 +02:00
Alexander Bock aa99f9d6cb No longer enforce a scale of 1 for screenspacedashboards 2024-07-18 12:01:47 +02:00
Malin E 01483ef982 Add support for model vertex colors (#3346)
* Add model vertex color support

* Fix an issue with the Tiangong model not loading properly and set a correct bounding sphere size for it

* Update caching for models

* Update previous model examples to the new format

* And add a new example to test the new vertex colors support

* Apply suggestions from code review

Co-authored-by: Alexander Bock <alexander.bock@liu.se>

* Add a model example with lighting

* Improve the basic example and add a separate example for vertex colors

* Add visual test for vertex colors (#3348)

* Update the readme file for the visual tests

* Add asset instruction to the visual testing readme

* Add visual test for RenderableModel with vertex colors

* Apply suggestions from code review

Co-authored-by: Alexander Bock <alexander.bock@liu.se>

* Update test when asset changed name

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>

* Update Ghoul

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2024-07-17 15:56:06 +02:00
Alexander Bock 065d73db64 Add non-main dashboard as a propertyowner for a ScreenSpaceDashboard 2024-07-15 18:54:49 +02:00
Alexander Bock 0707829c7b Reducing compiler warnings (#3341) 2024-06-28 14:16:06 +02:00
Alexander Bock f04c088a4b Add the ability to specify dashboarditems for ScreenSpaceDashboard at construction time. Improve error messages and export DashboardItem documentation 2024-06-22 13:05:33 +02:00
Alexander Bock 02cc28f192 Generate the framebuffer for screenspace rendering without mipmapping as it handles transparency poorly 2024-06-22 09:13:13 +02:00
Emma Broman 6cb4a7efef Fix issue with texture not updating on property change for RenderablePointCloud
Fix issue with texture not being rendered when the texture file path is set during runtime
2024-06-18 13:47:35 +02:00
Alexander Bock 01fa2898db FixedRotation rerequests a missing attached node or target node every frame to prevent incorrect initialization order 2024-06-15 18:07:39 +02:00
Alexander Bock 43645ce7a4 Fix existing assets; Make the goToGeo function without altitude in the profile work 2024-06-14 23:55:55 +02:00
Emma Broman 62b2a8c8c1 Fix renderable sphere example and add one for using local image (#3306)
* Fix renderable sphere example and add one for using local image
2024-06-13 10:43:54 +02:00
Alexander Bock 866aad2187 Global pass over the coding style 2024-06-12 14:51:25 +02:00
Alexander Bock f82dc0371b Add example to TimelineRotation. Also fix bug where a non-interpolating timelinerotation would disappear before the first keyframe (#3310)
* Add example to TimelineRotation. Also fix bug where a non-interpolating timelinerotation would disappear before the first keyframe

---------

Co-authored-by: Emma Broman <emma.broman@liu.se>
2024-06-11 22:16:16 +02:00
Alexander Bock 6a1a22b485 Improve documentation and add examples for the StaticRotation (#3309)
* Improve documentation and add examples for the StaticRotation

---------

Co-authored-by: Emma Broman <emma.broman@liu.se>
2024-06-11 22:06:33 +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
Alexander Bock 62a01ea317 Add example and fixes for the LuaTranslation (#3284) 2024-06-03 09:57:26 +02:00