Tools Vs. Selbstgemacht?
-
Manchmal will man aber auch nur mal testen, ob eine Idee Spaß macht oder funktioniert. Für Prototypen sind solche Tools und Fremdengines echt toll.
Macht sich bestimmt auch gut, um Grafiker etc. ins Team zu ködern.Was man dann später alles selber entwickelt, kann man dann in einer Fall:Fall Prüfung abwägen.
-
Ich denke genauso wie du Baldung-Chagi
Ich habe das Gefühl das solche Tools die n00b Generation nur stärken, also die Generation von Leuten die sich mal eben ein Tool nehmen und die ganzen fertigen Funktionen nehmen und dann behaubten sie hätten "Ihr eigenes über pwnage game" selber geproggt und sich damit den Ruhm einhalsen den die Leute die richtig Programmiert haben verdient hätten.
Die n00bs ziehen eigendlich den Beruf / das Hobbie des Programmierens ziemlich runter sodass einige leute denken, das es einfach sei etwas zu programmieren.Aber für leute die wirklich Programmieren können finde ich das es ein gutes mittel ist um eine Idee schnell um zu setzen und damit greifbar zu machen.
-
Eben. Aber wie solte man den nun anfangen wenn man ein Adventure programmieren möchte? Ich nehem mal an des es wohl kaum ein Tutorial für Adventures in c gibt. Und wohl auch keine sdk von lukas arts oder? :p
Nun ist es also ein verflixt großes vorhaben wenn man nun von grund auf progen will oder?
-
Die Frage ist doch: "Was wills Du?"
Hast Du Spaß am Programmieren und willst das üben und vertiefen? Oder hast Du die Vision für ein cooles Spiel und Dein Ziel ist es einzig und allein dieses Spiel zu realisieren?
In letzterem Fall bist Du mit solchen Tools doch deutlich besser dran. Du kannst direkt mit dem anfangen was Du machen willst. Das hat auch nix mit n00b oder nicht zu tun. Die Zielsetzungen sind einfach unterschiedlich. Wenn man wirklich was großes machen will, dann muß man auch einfach mal ein paar fertige Sachen nehmen, weil man sonst nicht fertig wird.
Warum werden denn so viele Spiele-Engine lizensiert? Und auch die Engine-Leute kaufen sich teilweise die Physik von außerhalb. Soundsysteme gibt es glaub ich auch schon von extern. Rapso kann Dir bestimmt genaueres sagen, was es da von extern gibt.
Zudem besteht ja ein Spiel heutzutage nur zum kleinsten Teil aus Code. Die Unmengen an Texturen und Sounds die eingebunden werden müssen machen vermutlich den Hauptteil der Arbeit aus.
-
Hmmm... nun das sind überzeugende Pro-Agumente. Aber dennoch: Tools wie visionaire nehmen irgend wie SEHR viel ab... bestehd denn nicht die möglichkeit einfach nur forgefährtigte Bibliotheken runterzuladen und dann dammit zu Arbeiten (Also ein MITTELWEG)?
Denn ich würd schon gern auf der einen Seite mit Einen Tool arbeiten um schnell ergebnisse zu bekommen...
Auf der anderen Seite würd ich aber auch gerne sowas wie meine "Dev.-Ehre" behalte können, warum ich wie der zu dem eiterbilden tendiere...(Ich hoffe ihr versteht langsam in was für eine Konflikt ich gerate)
Ich habe Bisher nämlich nur C++ oop drauf, habe aber noch nie mit DirectX gearbeitet...
Von da her: Es muß doch eine Lösung geben bei der man immer noch "Programmiert" aber nicht von grundauf Monatelange Fortbildungen absolvieren muß. Wie schon gesagt: SDKs oder Tutorials würden ungemein hilfreich sein!
Kennt den niemand ein Tool, was aber wieder vollen Einblick in den Qulltext gibt?
-
Baldung-chagi schrieb:
Ich habe Bisher nämlich nur C++ oop drauf, habe aber noch nie mit DirectX gearbeitet...
OpenGL gibts auch noch, und das ist sehr einsteigerfreundlich.
Spieleengines gibt's doch in Massen.
(Für Grafik: http://irrlicht.sourceforge.net/ ...zum Beispiel)Ich frag mich gerade, *was* für eine Entwicklerehre, wie du es nennst, behalten willst, wenn du sogar davor zurückschreckst dich mal auf DirectX einzulassen.
-
Also erstens hab ich nie beahupted das ich mich damit nicht auseinandersetzten will. Ich trage lediglich eine große frustration mit mir, da die esten versuche directx zu lernen sehr schwerfällig verliefen.
Aber ich will gar nicth an dieser Stell bestreiten das ich sonderlich viel Ahnung von Entwicklung besitze die über die einfache c oop hinausgehen.
Dennoch sagt etwas ihn mir (nenn es jetzt ehre oder auch nur einen komplex) das solcherlei tool benutzung einfach zu "stupide" ist.
Mit anderen Worten: Ich will unbedingt spiele-programmierung beherschen lernen ohne dabei ausschließlich auf fertige editor zurückzugreifen.
Aber wo du es grade angeschrieben hast: Wo genau ist nun der unterschied wenn man eine fertige Engine benutz oder sich direct mit der prog.-Schnittstelle auseinander setzt? Denn diese Engies laufen letztändlich doch auch auf Dx oder oGL oder?
-
Baldung-chagi schrieb:
Aber wo du es grade angeschrieben hast: Wo genau ist nun der unterschied wenn man eine fertige Engine benutz oder sich direct mit der prog.-Schnittstelle auseinander setzt? Denn diese Engies laufen letztändlich doch auch auf Dx oder oGL oder?
Die fertige Engine dient einfach dazu, dir die Arbeit zu erleichtern.
Beispiel: Die Engine stellt die Funktion loadModel() und drawModel() zum Laden und Zeichnen von ms3d Modellen bereit.
Wenn du das jetzt selbst machen wolltest, müsstest du dich erst einmal damit auseinander setzen, wie das Dateiformat aufgebaut ist. Wenn du die Daten einlesen kannst, dann musst du sie auch speichern und vorallem sinnvoll zeichen können.
Wenn du die Engine benutzt, musst du dich überhaupt nicht mehr um den Kram kümmern und kannst dich völlig auf die Spiellogik konzentrieren.
-
Du solltest dringend zwischen Spieleprogrammierung und Spieleentwicklung unterscheiden.
Als Programmierer ist für dich so nen Editor natürlich recht uninterressant, aber die Kits bieten oftmals auch ne eigene Sprache für Erweiterungen und ne C/C++-Anbindung (also so wie die kommerziellen Titel ihre Modding-Schnittstellen haben und man deren Tools zur Bearbeitung der Daten hat).Wenn du ein Spiel entwickeln willst, dann spricht nichts gegen so nen Editor, insofern er deine Bedürfnisse erfüllt und/oder du diesen entsprechend erweitern kannst. Wenn du alles selber machst, dann wirst du später dir selber auch so nen Editor schreiben müssen indem du die Welten erschaffst (oder nen bestehendes CAD erweitern).
-
Also erstmal bis hier hin: Danke für alle Antworten bisjetzt! Hab heute ne Menge AHA-Erlebnisse gehabt.
Nun, diese differenzierung zwischen entwickler und progrmmierer ist eigentlich sehr gut. Dessen bewust zu sein macht mir die wahl für so ein editor doch recht freundlcih.
Allerdings hab ich ja vorhin über einen "mittelweg" gesprochen. Und die Engine stellt also die ideal-antwort da.
Aber noch mal eine frage sollte man wenn man die Engin benutzt irgentwelche vorkenntnisse trotzallem besitzen? Nicht das ich am Ende feststellen muß: Ich muß nun doch DX lernen (was an dieser Stelle immer noch nicht heißen soll ich streube mich grundsätzlich davor).
Ich lad mir jedenfals erstmal die tuts und das sdk runter.
-
Baldung-chagi schrieb:
Aber noch mal eine frage sollte man wenn man die Engin benutzt irgentwelche vorkenntnisse trotzallem besitzen? Nicht das ich am Ende feststellen muß: Ich muß nun doch DX lernen (was an dieser Stelle immer noch nicht heißen soll ich streube mich grundsätzlich davor).
Das hängt höchstwahrscheinlich extrem von der Engine ab, wie viel Arbeit sie dir abnimmt.
Generell würde ich sagen: Wenn du viel Wert auf etwas legst, solltest du schon ein gewisses Grundverständnis davon haben.
-
Bei ner richtigen Engine musst du die verwendete API auf der diese aufbaut nicht kennen bzw. nicht mit ihr vertraut sein. Was du auf jeden Fall wissen musst ist wie das ganze mathematisch funktioniert, sonst verstehst du am Ende nicht was du machst und das musst du wenn du dich von Tutorial wegbewegen willst und um Fehler zu beheben bzw. überhaupt erst zu finden.
Für Performance ist wissen über die Arbeitsweise der zugrundeliegenden Schicht (einschließlich Hardware) wichtig, aber das ist für den Anfang nicht das worum du dich sorgen musst.
-
Aso ok...
Hmmm, könnt ihr mir denn vielleicht etwas über die engines erzählen?
Also was ist denn die beste eurer Meinung nach?
Bin beim suchen auf die orgre-engine gestossen.
Kann man nicht aber auch gleich ne Hight-End-Engine wie Source oder Crysis (sobald sie erhältlich ist) nehmen.Mir kommts vor allem drauf an das es ein Tutorial dazu gibt, denn von allein wer ich mir bestimmt nicht beibrinen können, was die methoden bewirken
-
Die beste Engine ist die Build Engine.
Wenn für dich die Tutorien das wichtigste Kriterium sind, dann suche doch nach Tuts füt Engines und wo du am meisten Treffer erhälst, die nimmst du dann.
-
Ich wollte mal noch anmerken, das wenn man immer nur irgendwelche tools benutzt, das eigene spiel niemals besser wird als alle anderen die mit diesen tools hergestellt werden (ich sprech jetzt von richtig großen projekten, die zum ziel haben ein wirklich neues spiel zu entwickeln das es so ncoh nciht gab), hier sind also wieder die richtigen Programmierer gefragt die das rad auch mal neu erfinden um es schneller und leistungsfähiger zu machen. Man kann nciht immer nur vorgefertigte sachen nhemen.
Für kleine Projekte (Hobbymässig) ist es aber bestimmt ne schöne sache. Wär aber wirklich was neues machen will, wird einige dinge von grund auf neu konzipieren müssen.
-
Also ich wüst jetzt noch mal gern was zu der Build Engine: Das ist eine Engine die auf Doom neveau steht?
Also ehrlich gesagt habe ich etwas mit mehr "Leistung" gesucht... Und dann natürlich freeware
-
Baldung-chagi schrieb:
Also ehrlich gesagt habe ich etwas mit mehr "Leistung" gesucht... Und dann natürlich freeware
Mehr Leistung und Freeware? Du hast mir vielleicht wünsche! Ich glaube nicht unbedingt, dass du viel besseres finden wirst. Schliesslich steck in der Entwicklung, solch einer Engine, jede Menge Arbeit. Und das ist am Ende so viel, dass kaum jemand sagen wird: "Ja hier, darfst gratis benutzen!"
Grüssli
-
Ogre3D steht einer kommerziellen Top-Engine ziemlich gleich gegenüber (Aussage von Sinbad - Lead Developer).
Der entscheidende Unterschied ist, dass diese OSS Engines meist nur sehr dürftige mit Tools ausgestattet sind. Du findest zwar nen Ogre-Exporter für ziemlich jeden Modeller, aber so wirklich der Hit sind die fast alle nicht.
Am Ende bleibt es an dir hängen die entsprechenden Tools für Ogre zu schreiben (haben viele Leute schon gemacht und auch veröffentlicht).
Vom fehlenden Support mal ganz zu schweigen.Aber Ogre an sich ist wirklich super, das Design ist gelungen und es macht spaß damit zu arbeiten

Deswegen sind diese Engines für kommerzielle Zwecke weniger geeignet, aber keineswegs schlecht.
Wenn du mit der Source-Engine arbeiten willst, dann kauf dir Half-Life2 und lad dir über Steam das Source-SDK runter, dann kannst nen Source-MOD erstellen.
Dann hast ne super Engine mit super Tools
-
Ich sehe die Disskusion "Tool vs. Selbstgemacht" eher so:
Für meine Homepage habe ich (fast) alles selbstgeschrieben. Da ging es mir darum zu sehen dass ich es kann. Ein Blog und ne Gallerie gibt's an jeder Ecke. Klar hätte ich z.b. einfach Wordpress nehmen können - aber das war mir dann zu langweilg.Geht es mir aber darum etwas größerers zu bauen, dann würde ich schon den XML-Parser von hier oder die Engine von da nutzen.
Außer es ist mir halt wichtig, die Engine selbst zu schreiben. Um "mir" zu zeigen was ich kann.
-
Das wichtigste für so eine Entscheidung ist, denke ich, zunächst mal eine vage Vorstellung davon, wie das Spiel später mal aussehen soll / was man damit (darin) anstellen können soll. Wie willst du deine Welt gestalten? Wie interagierst du mit deiner Welt. Steht eine Geschichte im Vordergrund, die du erzählen willst oder geht es eher um schnelle Action (beides?). Siehst du dich als Programmierer oder als game-designer?
Solltest du dich dafür entscheiden dein Spiel selbst zu programmieren so ist die Frage nach der Grafik-Engine gar nicht mal so entscheidend (meiner erfahrung nach). Die Spielmechanik sowie die Verwaltung von Ressourcen, der generelle Programmablauf sowie die Strukturierung des Codes spielen nach dem du ein paar Dreiecke zeichnen kannst die größere Rolle.
Nur so ein paar Gedanken!