Little Qubics

Übersicht BlitzBasic Codearchiv

Neue Antwort erstellen

tft

Betreff: Little Qubics

BeitragFr, Sep 24, 2004 11:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi...

ein kleines Programm. War eine vorstufe des Intro von StationDefence.

BlitzBasic: [AUSKLAPPEN]
Graphics3D 640,480,16,2
AppTitle "Intro 1 (C) by TFT"

cam=CreateCamera()
CameraZoom cam,1.5
CameraRange cam,1,1000

;light=CreateLight(1)
AmbientLight $ff,$ff,$ff

texg=CreateTexture(32,32)

SetBuffer TextureBuffer(texg)

trans=$ff
ram=$0
fx=0
blen=0

Color 0,trans,0
Rect 0,0,32,32,1
Color 0,ram,0
Rect 0,0,32,32,0
objg=CreateCube()
EntityTexture objg,texg
EntityBlend objg,blen
EntityFX objg,fx
HideEntity objg

texr=CreateTexture(32,32)

SetBuffer TextureBuffer(texr)

Color trans,0,0
Rect 0,0,32,32,1
Color ram,0,0
Rect 0,0,32,32,0
objr=CreateCube()
EntityTexture objr,texr
EntityBlend objr,blen
EntityFX objr,fx
HideEntity objr

texb=CreateTexture(32,32)

SetBuffer TextureBuffer(texb)

Color 0,0,trans
Rect 0,0,32,32,1
Color 0,0,ram
Rect 0,0,32,32,0
objb=CreateCube()
EntityTexture objb,texb
EntityBlend objb,blen
EntityFX objb,fx
HideEntity objb

piv=CreatePivot()

mul#=2
quad=6
quadh=quad/2
quadl=quad+1

Dim obj_h(quadl*quadl*quadl)

For i3=0 To quad
For i2=0 To quad
For i=0 To quad
i5=i5+1
If i5=3 Then i5=0
If i5=0
i4=CopyEntity(objb,piv)
Else If i5=1
i4=CopyEntity(objg,piv)
Else If i5=2
i4=CopyEntity(objr,piv)
EndIf
PositionEntity i4,i2*mul-mul*quadh,i3*mul-mul*quadh,i*mul-mul*quadh
obj_h(i6)=i4
i6=i6+1
Next
Next
Next
anz_obj=i6-1

zom=-1000
PositionEntity cam,0,0,zom

set=0
set_t=MilliSecs()+10000
set_c=0
blen=3
fx=0
alpha#=1.0

SetBuffer BackBuffer()

Repeat

If set=0
If zom<-30
zom=zom+10
Else
If set_t<MilliSecs()
set=1
set_t=MilliSecs()+10000
EndIf
EndIf
Else If set=1
If alpha>0
i6=0
For i3=0 To quad
For i2=0 To quad
For i=0 To quad
PositionEntity obj_h(i6),i2*mul-mul*quadh,i3*mul-mul*quadh,i*mul-mul*quadh
EntityAlpha obj_h(i6),alpha
i6=i6+1
Next
Next
Next
mul=mul+.5
alpha=alpha-.01
Else
If set_t<MilliSecs()
set=2
set_t=MilliSecs()+10000
set_c=0
blen=0
EndIf
EndIf
Else If set=2
If blen<>3
i6=0
blen=3
For i3=0 To quad
For i2=0 To quad
For i=0 To quad
EntityAlpha obj_h(i6),1
EntityBlend obj_h(i6),blen
EntityFX obj_h(i6),16
i6=i6+1
Next
Next
Next
Else If mul>2
i6=0
For i3=0 To quad
For i2=0 To quad
For i=0 To quad
PositionEntity obj_h(i6),i2*mul-mul*quadh,i3*mul-mul*quadh,i*mul-mul*quadh
i6=i6+1
Next
Next
Next
mul=mul-.5
Else If set_t<MilliSecs()
set=3
set_t=MilliSecs()+10000
EndIf
Else If set=3

EndIf

If KeyHit(1) Then en=1

PositionEntity cam,0,0,zom
TurnEntity piv,.5,.3,.2

If KeyDown(2) Then zom=zom-5
If KeyDown(3) Then zom=zom+5

RenderWorld

Flip

Until en>0

TFT
https://www.sourcemagic.ch
Monkey,HTML5,CSS3,W 10 64 Bit, 32 GB Ram, GTX Titan, W8 ist Müll !!!!!!

Neue Antwort erstellen


Übersicht BlitzBasic Codearchiv

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group