Est-ce «mal» de construire des jeux Unity entièrement avec des éléments d'interface utilisateur VS sprites?

8

Je me retrouve à bord d'un projet Unity avec une équipe de programmation externalisée. Notre jeu mobile possède un certain nombre de mini-jeux et ils les ont entièrement construits à partir des éléments de l'interface utilisateur, ou des images brutes sur seulement un ou deux éléments de toile. Maintenant, je sais que le terme "mauvais" est sujet à interprétation car les jeux sont assez simples et fonctionnent bien sur les appareils modernes sur lesquels nous les avons testés.

Cependant, mon attitude quelque peu perfectionniste me préoccupe souvent de la façon de faire les choses "correcte / meilleure" et j'ai du mal à abandonner l'idée que ce n'est pas la meilleure façon de développer les jeux. Je regarde les meilleures pratiques Unity de ne pas avoir trop d'éléments dans un canevas en raison de le redessiner à chaque fois que quelque chose change, les rendus des sprites optimisent le découpage des polygones par opposition au nombre maximal de rects pour garder le surplomb, etc. Et la réponse que j'obtiens de l'équipe de programmation est, "la capacité de rapport d'écran des éléments de canevas permet de gérer facilement différents rapports d'aspect, c'est ainsi que nous construisons des jeux".

Je ne veux pas que ce soit une question «personnelle» votée à la baisse, alors y a-t-il une raison plus convaincante de ne pas créer de simples jeux mobiles de cette façon? Ou s'agit-il de savoir si cela fonctionne sur des appareils ciblés et ne cause pas de problèmes, pourquoi pas? Merci d'avance pour toutes les réponses, Jaysin

Jaysin
la source
2
Cette question me semble basée sur l'opinion, mais je vais attendre et voir comment les autres utilisateurs et mods votent. Une chose que je mentionnerai cependant est que l'efficacité des ressources ne concerne pas seulement la vitesse de traitement et l'utilisation de la mémoire. Souvent, la ressource la plus limitée pour un jeu est le temps consacré aux développeurs. Donc, si l'utilisation de cette technologie permet à vos partenaires d'itérer rapidement et de fournir la qualité cible à temps sur de nombreux appareils cibles, cela peut suffire à lui seul pour justifier une augmentation du temps d'exécution.
DMGregory
Merci pour vos commentaires, je faisais de mon mieux pour le formuler d'une manière qui solliciterait les meilleures pratiques du monde réel et les conséquences imprévues potentielles de l'utilisation d'une méthode par rapport à une autre. S'il n'y a pas de raison technique claire de ne pas le faire, cela aide à indiquer une réponse que l'on peut utiliser cette méthode si elle convient à leurs besoins. J'ai demandé ici, car après des jours de recherche, je n'ai pas pu trouver de réponse actuelle sur le problème.
Jaysin

Réponses:

4

Une solution doit être adaptée à vos besoins. Si les besoins du jeu (performances IE, réactivité, facilité de développement, etc.) sont satisfaits en utilisant uniquement des éléments d'interface utilisateur, il n'y a pas de problème.

Une chose à considérer est que ce système signifie que votre équipe de développement ne sait probablement pas comment utiliser toutes les capacités d'Unity. Si à l'avenir l'interface utilisateur sera insuffisante, il sera probablement difficile de les orienter vers un flux Unity plus standard.

nihohit
la source
Je pense que @Jaysin cherche des informations sur quelle solution est "un flux Unity plus standard".
Luke
3

Je suis d'accord avec nihohit sur ce point. Il est important de prendre en considération la portée du projet. Il pourrait être plus facile / plus rapide de réaliser le projet de cette façon. S'il ne s'agit que d'un petit type de jeu ou d'application, opter pour la voie non optimisée permet souvent de gagner beaucoup de temps, ce qui permet ensuite d'économiser de l'argent. S'il est peu probable qu'un projet doive être maintenu pendant des années ou étendu, il peut être judicieux de suivre ce à quoi les développeurs sont habitués, même s'il est considéré comme moins une bonne pratique.

Cela ne signifie pas que votre état d'esprit doit être changé, car, si vous démarrez un projet à partir de zéro, vous devez totalement penser à la façon dont vous implémentez les choses et comment le rendre le plus propre. Mais, si vous êtes en production et surtout si vous travaillez avec du code externalisé, il pourrait être préférable d'utiliser un hack, qui est impur, mais prend une heure à mettre en œuvre plutôt que de refactoriser une section entière de code pour le rendre propre, ce qui peut prendre une semaine et coûte des milliers de dollars.

iQew
la source
1

Il n'y a rien de mal à n'utiliser que des éléments de canevas

Mais il pourrait y avoir quand même de mauvaises pratiques (mais ce n'est pas ça).

Draco18s ne fait plus confiance à SE
la source
1

Je pense que la seule question que vous devriez vous poser dans ce cas est: "L'interface utilisateur fournit-elle toutes les fonctionnalités dont j'ai besoin?"

J'ai rencontré un problème très similaire, sauf que je travaillais avec UE4. Je voulais faire un jeu de puzzle où vous déplacez un crochet et essayez de mettre en place des épingles dans la bonne position. Au début, je pensais qu'il serait plus facile et plus rapide d'utiliser l'interface utilisateur - mais il s'est rapidement avéré que les sprites avaient déjà un tas de fonctionnalités que je devrais implémenter moi-même. Dans mon cas, cette réponse était "Non, l'interface utilisateur ne fournit PAS toutes les fonctionnalités dont j'ai besoin".

Il semble que ce ne soit pas le cas pour vous. Mais à l'avenir, essayez peut-être les sprites juste pour voir si c'est plus facile pour vous à long terme?

lilKriT
la source