Comment “lent” est python pour le développement d'un jeu?
J'aimerais m'essayer à quelques jeux PC de développement. J'entends souvent dire que python est lent par rapport à C++. Est-ce quelque chose que je devrais m'inquiéter?
Je suis plus familier avec python qu'en C++. Si je cherche à faire des jeux, je devrais prendre le temps d'apprendre le C++ ou simplement coller avec Python?
Ce type de jeu? Est-il quelque chose de simple comme le sudoku ou 3d FPS?
Aussi, considérer qu'un certain nombre de jeux utilisation python (ou d'une autre "script" la langue, comme LUA) en dessous. C'est la lourde graphiques/rendu/physique (où les CPU/GPU craque vraiment des questions) peut être effectuée sur un moteur écrit en C/C++ alors que le jeu de logique/de la mécanique peuvent être (et sont souvent) transmis.
Aussi, considérer qu'un certain nombre de jeux utilisation python (ou d'une autre "script" la langue, comme LUA) en dessous. C'est la lourde graphiques/rendu/physique (où les CPU/GPU craque vraiment des questions) peut être effectuée sur un moteur écrit en C/C++ alors que le jeu de logique/de la mécanique peuvent être (et sont souvent) transmis.
OriginalL'auteur Johnny | 2011-01-02
Vous devez vous connecter pour publier un commentaire.
Il y a une différence dans la lenteur du développement et de la lenteur à l'exécution. Veillez à ne pas obtenir les deux confondus.
De nombreux jeux passent la plupart de leur temps d'attente pour la saisie de l'utilisateur ou en attente d'une minuterie à cocher. Dans ces cas, la vitesse d'exécution est généralement de peu d'importance et le plus important est le développement de la vitesse - l'obtention de votre jeu sur le marché aussi vite que possible et aussi bon marché que possible, et de rendre le jeu aussi bon que vous le pouvez avec votre budget. Pour ce type de jeu de haut niveau, les langues sont un choix approprié.
Pour les jeux qui nécessitent des performances élevées, généralement, le moteur est écrit dans un langage comme C++, mais le script peut encore être fait dans un langage de haut niveau. Python n'est pas le seul choix. Lua est probablement le choix le plus populaire pour un langage de script dans les jeux.
Tout ce que vous avez à boire... j'en veux
amen ... hic!
OriginalL'auteur Mark Byers
Elebenty-sept.
Non, vraiment, il est assez rapide pour la plupart des choses, et peut descendre à C lorsque vous en avez vraiment besoin de vitesse. Profil deux fois, d'optimiser la fois.
OriginalL'auteur Ignacio Vazquez-Abrams
Le genre de jeu importe énormément. Haute performance à des jeux comme le grand nom du PC ou de la console de jeux sont presque exclusivement le domaine de C++.
Jeux occasionnels peuvent être écrits dans toutes les langues, y compris plus lent langages comme Python.
Si vous êtes un garage développeur de type qui obtient ses mains mouillées avec un simple jeu de développement pour cette première fois, Python serait plus que suffisant. Si cependant, vous avez l'ambition de travailler pour un développeur de jeux de studio, je recommanderais certainement l'apprentissage de C++.
OriginalL'auteur Arjan Tijms
Beaucoup de gens, sinon la plupart des haut de gamme de jeux commerciaux ces jours-ci incluent une sorte de moteur de script pour le jeu de logique. Jeu de logique des décisions, pour la plupart, ne sont pas particulièrement la performance sensibles à la manière, par exemple, le moteur de rendu est.
BTW - je ne suis pas la revendication d'un initié de la connaissance du développement de jeu - c'est assez bien connue à l'extérieur de l'industrie. Certains éditeurs de jeux ont même permis aux utilisateurs d'accéder aux scripts choses et d'autres outils de modding jeux - pour ans.
Si vous trouvez un moteur de jeu qui est enroulé à être utilisé en Python, vous allez avoir affaire avec les mêmes principes de base. Écrire la logique du jeu en Python, et vous aurez probablement être fine.
PyGame est fondamentalement SDL enveloppé pour le Python, le soutien de base des jeux 2D pour la plupart (même si OpenGL peut être utilisé pour la 3D en SDL - pas sûr pour PyGame).
C'est un bon point de départ. Vous pouvez frapper un problème de performance avec la gestion de vos objets de jeu et le déroulement de votre blit boucle, puisque seuls les très graphiques de base stuff est gérée par SDL, mais vous devriez trouver qu'il est très bien pour la plupart des choses.
Comme Ignacio implique - vous soucier des problèmes de performances lorsque vous savez que vous avez des problèmes de performances, pas avant. Certains problèmes de performances sont prévisibles à l'avance, mais si vous n'êtes pas d'écrire le moteur de jeu en Python, vous devriez être OK - ne pas tomber dans le prématuré d'optimisation piège, OIE.
OriginalL'auteur Steve314
C++ est beaucoup plus facile pour l'orientation de l'objet. Lorsque vous êtes en train de faire des choses, il est plus facile de garder une trace de tout, parce que la plupart des Ide pour le C++ sont plus basés sur des projets, ont été, comme d'INACTIVITÉ est plus basé sur des fichiers.
La ligne du bas est pour le développement d'un jeu, utilisez ce que vous sentez à l'aise avec l'utilisation. Je veux dire, le développement de jeu est à propos de ce que vous voulez faire, pas ce qui serait mieux, parce que mieux == ce que vous voulez.
OriginalL'auteur Paul