6
votes

C # 2D Jeu de graphiques vectoriels utilisant DirectX ou OpenGL?

Cela a donc été un moment depuis que j'ai fait une programmation de jeu en C #, mais j'ai eu un bogue récent pour y retourner, et je voulais des opinions sur la configuration que je devrais utiliser.

Je voulais utiliser c # car c'est ce que j'utilise pour le travail et que je suis devenu familier avec. J'ai travaillé avec DirectX et OpenGL dans le passé, mais surtout en 3D, mais maintenant, je suis intéressé à écrire un match 2D avec tous les graphiques vectoriels, quelque chose qui ressemble à l'apparence des guerres de géométrie ou du vieux jeu d'arcade de Star Wars.

points clés que je suis intéressé par:
• Facilité d'utilisation / mise en œuvre.
• Facile à la mémoire. (Je prévois d'avoir beaucoup de choses à coucher à la fois)
• Ça va bien, je ne veux pas que la courbe ait l'air pixelated.
• Peut-être de beaux effets comme lueur ou particule.

Je suis ouvert à toutes les suggestions, peut-être même quelque chose que je n'ai pas pensé à ...

Merci d'avance!


0 commentaires

7 Réponses :


11
votes

Si vous commencez à nouveau et que vous avez déjà un fond C #, pourquoi ne pas essayer Xna? Vous serez certainement en mesure de tirer parti de vos compétences C # ici

http://creators.xna.com http://creators.xna.com/en-us/downloads


2 commentaires

+1. XNA a un vaste soutien et beaucoup de livres à offrir plus de soutien.


Et en outre, si vous utilisez XNA, vous aurez immédiatement un endroit pour le mettre aux gens pour l'essayer avec un minimum d'effort supplémentaire: Xbox Live Indie. Contrairement à d'autres méthodes de publication, il nécessite une quantité très minime de directives fonctionnelles à suivre et, en échange, vous frappez des tonnes de personnes potentielles pour l'essayer (si vous êtes à obtenir des gens à l'essayer!) Vous avez également accès beaucoup plus que simplement des API graphiques avec XNA. Vous obtenez un son, une entrée, un accès de fichiers ... tout ce dont vous avez besoin pour réfléchir lorsque vous faites des jeux.



1
votes

tbh ça n'a pas vraiment d'importance ce que vous utilisez. OpenGL, SLIMDX ou XNA. Ils seront tous à peu près aussi complexes (ou non le cas échéant) l'un à l'autre.


0 commentaires

1
votes

Vous pouvez envisager d'utiliser le Moteur Axiom , qui est un port C # de Ogre3D . C'est assez de niveau plus élevé que vous pouvez le faire rendre votre graphique via XNA ou OpenGL avec peu ou pas de changement à votre code. Il peut également gérer l'entrée du clavier et de la souris (qui sont normalement séparées - par exemple, via DirectInput sous Windows ou SDL sous Linux).


1 commentaires

Axiome n'est plus en développement.



1
votes

Vous pouvez également envisager d'utiliser TAO Framework qui est basé sur OpenGL et bien sympa. Mais vous devez écrire le moteur 2D tout par vous-même que vous. Cela fonctionne également sur Mono !


1 commentaires

Cela a été remplacé par Opentk, Afaik.



3
votes

J'utilise SLIMDX pour la programmation graphique C # et je le préfère à XNA.

http://slimdx.org/


1 commentaires

+1 ESP. avec Xna ne devient plus un développement actif SLIMDX semble une très bonne alternative OpenSource



1
votes

Je crée mon moteur OpenGL avec une enveloppe C # parce que j'aime beaucoup C #. Les langues malheureusement gérées sont très lentes lorsqu'il s'agit de graphiques et c'est pourquoi je fais toujours ma partie OpenGL en C ++, compilez-la sous forme de DLL et obtenez-la de C # en utilisant Interop. Si vous n'avez aucune chance d'aviser DirectX que je vous suggère de rester à l'écart de XNA. Tout le monde que je connaisse est très déçu de lui et retourna à C ++ (OpenGL) + C #.


0 commentaires

1
votes

Puisque vous savez déjà C #, j'utiliserais xna ou unité. Bien qu'il y ait des langues plus rapides et des milieux, ils sont probablement assez rapides. Les deux cadres auraient les fonctionnalités nécessaires.


0 commentaires