Ich bin ein Student im ersten Jahr in Indien und möchte ein kleines Spiel als ein Projekt dieses Semesters machen.
Ich bin ziemlich gut in C und lerne es schnell, aber ich wollte fragen, ob ich ein Spiel vollständig in C entwickeln möchte (kein C ++ oder C #).
Was ich suche, ist ein einfaches Top-View-Fahrspiel. Es wird nichts Besonderes sein und selbst die visuellen Dinge werden von einfachen Charakteren angetrieben. Beispielsweise kann ein benutzergesteuertes Auto durch ▓ und Straßenkanten durch Reihen von | dargestellt werden. Was denkst du?
Antworten:
Das Schreiben von Spielen in C ist möglich. Beispielsweise ist Quake II nur in C geschrieben, so dass das Schreiben anderer Spiele in C überhaupt kein Problem sein sollte. Es kann die bessere Wahl sein, wenn Sie in C kompetenter und komfortabler sind als in C ++.
quelle
std::string
mitchar*
.std::string
Bereinigt in jeder Situation immer den eigenen Speicher und weist jedes Mal die richtige Menge zu.char*
, vergessen Sie möglicherweise, den Speicher freizugeben oder zu verdoppeln, oder weisen Sie nicht genügend Speicher zu. Hoppla. Grundlegende Logik sagt , dass C ++ Programme sind besser und sicherer als C - Programme.Ich arbeite an einer AAA-MMORPG-Codebasis, die reines C ist, also ja.
quelle
Ja, das ist durchaus möglich. Viele APIs auf Betriebssystemebene wie POSIX und Windows, DirectX und OpenGL verfügen über C-kompatible Schnittstellen.
quelle
Fabien Sanglard hat in C einen Artikel über seine 3D-Engine geschrieben. Dieser Artikel hat auf reddit eine interessante Debatte ausgelöst.
Sprachen sind nur Werkzeuge ... Setzen Sie sie also mit Bedacht ein. Um ein gutes Spiel zu erstellen, kann es einfacher sein, XNA oder Unity3D zu verwenden. C zu beherrschen ist ein guter erster Schritt, aber Sie müssen C ++, D, Python, Lua ... lernen. C ++ ist eine sehr schwierige Sprache. Also benutze es vorsichtig.
quelle
C ist großartig für die Spieleentwicklung.
Ich arbeite an einem 3D-Plattformer und hatte noch nie Probleme mit der Sprache. Die einzigen Probleme sind Kollisionserkennung und Schattierung, ich weiß nur nichts über sie, sie würden immer noch in jeder anderen Sprache auftreten.
In der Tat finde ich es viel einfacher als Sprachen wie C # und Java. Ich durchlaufe Entitäten immer mit Zeigern ( ein Beispiel aus meinem Code ) und habe
fread
viel Zeit beim Laden der Karte gespart.Wenn Sie Objektorientierung und Modularität wünschen, können Sie Strukturen von Funktionszeigern erstellen.
quelle
Ohne Zweifel. Viele in der Spieleentwicklung nützliche Bibliotheken (wie SDL, PhysFS usw.) verfügen über C-APIs, was sehr hilfreich ist.
Möglicherweise möchten Sie eine Skriptsprache wie lua einbetten, wenn Sie eine erweiterbare, übergeordnete Programmierung durchführen möchten. Viele Leute beginnen, die Anziehungskraft bei der Programmierung eines C-Frameworks zu bemerken, das lua für Dinge wie KI, Ereignisse usw. verwendet.
Viel Glück.
quelle
Eine einfache Antwort auf diese Frage lautet: Sie können ein einfaches textbasiertes Spiel wie dieses in jeder Programmiersprache ausführen. Sogar Pascal, Basic oder x86 Assembler:]
(und brauche nichts anderes)
quelle
Ja, das ist möglich, aber möglicherweise nicht die wünschenswerteste Vorgehensweise. Eine Reihe von Leuten erkennt heutzutage, dass C und C ++ für eine Reihe von Aufgaben nicht ideal sind, und eine übergeordnete Spielelogik fällt oft in diese Kategorie.
Wenn Sie auf C anstelle von C ++ bestehen (was für mich keinen Sinn macht, für jeden aber einen eigenen), ist es am besten, wenn Sie Lua in Verbindung mit C verwenden.
Für Ihre College-Projekte, die C erfordern, ist dies keine Option, aber für Freizeitprojekte ist es eine gute Möglichkeit zu lernen.
quelle
Natürlich kannst du. Viele Spiele wurden in C programmiert (DOOM kommt in den Sinn). SDL ist eine in C geschriebene Spielprogrammierungsbibliothek.
Natürlich mag es etwas schwieriger sein, C ++ für ein großes Projekt zu verwenden, aber es ist möglich.
quelle
Ich denke, es ist möglich, komplette c-Spiele zu machen. Ich habe in meinem Projekt im 2. Semester mit dem Turbo C-Compiler ein Spiel erstellt (ähnlich dem Space Impact von Nokia 1110 Mobile). Ich denke, Sie können es so versuchen (als Student im ersten Jahr), ohne andere zu kennen.
quelle