Оптимизатор YTD
Закинь папку stream или кучу .ytd файлов и оптимизируй всё за один заход: ограничь максимальный размер текстуры, переведи непрозрачный DXT5 в DXT1, почини отсутствующие или битые цепочки мипов и посмотри экономию памяти по каждому файлу перед скачиванием. Всё работает в твоём браузере.
Этот инструмент и его описание пока на английском.
What the numbers mean
Every streamed resource file says in its header how much memory it needs, split in two: virtual (the structures, small for a .ytd) and physical (the texture pixels, which end up in video memory). The Physicalcolumn is that number, the same one the server reports.
When a resource starts, FXServer checks both numbers for every file in stream/ and prints:
| Size | What FXServer does |
|---|---|
| up to 16 MiB | Nothing, this is where you want every file. |
| over 16 MiB | Prints "Asset ... uses X MiB of physical memory". |
| over 32 MiB | Same warning, in yellow. |
| over 48 MiB | Adds "Oversized assets can and WILL lead to streaming issues (such as models not loading/rendering)". |
| over 64 MiB | Same, in red. |
The warning is not a hard limit, the file still streams. But GTA has a fixed texture budget. When a player is near many heavy assets the game runs out of room and drops things: textures stay blurry, cars and clothes turn invisible, parts of the map do not render ("texture loss"). Smaller dictionaries fix that for everyone, not only for players with weak PCs.
What it changes
- Dropping mip levels. A 2048 texture with a mip chain already holds 1024, 512 and so on. Capping it at 1024 cuts the top level off without touching the rest. Each step saves three quarters of the memory.
- Opaque DXT5 to DXT1. When the alpha channel is fully white, DXT5 wastes half its bytes. The result looks identical.
- Re-encoding only happens when the pixels have to change: uncompressed textures, BC5 normals, DXT3, or a downscale of a texture without mips.
- Missing mips are added below the full size level, which stays as it was.
Name, usage and flags of every texture stay as they were, and the texture count never changes. Textures you untick in the plan are copied over untouched.
Which preset
- Safe for anything players look at up close. Only textures above 2048 shrink.
- Balanced for most servers: colour maps up to 2048, normal and spec maps up to 1024. Normal and spec detail is hard to see at that size.
- Strict for big packs (EUP, clothing, vehicle packs with dozens of cars). Check a few close up shots after.
Keep an eye on emissive and livery textures with text or logos, they suffer first. Add them to the exclude list (for example*_livery* or *_sign_*) if they get too soft.
Put the files back
- All as zip keeps your folder layout, unchanged files included. Extract it over a copy of the resource.
- Restart the resource and look at the server console: the memory warnings for these files should be gone.
- Keep the originals until you checked the result in game.
Files protected by the Cfx asset escrow are encrypted and can not be read. The Copy for Discord report lists what was saved per file, handy for changelogs.
Ещё в категории «конфиги и код»
Генератор server.cfg
Собери полный рабочий server.cfg с hostname, слотами, OneSync, endpoints, тегами, ресурсами и ACE правами.
Генератор fxmanifest.lua
Создай валидный манифест ресурса: fx_version, скрипты, NUI страница, files, lua54 и зависимости.
Редактор handling
Настрой массу, тягу, сцепление и подвеску через интерфейс, затем экспортируй handling.meta или Lua для runtime.
