Unity-Technologies / Unity-Technologies/com.unity.netcode.gameobjects
Allow configuring NetworkTransform through a ScriptableObject
Personne n'a encore pris cette issue.
- Langage dominant
- C#
- Étoiles
- 2.3k
- Forks
- 461
- Merge moyen
- 3 j 16 h
- PR mergées (30 j)
- 20
Description
Whenever I create a new thing requiring the synchronization of a transform, I add a NetworkTransform component to it, and have to configure the properties of it again and again to the same exact values I have found to work for my use cases. This becomes increasingly bothersome as the complexity of the project increases. And if you then want to modify something later you have to go through everything manually and change the properties. (Yes I know, prefab variants, but those are only viable in very specific situations)
I would propose moving most of the properties on the NetworkTransform to a ScriptableObject saved to the assets folder, so you could configure those options in a more cohorent way. You could create different configs for fast moving objects, big slow objects, etc. and assign them to different NetworkTransforms easily.
The properties I often myself copy pasting which would be good candidates to live on ScriptableObjects are:
- Axis to synchronize
- Thresholds
- Interpolation settings (these are the most painful to reconfigure every time)
- Quaternion sync, compression, half float precision
This could be an additional feature accessible through the NetworkTransform through a boolean toggle in the inspector, to not break existing workflows.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par inspecter le composant NetworkTransform et ses propriétés sérialisées de l’inspecteur, en particulier les axes de synchronisation, les seuils, l’interpolation, la synchronisation des quaternions, la compression et la précision half-float. Déterminez comment une configuration ScriptableObject pourrait être assignée sans perturber les workflows existants, puis vérifiez que les configurations peuvent être créées en tant qu’assets et appliquées à plusieurs NetworkTransforms.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- csharp, unity
- Domaine
- game-dev, networking
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100