Es gibt noch nen Bug in Firefox, wenn man mehrmals 10-20 mal nen WebGl-Fehler auf einer Seite hat gibt er einem keinen Render-Kontext mehr obwohl WebGl an ist.
Er zeigt bei Firefox an
Code:
gl.drawArrays(gl.TRIANGLES, 0, 3);
einen Fehler an. Ich habe den Code aus dem Tutorial beibehalten, wo könnte der Fehler liegen, er meint glaube ich das keine Daten übergeben wurden. (Leider bekomme ich den Fehler im Moment nicht weil ich ja keinen Render-Kontext kriege)
Man muss den Browser nur Neustarten dann bekommt man doch wieder nen Kontext.
Registriert: Sa Aug 18, 2007 18:47 Beiträge: 694 Wohnort: Köln
Programmiersprache: Java
Nächstes Problem: Das Viereck ist sichtbar aber Lila.
Nach Prüfung der Werte, die der Shader in vNormal bzw. vTexCoord kriegen sollte, steht da immer 0.0 drin.
Das liegt IMHO an glVertexAttribPointer, welches laut Spec ab OGL 2.0 verfügbar ist.
Nur leider hab ich noch keine nVidia in meinem MacBook......die Intel X3100 hat nur OGL 1.2.
Aber interessant, dass er keinen Fehler meldet und die Vertexdaten trotzdem ankommen.
_________________ Es werde Licht. glEnable(GL_LIGHTING); Und es ward Licht.
Zitat aus einem Java Buch: "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off"
Die haben den Browser nicht umsonst "Minefield" getauft
Alles was ihr an Bugs findet, bitte an Mozilla melden, zumindest wenn sicher ist das es sich um einen Bug handelt!
@mori:
Ich glaube das Problem ist das glGetProgramiv nicht implementiert ist...jedenfalls GL_ACTIVE_ATTRIBUTES nicht....da war irgendwas.
@damadmax:
Nur vorsichtshalber: Nicht in die falschen Specs schauen....hier geht es um OpenGL ES 2.0, das hat mehr mit OpenGL 3.x gemeinsam als mit 2.0
Bin sowieso verwirrt. Laut Apples Featurematrix kann meine Graka nur OGL 1.2. Aber sie kann trotzdem mit Shadern umgehen die eigentlich erst ab 2.0 verfügbar sein sollten.
_________________ Es werde Licht. glEnable(GL_LIGHTING); Und es ward Licht.
Zitat aus einem Java Buch: "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off"
Ich kann nur sagen, bei mir funktioniert der Tutorial-Code. Versuch mal keinen Interleaved-Buffer zu benutzen wie im Tutorial, sondern alles in einen eigenen Buffer. Als Beispiel kannst du diese Spore-Demo nehmen.
Äh? Nach dem linken? Das ist dann aber nur für das gl.uniform1i, denn in der Funktion draw() wird das Programm ja gesetzt. Wahrscheinlich funktioniert das bei mir, weil das per default sowieso Null ist?
Zitat:
(Im Tutorial fehlt auch noch den Viewport zu setzen nachdem die Variablen gesetzt wurden)
Auch das wird in der Funktion draw() gesetzt. Oder was meinst du?
@Unterforum: Gerne, weil alles in einem Thread ist doch etwas unübersichtlich.
Sorry, das mit dem useProgramm hatte ich übersehen, aber das setzen des Viewports ist nicht beschrieben es werden im Tutorial nur die Variablen gesetzt. Man muss die Größe zwar nicht verändern weil sie sich den Canvas anpasst, aber ich würde es trotzdem mal reinnehmen.
Das Tutorial beschreibt nur was in Relation zum normalen OpenGL anderes ist. Darum steht da nix zum Viewport. Anderenfalls muss ich alles erklären....Z-Buffer einschalten usw...
(Ich kann das aber noch einbauen, wenn auch andere der Meinung sind das wäre notwendig.)
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7804 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Mit dem Unterforum würde ich warten bis es etwas verbreiteter ist. Bis dahin könnt ihr das ganze im OpenGL Forum abfackeln.
Wegen dem Tutorial: Im Beispiel steht ja alles drinnen was rein muss. Das ist schon mal sehr gut. (anders gehts auch nicht für ein Beispiel. ) Im Tutorial selbst kannst du entweder deutlich (am besten 2-3mal) auf das Beispiel hinweisen oder aber es im Tut selbst nochmal erklären. Ist mir als Lektor nicht aufgefallen - aber wenn man es nachprogrammiert kann es durchaus probleme machen.
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Registriert: Sa Mai 04, 2002 19:48 Beiträge: 3827 Wohnort: Tespe (nahe Hamburg)
Der Thread ist ja geradezu explodiert. Ein paar offizielle Statements meinerseits zu Fragen. Ein DGL CMS wird es in absehbare Zeit nicht geben. Neben dem Forum selbst gibt es zahlreiche knallrote Bereiche, die vorher ein wenig liebe bräuchten. Einen Ordner für Upload über einen der Admins sollte kein Problem darstellen, solange die Daten auch wirklich fertig sind und sich nicht alle zwei Tage wieder ändern. Ich selbst muss zugeben in dem Bereich einige Defizite zu haben und die Gefährdungslage für unsere Besucher nicht richtig einschätzen zu können. Evtl. kann sich jemand ja mal darüber informieren in wie weit sich die Canvas missbrauchen lassen, um Unsinn anzustellen, der über die Fähigkeiten einer normalen JS-Seite hinaus geht. Ich selbst würde die Gefährdung momentan als eher gering einstufen und würde dazu tendieren die Canvas auf separaten Seiten im Wiki zu pflegen. Dies sollte fixer gehen und erlaubt es eben den Besucher zu entscheiden, ob er darauf klicken will oder nicht. Auch wenn es natürlich cooler wäre, wenn man es gleich im Browser sieht: Aus meiner Sicht ist der Vorgang vergleichbar mit dem Download eines Samples und sollte eine konkreten weiteren Aktion des Nutzers erfordern.
Auch wenn ich kein Fan von JS bin, freut es mich zu sehen, dass Coolcats Tutorial soviel Neugierde ausgelöst hat. Ein neues Forum wird es dennoch nicht dafür geben. Es gibt nichts schlimmeres als eine Forenleiche durchzusetzen bein denen 2-3 Leute aktiv posten. Diese fühlen sich leicht fehl am Platz, wenn es gelöscht wird... und die anderen User haben das Mausrad mehr zu nutzen. Wie bei allen anderen Sprachen auch, wird es momentan in den regulären Foren gut aufgehoben sein. Evtl. ein Tag wie [WEBGL] davor setzen, damit die Interessegruppe unter sich selbst leichter "filtern" kann. Sollte die Aktivität über einen längeren Zeitraum ausreichend sein, wird man auch über ein separates Forum verhandeln können
Ein WebGL Modul für GoogleWebToolkit (*) ist in Arbeit. Das ganze liefert eigene Matheklassen mit und natürlich Klassen für die bequeme Nutzung von Shadern, Texturen und Meshes, alles verwaltet durch einen ResourcenManager der Daten aus einem JSON-Format liest. Da GoogleWebToolkit ziemlich viel optimieren kann (sogar Browser spezifisch) wird das ganze so gut wie ohne Overhead sein. Trotzdem kann man in Java coden, was wesentlich angenehmer ist als JavaScript. Wird aber noch mindestens eine Woche dauern.
Mitglieder in diesem Forum: 0 Mitglieder und 38 Gäste
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.