[{"data":1,"prerenderedAt":346},["ShallowReactive",2],{"navigation_docs_ru":3,"-ru-sdk-unity":110,"-ru-sdk-unity-surround":341},[4,20,55,70,90,100],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":6},"Начало работы",false,"\u002Fru\u002Fgetting-started","ru\u002F1.getting-started",[10,15],{"title":11,"path":12,"stem":13,"icon":14},"Введение","\u002Fru\u002Fgetting-started\u002Fintroduction","ru\u002F1.getting-started\u002F1.introduction","i-lucide-house",{"title":16,"path":17,"stem":18,"icon":19},"Быстрый старт","\u002Fru\u002Fgetting-started\u002Fquickstart","ru\u002F1.getting-started\u002F2.quickstart","i-lucide-rocket",{"title":21,"icon":6,"path":22,"stem":23,"children":24,"page":6},"Концепции","\u002Fru\u002Fconcepts","ru\u002F2.concepts",[25,30,35,40,45,50],{"title":26,"path":27,"stem":28,"icon":29},"Проекты и версии","\u002Fru\u002Fconcepts\u002Fprojects-and-versions","ru\u002F2.concepts\u002F1.projects-and-versions","i-lucide-boxes",{"title":31,"path":32,"stem":33,"icon":34},"Файлы конфигурации","\u002Fru\u002Fconcepts\u002Ffiles","ru\u002F2.concepts\u002F2.files","i-lucide-file-json",{"title":36,"path":37,"stem":38,"icon":39},"Публикация","\u002Fru\u002Fconcepts\u002Fpublishing","ru\u002F2.concepts\u002F3.publishing","i-lucide-send",{"title":41,"path":42,"stem":43,"icon":44},"Доступ и роли","\u002Fru\u002Fconcepts\u002Faccess","ru\u002F2.concepts\u002F4.access","i-lucide-users",{"title":46,"path":47,"stem":48,"icon":49},"Шифрование","\u002Fru\u002Fconcepts\u002Fencryption","ru\u002F2.concepts\u002F5.encryption","i-lucide-lock",{"title":51,"path":52,"stem":53,"icon":54},"Git-интеграция","\u002Fru\u002Fconcepts\u002Fgit","ru\u002F2.concepts\u002F6.git","i-lucide-git-branch",{"title":56,"icon":6,"path":57,"stem":58,"children":59,"page":6},"SDK","\u002Fru\u002Fsdk","ru\u002F3.sdk",[60,65],{"title":61,"path":62,"stem":63,"icon":64},"Node.js","\u002Fru\u002Fsdk\u002Fnodejs","ru\u002F3.sdk\u002F1.nodejs","i-simple-icons-nodedotjs",{"title":66,"path":67,"stem":68,"icon":69},"Unity","\u002Fru\u002Fsdk\u002Funity","ru\u002F3.sdk\u002F2.unity","i-simple-icons-unity",{"title":71,"icon":6,"path":72,"stem":73,"children":74,"page":6},"API и MCP","\u002Fru\u002Fapi","ru\u002F4.api",[75,80,85],{"title":76,"path":77,"stem":78,"icon":79},"API-токены","\u002Fru\u002Fapi\u002Fauthentication","ru\u002F4.api\u002F1.authentication","i-lucide-key-round",{"title":81,"path":82,"stem":83,"icon":84},"REST API","\u002Fru\u002Fapi\u002Frest-api","ru\u002F4.api\u002F2.rest-api","i-lucide-plug",{"title":86,"path":87,"stem":88,"icon":89},"MCP для ИИ-агентов","\u002Fru\u002Fapi\u002Fmcp","ru\u002F4.api\u002F3.mcp","i-lucide-bot",{"title":91,"icon":6,"path":92,"stem":93,"children":94,"page":6},"Поддержка","\u002Fru\u002Fsupport","ru\u002F5.support",[95],{"title":96,"path":97,"stem":98,"icon":99},"Обратная связь","\u002Fru\u002Fsupport\u002Ffeedback","ru\u002F5.support\u002F1.feedback","i-lucide-message-circle",{"title":101,"icon":6,"path":102,"stem":103,"children":104,"page":6},"Правовая информация","\u002Fru\u002Flegal","ru\u002F6.legal",[105],{"title":106,"path":107,"stem":108,"icon":109},"Политика конфиденциальности","\u002Fru\u002Flegal\u002Fprivacy","ru\u002F6.legal\u002F1.privacy","i-lucide-shield",{"id":111,"title":66,"body":112,"description":332,"extension":333,"links":334,"meta":335,"navigation":336,"path":67,"seo":337,"stem":68,"__hash__":340},"docs_ru\u002Fru\u002F3.sdk\u002F2.unity.md",{"type":113,"value":114,"toc":326},"minimark",[115,127,132,140,151,155,174,267,271,290,294,322],[116,117,118,119,126],"p",{},"Репозиторий: ",[120,121,125],"a",{"href":122,"rel":123},"https:\u002F\u002Fgithub.com\u002FSaleyIlya\u002FVereskUnitySdk",[124],"nofollow","VereskUnitySdk",". Нужен Unity 2022.3 или новее.",[128,129,131],"h2",{"id":130},"установка","Установка",[116,133,134,135,139],{},"В Unity откройте ",[136,137,138],"strong",{},"Package Manager → Add package from git URL"," и введите:",[141,142,148],"pre",{"className":143,"code":145,"language":146,"meta":147},[144],"language-text","https:\u002F\u002Fgithub.com\u002FSaleyIlya\u002FVereskUnitySdk.git#1.0.0\n","text","",[149,150,145],"code",{"__ignoreMap":147},[128,152,154],{"id":153},"подключение","Подключение",[116,156,157,158,161,162,165,166,169,170,173],{},"Страница ",[136,159,160],{},"Integration"," генерирует этот код для вашего проекта. SDK строит URL как ",[149,163,164],{},"BaseUrl\u002FProjectId\u002F…",", поэтому CDN URL проекта делится по последнему сегменту: всё до него — ",[149,167,168],{},"BaseUrl",", последний сегмент — ",[149,171,172],{},"ProjectId",".",[141,175,179],{"className":176,"code":177,"language":178,"meta":147,"style":147},"language-csharp shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","using VereskSDK;\nusing VereskSDK.Models;\n\nVereskAPI.Init(new VereskSetupData\n{\n    BaseUrl = \"\u003CCDN base URL>\",\n    ProjectId = \"\u003Cproject id>\",\n    Version = \"default\",\n    Consumer = \"game-client\",\n});\n\n\u002F\u002F Имя файла -> сырое содержимое каждого конфига потребителя.\n\u002F\u002F Бросает исключение, если CDN недоступен и в кеше ничего нет.\nDictionary\u003Cstring, string> configs = await VereskAPI.LoadConfigs();\n","csharp",[149,180,181,189,195,202,208,214,220,226,232,238,244,249,255,261],{"__ignoreMap":147},[182,183,186],"span",{"class":184,"line":185},"line",1,[182,187,188],{},"using VereskSDK;\n",[182,190,192],{"class":184,"line":191},2,[182,193,194],{},"using VereskSDK.Models;\n",[182,196,198],{"class":184,"line":197},3,[182,199,201],{"emptyLinePlaceholder":200},true,"\n",[182,203,205],{"class":184,"line":204},4,[182,206,207],{},"VereskAPI.Init(new VereskSetupData\n",[182,209,211],{"class":184,"line":210},5,[182,212,213],{},"{\n",[182,215,217],{"class":184,"line":216},6,[182,218,219],{},"    BaseUrl = \"\u003CCDN base URL>\",\n",[182,221,223],{"class":184,"line":222},7,[182,224,225],{},"    ProjectId = \"\u003Cproject id>\",\n",[182,227,229],{"class":184,"line":228},8,[182,230,231],{},"    Version = \"default\",\n",[182,233,235],{"class":184,"line":234},9,[182,236,237],{},"    Consumer = \"game-client\",\n",[182,239,241],{"class":184,"line":240},10,[182,242,243],{},"});\n",[182,245,247],{"class":184,"line":246},11,[182,248,201],{"emptyLinePlaceholder":200},[182,250,252],{"class":184,"line":251},12,[182,253,254],{},"\u002F\u002F Имя файла -> сырое содержимое каждого конфига потребителя.\n",[182,256,258],{"class":184,"line":257},13,[182,259,260],{},"\u002F\u002F Бросает исключение, если CDN недоступен и в кеше ничего нет.\n",[182,262,264],{"class":184,"line":263},14,[182,265,266],{},"Dictionary\u003Cstring, string> configs = await VereskAPI.LoadConfigs();\n",[128,268,270],{"id":269},"чтение-конфига","Чтение конфига",[141,272,274],{"className":176,"code":273,"language":178,"meta":147,"style":147},"using Newtonsoft.Json; \u002F\u002F поставляется с SDK\n\nvar settings = JsonConvert.DeserializeObject\u003CSettings>(configs[\"settings.json\"]);\n",[149,275,276,281,285],{"__ignoreMap":147},[182,277,278],{"class":184,"line":185},[182,279,280],{},"using Newtonsoft.Json; \u002F\u002F поставляется с SDK\n",[182,282,283],{"class":184,"line":191},[182,284,201],{"emptyLinePlaceholder":200},[182,286,287],{"class":184,"line":197},[182,288,289],{},"var settings = JsonConvert.DeserializeObject\u003CSettings>(configs[\"settings.json\"]);\n",[128,291,293],{"id":292},"замечания","Замечания",[295,296,297,305,316],"ul",{},[298,299,300,301,304],"li",{},"Конфиги ",[136,302,303],{},"кешируются на устройстве"," и отдаются из кеша, когда CDN недоступен.",[298,306,307,308,311,312,315],{},"SDK ",[136,309,310],{},"не расшифровывает"," файлы. ",[120,313,314],{"href":47},"Зашифрованные"," файлы приходят шифртекстом, поэтому не используйте шифрование для конфигов, которые должен читать клиент Unity.",[298,317,318,319,173],{},"Версия и потребитель указываются по ",[136,320,321],{},"имени",[323,324,325],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":147,"searchDepth":191,"depth":191,"links":327},[328,329,330,331],{"id":130,"depth":191,"text":131},{"id":153,"depth":191,"text":154},{"id":269,"depth":191,"text":270},{"id":292,"depth":191,"text":293},"Загрузка конфигов Veresk в игре на Unity с кешем на устройстве.","md",null,{},{"icon":69},{"title":338,"description":339},"Unity SDK для Veresk","Установите VereskUnitySdk через Unity Package Manager, загружайте конфиги с CDN и полагайтесь на кеш на устройстве, когда сети нет.","agHuFDZ8UwAqDs--C2baFkgtb843SqpmxtGy2lHoLP0",[342,344],{"title":61,"path":62,"stem":63,"description":343,"icon":64,"children":-1},"Загрузка и чтение конфигов Veresk из Node.js-сервиса.",{"title":76,"path":77,"stem":78,"description":345,"icon":79,"children":-1},"Создайте персональный API-токен и аутентифицируйте запросы к REST и MCP.",1793977351817]