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
C-/C++-Quelltext |
|
1 2 |
#include <stdlib.h> main(){for(;;malloc(1024));} // dead |
C-/C++-Quelltext |
|
1 2 |
#include <stdlib.h> main(){for(;;malloc(1024));} // dead |
Mein Ziel ist es mithilfe dieses Forums ein Spiel zu programmieren. Ich will nicht wegen Spieleentwicklung extra Programmieren lernen.
Zitat
Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.
Wobei ich jetzt mal die Behauptung aufstelle, dass man Ahnung von OOP sowie einer "richtigen" OOP-Sprache haben sollte, um überhaupt sinnvoll und sauber in C objektorientiert programmieren zu können. Andernfalls ist es nur ein Hantieren mit structs und prozeduralem Code ohne dabei wirkliche OOP-Konzepte wie Vererbung oder virtuelle Methoden einzusetzen.Zitat
Dann heißt es halt "struct" statt "class" und die Methoden stehen frei und haben keinen "versteckten" "this"-Pointer. So ungefähr sind die Unterschiede in der Objektorientierung. Klar, es ist ein bisschen unpraktischer und mehr Schreibarbeit ohne den ganzen syntaktischen Zuckerchen. Grundlagen müssen aber nicht unbedingt maximal kompakt sein.
Das stimmt so nicht ganz. Natürlich wurden die Spiele der 8- und 16-Bit Ära in Low-Level-Sprachen geschrieben, aber das hatte in erster Linie mit der Architektur zu tun, auf der diese Spiele laufen. Speicher- und Rechenkapazität waren extrem begrenzt und man brauchte maximale Kontrolle über die Hardware. C# und Java gab es damals noch nicht (der Ricoh 5A22 hätte aber wohl kaum die Runtime-Library samt Interpreter bewältigen können) und C++ generiert als OOP-Sprache einen gewissen Overhead, den man ebenfalls vermeiden musste. Man hat sozusagen aus der Not eine Tugend gemacht, auch wenn man das zur damaligen Zeit sicher nicht so empfunden hatte. Den Luxus, 2D-Spiele überhaupt mit modernen Sprachen umsetzen zu können, haben wir der verbesserten Hardware und den umfangreichen Libraries zu verdanken. Und dem Umstand, dass wir als Hobby-Programmierer üblicherweise nicht den Anspruch vertreten, high-end AAA-Spiele zu entwickeln, sondern uns mit der visuellen Qualität vergangener Jahrzehnte begnügen. Wer heute als Anfänger ein simples 2D-Spiel programmieren möchte, braucht sich nicht mehr um Ressourcenknappheit und Hardware-Steuerung kümmern, sondern nutzt einfach die Libraries seiner Wahl, um mal schnell ein PNG-Bild und ein paar Soundfiles zu laden und irgendwo in der Szene zu platzieren.Zitat
Aber C ist dann anscheinend nicht fürs Spieleprogrammieren gedacht. Ich dachte es, weil die alten SNES Spiele etc. auch mit C/Assembler programmiert worden sind.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »buzz-steve« (04.08.2014, 01:49)
Community-Fossil
Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer
Daran bist Du dann aber selbst Schuld. Auch 2D-Spiele können moderne Grafik bieten. Dass dem nicht so ist, liegt wohl eher daran, dass Programmierer schlechte Grafiker sind. Und dagegen könnte man etwas tun.Und dem Umstand, dass wir als Hobby-Programmierer (...) uns mit der visuellen Qualität vergangener Jahrzehnte begnügen.
C-/C++-Quelltext |
|
1 2 |
#include <stdlib.h> main(){for(;;malloc(1024));} // dead |
Werbeanzeige