Ich kann mir vorstellen, dass die Entwicklung des Pas2js Transpilers eine spannende Sache war/ist, aber verstehe bis heute nicht, für wen/was das eigentlich gedacht ist.
Für eine WebGL-Animation ist es eine sehr tolle Sache. Ich denke, mit pas2js ist es der einfachste Weg um eine Web-Animation zu erstellen.
Wen man mal den Trick draussen hat, geht es fast so einfach wie auf dem Desktop.
Was noch ein Tüpfli auf dem i wäre, wen WebGL2 unterstützt würde.
Zum Ursprünglichen Thema zurück, das laden der Datei habe ich hingekriegt.
Code: Alles auswählen
var
xhr: TJSXMLHttpRequest;
procedure LocalLoad(aEvent: TEventListenerEvent);
var
s: string;
begin
if (xhr.status = 200) then begin
s := xhr.responseText;
Writeln(s);
end;
end;
begin
Writeln(aEvent.target.Properties['id']);
xhr := TJSXMLHttpRequest.New;
xhr.addEventListener('load', @LocalLoad);
xhr.Open('GET', 'project1.lpr');
xhr.send;
Du bist dir gewahr, dass die DOM Funktion getElementById aus dem HTML DOM das HTML-Element herausholt, was in seinem id-Tag den übergebenen Wert (in dem Fall project1.lpr) hat?
Da wurde ich in die Irre geführt, in einer Demo stand "vertex.glsl" und dda dachte ich, die sei eine Datei, dabei war es die id, welche in die HTML-Datei zeigte.
Was noch recht speziell ist, das Programm kommt am Ende an, und läuft trotzdem weiter. Bei einer normalen App ist bei "end." fertig.
Im Anhang noch ein funktionierendes Beispiel.