1. Voorwoord
SGE wordt vrijgegeven onder de GNU General Public Licence. Hiervan is
hier een kopie te vinden, en
hier een Nederlandse vertaling. SGE mag vrij gedistribueerd worden, zolang er maar naar
Solution verwezen wordt en het onder deze licentie blijft. Er u (de ontwikkelaar) wordt wel vriendelijk verzocht om eventuele verbeteringen/wijzigingen door te geven aan Solution, zodat toegevoegd kunnen worden aan de nieuwe versie.
2. Introductie
SGE (Solution Graphics Engine) is een javascript programma bedoeld om spellen en bewegende beelden/film mogelijk te maken in HTML. Dit wordt gedaan door een virtueel "beeldscherm" te creëren en deze te manipuleren. Dit programma gebruikt de afbeeldingsstructuur SWI, een bestandsstructuur in tekst.
3. Syntax
3.1 Basis
Om te beginnen moet het sge.js bestand ingesloten worden bij elke pagina die het gebruikt, zoals dit:
<script type="text/javascript" src="sge.js"></script>
Dan moet de SGE opgestart worden, in dit voorbeeld wordt het scherm 20 X 20 pixels groot en wit.
<script language="javascript">
initSGE(20,20,parent.frames[1]);
drawField();
clearScreen("#ffffff");
</script>
Geavanceerd
Natuurlijk moet men ook in staat zijn om een specifieke pixel een kleur te geven. In dit voorbeeld krijgt de pixel in de tweede rij derde kolom de kleur paars.
<script language="javascript">
sge.frame[3][2] = "#ff00ff";
</script>
4. Functielijst
In de SGE heb je een aantal functies tot je beschikking om het programma te laten doen wat hij moet doen.
| clearScreen([kleur]) |
Vult het hele scherm met zwart, of een andere kleur indien gegeven. Kleur moet gegeven worden als hexadecimaal, voorafgegaand met een "#". |
| drawField() |
Tekent alle pixels op het beeldscherm |
| drawImage(afbeelding, startX, startY) |
Plaatst een SWI afbeelding op het scherm, beginnend op (startX,startY) |
| exitSGE() |
Sluit de huidige simulatie af en wist alle variabelen |
| getFPS() |
Geeft het huidige aantal frames per seconde |
| initSGE(breedte, hoogte, output) |
Deze maakt de SGE klaar voor gebruikt. breedte wordt de breedte van het gesimuleerde scherm, hoogte wordt de hoogte, en output wordt het venster dat gebruikt wordt voor het beeldscherm. output moet iets zijn als "parent.frames[0]". |
| updateFrame() |
Update het "beeldscherm" naar de nieuwe afbeelding |
5. Variabelenlijst
| sge.drawn |
Gelijk aan sge.frame, maar alleen houdt deze Array de pixels die al gekleurd zijn. |
| sge.dt |
Bevat het aantal miliseconden dat het duurde om het laatste frame te tekenen |
| sge.frame |
Een dubbele Array die alle pixels bevat, met de kleur die ze hebben
|
| sge.height |
Hoogte van het scherm in pixels |
| sge.t |
Bevat de timeout identifier van de frame verversing |
| sge.width |
Breedte van het scherm in pixels |