aboutsummaryrefslogtreecommitdiff
path: root/src/common/Collision
AgeCommit message (Collapse)Author
2025-06-07Tools/Extractors: Skip extracting visual only liquids (determined by ↵Shauren
LiquidMaterial flags)
2025-05-19Core/Misc: Silence some statis analysis false positive warningsShauren
2024-12-11Core/Vmaps: Minor cleanup (formatting) and documentation updates for ↵Shauren
BIH::build copy vs move choice
2024-11-28Core/Vmaps: Don't ignore model rotation when calculating liquid levelShauren
Closes #30205
2024-10-01Core/Utilities: Extend make_unique_ptr_with_deleter functionality to allow ↵Shauren
it to create deleters with compile time constant functions (reduces its size to just sizeof(void*))
2024-07-17Added missing GameObjectModel::iLosBlockingDisabled initialization in ↵Shauren
constructor
2024-07-17Core/GameObject: Implemented NotLOSBlocking door propertyShauren
2024-07-06Core/Vmaps: Fixed use after free and deadlocks when loading a model file failsShauren
2024-07-06Tools/vmap_assembler: Organize vmap files into directory-per-mapShauren
2024-07-06Tools/vmap_extractor: Split temporary dir_bin into multiple files (one per ↵Shauren
map) to significantly reduce peak memory usage by vmap_assembler
2024-07-05Core/Vmaps: Optimize loading vmapsShauren
* Changed spawn id to BIH tree index mapping from generated on load to baked in tile files * Remove map holding model load counts and moved that to ModelInstance instead
2024-07-05Core/Vmaps: Minor cleanup in MapTree - use unique_ptr to manage file handlesShauren
2024-07-05Core/Vmaps: Minor cleanup in vmap4assembler - use unique_ptr to manage file ↵Shauren
handles
2024-07-05Core/Vmaps: Replace floatToRawIntBits/intBitsToFloat with standard bit_cast ↵Shauren
utilities
2024-07-04Core/Vmaps: Replace manual reference counting with shared_ptr and slightly ↵Shauren
reduce memory use by deduplicating model name strings
2024-03-25Core/vmaps: Improved WMO detection for group models that don't have floorShauren
2024-03-13Core/vmaps: Reset BIH::bounds on tree rebuildsShauren
2024-03-07Core/vmaps: Removed vmap lookup functions duplicating functionality of each ↵Shauren
other
2024-03-06Core/vmaps: Increment vmap format version numberShauren
2024-03-06Tools/vmap_extractor: Move information about model type from spawns in vmap ↵Shauren
tiles to model file itself
2024-03-06Tools/mmaps_generator: Added const on some functions interfacing with vmapsShauren
2024-01-02Core/Maps: implement LIQUID_MAP_OCEAN_FLOOR to identify units that are on ↵Ovahlord
the bottom of a liquid (#29545)
2023-08-08Core/MMaps: Fixed pathing for objects that have terrain swaps activeShauren
2023-01-08Core/Logging: Switch from fmt::sprintf to fmt::format (c++20 standard ↵Shauren
compatible api)
2022-12-30Core/Vmaps: Fix inconsistency of hitInstance and hitModel to cause wrong ↵ModoX
area ids (#28632) Closes #28326 Co-authored-by: Gosha <284210+Lordron@users.noreply.github.com>
2022-12-20Core/vmaps: Stop worldserver startup when gameobject models cannot be loadedShauren
2022-07-23Core/Maps: Move terrain data handling out of Map classShauren
Partial port of cmangos/mangos-wotlk@ff5232c64809207b5fa59d62e9870f58a36b6f3f
2022-05-22Core/GameObjects: Use all axis rotations for gameobject model collision, not ↵Shauren
just orientation
2022-04-18Core/Vmaps: Use provided invDirection from G3D::Ray instead of calculating ↵Gosha
it ourselves (#27883) Do not calculate inv direction, Ray has one
2022-03-05Core: whitespace cleanup, reduce double blank line to single (#25795)Kargatum
* Core/Misc: fix double empty line * worldserver.conf (cherry picked from commit a32b6b8ac4c81128a56b282f20837fb085bdd9e7)
2022-02-13Core/Misc: Cleanup unused includesShauren
2022-02-04Core/Misc: Fix issues reported by static analysis (#25351)Giacomo Pozzoni
* Core/Misc: Fix issues reported by static analysis * Core/Vmaps: Code cleanup after e77716188861d4aa83b227a90e04a66b63baeb1f (cherry picked from commit cfc8f7b442a9dba07b198fcebe2c02ab89cf0a8b)
2022-01-24Core/Common: Merge TimeTrackerSmall with TimeTrackerCarbenium
(cherry picked from commit 228696bf80bcd55d35445cd24ae119020c310f88)
2022-01-23Core/Misc: Replace boost::optional with std::optional (#25047)Peter Keresztes Schmidt
C++17 is already mandatory, so it's a safe thing to do (cherry picked from commit 202fd41389973322f63186fd8e5a368fce3e1b04)
2022-01-19Core/Common: Replace ASSERT(false, "...") with ABORT_MSG("...")jackpoz
(cherry picked from commit 54c701cf0db81c0062e8c5020e07db18984d0ffa)
2022-01-04Vmap: Introduce skipping of antiportals and unreachable mogp (#26331)killerwife
* Vmap: Introduce skipping of antiportals and unreachable mogp * Reduce differences with master branch * Update VMAP and MMAP versions * Update MMAPs version Co-authored-by: jackpoz <giacomopoz@gmail.com> (cherry picked from commit d5f1fefe7f6772b11e9fbb052bfd36be9bda98e2)
2022-01-04MapExtraction: Fix water height redundancy algorithm ignoring "no water" ↵killerwife
(#26324) * MapExtraction: Fix water height redundancy algorithm ignoring "no water" * Update MMAP_VERSION * Change map version Co-authored-by: jackpoz <giacomopoz@gmail.com> (cherry picked from commit 00da074109e713280264761eedfbf6e5dc7ef912)
2022-01-04Core/Maps: Change .map file version from FourCC to uint32 (#26326)Giacomo Pozzoni
(cherry picked from commit 42877e75e2a67514dfeb185661e4f397b6eb044a)
2022-01-04Core/MMAPs: Restore single slope angle of 55°jackpoz
Re-generating MMAPs IS required. Partially reverts 995a443da219ec773febd7dd29d18f3cefaa1f3b . Having 2 different slope angles of 55° and 85° created too many polygons to fit in the current mmtile structure. This caused some polygons to become disconnected from each other, creating the old "invisible walls" effect. Because of this and because of the performance hit when loading a mmtile caused by the increase of polygon numbers, this commit reverts the recent changes and sets by default the slope angle to 55°. Feel free to restore the previous behaviour by running .\mmaps_generator --maxAngle 85 --maxAngleNotSteep 55 , specifying the map id as number if a single map should have different slope values. This is the last commit that will change MMAPs version to force re-generating them. Any future change that will affect only the generation settings will be optional (but recommended). (cherry picked from commit 3947e4cb57d4c6adb78cd3cb52718bb88add91fc)
2022-01-04Core/MMAPs: Fix small steps being considered as NAV_AREA_GROUND_STEEPjackpoz
(cherry picked from commit 3ac1992afbeb1cd7669b300b8ee4131d39f35595)
2022-01-04Handle different slopes in mmaps (#24765)Giacomo Pozzoni
* Tools/MMAPs: Remove input argument --maxAngle Remove input argument --maxAngle . This should be just hardcoded in MapBuilder::GetMapSpecificConfig() so all settings are easily found in the same place instead of being spread around. * Tools/MMAPs: Add new area type NAV_AREA_GROUND_STEEP Add new area type NAV_AREA_GROUND_STEEP for ground with slope in the range (55, 70] . NAV_AREA_GROUND is used for ground with range [0, 55] . NAV_AREA_GROUND_STEEP takes priority over NAV_AREA_GROUND. * Tools/MMAPs: Fix NAV_GROUND_STEEP flag not being saved in the mmtile * Core/PathFinding: Implement NAV_GROUND_STEEP flag Implement NAV_GROUND_STEEP flag, used only by Creatures that are in combat or evading. * Distinguish between RC_WALKABLE_AREA and NAV_AREA_GROUND. * Allow mobs in combat to walk on steeps up to 80° * Allow mobs in combat to walk on steeps up to 85°. Disable rcFilterLedgeSpans() filter as it removed long steep spans. * Increase cost of steep spans to try making creatures walk around obstacles instead of walking on them * Revert last commit (cherry picked from commit 995a443da219ec773febd7dd29d18f3cefaa1f3b)
2021-12-22Part1: Modernize codebase with Clang-Tidy range based loops (#24164)Ujp8LfXBJ6wCPR
(cherry picked from commit fb75a958f02695f166481033203869940d98b537)
2021-12-21Remove dependency on undefined behaviour (#24159)Ujp8LfXBJ6wCPR
See https://stackoverflow.com/a/4328396 Previous method works but is technically illegal. (cherry picked from commit b089ed3b7578029ec1d35537372a2b8b923c7ec6)
2021-11-22Dep/Recast: Update recastnavigation to ↵jackpoz
https://github.com/recastnavigation/recastnavigation/commit/14b2631527c4792e95b2c78ebfa8ac4cd3413363 Rebuilding mmaps IS required (cherry picked from commit 5ff88ea04aec4677f1c1d669674e5442288a25e3)
2021-09-25Core/Maps: Adjusted logic in GetFullTerrainStatusForPosition to closer match ↵Shauren
what the client does regarding being inside WMOs Closes #21625 Closes #21624 Closes #21516 (cherry picked from commit b9c6bbb51df0ed10f74617482740fedb91ff5366)
2021-05-29Fix buildShauren
2021-05-29Core/Maps & Extractors: Move copypasted map file headers into a single ↵Shauren
shared file and replace #defines with enums
2021-05-29Core/Misc: Rename MapDefines.h to MMapDefines.h as it contains mmap defines ↵Shauren
exclusively
2021-05-21Core/Vmaps: Fixed crash in unloading vmapsShauren
Closes #26536
2021-04-25Core/Vmaps: Extract more doodad setsShauren