flashpixx Geschrieben 4. August 2009 Geschrieben 4. August 2009 diese sprache ist sehr gut und simpel finde ich... aber ich habe keinen plan wie man grafikspiele oder so damit programmiert... und da ich gelesen habe das c++ eine gut sprache ist habe ich mir dev-c++ gezogen und ausprobiert... Spiele, die man mit 3D Systemen (wie OpenGL oder DirectX) programmiert, das geht nicht per Batch. Dafür gibt es entsprechende Libraries, die man unter C++ einbindet, aber davon bist Du noch sehr weit entfernt. Außerdem recht dafür es nicht aus C++ zu beherrschen, sondern gewisse Konzepte zu verstehen und gerade der 3D Bereich erfordert mathematische Kenntnisse in der linearen Algebra. heute habe ich aber gehört das dev-c++ veraltet ist oder so und mich nach einer neuen sprache dich ich lernen kann umgeschaut... Diese Aussage zeigt, dass Du in keiner Weise die geposteten Links gelesen und vor allem verstanden hast. Dev-Cpp ist eine IDE / Entwicklungsplattform für C++. Dev-Cpp ist keine Sprache ! C++ ist eine Sprache. aber am besten würde ich es finden wenn mir jemand ne seite geben kann wo beispiele zu spieleprogrammierung mit "Batch" ist... Das ist nicht möglich, jedenfalls nicht in graphischer (2D / 3D) Hinsicht. Du solltest Dich wirklich einmal mit der grundlegendsten PC- und Software-Architektur vertraut machen. Es scheint mir, als weißt Du noch nicht einmal was eine Batch-Datei ist (Windows Batch ? Wikipedia / Stapelverarbeitung ? Wikipedia). Bevor Du mit einer Sprache wie C++ anfängst und dort (3D) Graphik entwickeln willst, solltest Du die einfachsten Dinge erst einmal beherrschen Phil Zitieren
Thanks-and-Goodbye Geschrieben 4. August 2009 Geschrieben 4. August 2009 Damit wirst du nie ein Spiel erstellen können. Naja... mit ein wenig Arbeit sollte man ein Textadventure schon mit der Batch hinbekommen. Also eher sowas wie die ZORK-Serie. Warum will jeder Programmieranfänger Spiele programmieren? [Life of Brian]Ich nicht![/Life of Brian] Zitieren
Creazy231 Geschrieben 4. August 2009 Autor Geschrieben 4. August 2009 Also: Im moment bin ich im Urlaub und weil ich da soviel langeweile habe habe ich mir gedacht:"Programmieren ist geil! Ich versuch es mal"! In der Zeit ( 3 Wochen ) habe ich viel gelernt... Egebniss: Sobald ich wieder @ home bin ( am Freitag ) wede ich mir Bücher über die Programmiersprache C++ zu besorgen mit anfängerkursen... Könnt ihr mir dazu ein gutes Buch vorschlagen? Und nein... ich hab bissher keine Ahnung von Grundlagen... aber ich behersche "Batch" und habe das bekommen: ( Verglei mit C++ Sprache und Batch Sprache ) C++-code: #include <iostream> using namespace std; template<bool small, int I> struct pretty_printer; #define SMALL_PRETTY_PRINTER(num, string) \ template<>\ struct pretty_printer<true, num>\ {\ static void print()\ {\ cout << string;\ }\ }; SMALL_PRETTY_PRINTER(0, "No") SMALL_PRETTY_PRINTER(1, "One") SMALL_PRETTY_PRINTER(2, "Two") SMALL_PRETTY_PRINTER(3, "Three") SMALL_PRETTY_PRINTER(4, "Four") SMALL_PRETTY_PRINTER(5, "Five") SMALL_PRETTY_PRINTER(6, "Six") SMALL_PRETTY_PRINTER(7, "Seven") SMALL_PRETTY_PRINTER(8, "Eight") SMALL_PRETTY_PRINTER(9, "Nine") SMALL_PRETTY_PRINTER(10, "Ten") SMALL_PRETTY_PRINTER(11, "Eleven") SMALL_PRETTY_PRINTER(12, "Twelve") SMALL_PRETTY_PRINTER(13, "Thirteen") SMALL_PRETTY_PRINTER(14, "Fourteen") SMALL_PRETTY_PRINTER(15, "Fifteen") SMALL_PRETTY_PRINTER(16, "Sixteen") SMALL_PRETTY_PRINTER(17, "Seventeen") SMALL_PRETTY_PRINTER(18, "Eighteen") SMALL_PRETTY_PRINTER(19, "Nineteen") #undef SMALL_PRETTY_PRINTER template<int ones> inline void print_ones(); #define ONES_PRINTER(ones, string) \ template<> \ inline void \ print_ones<ones>() \ {\ cout << string;\ } ONES_PRINTER(0, " ") ONES_PRINTER(1, " one") ONES_PRINTER(2, " two") ONES_PRINTER(3, " three") ONES_PRINTER(4, " four") ONES_PRINTER(5, " five") ONES_PRINTER(6, " six") ONES_PRINTER(7, " seven") ONES_PRINTER(8, " eight") ONES_PRINTER(9, " nine") #undef ONES_PRINTER template<int tens> inline void print_tens(); #define TENS_PRINTER(tens, string) \ template<> \ inline void \ print_tens<tens>() \ {\ cout << string;\ } TENS_PRINTER(2, "Twenty") TENS_PRINTER(3, "Thirty") TENS_PRINTER(4, "Forty") TENS_PRINTER(5, "Fifty") TENS_PRINTER(6, "Sixty") TENS_PRINTER(7, "Seventy") TENS_PRINTER(8, "Eighty") TENS_PRINTER(9, "Ninety") #undef TENS_PRINTER template<int I> struct pretty_printer<false, I> { static void print(){ print_tens<(I - I%10)/10>(); print_ones<(I%10)>(); } }; template<int I> void pretty_print() { pretty_printer<(I<20), I>::print(); } template<int I> inline void BottlesOfBeer() { pretty_print<I>(); cout << " bottles of beer" ; } template<> inline void BottlesOfBeer<1>() { pretty_print<1>(); cout << " bottle of beer" ; } template<int I> inline void BottlesOfBeerOnTheWall() { BottlesOfBeer<I>(); cout << " on the wall"; } template<int I> inline void stanza() { BottlesOfBeerOnTheWall<I>(); cout << ",\n"; BottlesOfBeer<I>(); cout <<",\n"; } template<int I> inline void bridge() { cout << "Take one down, pass it around," << endl; BottlesOfBeerOnTheWall<I-1>(); cout <<",\n"; } template<> inline void bridge<0>() { cout << "Go to the store and buy some more," << endl; BottlesOfBeerOnTheWall<99>(); } template<int I> inline void verse() { stanza<I>(); bridge<I>(); } template<int I> inline void sing () { verse<I>(); cout << endl; sing<I-1>(); } template<> inline void sing<0> () { verse<0>(); } int main () { sing<99>(); } Batch-code: (hab ich in 2 min selbergeschrieben): @echo off set bottles=99 :gogogo echo. echo. echo %bottles% bottles of beer on the wall, echo %bottles% bottles of beer. set /a bottles=bottles-1 echo Take one down and pass it around, echo %bottles% bottles of beer on the wall. echo. echo. if "%bottles%"=="1" goto ende goto gogogo :ende echo. echo. echo No more bottles of beer on the wall, echo no more bottles of beer. echo Go to the store and buy some more, echo 99 bottles of beer on the wall. echo. echo. pause >nul exit /b Und das geile ist, es kommt beides aufs selbe raus und "Batch" hat einen kleineren code. (auser das ich nicht ausgeschriebende Zahlen genommen habe sondern zahlen) Also was haltet ihr von dem, was ich nach meinem Urlaub machen will? Danke, Tobias! Zitieren
Thanks-and-Goodbye Geschrieben 4. August 2009 Geschrieben 4. August 2009 Nochmal zur Wiederholung: Batch ist keine Programmiersprache an sich. Und http://99-bottles-of-beer.net ist bekannt. Zitieren
Klotzkopp Geschrieben 4. August 2009 Geschrieben 4. August 2009 Und das geile ist, es kommt beides aufs selbe raus und "Batch" hat einen kleineren code.Ich hoffe, dir ist klar, dass das kein normaler C++-Code ist. Das ist Beispielcode für Templatemetaprogrammierung, eine sehr fortgeschrittene Technik in C++, und für die vorliegende Aufgabe totaler Overkill. Ein auf die tatsächliche Anforderung zugeschnittenes C++-Programm wäre viel kürzer. Zitieren
Creazy231 Geschrieben 4. August 2009 Autor Geschrieben 4. August 2009 ahh ok... aber zu meiner eigentlichen frage: was haltet ihr von meinem vorschlag was ich machen wede?? Danke^^ Zitieren
Klotzkopp Geschrieben 4. August 2009 Geschrieben 4. August 2009 Batch ist keine Programmiersprache an sich. :confused: Sequenz, Verzweigung, Wiederholung: Alles da. Zitieren
Thanks-and-Goodbye Geschrieben 4. August 2009 Geschrieben 4. August 2009 :confused: Sequenz, Verzweigung, Wiederholung: Alles da. Würde jetzt wohl in eine Metadiskussion ausarten, ob scripting in der Shell Programmierung darstellt. Zitieren
TDM Geschrieben 5. August 2009 Geschrieben 5. August 2009 :confused: Sequenz, Verzweigung, Wiederholung: Alles da. Compiler? :floet: Zitieren
Creazy231 Geschrieben 5. August 2009 Autor Geschrieben 5. August 2009 Compiler? :floet: Es gibt ein Programm was ne Batch datei in eine Exe umwandelt:floet: Zitieren
hAmst0r Geschrieben 5. August 2009 Geschrieben 5. August 2009 Es gibt ein Programm was ne Batch datei in eine Exe umwandelt:floet: Warum hast du meine Links noch immer nicht gelesen? Dann wüsstest du dass das was du hier Schreibst einfach falsch ist. Hamster Zitieren
Klotzkopp Geschrieben 5. August 2009 Geschrieben 5. August 2009 Dann wüsstest du dass das was du hier Schreibst einfach falsch ist. Bat To Exe Converter - Free software downloads and software reviews - CNET Download.com Ein Compiler ist das allerdings nicht. Und natürlich lassen sich einfache Spiele auch mit Windows-Batchskripten erstellen. Zitieren
hAmst0r Geschrieben 5. August 2009 Geschrieben 5. August 2009 Hi, ja es ging ja um Compiler und nicht um Konverter. Wie gesagt das was man mit Batch machen könnte wäre in meinen Augen kein wirkliches Spiel... Hamster Zitieren
flashpixx Geschrieben 5. August 2009 Geschrieben 5. August 2009 Und natürlich lassen sich einfache Spiele auch mit Windows-Batchskripten erstellen. Hat irgendwas von dem Bernsteinmonitor auf nem Schneider PC, also Kultfaktor hätte das schon. Aber graphisch aufwendige Spiele mit ner Batchdatei wird wohl nicht gehen Phil Zitieren
TDM Geschrieben 5. August 2009 Geschrieben 5. August 2009 Wie gesagt das was man mit Batch machen könnte wäre in meinen Augen kein wirkliches Spiel... Ein textbasierender Hangman-Ableger ist in deinen Augen kein Spiel?! :floet: Zitieren
hAmst0r Geschrieben 5. August 2009 Geschrieben 5. August 2009 Ein textbasierender Hangman-Ableger ist in deinen Augen kein Spiel?! :floet: Korrekt. Es ist dir natürlich offen gestellt mich mit deinem Batchman zu überzeugen. Hamster Zitieren
Creazy231 Geschrieben 5. August 2009 Autor Geschrieben 5. August 2009 Also in meinen Augen ist "hangman" in Batch bzw. "Batchman xD" Schon ein spiel... und ich finde das man wenn man mit Batch ein spiel wie hangman pogrammiert das ein großer erfolg als anfänger ist... und dieser erfolg kann einen dann dazu bringen dann bessere sprachen wie c++ zu lernen und beesere spiele zu programmen... Tobi PS: Muss mich jetzt Zwischen Java und C++ entscheiden was würdet ihr von dem beiden nehmen wenn es nur die beiden geben würde? Zitieren
hAmst0r Geschrieben 5. August 2009 Geschrieben 5. August 2009 PS: Muss mich jetzt Zwischen Java und C++ entscheiden :Pwas würdet ihr von dem beiden nehmen wenn es nur die beiden geben würde? C++ Hamster Zitieren
Creazy231 Geschrieben 5. August 2009 Autor Geschrieben 5. August 2009 C++ Hamster Gibts da auch nen grund zu?? Zitieren
flashpixx Geschrieben 5. August 2009 Geschrieben 5. August 2009 Also ob man C++ oder Java als Anfänger lernt, ist auch ein bisschen die Frage des Geschmacks. C++ ist im Gegensatz zu Java ein kompilierter Code, der für eine Architektur kompiliert wurde. Java Bytecode, der durch die VM ausgeführt wird. Viele Bibliotheken können ohne weiteres in C++ genutzt werden, bei Java wäre dies nur mit JNI möglich. Dafür ist Java rein OOP und eben cross-plattform fähig. Weiterhin sind manche Strukturen in Java etwas leichter wie in C++. Performance gerade im 3D Bereich liefert aber immer noch C++. Generell solltest Du Programmieren lernen und nicht eine Sprache. Die Sprache ist nur das Handwerkszeug Phil Zitieren
TDM Geschrieben 5. August 2009 Geschrieben 5. August 2009 Viele Bibliotheken können ohne weiteres in C++ genutzt werden, bei Java wäre dies nur mit JNI möglich. Java-Bibliotheken ohne weiteres in C++? Sicher? Performance ist doch da sicher eher gering. Hast du da paar Links? Für plattformübergreifende Bibliotheken ist doch Qt und Boost besser geeignet. :floet: Zitieren
flashpixx Geschrieben 5. August 2009 Geschrieben 5. August 2009 Java-Bibliotheken ohne weiteres in C++? Sicher? Bitte lies mein Posting richtig ! Es geht nicht um darum, dass man Java Bibliotheken in C++ einbindet, sondern C++ Bibliotheken in Java, sonst hätte ich sicherlich nicht JNI erwähnt (bzw es handelt sich um shared Libs, die meistens OS spezifisch in C oder C++ vorliegen) Phil Zitieren
TDM Geschrieben 6. August 2009 Geschrieben 6. August 2009 Bitte lies mein Posting richtig ! Ich hab den jetzt noch drei mal durchgelesen. Ich les da immer raus, dass Bibliotheken in C++ genutzt werden können, nur nirgends in welcher Sprache die Bibliotheken sind. Meintest du vielleicht Java-Bibliotheken, welche in C++ geschrieben wurden? Wenn ja, dann ist das klar, dass die dann auch in C++ verwendet werden können. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.