|
Mod
|
Posté le 17 Fév 2009 à 10:28
|
|

Messages : 4954
GCPoints : 2100823
|
Je lance un débat sur un sujet assez intéressant pour nous autres créateurs de jeu :
Qu'attendez-vous d'un langage de création de jeu ?
On a plusieurs exemple de ce type de langage :
- en premier lieu, le DarkBasic (et DarkBasic Pro), simple à utiliser, simple à comprendre, mais peu performant.
- le Blitz et ses multiples versions (Blitz3D, BlitzMax, BlitzBasic), qui est un intermédiaire équilibré entre simplicité et performances.
- Ainsi que d'autres langages moins connus : GL4Basic, DXBasic, GamesBasic, etc.
Qu'est-ce qui vous semble prioritaire pour ce type de langage ? La rapidité de codage, la simplicité d'utilisation, la présence de librairies complètes, la gestion de la 2D, de la 3D etc...
Entre performances et simplicité, lequel serait à privilégier, selon vous ?
Reste aussi que l'on a d'autre possibilités, par exemple n'importe quel langage avec une librairie (bibliothèque) pouvant être utilisée pour créer des jeux, seule ou avec d'autres libraires (SFM, SDL, DirectX, OpenGL, etc)
Lorsqu'il s'agit de créer des jeux, préférez-vous utiliser un langage standard tel que le C, C++, Java, C# etc, en association avec des librairies, ou un langage orienté création de jeu ? Pour quelles raisons ?
Bien entendu ce débat-ci n'a rien d'anodin comme vous pouvez l'imaginer ;).
|
|
akd
|
Posté le 17 Fév 2009 à 11:32
|
|

Messages : 319
GCPoints : 75439
|
(preums preums!)
Qu'est-ce qui vous semble prioritaire pour ce type de langage ?
Simplicité, facilité de prise en main, performances.
D'autre part (et c'est quelquechose souvent oublié), la facilité de relecture du code et de "mise au propre". De ce côté là, je trouve que les langages orientés objets ont quand même un net avantage sur les autres puisqu'on peut planifier l'architecture de son code en avance, le documenter avant même d'avoir commencer à coder; ce qui permet au final de ne plus avoir qu'à remplir les petites cases et de s'y retrouver facilement.
Entre performances et simplicité, lequel serait à privilégier, selon vous ?
Il y a quelques années, j'aurais voté sans hésiter pour performances. Depuis je suis un peu redescendue sur terre on va dire, et maintenant, je privilégie la simplicité (tout en cherchant un langage qui permette un bon équilibre entre la difficulté de prise en main et les performances).
Toujours pour les mêmes raisons de relecture du code et de maintenance après coup; mais aussi parce qu'on a pas toujours autant de temps qu'on veut pour coder et que quand on a des deadlines courtes à tenir, on apprécie vraiment l'importance de la simplicité.
Lorsqu'il s'agit de créer des jeux, préférez-vous utiliser un langage standard tel que le C, C++, Java, C# etc, en association avec des librairies, ou un langage orienté création de jeu ? Pour quelles raisons ?
Alors là, c'est difficile de répondre. Pour ma part, je préfère des langages standards (si j'avais plus de temps, je coderais certainement en C++; mais j'ai choisi le C# par soucis de facilité alors que j'en avais jamais fait auparavant); MAIS rajouter par dessus des libs orientés au maximum création de jeu (toujours par soucis de simplicité).
Ca n'empêche pas d'avoir encore pas mal de boulot à côté (mise en place d'un éditeur de jeu, design du programme etc...) mais le compromis performance/simplicité me semble relativement correct.
Je tiens à ajouter que je n'ai que très vaguement exploré les logiciels de making style rpg maker (que j'ai pas tu tout aimé -> trop lent et pas assez souple à mon gout) et pas du tout les basics orientés jv, ca influence donc mes choix.
|
|
bebou007
|
Posté le 17 Fév 2009 à 13:11
|
|

Messages : 238
GCPoints : 43228
|
salut a tous voila met réponse
Qu'attendez-vous d'un langage de création de jeu ?
et bien simpliciter tous en étant performant mais surtout un language complet.
Qu'est-ce qui vous semble prioritaire pour ce type de langage ?
surtout la présence de librairies complète, la 3d, la 2d ,la possibiliter de crée une lib dans le language même.
Entre performances et simplicité, lequel serait à privilégier, selon vous ?
la simplicité bien sur on et pas des pro avec des moyen colossal donc la simplicité et bien venu
créer des jeux, préférez-vous utiliser un langage standard tel que le C, C++, Java, C# etc, en association avec des librairies, ou un langage orienté création de jeu ? Pour quelles raisons ?
je préfère de loin utiliser un langage dédier au jeu j'ai essayer le c++ avec darkdgk mais simplicité n'est pas au rende vous même si c'est aussi facile de programmer que darkbasic
|
|
dstar
|
Posté le 17 Fév 2009 à 13:32
|
|

Messages : 56
GCPoints : 25718
|
Tiens, je vais répondre à celui-là. A mon avis, les langages de programmation ne sont pas au coeur des problèmes rencontrés par les développeurs de jeu, même si beaucoup semblent le penser.
Je pense qu'il faut différencier 2 éléments qui sont fondamentalement différents: langage de programmation et bibliothèques. Ici, il est avant tout question de langage de programmation, et donc, de la façon dont on structure les instructions exécutées par un micro-processeur. Et non pas la réutilisation de code produit par ailleurs.
Qu'attendez-vous d'un langage de création de jeu ?
Rien. Je pense que faire un langage spécialement pour les jeux n'apportera rien dans le fond. Soit il sera trop orienté et trop restrictif, soit généraliste et n'apportera pas grand chose par rapport au Java/C#/Action Script.
Qu'est-ce qui vous semble prioritaire pour ce type de langage ?
- L'efficacité du code binaire produit (c.a.d un code optimisé): la plupart des jeux s'exécutent en temps réel (ou pseudo-réel), il est nécessaire que le code produit à partir du code source puisse s'exécuter assez rapidement pour pouvoir suivre la vitesse de l'action du jeu.
- L'aide à la mise au point: pouvoir facilement identifier la cause des bugs et autres plantages,
- Un typage fort: pour détecter un maximum d'erreurs à la compilation plutôt que pendant l'exécution,
- Un garbage collector ou une gestion mémoire implicite et intégrée: de nombreux bugs sont dus à une erreur d'utilisation des pointeurs dans les programmes C et C++,
- Des bibliothèques de base puissantes.
Entre performances et simplicité, lequel serait à privilégier, selon vous ?
Aucun des deux, c'est un compromis à trouver dépendemment du type de jeu développé, de la qualité de réalisation recherchée et du niveau d'investissement des développeurs dans le jeu.
Lorsqu'il s'agit de créer des jeux, préférez-vous utiliser un langage standard tel que le C, C++, Java, C# etc, en association avec des librairies, ou un langage orienté création de jeu ? Pour quelles raisons ?
A mon avis, les langages de programmation les plus adaptés à la création de jeux vidéos sont le Java, le C# et l'Action Script.
Ils sont suffisamment généraux pour gérer l'ensemble des fonctionnalités demandés par la plupart des styles de jeu (et oui, certains ont appris ou apprendront à leurs dépens que le développement d'un jeu est loin de se résumer au développement d'un moteur graphique).
De plus, l'utilisation de bibliothèques permet de facilement faire évoluer les fonctions offertes aux programmeurs, pas besoin de réécrire un nouveau langage à chaque fois qu'un nouveau DirectX pointe le bout de son nez.
dstar
dstar
|
|
gouessej
|
Posté le 25 Mar 2009 à 02:10
|
|

Messages : 337
GCPoints : 64624
|
Qu'attendez-vous d'un langage de création de jeu ?
J'utilise plutôt des langages généralistes, pas vraiment des langages qui ne servent qu'à créer des jeux.
Qu'est-ce qui vous semble prioritaire pour ce type de langage ?
Portabilité (j'ai bien dit portabilité, pas "je rajoute des bouts de code parci par là pour que ça tourne sur un nombre fini de combinaisons d'architectures et de systèmes d'exploitation", "je dois me taper du débogage sur chaque combinaison d'architectures et de systèmes d'exploitation", "je dois modifier mon code de façon assez importante si je passe du PC au téléphone mobile puis au boitier TV"), scalabilité, syntaxe "simple" (pas trop de mots clés, quelque chose d'intuitif, pas comme Esterel et OCaml), performance (efficacité du code produit comme le mentionne dstar), stabilité, bonne gestion de mémoire (ramasse-miettes et autres joyeusetés, avec quand même des possibilités d'envoyer des agents pour regarder ce qui se passe et de tuner les réglages), présence de bibliothèques de bas niveau et si possible de haut niveau dans les domaines relatifs au développement de jeux vidéo (graphisme 2D/3D, son, fenêtrage, réseau, intelligence artificielle, gestion des périphériques, gestion physique, ...), de bons outils pour développer (IDE, outils de profiling et de débogage), déploiement aisé (l'utilisateur final clique une fois et ça s'installe, le développeur peut rapidement mettre en place une application lourde avec très très très peu de code), de préférence un typage fort pour la même raison que celle que dstar invoque, possibilité de générer du code source à partir d'ateliers de génie logiciel s'appuyant sur UML.
Entre performances et simplicité, lequel serait à privilégier, selon vous ?
Je ne fais aucun compromis, je veux le beurre, l'argent du beurre et la crémière avec. Un code performant mais illisble est inmaintenable, un code sexy (facile à lire et naïf) mais très peu performant est sans intérêt. Je choisis donc un langage qui doit être capable de faire des micro-optimisations à ma place, ça évite d'obscurcir mon code pour gagner un peu de vitesse.
Lorsqu'il s'agit de créer des jeux, préférez-vous utiliser un langage standard tel que le C, C++, Java, C# etc, en association avec des librairies, ou un langage orienté création de jeu ? Pour quelles raisons ?
Je ne connais pas vraiment les langages dont Mod a parlés au tout début, je suis plus familier des langages généralistes et c'est surtout pour ça que je m'en sers. Je m'intéresse à l'élaboration de nouveaux algorithmes et à l'écriture de nouvelles implémentations d'algorithmes existants, j'ai besoin d'un langage avec lequel je suis déjà à l'aise et qui me permette de toucher aux traitements effectués par un moteur et non d'un langage de script certes simple mais qui me permettrait surtout de communiquer avec un moteur existant. Cependant, je suis tout à fait conscient que d'autres créateurs peuvent avoir des besoins complètement différents et donc ils optent pour des stratégies complètement différentes (je hais Microsoft quand même, ça c'est politique).
Mon choix se porte sur Java, vous savez déjà pourquoi. Je n'ai que 24 ans, je vais éviter de radoter.
|