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

11.01.2014, 22:13

Anfänger: Spielprojekt 2D Retro Dungeon Crawler

Hallo zusammen,

Ich habe mich heute hier angemeldet da ich mit meinem Sohn ein 2D Spiel Retro First Person Dungeon
Crawler entwicklen wollte. (wie Dungeon Master , Bards Tale ).

Für den Anfang würden wir gerne eine Dungeon zufällig erstellen lassen und ihn dann in 3D begehen. :this:

Habe mich auch im Internet informiert und bin ich durch die Infos etwas unentschlossen was ich als
Programmiersprache und Toolkit wählen soll

C++ oder C#

XNA, SDL, Unity, OpenTK ..

Wollte eigentlich C# mit Visual Studio 2013 nutzen. XNA wird nicht mehr entwicklet

Hatten vor Jahren C++, C und Pascal programmiert. Mein Sohn wollte texture Packs und Grafik machen.

Da ich nicht einfach alles testen wollte bitte ich um eure Ratschläge und Erfahrungen, eventuell
auch Tutorials oder Beispiel-Projekte.

Vielen Dank

Patrick

c+-

Frischling

  • Private Nachricht senden

2

11.01.2014, 22:57

Du sprichst manchmal von 2D und manchmal von 3D...
wie genau meinst du das?

Als Sprache würde ich C++ empfehlen, da die Sprache schnellere Programme ermöglicht
(Aber C# ist von der Leistung her auch gut geeignet, die beiden Sprachen sind eng verwandt.).

3

11.01.2014, 23:05

Also ich denke an ein reines 2D Spiele wie Dungeon Master oder Grimrock mit Pseudo 3D und 90 Grad Drehungen.

Das ganze soll zum Lernen der Sprache und dem Verständnis dienen, später würde ich das dann neu in 3D Programmieren.

Nach neuen Recherchen würde ich C# mit SMFL oder SDL vorziehen, Unity und XNA weiß ich nicht genau.

Danke für die Antwort

patrick246

Treue Seele

Beiträge: 328

Wohnort: nahe Heilbronn/BW

Beruf: TG Profil Informatik-Schüler

  • Private Nachricht senden

4

11.01.2014, 23:22

Bei SFML, SDL und XNA schreibt man Code, der die Engine verwendet, bei Unity schreibt man Code, der von der Engine verwendet wird.

Bei den ersteren startet man Projekte in der Entwicklungsumgebung, bei Unity startet man sie im Unity Editor. Wenn es hauptsächlich zum Lernen der Sprache dienen soll, würde ich SFML, SDL oder XNA empfehlen, nach persönlicher Meinung SFML (oder bei C# SFML.NET).

SFML ist objektorientiert, man findet sich schnell zurecht und hat einige Features, die ich bei XNA vergeblich gesucht habe (Beispiel: Texture-Rects). (SDL ist dagegen in C geschrieben und daher nicht objektorientiert. Das ist aber nur zutreffend, wenn doch C++ verwendet wird, ein C#-Binding wird immer objektorientiert sein)
Allerdings habe ich keine Ahnung ob es ein aktuelles C#-SDL-Binding gibt. SFML.NET wurde vom Autor selbst geschrieben und es wird garantiert aktuell gehalten.

5

11.01.2014, 23:55

Bin gerade eben auch auf der Homepage von SFML gewesen.

Denke mal C# und SFML wird es wohl sein.

z.B 2D wie http://www.youtube.com/watch?v=Ny4Agr7f3gE

Gibt es Tutorials oder auch Opensource Projekte

6

12.01.2014, 00:02

Habe gerade eine Spiel gefunden das mir so vorschwebt

http://store.steampowered.com/app/249630

7

12.01.2014, 09:18

Hallo

Du könntest doch es so schreiben das du aus einzelnen 3D kacheln(tieles) dir dein level generierst.
Für dein Projekt würde ich dir Unity ans Herz legen.

Grüsse Spitzohr

8

12.01.2014, 11:24

Das mit den Tieles meinte ich ja auch.

Muss eben nur den Anfang finden wie man sowas programmiert.

Wenn es mit Unity besser geht warum nicht. Wäre cool wenn es ein Beispiel von Unity
mit sowas gibt.

In letzter Zeit sind ja doch viele solcher Dungeon Crawler aus Indie Projekt realisiert worden.

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

9

13.01.2014, 00:43

Mit Unity geht es nicht unbedingt einfacher. Wichtig ist dass ihr erst mal den Anfang findet.
Wenn es dir eigentlich darum geht die Sprache vernünftig zu lernen würde ich aber erst mal die Finger von Unity lernen. Das verleitet schnell mal ein wenig zu schludern und da man einige Dinge nicht programmieren muss nimmst du dir Arbeit die du ja eigentlich haben möchtest.
SFML.Net ist doch schon mal eine ganz gute Wahl.
Wichtig ist dass du dir deine Aufgaben vernünftig strukturierst. Mach dir eine ToDo Liste. Setz dir verschiedene Ziele. Ein Anfangsziel hast du ja schon. Dann fang doch an das ganze weiter aufzuschlüsseln.
Du willst eine Welt anzeigen können. Für den Anfang kannst du es ja erst mal so machen, dass die Welt nicht zufällig generiert wird. Wenn das läuft kümmerst du dich um den Spieler und darum dass er sich bewegen kann. Dann wirst du wohl Kollision haben wollen.
Schlüssel dir deine Aufgaben so immer weiter auf. Dann heißt es einfach anzufangen. Wenn dein Code nicht mehr richtig zusammen arbeitet musst du dich hinsetzen und so lange umschreiben und umgestaltet bis das ganze wieder vernünftig zusammen arbeitet. Das ist ganz normal. Das ganze machst du dann so lange bis du irgendwann am Ziel bist oder keine Lust mehr auf das Projekt hast;)
„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.“

Sc4v

Alter Hase

Beiträge: 376

Beruf: Student

  • Private Nachricht senden

10

13.01.2014, 20:03

Habe gerade eine Spiel gefunden das mir so vorschwebt

http://store.steampowered.com/app/249630
Das ist aber 100% 3D und hat mit 2D nicht mehr viel am Hut :rolleyes:

Für 2D darf ich dir auf jedenfall SFML mit C++ empfehlen. (Oder SFML.Net mit C#, kenne ich aber nicht)
Wenn es 3D werden soll bietet sich Unity und C# an. Falls dir Unity nicht zusagt und du lieber mehr low-level Code schreiben magst, dann schau dir mal Ogre3D an.

Zitat

Als Sprache würde ich C++ empfehlen, da die Sprache schnellere Programme ermöglicht
(Aber C# ist von der Leistung her auch gut geeignet, die beiden Sprachen sind eng verwandt.).
Mag zwar bedingt stimmen, aber für Hobbyisten ist das total Wurst.

Werbeanzeige