Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - CptnRoughnight

#1
GLBasic - en / YSort
2023-Mar-28
Hi all,

I've recently pickup up my OpenPandora again and yeah, everytime I have this device in my hands I want to code for it.

I had some ideas what to do... for now I can load Csv-Tilemaps, my character is animated, scrolling through the map and,
and this was a hard part, Ysort of sprites does work.

I don't know how you this or if there's a better way.

Basically I have 2 arrays, 1 of the sprite type and 1 to store the indizes of the sprite array.... because I can't have a pointer to the sprite object in the array (correct my if I'm wrong)

So yeah, here is a small video:

https://streamable.com/mplvgu
#2
GLBasic - de / GLBasic IDE
2014-Jan-10
EDIT :

So Leute, die IDE wächst und gedeiht, habe jetzt mein erstes Projekt für Win32 komplett erstellen können. Die nächsten Punkte sind dann erstmal neuen Lexer schreiben, der angepasste CPP-Lexer von scintilla.Net ist nicht zufrieden stellend! :)

Allerdings brauch ich dann in naher Zukunft Hilfe bei den anderen Platformen, welche Argumente ich übergeben muss, welche Programme aufzurufen sind.

derzeit implementierte Features:

    - Multi Monitor Support (Abdocken der Projektmappe,Outputfenster etc.)
    - rudimentäre Code-Snippet Verwaltung (wird noch verbessert)

geplante Features :
    - voller Support für GLBasic Compiler (alle Platformen)
    - evtl. auch nativ C++ mit Crosscompilern
    - SVN Support
    - besserer "Projekt wizard"


Ich werde auf jeden Fall dran bleiben und auch bald im "internationalen" Forum posten, bin nur grad wegen Nachtschichten etwas müde im Kopf^^

- CptnRoughnight
#3
Hi,

here is my Perlin Noise implementation. Feel free to use in your projects!

Code (glbasic) Select

//****************************************
//** Perlin Noise Implementatio
//** Date: 14.12.2013
//****************************************

TYPE TPerlin
d%
f#
result#
fracX#
fracY#
total#
octaves
pnum%
    per_Prim_1%[]
    per_Prim_2%[]

FUNCTION InitNoise:num%
self.d% = 0
self.f# = 0
self.result = 0
self.fracX = 0
self.fracY = 0
self.total = 0
self.octaves = 0
self.pnum% = num%

DIMDATA self.per_Prim_1%[],15731,15733,15737,15739,15749,15761,15767,15773,15787,15791,15797,15803,15809,15817,15823
DIMDATA self.per_Prim_2%[],789221,789227,789251,789311,789323,789331,789343,789367,789377,789389,789391,789407,789419,789443,789473
ENDFUNCTION


FUNCTION Noise#:n%,octave
self.d = bXOR(ASL(n,13),n)

RETURN (1.0 - (bAND((self.d * (self.d * self.d * self.per_Prim_1%[self.pnum] + self.per_Prim_2%[self.pnum]) + 1376312627),2147483647)) / 1073741824.0)
ENDFUNCTION

FUNCTION Cos_Interpolate#:a#,b#,x#
self.f# = COS(PI * x#)

self.f# = (1-self.f#) * 0.5;
RETURN a# *(1-self.f#)+b# *self.f#;
ENDFUNCTION


FUNCTION Noise2D#:x%,y%
RETURN self.Noise(x * 46349 + y * 46351, 1)
ENDFUNCTION


FUNCTION Smooth_Noise2D#:x%,y%
self.result = (self.Noise2D(x-1,y-1) + self.Noise2D(x+1,y-1) + self.Noise2D(x-1,y+1) + self.Noise2D(x+1,y+1)) / 16
self.result = self.result +( (self.Noise2D(x-1,y) + self.Noise2D(x+1,y) + self.Noise2D(x,y-1) + self.Noise2D(x,y+1)) / 8)
self.result = self.result +( self.Noise2D(x,y) / 4 )
RETURN self.result;

ENDFUNCTION


FUNCTION InterpolatedNoise2D#:x%,y%
self.fracX# = x - INTEGER(x)
self.fracY# = y - INTEGER(y)

RETURN self.Cos_Interpolate(self.Cos_Interpolate(self.Smooth_Noise2D(INTEGER(x#), INTEGER(y#)), self.Smooth_Noise2D(INTEGER(x#) + 1, INTEGER(y#)), self.fracX#),self.Cos_Interpolate(self.Smooth_Noise2D(INTEGER(x#), INTEGER(y#)), self.Smooth_Noise2D(INTEGER(x#) + 1, INTEGER(y#)), self.fracX#), self.fracY#)

ENDFUNCTION

FUNCTION GetPerlinNoise2D#:x#,y#,pers#,freq#,amp#,oct
self.total# = 0

FOR self.octaves = 0 TO oct
freq# = freq*2
amp# = amp*pers
self.total# = self.total# + (self.InterpolatedNoise2D(x#*freq#,y#*freq#)*amp#)
NEXT
RETURN self.total
ENDFUNCTION
ENDTYPE


edit:

and the test program :

Code (glbasic) Select

// --------------------------------- //
// Project: Perlin
// Start: Tuesday, September 10, 2013
// IDE Version: 11.171


GLOBAL map[]
GLOBAL x,y
GLOBAL p AS TPerlin

DIM map[10001]

CONSTANT PI = 3.141593
p.InitNoise(4)

FOR x= 0 TO 99
FOR y = 0 TO 99
map[x+y*100] = (p.GetPerlinNoise2D(x,y,0.8,0.1,1,5)+1)/255 * 255
DEBUG "map: "+map[x+y*100]+"\n"
NEXT
NEXT

FOR x= 0 TO 99
FOR y = 0 TO 99
DRAWRECT x*4,y*4,4,4,RGB(map[x+y*100]*200,0,0)

NEXT
NEXT

SHOWSCREEN

MOUSEWAIT


Edit : Strange PI Bug :D
#4
Hi Leute,

Ich bin gerade in der Endphase für mein Beitrag zum "Crap Game Coding Competition 2013" und wollte nun anfangen das Spiel als einzelne PND auf der Pandora zu testen.
Sonst benutze ich immer den Umweg über die pandora-exe.pnd, weil ich weiß das die eigtl. PND nicht geht.

Jetzt die Frage: Wenn ich die PND erzeuge, was muss noch mitgeliefert werden? Im Terminal steht immer der Fehler :

Code (glbasic) Select

Starting the application ( ./pandora-exe.pnd  )           [ failed ]


Habe ich Einstellungen vergessen? Ich habe auch versucht den ganzen "distribute/pandora" Ordner zu kopieren, mit dem gleichen negativen Effekt.

Bitte um Hilfe, komme hier echt nicht weiter allein.

p.s. benutze aktuellstes GLBasic und Firmware SZ R1.55/Kernel 3.2.52


MfG
#5
Hi,
Next question. Are there any known issues on playing wav files on Pandora?
When I'm programming with Playsound, the Pandora program terminates after start. On Windows it plays the sound!

#6
Hi folks,

need some help  :)

I have a raspberry pi. This is my server. I need a function that returns me the IP address of the user.
User connects to server and the server sends the IP of the user back to the user. How does it work?

I tried it with NetGetIP $, but that just gives me the IP address on my network (192 172 .....)
:doubt:


#7
GLBasic - de / Perlin Noise
2013-Sep-11
Hi,
ich beschäftige mich für mein OpenPandora Spiel mit Perlin Noise, möchte den Algo verwenden um die Landschaft zu generieren.
Allerding hapert es an der Umsetzung der Berechnung. Schon der 1D-Noise Algo funzt nicht.

Code (glbasic) Select

x = (x<<13) ^ x;
    return ( 1.0 - ( (x * (x * x * 15731 + 789221) + 1376312589) & 7fffffff) / 1073741824.0);


Diesen Code hab ich versucht mittels GLBasic Befehle umzusetzen.

Code (glbasic) Select

FUNCTION Noise#:n%
LOCAL d#
d = bXOR(ASL(n,13),n)

RETURN (1.0 - bAND((d * (d * d * 15731 + 789221) + 1376312627),2147483647) / 1073741824.0)
ENDFUNCTION


Wenn ich mir mittels der Funktion ein Array fülle und die resultierende Linie (Noise gibt Y-Abweichung an) zeichnen lasse,
dann bekomm ich nur im 1. Arrayfeld eine Abweichung, ansonsten sind es die gleichen Werte.
Hab ich die falschen Befehle genommen?

Das Füllen des Array&Zeichnen :

Code (glbasic) Select

FOR x= 0 TO 100
map[x] = INTEGER(Noise(x))*10
DRAWRECT x*10,100+map[x],10,10,RGB(0,0,255)
NEXT


p.s. das ist alles noch quick&dirty um den Algo zu testen. :)

Ich hoffe auf Hilfe!
#8
GLBasic - de / BAnd Frage
2013-Apr-09


Gesendet von meinem GT-I9305 mit Tapatalk 2

#9
Hi,

I have a problem by using Sprite2Mem. First my image was warped and now i got only a white screen. Could anybody help me, please?
https://dl.dropbox.com/u/51078888/Sprite2Mem.zip

I have already used the search function but found nothing.

edit : I want to use Sprite2Mem to load a Bitmap and convert it to my MAP- format.

Thansk in advance!

#10
Haaaaallooo Leute,

ich bastel grad wieder bissi an meinem Endlos-Hobby-Jump'n'Run. Nun ist mir doch tatsaechlich eine Verbesserungsidee fuer GLBasic gekommen.

mein Code sieht in etwa so aus :

Code (glbasic) Select

TYPE TRect
  x1%
  x2%
  y1%
  y2%


Code (glbasic) Select

Function Draw:index%,rect as TRect


nun wuerde ich die Funktion Draw gerne aufrufen ohne eine Instanz von TRect mittels Local/Global zu erstellen, quasi eine Instanz erst beim Funktionsaufruf erzeugen und uebergeben, ich hab mir das so vorgestellt :
Code (glbasic) Select

Draw(spr_player,[10,10,100,100])


Waere das moeglich, schon in Hinblick auf V11? Ist es ueberhaupt nuetzlich fuer andere, oder nur schlechter Programmierstil?!

LG
#11
Hi Leute,
nachdem ich seid gestern diesen Threaf :

http://www.glbasic.com/forum/index.php?topic=927.15

durchforstet habe, bin ich auf ein Problem gestoßen. Die Rotation klappt soweit, ist ja auch nicht viel zu beachten, nur bei der
Darstellung der Rotationsanimation mittels Sprite_Mid wird keine Transparenz beachtet, heißt, die Sprites die mit Grabsprite
aufgenommen wurden sind in der Grundfarbe (255,0,128) und diese Pixel werden auch gezeichnet... egal ob ich mit Smoothshading hantiere oder nicht... ich hoffe ich hab nicht wieder irgendwas kleines Überlesen und danke schonmal im Voraus den Helfenden!

LG

Edit : Werde morgen ein Beispiel reinstellen, habs heute nicht mehr geschafft und vorhin vergessen, sry
#12
Hi Leute,
ich hab wieder ein Problem. Und zwar möcht ich bissi mit DDgui auf der Pandora rumspielen. Ein kleiner Test war ja auch erfolgreich... nur bekomme ich den Dialog, auf WIN32 sowie auf der Pandora komisch angezeigt, die Titelleiste is verrutscht, ich kann den Dialog nicht SCALEABLE/MOVEABLE machen.. auch die Buttons lassen sich mittels DDgui_set nicht verschieben...

Code (glbasic) Select

DDgui_Init()

DDgui_pushdialog(0,0,800,480)
DDgui_set("", "TEXT", "Caption Text")
DDgui_set("", "MOVEABLE","TRUE")
DDgui_set("", "SCALEABLE","TRUE")
DDgui_button("bt_ok", "OK", 0,0)
DDgui_button("bt_exit","ENDE",120,25)
DDgui_set("bt_exit","XPOS","340")
DDgui_set("bt_exit","YPOS","400")
MainLoop()

FUNCTION MainLoop:
LOCAL ende=0
LOCAL mbpressed=0

REPEAT
MOUSESTATE MouseX,MouseY,MB1,MB2

IF KEY(1)=1 THEN ende=1
CLEARSCREEN RGB(70,162,148)

DDgui_show(FALSE)
SHOWSCREEN
UNTIL ende=1
ENDFUNCTION


Vllt. sieht einer von euch den Fehler. Ich habe die Basic Version :10.244 und benutze das DDgui aus Samples/Common

Lg

Edit: Screenshot :> :
#13
Hi Leute,
ich hab die threads im englischen Teil ein bisschen verfolgt. Die Suchfunktion gequält, aber dennoch keine beta gefunden. Gibt es eine offizielle Beta? Die GUI - Funktionen würden gerade in ein Projekt rein passen, welches ich für die Pandora schreibe. Danke für Antworten. MfG
#14
Hi Leute,

ich hab jetzt schon die SuFu bekniet und in GLBasic direkt reingeschaut, habe aber nirgends was gefunden um gewisse Eigenschaften wie z.B. CPU-Clock für die PND einzustellen, gibt es da eine Möglichkeit ein Tool für das nächste Update mitzuliefern mit dem man die gewünschten Einstellungen vornehmen kann?

MfG
#15
Hi,
Gibt es eine möglichkeit in einer 2D-Tilemap dynamische Lichtquellen zu benutzen, der damit einhergehende Schatten ist mir auch recht wichtig.
Zur Info: es geht um ein 2D-Projekt für den WIz

Mfg
#16
Hi,
ich hab grad ein kleines Problem. Und zwar habe ich eine IF-Anweisung die auf meinem 24" Bildschirm gut anzusehen ist, will ich den Quellcode aber auf meinem Netbook überarbeiten ist das scrollen lästig.
Im C/C++ ist es möglich eine If-Anweisung über mehrere Zeilen zu schreiben, gibts das bei GLBasic nicht?
Beispiel:
Code (glbasic) Select
IF (player.xpos > platform.xrel) AND (player.xpos < platform.xrel+platformwidth) AND (player.xpos+player.width > platform.xrel) AND (player.xpos+player.width < platform.xrel+platformwidth)


Diese Abfrage wird sicher noch länger, aber verschachtelte IF's finde ich dann noch unübersichtlicher.
Ich hoffe ihr wisst was ich meine :)

MfG
#17
GLBasic - en / Pandora
2011-Feb-09
hi folks,

has anybody tested the getpixel/setpixel - function on the pandora? What's with the output of getpixel is it equal to the values set with setpixel?
#18
Hi Leute,

wollte hier mal meine Idee vorstellen, und zwar bin ich gerade dabei eine Routine zu schreiben die überprüft ob ein Sprite mit der Welt kollidiert.
Dabei ist das Sprite nur ein Bild, die Kollision soll durch Vektoren überprüft werden, d.h. zum Beispiel vom "Schwerpunkt" der Figur zwei Vektoren zu den unteren Ecken. Die Welt, der Boden besteht auch aus Vektoren, somit müsste die Prüfung auf Überschneidung ja eigtl. ziemlich simpel werden, oder nicht?
Wie gesagt ist das bis jetzt nur eine Idee, aber ich hoffe ich kann den ersten Versuch am Samstag proggen, über Erfolg oder Fail werde ich euch noch informieren.
Was haltet ihr von der Idee, hat jemand noch tipps?
MfG
#19
Hi dudes,
habe folgendes Problem, wenn ich z.B. Das Netzwerkbeispiel kompilieren will (dieses mit sever/Client Funktion) und das testen möchte hängen sich sowohl Server als auch Client auf,dies passiert unter Vista32Bit und XP32Bit gleichermaßen, Firewall und alles ist aus!
Hoffe auf Hilfe!
MfG
#20
GLBasic - de / WIZ Netzwerk
2010-Aug-12
Hi,
kann mir jemand sagen ob die Netzwerkfunktionen von GLBasic für den WIZ funktionieren. Für den WIZ soll demnächst ein WLAN-Adapter kommen (laut ankündigungen gleichzeitig mit dem Caanoo). Wäre recht genial wenn das Out-of-Box funktionieren täte.
Was wäre andererseits nötig um sich per GLBasic-Spiel in ein Netzwerk einzuklinken (Multiplayer-Spiele)

MfG