Commit Graph

188 Commits

Author SHA1 Message Date
Alexander Bock cc395ce340 Update C++ version to 23, add new warnings and the fix them 2025-03-01 15:49:38 +01:00
Alexander Bock cd8924ed22 Remove compiler warnings on Clang/GCC (#3546) 2025-02-28 23:29:38 +01:00
Alexander Bock 5152a7a6e0 General code spring cleaning (#3525) 2025-02-22 15:28:14 +01:00
Alexander Bock d21d1e4dcf Add the ability to disable accelerated rendering for CEF. Disable it for AMD cards as it causes a crash (#2488) 2025-02-17 18:25:14 +01:00
Alexander Bock 096363fd06 Make constructors explicit 2025-02-05 23:22:32 +01:00
Alexander Bock 820e90eab4 Happy new year 2025-01-14 16:21:08 +01:00
Emma Broman 2856085724 Use a pointing hand GLFW cursor for the web grab cursor (#3465)
* Use a pointing hand GLFW cursor for the web grab cursor

* Add TODO comment about custom cursor
2024-12-09 17:08:06 +01:00
Alexander Bock ff345006d1 General code cleanup (#3445) 2024-10-10 09:49:02 +02:00
Ylva Selling 8ad84b6d35 Make useAcceleratedRendering a uniform for screenspace renderables 2024-09-17 17:17:46 +02:00
Gene Payne 67992558e1 Fixes for linux build with most recent CEF update (#3407) 2024-09-12 09:17:24 -06:00
Alexander Bock e24cff1d19 Handle warnings and coding style adaptations 2024-09-12 16:30:09 +02:00
Alexander Bock 3024467cbc Prevent crash when requesting a mouse click outside the window borders 2024-09-10 15:05:23 +02:00
Ylva Selling aed2c0b0c8 Issue/2244 different mouse cursors (#3388)
* 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>
2024-08-28 10:44:17 +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
Ylva Selling 67965e8844 Issue/3174 update cef (#3383)
* 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

* Update modules/webbrowser/src/cefhost.cpp

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

* Update version number

---------

Co-authored-by: Ylva Selling <ylva.selling@liu.se>
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2024-08-21 11:16:17 +02:00
Alexander Bock c4c82483e0 Update copyright header in CMakeLists files 2024-07-31 10:57:10 +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
Ylva Selling 098bae18b2 Create a tiny app for writing the documentation jsons (#3239)
* Add simple app for writing the documentation (only asset components and lua scripting)

* Update apps/DocsWriter/CMakeLists.txt

Co-authored-by: Emma Broman <emma.broman@liu.se>

* Update apps/DocsWriter/main.cpp

Co-authored-by: Emma Broman <emma.broman@liu.se>

* Update apps/DocsWriter/main.cpp

Co-authored-by: Emma Broman <emma.broman@liu.se>

* Update apps/DocsWriter/main.cpp

Co-authored-by: Emma Broman <emma.broman@liu.se>

* Update apps/DocsWriter/CMakeLists.txt

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

* Update apps/DocsWriter/main.cpp

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

* Update apps/DocsWriter/main.cpp

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

* Update apps/DocsWriter/main.cpp

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

---------

Co-authored-by: Ylva Selling <ylva.selling@liu.se>
Co-authored-by: Emma Broman <emma.broman@liu.se>
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2024-05-21 11:22:14 +02:00
Emma Broman 542f35e4de Update ScreenSpaceRenderable documentation (#3227)
* Update screen space documentation

* Fix inconsistent "screen space" phrasing

* Rephrase according to code review

---------

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
Co-authored-by: Malin E <malin.ejdbo@gmail.com>
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2024-05-17 15:38:48 +02:00
Alexander Bock 78b3b4fb2e Adding periods to the description texts 2024-04-23 22:33:17 +02:00
Alexander Bock 3d62571c44 Remove warning on Jenkins 2024-04-07 01:53:16 +02:00
Alexander Bock 49fc538c17 Rename fmt.h to format.h and enable audio module on default 2024-03-25 23:19:52 +01:00
Alexander Bock 3ba346a227 Remove fmt::format and replace with std::format 2024-03-24 20:19:14 +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 9a6fe47d17 Fix up text formatting as path's no longer get quoted 2024-03-08 20:19:06 +01:00
Alexander Bock 815dfe11f1 Add the ability to specify properties and requiring confirmation (#3006) 2024-02-15 15:56:19 +09:00
Alexander Bock 6e29d898cf Update copyright header 2024-02-06 15:53:24 +01:00
Alexander Bock 7db7c40841 Doxygen style overhaul (#2954)
Reformatting the existing Doxygen comments to be unified
2023-11-20 23:39:17 +01:00
Alexander Bock 4ee078502b Doxygen (#2953)
* Update Doxygen and add new CSS file
* Remove Doxygen warnings
2023-11-19 16:35:14 +01:00
Alexander Bock 455ee9335a Add a proper blackout to the ScreenSpaceRenderables and a property and codegen option to toggle that behavior (#2868) 2023-08-31 18:19:37 +02:00
Joakim Kilby ca4b6d2ce2 Fix viewport & window issues (#2630)
* Add support for multiple windows & viewports
With correct rendering of both Scene and Overlays/GUI.
GUI is restricted to either the first window or any other windows tagged
with "GUI", overlays are drawn on all windows/viewports.

Closes #2542 and #1645
2023-05-17 22:02:47 +02:00
Alexander Bock bde840ad03 Remove a bunch of compiler warnings
* Remove compile warnings
* Coding style fix
2023-05-16 11:59:28 +02:00
Micah Acinapura 4731e8e0a8 MacOS build fixes (#2622)
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
Co-authored-by: Joakim Kilby <jockekilby@gmail.com>
2023-05-12 09:35:59 +02:00
Ylva Selling 487a0a8733 Add missing property dimensions to screenspace browser 2023-05-08 14:10:02 -04:00
Micah Acinapura 5ea6f1d21c handled underscore and period special in c++ for cef bug; also remove… (#2643)
* handled underscore and period special in c++ for cef bug; also removed F5 special code and changed to keybinding; closes #853; closes #896

* removed extra line

* fix formatting from review
2023-04-26 08:22:48 -04:00
Alexander Bock ca916877b2 Adapt the visibility settings for all properties 2023-04-15 09:33:31 +02:00
Alexander Bock 7565a91196 Cleanup lambda expressions and directly address Fadeable properties when adding properties 2023-04-12 23:20:53 +02:00
Alexander Bock 80e2aaf564 Remove whitespaces at the end of files, ' and - characters 2023-04-05 16:58:45 +02: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 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
Emma Broman a0f9e88432 Feature/touch fixes (#2463)
* Add Ceres to touch interaction list (Forgotten in previous commit. OBS! This list will be removed)

* Small code updates (Logical ordering of functions, code standard)

* Fix compilation issue when using debug define

* Make touch navigation abort idle behavior

* Make reset a trigger property

* Fix some broken property sliders (the default step size was too big)

* Update interaction monitor state on touch interaction with WebGui

* Add some documentation of what "LM" means, and make unit test a developer property
2023-02-01 12:44:34 +01:00
Alexander Bock 4f4764209f Happy new year 2023-01-02 11:19:33 +01:00
Alexander Bock f502922338 CMake cleanup (#2246)
* Simplification of the DLL copying mechanism on Windows
* Only deploy Qt on Windows
* Use set_target_properties function
2022-09-21 10:52:05 +02:00
Alexander Bock 664eb60f4f Increase the compile times by including more precompiled headers (#2217)
* Define WIN32_LEAN_AND_MEAN and VC_EXTRALEAN globally
* Use forked version of TUIO, some more work on precompiled headers
* Improvements for the Kameleon module
2022-08-26 16:32:21 +02:00
Emma Broman 0cc5704b6a Add isGuiWindow check for mouse and keyboard callbacks
Fix interaction problems when hovering/clicking with the mouse in a non-GUI window, when having a setup with more than one window (e.g. the single_gui.json setup)

Previously, clicking with the mouse in the rendering window without the GUI also triggered mouse clicks in all the other windows, including the GUI windows. This was disturbing for interaction in the single_gui setup

Now, the GUI modules check to see if the clicked window is actually an interaction window
2022-08-05 11:41:10 +02:00
Emma Broman 0161d514b7 Fix collision between ImGui and WebGui
The callbacks of WebGui (which is on top) now gets priority
2022-08-05 11:41:10 +02:00
Alexander Bock 163ac4dcef Cleanup of mostly asset files
- Fixes for all files
 - constexpr cleanup
 - Cosmetic changes
 - Remove punctuation from the end of messages
2022-07-28 17:21:59 +02:00
Alexander Bock c1252902c7 More Code Cleanup (#2192)
* Harmonizing ( and ) in function calls
* static const -> constexpr
* Fix compile issue
* Unify shader tab size
* Add _fs and _vs to shaders
* Harmonize spacing
2022-07-26 11:22:41 +02:00