News
Limba originală: Engleză

Migrarea hostului păstrează starea multiplayer s&box când hostul pleacă

Actualizarea 26.09.15 adaugă migrarea hostului în s&box. Când un host pleacă, starea sa de snapshot este restaurată pe noul host, inclusiv obiecte doar ale hostului, stare de snapshot și ConVars replicate. Starea care supraviețuiește unei alăturări târzii ar trebui să supraviețuiască migrării hostului. Codul care rulează nu se transferă, așa că comportamentul în curs trebuie reluat pe noul host. Analizoarele verifică dacă starea și comportamentul sunt sigure pentru migrare. Detalii: documentația pentru migrarea hostului.

Painter și text pe GPU

Painter înlocuiește HudPainter și sistemul de randare a panourilor cu un API comun de desenare pentru panouri, HUD-uri, panouri de lume, texturi și liste de comenzi. Redă forme SDF antialiasate, trasee, umpluturi, contururi și decupare, inclusiv arce, săgeți, linii Bezier, capsule, cercuri, poligoane și stele. Contururile acceptă plasare în interior, centru și exterior, plus stiluri pline, întrerupte și punctate; umpluturile pot fi culoare, imagine sau gradiente radiale, liniare și conice. Îmbinările liniilor acceptă teșire și rotunjire. Gruparea păstrează performanța ridicată; demonstrația se randează într-un singur apel de desenare. IPanelDraw este redundant; suprascrieți OnDraw(Painter painter). HudPainter este deprecat pentru Painter.Begin, CameraComponent.BeginHud și BeginOverlay.

Randarea textului pe GPU folosește algoritmul Lengyel păstrând API-ul actual. Curbele sunt transmise către GPU și desenate în shader, deci nu este nevoie de nicio acțiune. Acceptă CJK, emoji și tot ce accepta sistemul anterior, rămâne clar de aproape și este semnificativ mai rapidă. UI, HUD, TextRenderer și textul pentru particule se randează din contururi de glife într-un singur apel de desenare.

Meniu și editor

Cardurile la hover afișează o previzualizare a jocului cu acțiuni de joacă, evaluare, favorite, recenzie și ascundere. Modalurile de joc și notificările toast au fost reproiectate, astfel încât recenziile, favoritele și ascunderea jocurilor să fie mai vizibile. Modalurile pun evaluarea, favorite, recenzia și ascunderea lângă Joacă, cu un prompt de scriere a unei recenzii; meniul contextual adaugă Apreciază, Nu aprecia, Favorite și Ascunde. Nominalizările pentru Jam funcționează de pe cardurile la hover, din modalul de joc și din notificarea toast de final de joc, cu verificări ale timpului minim de joc, iar butoanele de favorite, vot și nominalizare se actualizează imediat și se reconciliază cu serverul.

Preseturile de calitate din editor se comută din controalele viewport-ului. Instrumentele de testare multiplayer din editor și MCP pot găzdui sesiuni, pot genera instanțe locale și pot migra hostul. Mesh-urile selectate pot fi răsturnate; ținând apăsat Shift în timp ce trageți creează un bloc aliniat la suprafață. Un selector de pivot setează pivotul fără a schimba mesh-ul selectat. Exportul din Movie Maker folosește implicit AV1. Valorile caracteristicilor de shader pot fi citite după nume ca număr întreg, fără declarații suplimentare. Setările de stocare afișează utilizarea și defalcări pe tipuri, progresul scanării, recomandări de curățare și confirmarea eliminării.

Performanță și platformă

Clonarea GameObject este de aproximativ 2,6 ori mai rapidă, cu circa 38% mai puține alocări în teste sintetice. Testele reale arată un impact mai mic, deoarece generarea modelelor și a coliziunilor este principalul blocaj; costul de serializare era deja scăzut. Snapshot-urile de rețea sunt mai ieftine pe host: starea scenei este încă capturată pe firul principal, dar codificarea JSON, blob și pachete rulează pe workeri pentru snapshot-urile de alăturare, încărcare a scenei și migrare, păstrând ordinea de trimitere.

Corecturile pentru Mac și Linux acoperă inputul din vizualizarea jocului, scalarea DPI în editor, deschiderea folderelor în Finder, pregătirea scenelor, detectarea editorului de cod și controalele de publicare/export. Suportul pentru geometry shader remediază crash-urile Highlight pe Mac, plus o remediere a duratei de viață a callback-ului de randare procedurală. Build-urile native pentru Linux folosesc Steam Linux Runtime 4.0 cu libcurl actualizat și ICU inclus, iar fallback-ul pentru emoji colorate folosește Twemoji. Configurarea open-source adaugă Setup.bat și Setup.sh, progresul descărcării, hook-uri Git și artefacte specifice platformei.

Block Party și alte corecturi

Block Party este un joc nou care folosește sistemul de sprite 2D, cu clasamente și replay-uri, un editor de niveluri cu suport pentru workshop, exporturi gif și multe altele: sbox.game/facepunch/blockparty.

CSS overscroll-behavior este implementat, dezactivând efectul elastic la marginea derulării și împiedicând propagarea derulării către panoul părinte, cu controale pe fiecare axă (MDN). Efectul elastic la derulare impune acum o limită strictă.

Alte corecturi acoperă validarea Connect Vertices, aspectele Asset Browser, recuperarea la hotload pentru publicare, undo la editarea Doo, oglindirea mesh-urilor, materialele Hammer și importurile FBX. Corecturile de rețea vizează serializarea conexiunilor, mesajele țintite recursive, imbricarea BytePack limitată la 32 de niveluri și restricțiile de loopback. Corecturile de navigare și fizică îmbunătățesc direcționarea mulțimilor, transformările agenților, recalcularea navmesh-ului și StepHeight la Character Controller. Corecturile de randare și UI acoperă curățarea coliderilor, o scurgere de VRAM la refractive, LOD pentru Clutter, outro-uri Razor, stare de tragere expirată, text bitmap, alfa pentru emoji colorate și texturi de piele feminine.

857
0 / 5,000