Hi! Ich will Games für Android entwickeln und suche einen Start mittels guten Tutorials oder eines Buches, es sollte aktuelles Java sein. Habe kein Problem damit mich erstmal 1 Jahr durch Tutorials und Bücher zu kämpfen. Könnt Ihr mir was empfehlen? Buch und Tutorial bitte! Euer Emek
Auf diese Idee bin ich nicht gekommen toll danke! Hey das ist doch logisch mit google Suche, was ich wollte sind Empfehlungen von euch, man muss ja nicht alle Tutorials durchmachen nur um zu merken, dass sie nicht gut oder unpassend sind.
Mit Java kann man gerade mal ein "Vier Gewinnt" programmieren. Richtige Games laufen nativ aus einer Lib! Da ist mit Java nix zu reissen.
--- schrieb: > Mit Java kann man gerade mal ein "Vier Gewinnt" programmieren In was werden dann spiele auf android programmiert? Ich dachte alles geht über java.
Oder anders gefragt, was muss ich lernen um spiele auf android zu programmieren?
--- schrieb: > Da ist mit Java nix zu reissen. Ok verstanden, aber um eine Lib zu nutzen, brauche ich eine Programmiersprache und auf Android ist das nunmal Java wie ich gelesen habe.
Emel schrieb: > --- schrieb: >> Mit Java kann man gerade mal ein "Vier Gewinnt" programmieren > > In was werden dann spiele auf android programmiert? Ich dachte alles > geht über java. Das ist natürlich Unsinn. Gerade bei Spielen wird zumindest ein grosser Teil in C programmiert. Dafür gibt es das NDK: https://developer.android.com/ndk/
Emek schrieb: > Oder anders gefragt, was muss ich lernen um spiele auf android zu > programmieren? Emek schrieb: > Habe > kein Problem damit mich erstmal 1 Jahr durch Tutorials und Bücher zu > kämpfen. Dann solltest Du aber obige Frage auch in Ruhe selbst beantworten können. Moderne Spiele Entwicklung ist komplex - daher verwendet man fertige Engines und Frameworks. Ich würde mir an Deiner Stelle z.B. mal Unity anschauen - da geht zwar kein Java aber JavaScript und C#.
Dann werde ich nach Tutorials für ndk suchen müssen. Falls ihr etwas empfehlen könnt wäre das ne Hilfe für mich (gerne auch Bücher). Wenn ich das richtig verstanden habe ist ndk für performante Apps gedacht und setzt c oder c++ voraus, das sdk dagegen nutzt java.
Ich bin zufällig über OpenGL ES gestolpert, vielleicht macht es Sinn sich eher damit zu beschäftigen? Ich weis, da bin ich ganz weit von Java abgekommen, aber für Games scheint Opengl es wesentlich geeigneter zu sein.
> Ich bin zufällig über OpenGL ES gestolpert, vielleicht macht es Sinn > sich eher damit zu beschäftigen? Ich weis, da bin ich ganz weit von Java > abgekommen, aber für Games scheint Opengl es wesentlich geeigneter zu > sein. da liegst Du ungefähr richtig - das ndk Tool kannst Du voll vergessen, gleich im ersten Beispiel dann auch noch eine Verzweigung nach Java - das ist ja schon mal schön. Außerdem ist das irgendein Exotentool - ich glaube nur Android SDK bzw. Google SDK ist der Standard .... alles was nicht über Google Playstore in Android läuft, ist doch sowieso für die Tonne!
Habe ein sehr interessantes Buch gefunden: [[OpenGL ES 3.0]] - https://www.amazon.de/OpenGL-3-0-Programming-Guide-2nd/dp/0321933885/ref=sr_1_1?ie=UTF8&qid=1534881883&sr=8-1&keywords=opengl+es Kennt jemand dieses Buch? Es wird in C programmiert, aber wenn man zb das Buch von Kernighan und Ritchie durchliest müsste das schon passen. C scheint ja einen wirklich überschaubaren Sprachumfang zu haben. Meine Güte jetzt habe ich mich von Java ganz verabschiedet. Hoffentlich ist das kein Fehler sich mit C zu beschäftigen. Ich wollte eigentlich einfach einsteigen, das scheint aber mit OpenGL gar nicht zu gehen.
Du solltest vielleicht lieber erst die Sprache lernen und erst danach wie man Spiele programmiert. Nicht daß C nicht nützlich wäre, aber es ist nicht unbedingt einfach-auch wenn es erstmal so aussieht. Außerdem hast du dich mit C nicht nur von Java, sondern meines Wissens von Android-Programmierung ganz allgemein verabschiedet bzw. den mühsamsten Weg gewählt, nach Assembler. Ich kann dir da leider auch keine genauere Auskunft geben weil ich weder von Android noch OpenGL Ahnung habe, soweit ich weiß ist OpenGL aber auch nur ein Werkzeug das für dich 3D-Darstellung macht und das du aber trotzdem aus irgendeiner Sprache heraus bedienen mußt. Bei deinen Kenntnissen, die du hier bisher zur Schau gestellt hast, solltest du überhaupt erstmal programmieren lernen. Buchempfehlung siehe Nachbarthread.
Lieber Emek ! Schau Dir das einmal an: https://doc.lagout.org/programmation/Java/Killer%20Game%20Programming%20in%20Java_%20Java%20Gaming%20%26%20Graphics%20Programming%20%5BDavison%202005-05-30%5D.pdf und eventuell auch dies hier: https://www.hanser-elibrary.com/isbn/9783446411975 Damit solltest Du Antworten auf Deine Fragen erhalten. Liebe Grüße Sanders
> Kennt jemand dieses Buch? Es wird in C programmiert, aber wenn man zb > das Buch von Kernighan und Ritchie durchliest müsste das schon passen. C > scheint ja einen wirklich überschaubaren Sprachumfang zu haben. Nur weil der Sprachumfang etwas geringer ist, heißt das nicht, daß auch die Sprache einfach zu beherrschen ist. Mach doch erst mal nur ein Textkonsolen-Spiel. Wenn es dann um Grafik geht, kommt SDL oder Gtk+ ins Spiel. > Außerdem hast du dich mit C nicht nur von Java, sondern meines Wissens von > Android-Programmierung ganz allgemein verabschiedet bzw. den mühsamsten > Weg gewählt, nach Assembler. für den Anfang aber der Sinnvollste, weil C noch überall vorkommt, auch bei Spielen: https://www.parallelrealities.co.uk/games/ Andere Variante wäre noch Blitzbasic, weil das auf Spiele ausgelegt ist und man schnell zu Ergebnissen kommt. Rein traditionell würde man mit Basic anfangen :-)
> Schau Dir das einmal an: > https://doc.lagout.org/programmation/Java/Killer%20Game%20Programming%20in%20Java_%20Java%20Gaming%20%26%20Graphics%20Programming%20%5BDavison%202005-05-30%5D.pdf von 2005! Noch brauchbar und sinnvoll für aktuelle JDK-Versionen?
ohne Account schrieb: > Rein traditionell würde man mit Basic anfangen :-) Die 80er sind lange vorbei.
> Die 80er sind lange vorbei.
aber kommen wieder, so in ca 60 Jahren!!!
Wirklich komische Antworten hier... Spiele entwickelt man heute normalerweise auf Basis einer Engine. Ratschläge wie NDK, SDL oder OpenGL gehen also völlig am Thema vorbei. Heutzutage entwickelt man keine Spiele mehr auf dem nackten Toolkit. Das Standardwerkzeuge für Spieleentwicklung im mobilen Bereich ist heute Unity (wurde bei 20 Antworten gerade ein Mal erwähnt!). Dürfte einen Marktanteil von über 50% haben. D.h. man muss wirklich einen guten Grund haben, das nicht zu nutzen. Und wenn, dann wird man sich für eine andere Engine entscheiden. Eine freie Alternative wäre Godot. Mit OpenGL usw. muss man sich eigentlich nur noch tiefer beschäftigen, wenn man selbst eine Spieleengine entwickeln will. Oder aus reinem akademischen Interesse - ein gewisses Grundverständnis schadet natürlich nie. Aber für den Einstieg ist das erst einmal ziemlich irrelevant.
> Wirklich komische Antworten hier... > > Spiele entwickelt man heute normalerweise auf Basis einer Engine. das sieht man dann auch an gerenderten Grafiken, etc., daß die Spiele von einer Engine kommen - die Mehrheit mag das, aber nicht jeder. Bei einer Engine hast Du ein vorgegebenes Repertoire wie beim Legokasten und es geht deshalb schneller und für die meisten Konzepte reicht der Funktionsumfang; letztendlich Geschmackssache, sofern Du kein professioneller Auftragsentwickler bist. > Ratschläge wie NDK, SDL oder OpenGL gehen also völlig am Thema vorbei. > Heutzutage entwickelt man keine Spiele mehr auf dem nackten Toolkit. das mag für die professionelle Spieleentwicklung stimmen, aber es gibt parallel dazu (man glaubt es kaum) eine nicht unwesentliche Retrowelle - wie erklärst Du denn das? Die Spielidee kann Dir die Engine nämlich nur bedingt abnehmen.
ohne Account schrieb: > das sieht man dann auch an gerenderten Grafiken, etc., daß die Spiele > von einer Engine kommen - die Mehrheit mag das, aber nicht jeder. Bis du mit einer selbst entwickelten Engine auch nur annähernd an die Qualität heran kommst, bist du alt und grau. Als Einzelperson quasi nicht machbar. >Bei einer Engine hast Du ein vorgegebenes Repertoire wie beim Legokasten und es geht deshalb schneller und für die meisten Konzepte reicht der Funktionsumfang; Engines wie Unity sind da wesentlich flexibler als du es dir vorstellst. Wir reden hier nicht über eine Quake-Engine, bei der jedes Spiel im Prinzip nur ein Mod des Originalspiels war. Mit den heutigen Engines kannst du vom Rennspiel über 3D-Shooter bis zu RTS alles realisieren. >letztendlich Geschmackssache, sofern Du kein professioneller Auftragsentwickler bist. Gerade dann sollte man den Industriestandard beherrschen und nicht irgendwelchen eigenen Kram frickeln. >das mag für die professionelle Spieleentwicklung stimmen, aber es gibt parallel dazu (man glaubt es kaum) eine nicht unwesentliche Retrowelle - Gerade für Retrospiele bieten sich Engines an. Vielleicht nicht gerade Unity (zu mächtig), aber mit etwas wie pyGame oder Löve kann man recht schnell gute Ergebnisse erzielen. Natürlich sofern es das Ziel ist, tatsächlich ein Spiel zu entwickeln und man nicht einfach nur aus Interesse an der Technik bastelt und dabei kein Ergebnis erwartet. Dann ist OpenGL natürlich schon eine spannende Sache. >Die Spielidee kann Dir die Engine nämlich nur bedingt abnehmen. Genau das ist ja der riesiger Vorteil einer Engine. Es nimmt dir nämlich alles andere ab, so dass du dich voll auf deine Spielidee konzentrieren kannst, anstatt erst einmal Jahre lang das Rad neu erfinden zu müssen.
> Bis du mit einer selbst entwickelten Engine auch nur annähernd an die > Qualität heran kommst, bist du alt und grau. Als Einzelperson quasi > nicht machbar. das stimmt natürlich; auf jeden Fall sehr viel schneller - ansonsten wird es zum Studium. > Wir reden hier nicht über eine Quake-Engine, bei der jedes Spiel im > Prinzip nur ein Mod des Originalspiels war. Mit den heutigen Engines > kannst du vom Rennspiel über 3D-Shooter bis zu RTS alles realisieren. ich gebe es zu; ich bin in Bezug auf Engines nicht mehr auf den Laufenden .... da hat sich wohl doch einiges getan nach Quake. > Engines wie Unity sind da wesentlich flexibler als du es dir vorstellst. > Wir reden hier nicht über eine Quake-Engine, bei der jedes Spiel im > Prinzip nur ein Mod des Originalspiels war. Mit den heutigen Engines > kannst du vom Rennspiel über 3D-Shooter bis zu RTS alles realisieren. Unity habe ich mir gerade mal angeschaut - ist für Win7,8,10 sowie MacOS ausgelegt. Gibt's für Android ebenfalls eine Engine bzw. welche unter den knapp 20 Engines nimmt man denn dafür am besten?
Mit Unity entwickelte Spiele laufen auf zig Plattformen, natürlich auch Android, iOS, diverse Spielekonsolen und per WebGL auch im Browser. Die Entwicklungsumgebung läuft auf Windows, Mac und Linux.
Mallefitz schrieb: > Mit Unity entwickelte Spiele laufen auf zig Plattformen, natürlich auch > Android, iOS, diverse Spielekonsolen und per WebGL auch im Browser. Die > Entwicklungsumgebung läuft auf Windows, Mac und Linux. leider ist die Entwicklungsumgebun nur für Windows & Mac verfügbar, jedenfalls in der free version: https://store.unity.com/download?ref=personal ich werde es mal hiermit probieren: http://stencyl.com/download/ für 2D reicht das vollkommen.
Mallefitz schrieb: > Gerade dann sollte man den Industriestandard beherrschen und nicht > irgendwelchen eigenen Kram frickeln. Wobei der Standard auf Steam nicht sonderlich hoch ist. https://www.statista.com/statistics/552623/number-games-released-steam/ Hauptsache die Quantität stimmt...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.