Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

01.08.2015, 17:21

2D Roguelike Sprache + Framework

Guten Tag :-)

Ich würde gerne ein 2D Roguelike programmieren ich habe bisher noch keine Programmier Erfahrung und wollte erst um alles von Grund auf zu verstehen alles selbst machen mit DirectX und OpenGL.

Doch da ich mich selbst kenne ist das wahrscheinlich keine gute Idee, ich brauche ab und zu für meine Motivation ein paar sichtbare Erfolge diese werde ich wenn ich den weg mit SharpDX gehe sicher nicht so schnell bekommen.
Daher werde ich wohl doch etwas kleiner anfangen.

Deswegen auch dieser Thread ich möchte gerne Wissen wie ich am schnellsten zu meinem Ziel komme. Ich möchte aber keine fertige GameEngine verwenden wie Unity oder Unreal daher habe ich bisher nur 2 gute Lösungen gefunden wenn ihr noch weitere habt würde ich mich natürlich über Vorschläge freuen.

Die erste Lösung wäre:

C# + Monogame Vorteile: C# ist einfacher, Nachteile: Es gibt wenig gute Literatur für Monogame
C++ + SFML Vorteile Es gibt 3 sehr gute Bücher für SFML, ich würde etwas tiefer in die Materie einsteigen mit C++, Nachteile: C++ ist recht kompliziert.

Plattform unabhängig sind wenn ich es richtig verstanden hab beide Lösungen obwohl ich mich erst mal nur auf Windows konzentrieren möchte.

So was würdet Ihr mir Raten habt ihr noch andere Sachen die ich beachten sollte etc?

Ich danke euch schon mal im voraus für eine Hilfe !

Grüße

CreatingDreams

Lares

1x Contest-Sieger

  • Private Nachricht senden

2

01.08.2015, 17:37

Warum nicht beide Wege kombinieren? Für SFML gibt es auch ein C# Binding: http://www.sfml-dev.org/download/bindings.php
Ich hab aber noch nicht damit gearbeitet, deswegen weiß ich nicht, ob es iwelche Probleme damit gibt.

Ansonsten mein Rat: Wähle deine API anhand der Sprache, die du benutzen willst.
Da dir das Erstellen des Spiels anscheinend sehr wichtig ist, würde ich dir die Sprache empfehlen, welche du besser beherrschst/mit der du besser arbeiten kannst.

Und wenn du noch wirklich keine Erfahrung mit Programmieren hast, also auch keine Sprache lernst/gelernt hast, dann kümmere dich erst darum!
Schau dir an, ob dir C# oder C++ eher liegt, indem du dich über beide informierst.
Arbeite ein paar Tutorials für beide durch, um zu sehen, zu welcher du eher tendierst.
Ein Spiel mit darunter liegenden Engine zu entwickeln, ohne die Umsetzungssprache ansatzweise zu können ist unmöglich.

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

3

02.08.2015, 14:41

Ich habe SFML.Net mal für zwei kleinere Projekte getestet. Ist eigentlich ganz ordentlich wie ich finde. Ich fands schön damit zu arbeiten. Das Problem ist halt dass du mehr Tutorials zu SFML als zu SFML.Net findest. Das heißt in den meisten Tutorials wird C++ statt C# benutzt. Das ist an sich nicht so schlimm wenn du dich ordentlich mit C# beschäftigst. Versuchst du das ganze halt ordentlich zu lernen und zu verstehen wird das klappen. Wenn du einfach nur durch hetzt ohne wirklich zu verstehen um was es geht dann wirst du schnell anfangen einfach Codes abzutippen. Das funktioniert dann natürlich nicht unbedingt wenn du C++ Codes für C# Programme abtippen möchtest.
Monogame geht natürlich auch, finde ich auch ganz gut.

Ansonsten gibt es natürlich noch viele viele andere Sprachen neben C++ und C#. Sollte jetzt hier wieder wie so oft ein Sprachkrieg losbrechen dann versuch möglichst einfach nicht darauf zu hören was die Leute sagen. Subjektive Meinungen bringen dich nicht weiter. Es ist aber nicht schlecht für dich zu wissen dass es noch viele andere Möglichkeiten gibt. Ein paar Möglichkeiten wären:
Python mit Pygame,
Lua mit LÖVE,
Java mit LibGDX.
Es gibt natürlich noch unzähliche andere Möglichkeiten. An sich ist es aber nicht unbedingt wichtig wofür du dich entscheidest. Wichtig ist dass du dran bleibst und nicht nach den ersten Problemen hin und her wechselst. Probleme werden überall auftauchen. Da du noch nicht programmieren kannst bringt es dir auch vermutlich nicht viel wenn du dir Codes anguckst und dann danach entscheidest was du nimmst da du damit wenig anfangen können wirst. Ich würde an deiner Stelle einfach spontan entscheiden und los legen. Guck dir ein Tutorial zu der gewählten Sprache an oder noch besser, arbeite ein Buch durch und guck dir danach die Engine bzw das Framework für dein Spiel an. Wichtig ist dass du los legst.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

4

02.08.2015, 16:05

C# + Monogame oder Java + LibGDX kann ich dir empfehlen.

Oder die einfachste Variante C# + Unity.

Auf DirectX würde ich nicht unbedingt setzen in heutiger Zeit. Unity kann zb DirectX als Backend. Wenn du wirklich nur auf Spieleprogrammierung aus bist ohne viel mehr Aufand haben zu wollen nimm Unity. Aber du willst ja kein Unity.

Sacaldur

Community-Fossil

Beiträge: 2 301

Wohnort: Berlin

Beruf: FIAE

  • Private Nachricht senden

5

03.08.2015, 15:09

Zunächst mal: Warum willst du keine Engine verwenden? Und was genau verstehst du in dem Fall unter "Engine"?
Du solltest dir vor allem überlegen, was du mit diesem Projekt erreichen willst: willst du entweder mit dem Programmieren anfangen und eine Sprache + Framework lernen oder willst du das Spiel umsetzen? Lares schrieb nicht ohne Grund "Und wenn du noch wirklich keine Erfahrung mit Programmieren hast, [...], dann kümmere dich erst darum!". Gerade wenn man noch am Lernen ist, wird man viele Dinge machen, die man später eher anders machen würde. Genauso wählt man häufiger mal die falsche Herangehensweise und wird auch eher Probleme haben, genau das festzustellen. Deshalb wäre es sinnvoll, das eigene "Traumprojekt" nicht als allererstes Programmierprojekt zu wählen.
Solltest du dennoch unbedingt mit dem Roguelike anfangen wollen, dann dürfte es dir um dieses Projekt so Ernst sein, dass du dir die Arbeit insgesamt nicht zu kompliziert gestalten solltest. Tools, wie Unity, die Unreal Engine, der Game Maker, Construct, Dualis usw. vereinfachen einem die Entwicklung von Spielen schon deutlich, da viele Aufgaben einem bereits abgenommen werden. Sollte es dir um die Fertigstellung dieses Spiels gehen, dann solltest du eher zu einem solchen Tool greifen. Aus den von mir genannten Tools habe ich bisher nur mit Unity ausreichend Erfahrungen gesammelt, deshalb kann ich an dieser Stelle keine guten Vergleiche ziehen.

MonoGame ist im Grunde die offene Implementierung von XNA, was heißt, dass alles, was man zu XNA findet auch für MonoGame anwendbar sein sollte. (Eine Ausnahme könnte da evtl. in der Content-Pipeline bestehen, allerdings habe ich da aber auch nicht mitverfolgt, in wie weit sich das in der letzten Zeit entwickelt hat. Von vor langer Zeit ist mit nur bekannt, dass diese bei MonoGame noch nicht gänzlich implementiert war, sodass man immernoch das "XNA Game Studio" dafür verwenden musste.)
Spieleentwickler in Berlin? (Thema in diesem Forum)
---
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].

Werbeanzeige