Commit Graph

1463 Commits

Author SHA1 Message Date
Alayan
c086a6774d
Misc. improvements
- Fix MSVC compilation
- Improve some repetitive code
2024-05-22 23:24:50 +02:00
Alayan
97faf4a492
Move the camera files in a subfolder 2024-05-20 12:07:06 +02:00
Alayan
553595fa63
Prevent geometry level from removing objects
The latest version was bugged as it removed all standard objects, but removing only objects marked by track-makers removed almost nothing of note, and bugs would sometimes remove normal objects. Fix #5052. Fix #5066. This makes #5063 moot.
2024-05-06 22:59:58 +02:00
Alayan
0716965df7
Improve Auto-LoD
- Increase the Auto-LoD distance on tracks with a low scene complexity (fix #5065)
- Increase the Auto-LoD distance when the old formula gives a too low base distance (small objects). This helps with some of the worst popping issues for comparatively little performance cost.
- Make the LoD distance auto-compute code clearer by moving the settings-related multiplier after the squaring step
- Also fix a couple of unrelated warnings about comparison between signed and unsigned integers
2024-04-29 21:47:17 +02:00
Alayan
32a53827a8
Fix #5063
- Ensure that optional geometry objects are properly removed. This provides a massive performance boost, at the cost of visuals. Benchmark on graphics 2 with lowest geometry level: bugged has 202 steady FPS, 230 mostly stable FPS, fixed has 427 steady FPS, 495 mostly stable FPS.
- Restrict the removal of objects based on geometry detail to the lowest geometry level. This ignore the different levels of geometry removal that track authors can set for objects, and which was mostly unused: all objects marked for removal at any level are either all removed or all kept.
2024-04-29 10:55:55 +02:00
Alayan
6cf094ab78
Add new setting values for increased view distances
Add 3 new setting values, increasing the distance at which a lower level of detail is used by factors of 1.6, 2.0 and 3.0 (default is 1.25). This allows players for which getting enough FPS is not an issue to reduce pop-in and improve the looks of tracks.

In local testing with a strong CPU and a weak GPU, the performance impact of increasing the view distances is small and well worth it, but this may vary from system to system. More testing is needed on different systems, but this suggests room to increase minimum, default and maximum values in future releases.

This patch also slightly changes the auto-computation of LoD distance, making the transition around a distance of 250 smoother.
2024-04-15 01:48:58 +02:00
kimden
1ed896bf9e Fix start positions for negative sidewards distance 2023-06-29 00:40:38 +03:00
Benau
5e161f663d Clean m_ondemand_load_texture_paths after texture loaded 2023-03-04 10:26:31 +08:00
Benau
90277eebd5 Fix #4843 2023-01-28 10:01:12 +08:00
Benau
9e70abb631 Remove IAnimatedMeshSceneNode.h in header files 2022-11-19 13:29:21 +08:00
Benau
c8a828aa00 Remove ISceneNode.h in check_line.hpp 2022-11-19 12:33:17 +08:00
Benau
3ecc4ccdad Remove IFileSystem.h in file_manager.hpp 2022-11-18 09:24:31 +08:00
Benau
a688912872 Remove IrrlichtDevice.h and IVideoDriver.h in header files 2022-11-17 11:09:56 +08:00
Benau
6b9a34b767 Remove irrlicht.h in tracks code 2022-11-17 08:21:58 +08:00
Benau
76c39afd8b Add colorization for vulkan 2022-09-11 11:05:33 +08:00
Benau
efcdd79d42 Fix missing snowflake in icy soccer field
It used to work in 1.2 because the top of the invisible wall was
not covered, which will affect height map calculation. Now we
ignore physics only objects when doing the height map calculation.
2022-09-07 13:53:08 +08:00
Benau
2d0c945dd8 Move RenderInfo class to GE 2022-09-05 16:22:04 +08:00
Benau
fefb3c1949 Mark skybox textures to be loaded on demand 2022-08-23 08:54:27 +08:00
Benau
8fead715da Add onDemandLoadTrackScreenshots for all tracks 2022-08-14 15:21:37 +08:00
Benau
819b3ad27f Add minimap rendering 2022-07-25 09:41:35 +08:00
Benau
593f78a230 Move MiniGLM to graphics engine folder 2022-07-24 12:22:06 +08:00
Benau
21d9b4bc70 Fix lod node after updateAbsolutePosition optimization 2022-06-27 13:22:07 +08:00
Benau
e599a7fff8 Disable minimap in vulkan driver for now 2022-06-24 13:23:01 +08:00
Benau
1bdeffc7ed Convert b3d to GE spm 2022-05-24 10:24:15 +08:00
Benau
f61dcb2ec3 Allow reading spm vertices in physics 2022-05-19 15:53:05 +08:00
Benau
0f2b3da37e Fix sometimes missing overworld background music 2022-04-28 14:30:53 +08:00
Benau
fddc19225c Use array list for scene nodes 2022-04-26 10:55:24 +08:00
Benau
f2cc51a602 Fix mismatched max size for background.jpg when reloading 2022-04-03 10:54:27 +08:00
David CARLIER
1f0ea77f80
illumos port. (#4732)
overcoming sun constant defined in this platform.
forcing 64 bits build as angelscript assembly is incorrect for 32 bits.
2022-02-13 00:31:14 +08:00
Semphriss
96c0d167bf
Items animation (#4713) 2022-01-25 13:07:04 +08:00
Benau
a96763cd1d Make sure starting position is valid for spare tire karts
Fix #4615
2021-09-13 16:54:29 +08:00
Benau
4470eabeb2 Split findGround function for more usage later 2021-09-13 15:09:00 +08:00
Benau
88d8799498 Fix incorrect getChecklineTriggering on CheckCannon after using 3D check planes 2021-09-07 11:04:33 +08:00
Benau
d2df7c6de9 Fix temple arena broken rescue in graphical server 2021-06-25 19:35:37 +08:00
Benau
5b0c9763b4 Fix crash when using check debug with ghost replay and server 2021-06-25 13:09:16 +08:00
Benau
05f029abc0 Upgrade checkline by using two triangles testing 2021-06-25 12:46:29 +08:00
Heuchi
49910c4cea speed up computeChecklineRequirements() 2021-06-22 12:16:54 +02:00
Benau
eb59d5645b Flatten the minimap for DirectX 9 driver
Otherwise some vertices too far from camera will not be rendered
2021-04-23 11:19:49 +08:00
Benau
8cae79b604 Fix memory leak in legacy device 2021-04-21 09:18:11 +08:00
Benau
7496609bfa Use dedicated function to handle sky textures 2021-04-14 09:34:59 +08:00
Benau
3e0a651e01 Fix possible infinite when broken navmesh with separated nodes 2021-02-26 11:55:16 +08:00
samuncle
5cb36e38cf
Feature/enable lod autocompute (#3970)
* Enable LoD autocompute

* bring back the autocompute lod function

* Add the area as main function to compute the lod level

* Bring back the area based auto lod computation

Co-authored-by: samuncle <samuncle06@gmail.com>
2021-02-12 11:16:38 +08:00
jean
89acc4e6a0 Removing sky dome (not used anywhere + deprecated even in irrlicht) 2021-02-07 21:56:58 +01:00
jean
cee3cb79a5 Removed clouds feature. Should be done with custom shaders now. Could be in the future part of weather 2021-02-07 21:31:22 +01:00
Ben Hoff
2474b7496a
fix spelling error 2020-09-12 14:31:32 -04:00
Benau
b5f25ef057 Fix assertion when resizing screen in result gui 2020-07-05 09:20:58 +08:00
Deve
e6464fff9e Don't spam in server logs 2020-04-16 22:38:47 +02:00
Benau
2cf36570c4 Fix missing initialization of confirmed item ticks in child server 2020-03-15 10:14:29 +08:00
Benau
afa60c4537 Disable scripting engine in child process 2020-03-11 15:35:02 +08:00
Benau
885aec8020 Add 3d animation ipo copying to child track objects 2020-02-28 19:52:23 +08:00