Seite 2 von 2

Re: [HILFE]QuickBasic Code übersetzen 'InBetween'

Verfasst: 19.12.2018 23:12
von Mijikai
Hier ist der Link zum kompletten Code (Portal - Renderer):
https://bisqwit.iki.fi/jutut/kuvat/prog ... rtrend.bas

Versuche so was nachzubauen/verstehen.

Bin gerade dabei heraus zu bekommen wie 2D -> 2.5D funktioniert...
Bild

Re: [HILFE]QuickBasic Code übersetzen 'InBetween'

Verfasst: 24.12.2018 14:28
von DarkSoul
Der Kommentar ist Kokolores :allright:
Wahrscheinlich im Laufe der Entwicklung allmählich dort hingerutscht oder die Funktion wurde geändert und der alte Kommentar stehen gelassen.

FNib() gibt einen Boolean zurück. Der hat nur zwei (und nicht drei) Zustände.

Die einzige Codestelle, wo FNib() überhaupt genutzt wird, ist hier:

Code: Alles auswählen

DEF FNintersectBox%(x0,y0, x1,y1, x2,y2, x3,y3) = FNib(FNmin(x0,x1),FNmax(x0,x1),FNmin(x2,x3),FNmax(x2,x3)) _
                                              AND FNib(FNmin(y0,y1),FNmax(y0,y1),FNmin(y2,y3),FNmax(y2,y3))
Und die überprüft, ob sich zwei Boxen überschneiden.

Jede der Boxen hat zwei Koordinaten:
Boxen werden in QB üblicherweise als diagonale LINE gezeichnet, aber mit einem "B"(=outline) oder "BF"(=ausgefüllt) als letzten Parameter.

Wenn du so eine Oldsschool-Pseudo3D-Engine haben willst (so wie bei Doom 1), schau dir mal "Raycasting" an. <)