Question

Il est très lisse et navigateur cross / plate-forme au clic d'un bouton, qui dirige les types non techniques pour conclure le moteur entier est intrinsèquement meilleur que ce que nous utilisons maintenant. Est-ce simplement qu'ils ont pris le temps de mettre en œuvre tous les par navigateur / OS versions de plug-in Unity WebPlayer et polir, ou est-il quelque chose plus profond dans la façon dont l'architecture du moteur est mis en place?

Était-ce utile?

La solution

Unity prend des scripts écrits en C #, UnityScript (basé sur JavaScript) ou Boo (basé sur Python), et les compile en mono assemblées. Ces assemblages + les modèles 3D, des sons et des textures requis par votre jeu sont compressés dans un fichier .unity3d qui est chargé par leur plug-in de navigateur. Depuis la quasi-totalité de la logique du jeu est dans les ensembles mono gérés il fonctionne avec la plate-forme croisée très peu de bizarreries spécifiques de la plate-forme.

Ils ont récemment réécrites leur détection de plug-in et le code d'installation de sorte qu'il est très facile de laisser tomber un bloc de javascript dans une page web qui affiche le contenu unité si l'utilisateur a le plug-in ou tout autre contenu (image, flash, vidéo ) si elles ne le font pas. Je crois que leur plugin supporte tous les navigateurs Une classe sur Mac et Windows, et le plug-in peut être installé sans redémarrer le navigateur.

L'un des avantages du moteur Unity est que vous pouvez prendre beaucoup d'ensembles gérés hors des étagères et les inclure dans votre projet et les appeler à partir du code unité. Mais vous devez savoir que ces ensembles peuvent vraiment ballonnement la taille du fichier .unity3d.

Un autre avantage est que vous pouvez facilement les composants écriture qui exposent les paramètres réglables qui peuvent être modifiés par des personnes non techniques.

Et encore un autre avantage est qu'un projet bien écrit peut être porté vers / depuis l'iPhone, autonome, Android, Web, etc., dans le cadre d'un jour. J'ai personnellement fait l'iPhone sur le Web en modifiant simplement mon gestionnaire d'entrée et de modifier la compression de texture.

Un gros inconvénient est que, puisque l'application est en cours d'exécution du code managé, il est pas trop difficile pour une personne curieuse ou malveillante décompiler les assemblées en code complètement lisible. Donc, vous devez penser à ce que quelqu'un pourrait faire avec cette information (tricher en mode multijoueur, les robots d'écriture, falsifier des scores élevés, etc.). Il est possible d'obscurcir vos assemblées, mais il est trivial d'ajouter cette étape à votre processus de construction.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top