Author Topic: GLBasic, 2008/2009 Planungen  (Read 15889 times)

Offline trucidare

  • Administrator
  • Prof. Inline
  • *******
  • Posts: 1377
  • Bachelor of Fail
    • View Profile
Re: GLBasic, 2008/2009 Planungen
« Reply #15 on: 2008-Jul-22 »
SDL port ist doch schon vorhanden. das komplette open2x sdk ist vorhanden. sonst hätten die wohl kaum so schnell so viel porten können.
MacBook Pro 2,2 GHz Core 2 Duo, 4 GB RAM, 160 GB HDD, 8600M GT
Core i3 - 3,07 GHz, 8 GB Ram, 2.5 TB HDD, Geforce GTX 260+ OC

minor

  • Guest
Re: GLBasic, 2008/2009 Planungen
« Reply #16 on: 2008-Jul-26 »
[...] dass GLBasic in Zukunft langsam umstrukturiert wird [...]
Ich hoffe man kann zumindest als Benutzer einige Ideen einbringen, ob sie umgesetzt werden ist eine andere Geschichte =D

Hier sind zwei kleine Punkte:
  • Der Compiler sollte die Bezeichner aus GLBasic mit einem Prefix versehen damit man unter letzterem auch Schlüsselwörter aus C/C++ verwenden kannn. So wäre "LOCAL private, public" u.a. möglich. Der Aufwand müsste gering sein, Macros + Prefix müssten in den generierten Dateien geändert werden. Alte sowie neue Programme würden ohne Änderungen laufen.
  • Ich würde es begrüßen wenn man beim Befehl "LOADSPRITE bmp$, num#" beim Argument "num#" einen negativen Index angeben kann. Der Befehl würde dann einen fortlaufenden Index generieren. Beispiel: "block = LOADSPRITE "block.png", -1". Ich hoffe der Grund ist ersichtlich =P. Der Aufwand sollte ebenfall gering sein. Alte sowie neue Programme würden ohne Änderungen laufen.

Bitte um Kritik.

Gruß,
 minor

Offline Schranz0r

  • Premium User :)
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 5024
  • O Rly?
    • View Profile
Re: GLBasic, 2008/2009 Planungen
« Reply #17 on: 2008-Jul-26 »
Beide Sachen NAJA...

Grade bei Punkt 2 frage ich mich nach dem Sinn, kann mir das grad nicht wirklich erklären, wieso negative Werte von Vorteil sind?!
I <3 DGArray's :D

PC:
AMD Ryzen 7 1700 @3.9GHz, 16GB HyperX Fury 3000MHz Ram, ASUS ROG GTX 1060 STRIX 6GB, Windows 10 Pro 64Bit, MSi Tomahawk B350 Mainboard

minor

  • Guest
Re: GLBasic, 2008/2009 Planungen
« Reply #18 on: 2008-Jul-26 »
Grade bei Punkt 2 frage ich mich nach dem Sinn, kann mir das grad nicht wirklich erklären, wieso negative Werte von Vorteil sind?!
Vielleicht wird es an einem Beispiel klarer;
Code: GLBasic [Select]
pl1 = LOADSPRITE "player_01.png", -1
pl2 = LOADSPRITE "player_02.png", -1
scum1 = LOADSPRITE "scum_01.png", -1
scum1 = LOADSPRITE "scum_02.png", -1
[...]

DRAWSPRITE pl1, 200, 0
DRAWSPRITE pl2, 200, 64
DRAWSPRITE scum1, 200, 64
DRAWSPRITE scum2, 200, 64
[...]
 
Der negative Index steht symbolisch für eine automatische vergabe von Indizes.

Gruß,
 minor

minor

  • Guest
Re: GLBasic, 2008/2009 Planungen
« Reply #19 on: 2008-Jul-26 »
Wenn dies wirklich eine wünschenswerte Syntaxerweiterung sein sollte, dann wäre es einfacher, der letzte Argument (-1) optional zu machen.  Wenn's nicht spefiziert wird, soll die Spritenummer automatisch zugeteilt werden...
Ich wusste nicht das es optionale Argumente gibt =P. Dann wäre es sicherlich sinnvoller diese weg zu lassen.

Gruß,
 minor


Offline mull

  • Mr. Polyvector
  • ***
  • Posts: 168
    • View Profile
    • http://www.ligapro.de
Re: GLBasic, 2008/2009 Planungen
« Reply #20 on: 2008-Jul-26 »
Kannst dir doch ein Funktiönchen machen.
Ich lade alle meine Bilder mit meiner Function LoadImage (ist schnell, kurz und schmerzfrei) z.B:


GLOBAL Haus ; LoadImage(Haus, DatenPfad$ + "Haus.png")


FUNCTION LoadImage: BYREF Image, Datei$
   STATIC EwigeImgNr
   IF DOESFILEEXIST(Datei$) = 0
       //Msg(Datei$+"| |existiert nicht.", 1, 2)
   ENDIF
   INC EwigeImgNr, 1 ; Image = EwigeImgNr ; LOADSPRITE Datei$, Image
ENDFUNCTION
AMD Phenom II x4 955 Proc. 3.2 GHZ,  4GB Ram
Windows 7 64bit Ultima
NVIDIA GeForce GTX 460
Leistungsindex 5,7

Offline Schranz0r

  • Premium User :)
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 5024
  • O Rly?
    • View Profile
Re: GLBasic, 2008/2009 Planungen
« Reply #21 on: 2008-Jul-27 »
Code: GLBasic [Select]
FUNCTION LoadSprite2: name$
STATIC ID
       
        IF DOESFILEEXIST(name$)
                LOADSPRITE name$,ID
                INC ID,1
                RETURN ID-1
        ENDIF
       
ENDFUNCTION



Also Bild wird so geladen:
Code: GLBasic [Select]
GLOBAL Bild1 = LOADSPRITE2("MeinBild.png")
I <3 DGArray's :D

PC:
AMD Ryzen 7 1700 @3.9GHz, 16GB HyperX Fury 3000MHz Ram, ASUS ROG GTX 1060 STRIX 6GB, Windows 10 Pro 64Bit, MSi Tomahawk B350 Mainboard

Offline mull

  • Mr. Polyvector
  • ***
  • Posts: 168
    • View Profile
    • http://www.ligapro.de
Re: GLBasic, 2008/2009 Planungen
« Reply #22 on: 2008-Jul-27 »
Code: GLBasic [Select]
GLOBAL Bild1 = LOADSPRITE2("MeinBild.png")
[/quote]

Das geht nicht ganz so, das Programm kackt einfach beim Start ab und gibt auch leider keine Fehlermeldung aus.
An so einem Fehler hab ich mir mal den Wolf gesucht.

So gehts, wenn die Variable bei Global nicht direkt einen Wert bekommt:

GLOBAL Bild1
Bild1 = LOADSPRITE2("MeinBild.png")
AMD Phenom II x4 955 Proc. 3.2 GHZ,  4GB Ram
Windows 7 64bit Ultima
NVIDIA GeForce GTX 460
Leistungsindex 5,7

Offline Schranz0r

  • Premium User :)
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 5024
  • O Rly?
    • View Profile
Re: GLBasic, 2008/2009 Planungen
« Reply #23 on: 2008-Jul-27 »
Ist wohl ein Bug im GLOBAL!

Werds melden
I <3 DGArray's :D

PC:
AMD Ryzen 7 1700 @3.9GHz, 16GB HyperX Fury 3000MHz Ram, ASUS ROG GTX 1060 STRIX 6GB, Windows 10 Pro 64Bit, MSi Tomahawk B350 Mainboard

Offline Kitty Hello

  • code monkey
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 10715
  • here on my island the sea says 'hello'
    • View Profile
    • http://www.glbasic.com
Re: GLBasic, 2008/2009 Planungen
« Reply #24 on: 2008-Jul-28 »
Grrr. Der initialisiert die GLOBAL schon im Konstuktor, das hat zur Folge, dass u.U. das Arbeitsverzeichnis nicht gesetzt ist.
Muss man andersrum machen.

Sebastian

  • Guest
Re: GLBasic, 2008/2009 Planungen
« Reply #25 on: 2008-Jul-30 »
Was auch noch recht cool wäre (wenn du wirklich GUI etc. anstrebst): Kontrolle über Threads, sprich: Multithreading. Ich kann mir vorstellen, dass es dir da ein wenig eiskalt den Rücken runterläuft (vor allem weil ich meine gelesen zu haben, dass GLBasic bisher nicht threadsafe ist, d.h. du müsstest die komplette Codebase teilweise erneuern oder überarbeiten) aber nächstes Jahr werden wahrscheinlich keine DualCore Prozessoren mehr hergestellt, dann wird Tripple und Quad Core der Standard sein und gerade für mathematische Programme ist das wichtig. Ach ja, wo ich gerade bei Mathe bin (^^): wir brauchen Typen, die grössere und genauere Zahlen speichern können. Und komplexe Zahlen (k.A. ob die aus C++ einfach übernommen werden können, ich weiss, dass C99 komplexe Zahlen eingeführt hat)  :S

Edit: und kann es sein, dass glbasic.de auf 1&1 gehostet wird und glbasic.com auf Strato? Nur wg. neuer Internetauftritt und so...
« Last Edit: 2008-Jul-30 by Pwnlicious »

Offline Kitty Hello

  • code monkey
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 10715
  • here on my island the sea says 'hello'
    • View Profile
    • http://www.glbasic.com
Re: GLBasic, 2008/2009 Planungen
« Reply #26 on: 2008-Jul-30 »
Threads kann ich mal einbauen, über Synchronisation muss halt jeder selbst Bescheid wissen. Ich hab' da nicht viel Lust Neulingen Hilfestellung zu geben, weil's echt komplex ist, wenn's Geschwindigkeit bringen soll.

Für Komplexe Zahlen würde ich eine 3rd Party library verwenden. Wobei ich die noch nie gebraucht habe. Kommt in der Praxis nie vor.

Ja, glbasic.de ist auf 1&1 gehostet, verweist aber auf diese Seite.

Sebastian

  • Guest
Re: GLBasic, 2008/2009 Planungen
« Reply #27 on: 2008-Jul-30 »
Jap, als ich Threaded Programmierung gelernt hab hatte ich auch oft das Gefühl, dass eine Migräne im Anflug ist  :whistle:
Im Prinzip würde es ja ausreichen, eigene Funktionen als Threads zu definieren. Ich hab nämlich das Gefühl, dass es bei Renderfunktionen nicht so viel bringen wird ;) Aber zum Laden der Modelle und Texturen wäre es halt schön und für eigene Berechnungen.

Offline Kitty Hello

  • code monkey
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 10715
  • here on my island the sea says 'hello'
    • View Profile
    • http://www.glbasic.com
Re: GLBasic, 2008/2009 Planungen
« Reply #28 on: 2008-Sep-03 »
Nachdem das nächste Update größer sein wird (neuer WIZ compiler) hab ich vorgenommen weitere Änderungen einfließen zu lassen. So wird es z.B. jetzt natürliche (auch negative) Ganzzahlen geben (integer), die man mit "#" am Variablennamen erkennen wird.
Somit wird es möglich sein noch schnellere Spiele für GP2X/WIZ zu schreiben, da die ARM Prozessoren keine FPU (Gleitkommazahlencoprozessoreinheiten - geiles Wort) haben.
Um sich schonmal darauf vorzubereiten kann man die Zahlen mit "_N" hinten anstellen und später durch "#" ersetzen. Ich muss dadurch leider Befele wie READLONG usw. abändern. Wird aber nicht weiter tragisch werden.


Offline Schranz0r

  • Premium User :)
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 5024
  • O Rly?
    • View Profile
Re: GLBasic, 2008/2009 Planungen
« Reply #29 on: 2008-Sep-04 »
hört sich dochmal gut an :)
I <3 DGArray's :D

PC:
AMD Ryzen 7 1700 @3.9GHz, 16GB HyperX Fury 3000MHz Ram, ASUS ROG GTX 1060 STRIX 6GB, Windows 10 Pro 64Bit, MSi Tomahawk B350 Mainboard