s&box-france
Toutes les actualités s&box
Facepunch·

Mise à jour 26.09.01

Le nouveau menu principal et un algorithme de découverte amélioré pour s&box sont désormais en ligne, facilitant la recherche de jeux.

Mise à jour 26.09.01

Nouveau Menu Principal

Je suis conscient que refaire le menu est devenu un mème à ce stade, mais le menu principal a encore une fois été reconstruit.

La plainte commune que nous recevons est qu'il n'y a pas de bons jeux. Je pense qu'il y a de bons jeux mais nous ne les mettons pas suffisamment en avant. Leur instinct est de cliquer sur le navigateur de serveurs et de trouver des jeux là-bas, ce qui est la mauvaise façon de faire les choses dans s&box, donc nous avons supprimé le navigateur de serveurs.

Ce redesign met les jeux au premier plan. Nous essayons de vous montrer plus de jeux qui pourraient vous plaire et de vous montrer exactement à quoi ils ressemblent en jouant des vidéos.

Il y a aussi de la musique. Cette musique est temporaire. Elle est là pour nous encourager à la remplacer. Cela vient avec une nouvelle API Game.Music et un MusicComponent qui facilitera l'ajout de musique dans vos jeux.

Découverte

Mettre les jeux au premier plan ne fonctionne que si nous vous montrons des jeux que vous voulez réellement jouer, donc l'algorithme de découverte a également été reconstruit.

L'ancienne page de découverte montrait les mêmes 31 jeux à tout le monde, choisis à partir de quelques métriques globales. Cela ne couvrait que 1,2 % des jeux sur la plateforme. Si votre jeu n'était pas dans cet ensemble, il n'y avait pas de moyen réaliste pour que quiconque le trouve.

Le nouvel algorithme porte cette couverture à environ 70 %, donc la plupart des jeux ont maintenant une réelle chance d'atteindre au moins quelques joueurs.

Vous vous demandez peut-être ce qu'il en est des 30 % restants. Ce sont des jeux manquant des éléments de base : pas de miniature, pas de genre, pas de tags, pas de captures d'écran... Si vous remplissez ces informations et que vous faites jouer un ou deux amis, votre jeu commencera presque certainement à apparaître pour d'autres.


Les jeux apparaissent maintenant dans un mélange d'étagères :

  • Certains sont principalement basés sur le goût personnel, comme Parce que vous avez joué à X et Les joueurs comme vous ont joué, Plus de jeux de genre X...
  • Certains sont principalement basés sur des métriques globales, comme Tendances, À venir et Très bien notés...


Dans l'ensemble, nous espérons que cela donne à chaque jeu une chance équitable d'être trouvé et facilite la recherche de quelque chose que les joueurs apprécieront réellement.

Jeux Montés

Il y a maintenant une nouvelle page de Jeux Montés. L'objectif est de mettre cette fonctionnalité au premier plan et d'expliquer ce que c'est.

Menu des Paramètres

Enfin, nous avons également mis à jour le menu des paramètres pour l'aligner avec le style du nouveau menu.

  • Nous avons également ajouté une recherche de paramètres
  • Options de Post Traitement détaillées
  • Et un mode de détection automatique qui détecte un préréglage que nous pensons être bon pour votre GPU & CPU.

Client Linux Natifs

Le jeu est maintenant livré avec un client Linux natif entièrement jouable sur Steam. Cela utilise le Steam Runtime pour fournir un ensemble commun de dépendances et fonctionner sur n'importe quelle distribution.


Les gens ont signalé de bonnes augmentations de performance par rapport à la version Windows fonctionnant sous Proton. Ainsi que de grands gains de performance et de stabilité sur Steam Deck.

Je suis sûr que nous recevrons des commentaires sarcastiques sur le support Linux de Gmod et Rust - c'est différent, nous avons fait des choix très délibérés pour arriver ici, nous sommes open-source et nous avons le code source complet et la propriété de notre moteur.

Éditeur Linux Natif

Nous avons également réussi à faire fonctionner l'éditeur sur Linux, cela n'était pas prévu aussi tôt, mais le port du client s'est si bien passé que beaucoup de l'outil de l'éditeur a simplement fonctionné aussi.

L'éditeur n'a jamais vraiment bien fonctionné sous Proton. Et bien qu'il y ait évidemment un bon nombre de bugs, l'expérience globale est bien meilleure.

Le seul inconvénient est que cela ne vient pas avec les outils natifs de Valve comme Hammer, ModelDoc ou Animgraph.

Plateformes Futures

Nous nous sommes mis dans une très bonne position en choisissant les bonnes technologies qui sont open source et multiplateformes comme .NET, SDL3, Vulkan et plus. Cela rend le fardeau de la prise en charge de plusieurs plateformes beaucoup plus facile.

Donc, la prochaine étape sera de livrer un éditeur macOS.

UI de Post Traitement

Les panneaux d'écran sont dessinés après le post-traitement par défaut. C'est généralement ce que vous voulez. Mais peut-être que vous ne le voulez pas. Peut-être que vous voulez que votre UI soit éclatée avec le jeu, peut-être que vous voulez que des superpositions de radiation s'appliquent à l'UI.

Eh bien, le ScreenPanel a maintenant une option pour rendre avant le post-traitement, ce qui vous permet de faire cela.

De plus, l'UI peut maintenant rendre des couleurs HDR, donc vous pouvez rendre les choses super lumineuses. Le parseur de couleurs comprend maintenant la multiplication de base, donc vous pouvez rendre les couleurs plus lumineuses très facilement.

background-color: rgba( white * 4, 0.5 );
color: #3273EB * 8; 

Dégradés GPU

Les dégradés CSS linéaires, radiaux et coniques sont maintenant rendus par le shader UI au lieu de cuire une image. Cela signifie qu'ils sont à la fois plus fluides et plus rapides à générer.

J'ai vérifié et m'assuré qu'ils sont aussi proches que possible du standard web, y compris les arrière-plans positionnés et répétés, la taille des cercles et des ellipses, les arrêts basés sur les pixels, l'interpolation transparente et les directions des coins.

Découpage d'Arrière-Plan

La propriété background-clip est maintenant supportée !

Formes de Bordure UI

J'en ai eu assez de voir des UI rectangulaires dans les jeux, et je voulais un moyen de dessiner des polygones et d'autres formes arbitraires, mais je ne savais pas comment le faire. Jusqu'à ce que je découvre la propriété CSS expérimentale border-shape.

Avec cette propriété CSS, vous pouvez définir quelle forme vos panneaux doivent dessiner en CSS :

border-shape: polygon( 25% 5%, 75% 5%, 100% 50%, 75% 95%, 25% 95%, 0% 50% );
border-shape: circle( 42px at 60px 45px );

J'ai implémenté cela dans notre moteur UI en tant que formes SDF, ce qui signifie qu'elles sont toutes jolies et anti-aliasées. Vous pouvez leur donner des couleurs de bordure, vous pouvez leur donner des ombres portées, etc. et elles seront correctement testées lors des clics.

J'espère que cela permettra une UI de plus en plus créative dans les jeux !

Améliorations du Rendu UI

Les boîtes, bordures, clips et ombres avaient tous des idées différentes sur la façon dont un coin était arrondi. Ce code a maintenant été unifié, donc ils sont tous sur la même longueur d'onde. Cela a également été amélioré pour que le rayon de bordure puisse avoir des définitions h/v également.

Le rendu UI est maintenant effectué en mode Gamma, ce qui signifie que le mélange alpha ressemble beaucoup plus à ce que vous attendez, exactement comme sur le web. Je ne pense pas que cela intéresse qui que ce soit mais cela m'a dérangé pendant longtemps.

Performance UI

Un profilage approfondi du menu a révélé quelques gains de performance intéressants du système UI. 

Nous faisions des choses qui n'ont pas vraiment d'importance par elles-mêmes, mais qui commencent à s'accumuler lorsque vous le faites pour 2 000 panneaux à chaque image, comme inverser une matrice.

Le rendu de texte est maintenant non prémultiplié, ce qui signifie qu'il peut être regroupé avec tout le reste, entraînant moins d'appels de dessin.

Le défilement ne remet plus en cause l'ensemble de la mise en page - ce qui était vraiment désagréable.

Mapping - Sélectionner les Faces de Boucle

 

Sélectionnez deux faces voisines et appuyez sur L pour continuer la boucle à travers le maillage, rendant les longues bandes de géométrie beaucoup plus faciles à travailler. 

Ouvrir la Vidéo

Mapping - Sélectionner Similaire

Sélectionner Similaire trouve des maillages et des modèles correspondants à partir de la sélection actuelle, apportant un flux de travail familier de Hammer dans l'éditeur de scène.

Ouvrir la Vidéo


Améliorations des Outils de Transformation

J'ai mis à jour le comportement du gizmo de transformation avec le redimensionnement et la rotation. Avant cette mise à jour, la rotation et le redimensionnement des objets ne différaient pas selon l'espace de transformation actuel. Ce n'était pas très intuitif et pratique, donc maintenant j'ai fait en sorte que l'utilisation des espaces globaux/local ait une différence pour ces outils.

Maintenant, lorsque vous redimensionnez un groupe d'objets dans l'espace global, ils seront traités comme un seul, à partir du centre de sélection, au lieu de redimensionner chaque objet individuellement. Le redimensionnement des objets dans l'espace local redimensionnera les objets à partir de leur origine, comme avant.

Ouvrir la Vidéo

La rotation des objets dans l'espace local fera maintenant tourner chaque objet individuellement autour de leur origine. La rotation dans l'espace global reste inchangée.

Ouvrir la Vidéo




Qualité de Vie de Remplacement de Matériaux

Vous pouvez maintenant spécifier comment vous souhaitez configurer les matériaux initiaux sur le modèle lors de leur création depuis le navigateur d'actifs et le menu contextuel. Avant cela, votre modèle aurait toujours été créé avec un groupe de matériaux par défaut avec un remplacement global.

Maintenant, vous pouvez vous en passer complètement, et si vous activez cette option, vous pouvez spécifier quel matériau doit être utilisé comme remplacement global.

Réorganiser les Onglets de Scène

Ouvrir la Vidéo

Les onglets de scène peuvent maintenant être déplacés dans l'ordre qui convient à votre façon de travailler.

Étiquettes de Noms d'Os

Survoler ou sélectionner un gizmo d'os affiche maintenant le nom de l'os directement dans la vue de scène, facilitant la navigation dans les rigs.

Nouveau Lanceur

Notre objectif à long terme est de supprimer complètement l'utilisation de Qt. Nous avons évalué des alternatives et avons décidé que notre meilleur mouvement pour l'avenir est d'utiliser notre propre système de panneaux.. car quoi que nous finissions par utiliser, nous allons l'encapsuler et créer notre propre couche de système UI à partir de cela de toute façon. Si nous utilisons notre propre système de panneaux, tout ce que nous améliorons pour l'éditeur sera également utilisable dans le jeu. Cela a tout son sens pour nous.

Donc, comme première étape, nous avons converti le Lanceur de Qt, et maintenant utilise le système de panneaux.

Ce lanceur vient avec quelques fonctionnalités demandées par les utilisateurs. L'une des plus demandées est le fait que lorsque vous lancez l'éditeur, il le détecte, le met en surbrillance dans l'entrée, et ne le relance pas.

Galerie de Panneaux

Le chemin pour remplacer Qt sera long. Il y a beaucoup de choses que nous devons mettre en œuvre, corriger et améliorer sur le système de panneaux. Certaines d'entre elles ont déjà eu lieu. Mais pour nous aider à avoir une autre application, dans le bin/managed/ dossier appelé PanelGallery.exe. C'est un moyen pour nous de montrer et de tester le système UI.

Forums

Les forums sont beaucoup plus semblables à des forums maintenant, ils devraient être plus familiers et plus faciles à utiliser.

Pages Markdown

Notre documentation, référence API, tutoriels et notes de version sont maintenant toutes disponibles en markdown en ajoutant .md à la fin d'une URL ou via Accept: text/markdown.

Des choses plutôt ennuyeuses pour les humains, mais excitantes pour les robots 🤖

Feuille de Route

Nous ne faisions pas un bon travail pour communiquer nos objectifs et nos progrès, donc nous avons mis à jour la page de feuille de route et les éléments. Nous avons facilité la mise à jour de cela pour nous, ainsi que de le rendre plus consommable pour vous, chaque élément de la feuille de route peut être cliqué pour ouvrir un modal contenant plus de détails, des liens vers GitHub et plus.

Résumé

Nous avons eu quelques semaines distraites, mais nous sommes de retour à cela maintenant. Je voulais passer en revue nos plans, car je pense que je les ai mentionnés dans le discord mais pas réellement écrits nulle part, et avec le nombre de joueurs étant assez stable, je suis sûr que les gens s'inquiètent.

C'est notre moteur. C'est le moteur Facepunch. Nous travaillons dessus parce que nous sommes Facepunch et nous pensons qu'à un moment donné, nous voudrons créer un jeu en utilisant notre propre moteur. Je ne veux pas que nous dépendions complètement de Unity. Je ne veux pas qu'ils puissent changer d'avis un jour et nous dire que nous leur devons 40 % des revenus à l'avenir. Je ne veux pas que nous devenions Unity. Je veux que nous créions un moteur moderne, open source et gratuit. Donc, peu importe si les gens jouent sur la plateforme s&box ou non, nous allons continuer à faire cela, c'est un investissement dans notre avenir idéalisé.

Cela dit, nous voulons évidemment que la plateforme soit un succès. Nous voulons que les gens jouent à des jeux sur la plateforme et en profitent. Nous voulons que les gens gagnent de l'argent grâce à la plateforme. Nous voulons qu'elle finance son propre développement. Donc, nous allons continuer à essayer d'encourager cela.

La prochaine étape est un Game Jam. Cela se déroulera ce mois-ci (septembre) à partir du vendredi 4. Il aura un total de 50 000 £ de prix. Nous essayons de concevoir un système qui soit aussi amusant pour les joueurs que pour les développeurs. Nous voulons que les joueurs votent pour le gagnant. Nous ferons probablement un week-end gratuit ou une vente à ce moment-là. Il y aura plus d'informations à ce sujet très bientôt.

Ensuite, il y aura une vente de Noël avec une promotion croisée avec Rust. L'espoir est que si nous vendons à un public qui n'est pas des passionnés de Garry's Mod, ils seront plus susceptibles de trouver quelque chose qu'ils aiment, au lieu de choses qu'ils n'aiment pas.

Ensuite, l'année prochaine, nous viserons à organiser plus de Game Jams à intervalles réguliers. Nous itérerons et améliorerons chaque fois et essayerons de les amener à un endroit où ils fonctionnent pratiquement tout seuls.

Puis à un moment donné, nous examinerons ce que nous avons et nous nous dirons... vous savez... faisons un jeu avec une toute nouvelle IP. Ensuite, nous constituerons une équipe en interne pour créer un jeu autonome sur notre moteur et le publier sur Steam et sur toutes les consoles qui existent à ce moment-là.