Mise à jour 26.06.24
La page d'accueil du menu a été mise à jour avec de nouvelles fonctionnalités de découverte, y compris un fil social et des catégories de jeux.

Plus de Découverte
La page d'accueil du menu a été mise à jour avec quelques nouvelles fonctionnalités de découverte. Tout d'abord, nous avons un fil social à droite. Cela montrera les interactions de vos amis avec le jeu (si vous en avez, et si leur profil n'est pas privé sur Steam). Ensuite, nous avons un projecteur en haut à gauche, où nous pouvons mettre en avant un ou deux jeux. Nous prévoyons d'utiliser cela pour mettre en avant des jeux nouveaux et sous-estimés.

J'ai eu du mal avec l'onglet des jeux, car vous cliquiez dessus et vous voyiez les jeux les plus populaires, ce qui, je pense, encourage la stagnation. Que devrions-nous mettre par défaut ? Nouveaux jeux ? Tendances ? Il y a des arguments pour et contre tout, et je ne sais pas si les gens savent comment changer l'ordre.
Donc maintenant, lorsque vous cliquez sur Jeux, cela affichera plusieurs catégories différentes que nous pouvons contrôler depuis le backend.

Contenu Rust
Nous avons ajouté beaucoup plus de contenu Rust à l'organisation rust. C'est un processus en cours pour obtenir le bon processus d'importation et faire fonctionner tout, mais il y a maintenant beaucoup plus de modèles et de sons disponibles.

Vous êtes libre d'utiliser ces ressources dans vos jeux et addons sur la plateforme, vous pouvez également activer le Play Fund ! Je suis vraiment intéressé de voir si quelqu'un peut utiliser les ressources Rust pour créer quelque chose d'inattendu, ou même essayer de recréer Rust dans s&box. Cela semble être une chose amusante à explorer.
Corrections du Compilateur de Ressources
Alors que j'importais Rust dans s&box, je rencontrais souvent des problèmes avec le compilateur de ressources qui échouait et compilait mal. Donc, j'ai tout corrigé.
- Les plantages de compilation de textures lorsque cs_compress_dxt5 ne se chargeait pas
- Les animgraphs manquants ou non analysables provoquaient des erreurs de référence nulles et des plantages
- Correction d'une NRE dans le widget de publication d'actifs, et le menu contextuel de la liste des actifs alimentant parfois des actifs nuls et en double.
- Les chemins de recherche faisaient référence à des matériaux de shaders
- Les ressources enfants étaient trop marquées, faisant apparaître des actifs non générés comme générés
La publication de milliers de choses à la fois a également révélé un tas de problèmes de validation :
- La génération d'identifiants plie désormais les accents en ASCII simple, réduit les séparateurs en soulignés au lieu de les supprimer (pour que les mots restent lisibles), et ajoute un court hachage de chemin lorsque nous devons tronquer
- Les identifiants stockés invalides sont régénérés plutôt que d'être expédiés cassés.
- Les titres sont nettoyés de la même manière : les sauts de ligne et les tabulations sont supprimés, tronqués pour s'adapter à une limite de mot. La longueur maximale des titres est passée de 32 à 64.
- L'inspecteur d'actifs et les paramètres de compilation de fichiers audio prennent désormais en charge la sélection multiple, vous permettant de corriger un lot entier à la fois au lieu de un par un.
Sons CC0
J'ai l'impression qu'il y a beaucoup de packs de sons que tout le monde veut utiliser. Donc, je les ai téléchargés dans une nouvelle organisation pour que tout le monde puisse les utiliser plus facilement. La nouvelle organisation s'appelle OpenSound.

Ici, vous trouverez une tonne de sons géniaux provenant de plusieurs sources qui ont été publiés sous la licence CC0, donc ils sont totalement bons à utiliser dans vos projets. Nous avons également une tonne de musique gratuite de Kevin MacLeod, qui est tous sous licence CC-BY.
De plus, vous pouvez maintenant prévisualiser les sons sur le site.
Références de Licences
La page récemment ajoutée des Licences d'Actifs Cloud a été très utile pour informer les gens sur les actifs cloud qu'ils utilisent encore activement, mais elle ne vous indiquait pas où se trouvaient ces références.
Donc maintenant, vous pouvez cliquer sur n'importe quel actif cloud dans la liste et voir tous vos fichiers locaux qui le référencent depuis un seul endroit :)

Matériaux Auto LOD
Auto LOD peut désormais supprimer ou échanger des matériaux lors de la génération des niveaux LOD. Les faces utilisant un matériau spécifique peuvent être complètement supprimées ou échangées contre un autre.
C'est pratique pour réduire les appels de dessin à distance, par exemple en supprimant les matériaux de détail que vous ne remarquerez jamais une fois qu'un objet est suffisamment éloigné.
Optimisations d'Allocation
Nous avons réduit les allocations par image à travers le moteur.
Sur notre système de référence, nous constatons maintenant environ 100 Ko de moins alloués par image en moyenne.
Dans certains scénarios de référence, cela se traduit par une amélioration de 30 % du temps de trame. Dans un jeu normal, attendez-vous à une amélioration de 1 à 3 %.
Le matériel de bas de gamme pourrait voir des gains plus importants.

Lanceur de Benchmark
Vous pouvez désormais exécuter nos benchmarks directement depuis le jeu, via l'onglet des paramètres Développeur.

Une fois qu'un test est terminé, une fenêtre modale apparaît avec un aperçu rapide des résultats, ainsi qu'un lien vers le détail complet sur le site :

Points de Boucle de Sprite
Vous pouvez désormais définir des points de début/fin de boucle dans l'Éditeur de Sprite afin d'avoir des animations avec une section d'introduction, une section de boucle et une section de conclusion.
Stabilité des Prefabs
Nous avons corrigé un certain nombre de problèmes avec des structures de prefab imbriquées complexes, les rendant plus stables à utiliser.
Les principaux coupables étaient liés à des instances de prefab imbriquées perdant la trace de leurs ID, lors de la rupture ou du changement de parenté d'une instance, et dans un cas limite lors du chargement où les mappages imbriqués étaient construits trop tôt.
Si vous avez rencontré des prefabs imbriqués se comportant de manière imprévisible, cela devrait résoudre beaucoup de ces problèmes.
Améliorations des Outils de Terrain
Les outils de terrain avaient besoin d'un peu d'amour, après avoir passé un certain temps à les utiliser, il y avait beaucoup de fonctionnalités que je voulais ajouter, donc je l'ai fait. Cela devrait aider à accélérer les choses pour les gens.
- Types de pinceaux réorganisés avec des raccourcis
- Affichage plus clair du pinceau actuel
- Mode de pinceau à anneau simple
- Rotation du pinceau
- Raccourcis de taille/opacité
- Taille maximale du pinceau augmentée (2048)
- Plus besoin de sélectionner l'objet de terrain pour peindre. sbox-dev_nYg3tCy7jZ.mp4 22.96 Mo
Contrôles du Lecteur Vidéo

Les vidéos ont désormais des contrôles de lecteur, volume, clic pour mettre en pause, et volume mémorisé, avec des contrôles qui se cachent jusqu'à ce qu'on les survole.
Biais de Profondeur du Plan Récepteur d'Ombre Automatique


Nous avons expérimenté cela dans shadows2 mais finalement, nous ne l'avons pas expédié. Maintenant, je l'ai réajouté pour réduire l'acné d'ombre sur les lumières en cascade, ponctuelles et spot.
On a merdé
Nous avons commencé à construire des outils pour attaquer les performances des shaders par analyse statique de nos shaders compilés, en rassemblant des outils comme l'AMD Radeon Developer Suite. L'objectif est de pouvoir passer en revue l'ensemble de notre pipeline de shaders et d'isoler les problèmes de performance plus rapidement - pression d'enregistrement, limites d'occupation, débordement - sans avoir à profiler chaque passage à la main sur du matériel réel.
L'un des premiers gains importants qu'il a mis en lumière est assez embarrassant, le chemin de shading de lumière de zone inutilisé a considérablement affecté nos shaders d'éclairage avant. Le supprimer a fait passer un cluster PBR de 120 VGPR à 75 % d'occupation (débordement) à 68 VGPR à 100 % (sans débordement), et un passage éclairé en 4K a fonctionné 26 % plus vite (245,5 ms → 181,7 ms sur un RX 9070 XT). Le shading standard complet est passé de 150 à 116 VGPR avec débordement éliminé entièrement.
La chose embarrassante est que nous ne l'avons jamais remarqué en un an, une seule branche morte a silencieusement taxé chaque shader éclairé dans le moteur, et rien dans notre flux de travail ne l'aurait signalé.
C'est le fossé que nous comblons ensuite.
Donc, parallèlement à l'outil d'analyse, nous intégrons cela dans nos workflows CI et PR : benchmarks GPU par PR, tests de régression de rendu, et analyse statique des shaders qui rapporte l'utilisation de VGPR et l'occupation dans le cadre de la révision. L'objectif est de détecter cette classe de régression avant qu'elle ne soit publiée..
