Registriert: Do Sep 25, 2003 15:56 Beiträge: 7804 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Hier bitte die Diskussionen zu Änderungen/geplante Änderungen bei den Tutorials.
Alter Beitrag:
Flash hat geschrieben:
Dieser Thread soll dazu dienen, die Personen zu koordinieren, welche bei der Überarbeitung der DGL Tutorials mithelfen wollen.
Es wird verschiedene Aufgaben geben. Einerseits muss bewertet werden was veraltet ist und ersetzt werden muss. (Vorraussetzung: Wissen zur jeweiligen Technik) Es wird geprüft werden, ob eventuelle Fachliche Fehler sich in Tutorials geschlichen haben. (Vorraussetzung: Tutorial nachprogrammieren/Code testen) Auch wird sollte Rechtschreibung und Grammatik ein Thema sein. (Vorraussetzung: Deutschkenntnisse )
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Das ich hier schreibe sagt ja wohl was ich machen möchte
Also im Wiki steht ja, die Einsteiger Tutorials seien schon auf SDL umgestellt - dies ist aber leider noch nicht der Fall. Darum wäre jetzt meine Frage, ob schon jemand daran arbeitet die Tutorials umzustellen oder ob das noch frei ist.
Evtl würde es auch noch sinn machen vor dem ersten tutorials noch eine kleine einführung in easySDL zu geben (ne kleine übersicht was man da alles nutzen kann) damit nicht so fragen aufkommen wie : Was macht eigentlich UpdateWorld? usw.
Ich mach hier mal ne erste Liste, was durchzusehen und ggf zu überarbeiten ist:
3. http://wiki.delphigl.com/index.php/Tutorial_Lektion_2 Ein bisschen in die verschiedenen grundformen einführen und mit farbe rumspielen ( ich dachte an dreiecke, vierecke und vll polys zur veranschaulichung und dann kann man ja die gegeneinander abwägen - wer zeichnet denn schließlich einen würfel aus dreiecken )
4. http://wiki.delphigl.com/index.php/Tutorial_Lektion_3 Nachdem wir uns im vorigen tut nur in zwei dimensionen bewegt haben kommt jetzt noch die dritte hinzu - wir zeichnen einen würfel und eine pyramide - zum schluss des tutorials versetzen wir das ganze noch in drehung.
6. http://wiki.delphigl.com/index.php/Tutorial_Lektion_5 jetzt hätte ich natürlich schon ein paar sachen aus tut 5 vorweggenommen - es könnte durchaus sinn machen das mit der optimierung an dieser stelle zu belassen.
7. Tutorial Nr 6 -> hier müsste ein neues Thema gefunden werden (wie wärs z.b. mit Wie lade ich ein Model? oder kommt das schon zu komplex? Es gibt ja schon die fertigen Modelloader ... vll so einen einbauen? Das hällt die Motivation hoch!)
Zum schluss würde ich noch je ein Tutorial für API und VCL reinstellen, damit man auch weis wie das neuerlernte zu portieren ist.
Das wäre jetzt mein Konservativer vorschlag, wie wir mit recht wenig arbeit mal die einsteiger tuts auf vordermann bringen könnten.
Da ich persönlich für eine etwas tiefergreifende Änderung wäre möchte ich euch mein Konzept nicht vorenthalten:
A) Einführung in easySDL (so ne art referenz) + schwarzes fenster
B) Polys in 2d (dreiecke, vierecke, poly vorstellen, erklären und unterschiede aufdecken)
C) Farbe - Die in B) erstellten flächen einfärben
D) 3D - in die Dritte Dimension vorstoßen, eine pyramide und/oder einen würfel bauen und sich drehen lassen (auf das drehen etwas genauer eingehen) - das ganze ohne farbe um den code schlank zu halten(wers farbig mag kanns ja selbst hinzufügen, weis ja nach C) jeder wies geht)
E) Texturen (in leicht umgestellter und überarbeiteter form würde ich das Tut 4 hier einsetzen, jedoch ohne UV mapping)
F) Interaktion : Tastatur und Mauseingaben verarbeiten
G) Jetzt das UV mapping - dann kann man zb das beispiel mit dem zahlenstrahl mit tastatureingabe machen oder so
H) Das ursprüngliche Blending Tutorial
Hier mach ich dann erstmal schluss, damit sich niemand völlig überflutet fühlt aber es wären dann natürlich noch die themen zu bearbeiten die in den ursprünglichen 8 bereits mit drin sind. Manches würde ich jedoch aus der reihe rausnehmen und als so ne art zusatz artikel machen, die man sich in belibiger reihenfolge durchlesen kann wie zb das matix tut (welches kaum besser zu machen ist) und dann halt optimierung
usw.
ich hoffe ich hab jetzt niemand mit meinem wortschwall erschlagen
auf das nun jeder seine meinung kundtuen möchte.[/url]
Registriert: Di Okt 03, 2006 14:07 Beiträge: 1277 Wohnort: Wien
Na schön, Chef. Wir überarbeiten die Tutorials. Vorweg möchte ich sagen, dass mir sowohl die erste als auch Deine Variante recht vernünftig vorkommt.
Vorher habe ich jetzt aber einige Grundsatzfragen an alle:
1) Wie stehts mit dem glBegin/glEnd? Jetzt wäre die Gelegenheit günstig, eine Alternative anzubieten. Schon lange sind wir übereingekommen, dass glBegin/glEnd nicht mehr verwendet werden sollte. Aber es steht in allen Tutorials drin. Soll es eliminiert werden? Ich sags jetzt gleich: Ich bin für Eliminieren. Man kann nicht ewig das letzte Jahrtausend mit sich herumschleppen.
2) Wie stehts mit der Programmiersprache? Ist derzeit noch alles Pascal. Ich habe schon lange nicht mehr ins EasySDL reingesehen, aber ich habe es als Pascal-Only in Erinnerung. Soll das so bleiben? Meine eigene Meinung zählt hier nicht: Ich kann nur Pascal. UND ich erinnere mich an I0n0s' Einwand wegen der Wartung, Man sollte berücksichtigen, dass bei mehreren Programmiersprachen der Aufwand für Wartung höher ist.
3) Wie stehts mit Linux? Vielleicht sind die EasySDL-Beispiele ohnehin so verfaßt, dass es leicht ist, in Linux zu arbeiten, das weiß ich aber nicht. (I0n0s)? Meine Meinung dazu: Linux sollte inkludiert sein.
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Ok... Klingt nicht schlecht. Ich habs jetzt nur mal überflogen, aber erstmal nichts vermisst. Aaaber: Ich frage mich, wie du ohne UVMapping mit texturen arbeiten willst. Schließlich musst du glTexCoord ja irgendwas übergeben. Und einfach mit der hau-drauff taktik sagen "da müssen jetzt die und die werte rein, für details siehe Tutorial xyz" halte ich für ungut. Ich würde zumindest für eine kleine Erklärung plädieren. Also von wegen, dass die Coords immer von 0 bis 1 gehen, welcher Wert für welche Texturachse ist.
Schattenwurf kann man für Einsteiger denke ich vergessen. Es gibt viel zu viele varianten und viele erfordern viel Arbeit und Aufwand. Das sollte nicht mehr in die Einsteigertuts rein sondern wenn sowas geschrieben wird eher in die Fortgeschrittenen.
Dann würde ich Traude zustimmen: Soweit es möglich ist sollten wir, wenn schon alles neu gemacht wird oder zumindest zu großen teilen, auch gleich glBegin und glEnd töten. OpenGL 3 steht mit seinem Sack voller geschenke vor der tür... ne moment, der Sack voller geschenke, das war der Weihnachtsmann, bei OpenGL 3 hat der Sack nen paar zu viele löcher, da hat man ihn gleich weggelassen (*hust*) ... und da sollten wir vielleicht das ganze gleich in die Richtung VBO gehen lassen.
Bei der Programmiersprache ist es halt immer schwierig das zu warten, wie wir schon festgestellt haben. Vielleicht sollten wir zu diesem Zweck auch daran denken, dass EasySDL bisher nicht alles abdeckt. Ich schlage vor: Entweder EasySDL erweitern oder die Tutorials so aufbauen, dass der Umstieg auf plain-SDL leichter wird. Das würde dann eventuell Clern oder so auch helfen, den Code von Pascal zu verstehen und damit besser klar zu kommen.
Ansonsten müssen wir sehen, wieviele Leute wir für die Aktion zusammenbekommen, die dann auch bleiben. Ein halbfertiger C-Support ist denke ich schlechter als gar keiner.
Linux ist wichtig . Ich selber habe noch nicht viel erfahrung mit SDL+OpenGL+Freepascal unter Linux, zumahl es da bei mir bisher probleme gab. Wobei ich mal gucken müsste, ob das ganze jetzt, wo ich auf 32bit zurückmigriert bin, behoben ist.
So, das war mein Senf. Und meinen Ketchup pack ich mir jetzt auf nen Würstchen und ess es.
Gruß Lord Horazont
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Registriert: Fr Mai 16, 2008 20:26 Beiträge: 158 Wohnort: Berlin
Programmiersprache: c++,c#,java,ruby,php
Es gab doch die Idee mit einen Farbtutorial zu machen, das könnte man doch dann wunderbar für die farbigen Dreiecke, im einsteiger Tutorial, benutzen, also als ergänzung^^
Ich find die Gliederung eigentlich ganz okay^^ Aber ich fand die aktuelle für mich auch optimal.. Irgendwann hat man eh damit begonnen alles selber zu erkunden. Modelloader fänd ich für Einsteiger nicht ganz so praktisch, das ist doch nen ganz schöner Happen. Man könnte ja erstmal damit anfangen, benötigte Daten in Arrays abzulegen, also per Hand regeln, anstatt noch mit Blender und co die Keule drauf loszulassen und dann vll die VBO geschichte anbringen.
Naja nur eine Idee^^
_________________ System: Phenom XII X4 955 3,21Ghz , GTX 560 TI, 4GB-Ram, Windows 7 64x
das klingt doch dann schonmal ganz gut.
was die programiersprache angeht, bin ich ganz klar gegen c. ich hab zwar mal c in den grundzügen gelernt, aber es ist halt einfach c ^^ ok spass bei seite, aber warum heißt delphigl überhaupt delphigl? na ich würd mal sagen, weils da opengl mit delphi programmiert wird oder ???? also bleiben wir bei pascal/delphi what ever, denn für c und c++ gibts schon massig seiten, da würden wir nur untergehen, außerdem wage ich mal zu behaupten, das die meisten hier nur pascal können und sich auch von der seite her kein grund gibt da etwas zu ändern.
mit opengl 3 hab ich mich noch gar nicht auseinander gesetzt .. inwieweit ist das auf den alten grakas lauffähig (is das so wie Dx10 nur für die neuen?? . sorry was das angeht hab ich null ahnung) hab zwar auch schon gehört, das glbegin und glend wegfallen sollen, aber wie das genau aussieht kann ich mir nicht vorstellen. - wär also ganz sinnvoll einzubauende neuerungen in einem post/thread zu vereinen, damit alle wissen was standart sein soll
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Wir hatten hier vor deiner Zeit (vor kurzem also) eine Diskussion über genau das Thema. Wie bringen wir die Einsteiger an die Technik der VBOs? Siehe hier
Gruß Lord Horazont
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Registriert: Di Mai 18, 2004 16:45 Beiträge: 2622 Wohnort: Berlin
Programmiersprache: Go, C/C++
Ein großer Teil der neuen OpenGL3.0 Features gibt es als Extensions auf gf8xxx und x1xxx Reihe und aufwärts.
Allerdings Implementiert OpenGL 3.0 Smart Shader 4.0 mit GLSL 1.2 und damit ist eine DX10 kompatible Grafikkarte notwendig.
Das wären GF8800 und hd2xxx und aufwärts.
_________________ "Wer die Freiheit aufgibt um Sicherheit zu gewinnen, der wird am Ende beides verlieren" Benjamin Franklin
meine programme würden aber (wenn ich auf die neuen effekte verzichte) dennoch auf älteren karten laufen richtig? das wäre also nur eine syntax änderung?!
wie steht das denn überhaupt mit dem dglheader? es bringt schließlich nichts, darüber zu philosofieren, ob wir das einbauen, wenn uns die mitte dafür fehlen. ist da schon was in arbeit?
mfg grey
Edit: Welche der beiden tutorial stränge nehmen wir denn nun? Ich wäre für meinen aber die reihenfolge und der inhalt können selbstverständlich etwas abgeändert werden - am besten mach mal jemand nen vorschlag wie es besser wäre.
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Nein. Sobald dein Programm OpenGL 3.0 benutzt müssen all diese Features existieren. Selbst dann wenn du nur ein einfarbiges Quad auf den Schirm bringen willst. Also aus diesem Gesichtspunkt ist das Forcieren von OpenGL 3.0 als Grundgerüst für alle wohl nur bedingt wirklich sinnvoll.
Was den Header angeht. Das ist die Version an der ich gearbeitet habe und soweit eigentlich fertig ist. Muss nur noch veröffentlich werden. Zum Benutzen sieht es so aus, dass meinen RC benötigt und dann mittels der Erweiterung WGL_ARB_create_context einen neuen Kontext erstellen muss. Dieser enthält dann die 3.0 Features. ABER.
- Unter Linux gibt es keine Möglichkeit einen solchen 3.0 Kontext zu erstellen, da diese Erweiterung (WGL) nur unter Windows funktioniert. SDL (easySDL) erstellt den Kontext automatisch und somit gibts dort auch keine Möglichkeit einen 3.0 Kontext zu erstellen.
- Die Treiber die 3.0 unterstützen sind aktuell noch in arbeit. Und dann werden erst mit der Zeit evtl wirklich alle Karten unterstützt. Denn es ist logisch, dass zu erst die neusten Karten dran kommen.
- Der Header ist kein reiner 3.0 Header. Entsprechend enthält er auch noch alles was deprecated ist. Das müsste im Header noch deaktiviert werden, wenn man nur reines 3.0 haben will.
- Die Funktionen von 3.0 sind aber auch als normale Erweiterungen vorhanden. Wenn die Hersteller es also wollen, dann könnten sie diese Funktionen auch auf einem 2.0 Kontext anbieten. Aber der Plan von 3.0 sieht es vor, dass eben der 2.0 Kontext auf langer Sicht sterben soll.
Allerdings das glBegin und glEnd nicht mehr zu benutzen heißt nicht zwingen, dass man 3.0 benutzen muss. Es genügt dort alleine schon, wenn man auf VBOs setzt. Denn in meinen Augen ist 3.0 erst mal noch nicht so weit und es wird auch später nicht bedenkenlos für alle Anwendungsfälle DIE Lösung sein. Zu mindest nicht in den nächsten 1-2 Jahren.
das ist doch mal nen wort.
wobei ich nicht denke, das es sinnvoll ist direkt mit vbo anzufangen - OpenGL 3.0 wir im allgemeinen ja als so ne art halbfertiges zwischenprodukt bezeichnet... und da an sich grakas ab gf8xxx noch nicht allzuweit verbreitet sind ist es wohl sinnvoll erstmal noch nicht auf 3 umzusteigen ... das mit den vbo's kann man ja in der tutorialreihe so bald wie möglich einbauen(und damit dann schon eine gewisse aufwärts kompatibilität schaffen- außerdem wäre es ja auch möglich ein extra tut für den umstieg auf 3 zu machen ... wenn man denn im besitz der richtigen karte ist ).
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7804 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Den Quickstart würde ich so stehen lassen, allerdings eine Anmerlung machen welche Technologie genutzt wird und das die andern Tutorials eine andere Nutzen. Und zwar aus folgenden Gründen.
1. Das Template aus dem Tutorial ist für OpenGL <2.0 und VCL gut geeignet. Wer erstmal in OGL reinschnuppern will, kommt damit recht schnell zum Zuge.
2. easySDL soll den Blick freimachen fürs wesentliche: OpenGL. Es ist aber nicht dazu da, dass ihr später eure Programme auf easySDL aufbaut. Der Quickstart zeigt also, was easySDL für die restlichen einsteiger Tutorials verbergen soll/wird.
Ich würde die Lektion 1 nicht wegwerfen, sondern dort easySDL einführen und vorstellen. Das ganze kann recht kurz gemacht sein.
Neben dem Quickstart, der zeigt wie man mit der VCL in Windows arbeitet, denke ich wäre es sinnvoll, direkt am Anfang (also vor der Lektion1) eine Quickstartversion für Freepascal+SDL+OpenGL anzubieten.
Der Weg in die Tutorialsektion wäre damit:
1. Quickstart (Linux oder Windows): Was muss ich machen, damit ich mit OpenGL beginnen kann (+ein paar weise Worte )
2. Lektion 1 (easySDL - Wieso,Was ist das und wie übertrage ich den Code)
3. Lektion 2 Jetzt gehts los
Zum Texturen Tutorial: Ein Texturen Turorial ohne UV Mapping ist gar keins. Ja man muss erklären wie man Texturen Lädt. Aber der eigentliche Kernpunkt ist dann, dass man Teile der Textur gezielt auf Flächen Bringt. Nebenbei hat Sascha ein UV Mapping Tutorial geschrieben was mir wirklich erst die Augen geöffnet hat bzgl. Modelle in 3DS Max texturieren. Ich denke wenn man das gelesen hat, weiß man was UV Mapping eigentlich ist.
Wenns darum geht zu erklären wie man sachen in 3D Positioniert, wäre es vermutlich sinnvoll auf das Tutorial_Matrix2 offensiv hinzuweisen.
_________________ Blog: kevin-fleischer.de und fbaingermany.com
darüber hinaus würde ich villeicht in das erste tut noch mit einbauen, was eigentlich abläuft wenn unser code ausgeführt wird - viele haben zu anfang gar keine ahnun was sie da jetzt eigentlich überhaupt bewirken (ging/geht mir so)
Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.