Поиск по STEAMB

Игры по онлайну и скины по объёму продаж

Ничего не найдено

Попробуйте другое название или переключите категорию.

Меню

Инструменты

Navmesh Optimizer

Положительные голоса97%3 127 голосов игроков
Подписчики129 тыс.128 961 в Steam Workshop
Размер файла108,12 КБЗагрузка через Steam
Обновление автора22 июл. 2025 г.Дата обновления материала
Navmesh Optimizer

Изображение 1 из 18. Материалы автора из Steam Workshop.

Добавить в игру через Steam

  1. Перейдите в Steam

    Откроется страница именно этого материала.

    Открыть в Steam Workshop
  2. Нажмите «Подписаться»

    На странице Steam войдите в аккаунт, если потребуется.

    Подписаться

О материале

«Navmesh Optimizer» — материал мастерской Garry’s Mod. Аддоны, карты, персонажи и инструменты для песочницы. Данные Steam, описание автора и ссылка для установки через подписку. Совместимость редакцией не проверена.

Описание автора

Optimises navmeshes by finding and merging neighbouring areas.

On big maps, this can mean tens of thousands of navareas merged.

(And MUCH more!)

As you can imagine...

You will have much less lag running nextbots on an optimized navmesh.

HOW TO USE?

If you just want to optimise a navmesh, run...

 navmesh_globalmerge_auto 

This command will automatically run the merging process, losing all of the precalculated visibility data between merged areas and their neighbours. To fix this, a nav_analyze will be run when the merging process is over. This will start the dreaded "calculating navmesh visibility..." and as you can imagine, will take a very long time. Once the nav_analyze finishes, the optimized navmesh will automatically save, and your session will restart! After letting this command run it's course, a map's navmesh will be ready to share.

Expect area count reduction of 20-50%

Some extras!

Nigh-INSTANT navmesh generation ( with 1000% less crashing! )

 nav_generate_cheap_expanded 

Incrementally generates a navmesh, dynamically places seed locations in walkable areas across the map. Navareas will cover the entire map, rooftops, inacessible areas, sometimes even the skybox. Basically a 'Nuclear Option'.

This will never really "miss" a spot, like the default generator always, always does, but expect to have to cut corners after it's done generating! ( or at least, if you need a truly, "polished" result... )

 nav_generate_cheap_plyseeds 

Clone of the above, nav_generate_cheap_expanded. Inital seeds are only placed under players

 navmesh_ischeap 

Tells you if a map's navmesh is "cheap" or not.

 nav_mark_walkble_auto 

Places generation seeds under every spawnpoint, door, teleporter exit, ladder dismount point. This is automatically used by generate_expanded.

 nav_mark_walkble_allplayers 

Places seed positions under every player's feet. I added this because nav_mark_walkable doesn't work in dedicated servers.

 navmesh_trim_displacement_areas 

Goes through the entire navmesh, and removes tiny areas with >3 connections that are on displacements. Best used after globalmerge_auto. Leaves small holes in the navmesh, but on huuuge maps with lots of displacements this can probably help with nextbot lag while losing very little of real importance.

 navmesh_trim_deepunderwater_areas 

Removes areas under water that is X or more units deep. Default 350 units deep.

 navmesh_delete_allareas 

Helper func, removes all areas.

Ladders!

 navmesh_ladderusable_build 

Creates a navmesh ladder on top of the nearest func_useableladder.

 navmesh_ladder_buildmanual 

Create a navmesh ladder anywhere.

 navmesh_ladder_buildmanual_snap 

Like navmesh_ladderusable_build, but allows for the changing of JUST the height of the top/bottom

 navmesh_ladderusable_showall 
 navmesh_ladderusable_tp 

Helper funcs for finding func_usableladder(s)

Happy navmeshing!

Extras

GLua Globals ( for addon developers! ) isCheap = getNavmeshIsCheap() Returns true if the map's navmesh is cheap!

isCorrupt, corruptedRatio, corruptedAreas = navmeshIsCorrupted() Returns true if >25% of the map's navareas are outside of the playable space, or high up off the ground. Can happen if, for example, a navmesh was generated for a map with the same name as the current one.

validMerge, mergedSurfacearea, createdArea = navmeshAttemptMerge( area1, area2 ) Attempts a navmesh merge between two areas! ( in my experience, can crash sessions if nextbots are spawned & pathing when this is ran )

validMerge, mergedSurfacearea, createdArea = navmeshAutoAttemptMerge( navArea ) Automatically runs navmeshAttemptMerge beween navArea and every one of it's neighbors.

Hooks: navoptimizer_done_gencheapexpanded Ran when nav_generate_cheap_expanded/plyseeds is finished. navoptimizer_done_globalmerge Ran when the globalmerge commands are finished.

+Hooks that expose the seed position tables for modification ( Ctrl-f in the code, examples are next to every hook, )

& Finally.. Github Some related reading... Hunter's Glee

Оригинал в Steam Workshop

Как установить и запустить

Откройте оригинальную страницу в Steam Workshop, проверьте версию игры, зависимости и порядок загрузки в описании автора. Нажмите «Подписаться» и дождитесь загрузки Steam. Включите материал в меню модификаций или контента игры, если это требуется. Совместимость и запуск редакцией не проверены.

Настройки cookies

Вы можете изменить выбор в любой момент. Отказ от аналитики не ограничивает доступ к сайту.

Технологии, провайдеры и сроки хранения