sprite-prob
Übersicht
BlitzBasic
Blitz3D
CrayholeBetreff: sprite-prob |
Antworten mit Zitat |
|
|---|---|---|
|
Hi
ich wollte zum ersten ma was mit sprites ausprobieren und hab jetzt einfach mal 50 sprites an zufälligen positionen erstellen, aber es werden irgendwie mehr als 50 stück, aber warum? und warum hängt das dann s0? Code: [AUSKLAPPEN] Graphics3D 1024,786,16 SetBuffer BackBuffer() cam1=CreateCamera() While Not KeyDown(1) Dim sprite(50) For I=1 To 50 sprite(I)=CreateSprite() SeedRnd MilliSecs() x=Rand(1,70) y=Rand(1,20) PositionEntity sprite(I),x,y,15 Next If KeyDown(208) Then MoveEntity cam1,0,0,-2 UpdateWorld RenderWorld Flip Wend End |
||
| Gewinnen ist nicht alles-so denken die Verlierer | ||
|
|
Travis |
Antworten mit Zitat |
|---|---|---|
|
Ähm, du erstellst deine Sprites in der Hauptschleife. Das solltest du lieber einmal am Anfang machen.
Code: [AUSKLAPPEN] raphics3D 800,600,16 SetBuffer BackBuffer() SeedRnd MilliSecs() cam1=CreateCamera() Dim sprite(50) For I=1 To 50 x = Rnd(800) ; PositionX y = Rnd(600) ; PositionY w = Rnd(20) ; Breite h = Rnd(20) ; Höhe x = (x*2)-800+w ; 2D > 3D (thx to DC) y = -(y*2)+600-h ; 2D > 3D (thx to DC) sprite(I)=CreateSprite() ScaleSprite sprite(i), w,h PositionEntity sprite(I),x,y,800 EntityColor sprite(i), Rnd(255), Rnd(255), Rnd(255) Next While Not KeyDown(1) If KeyDown(208) Then MoveEntity cam1,0,0,-2 UpdateWorld RenderWorld Flip Wend End |
||
|
www.funforge.org
Ich hasse WASD-Steuerung. Man kann alles sagen, man muss es nur vernünftig begründen können. |
||
Crayhole |
Antworten mit Zitat |
|
|---|---|---|
|
aber dann werden bei mir nur drei stück erstellt warum? Code: [AUSKLAPPEN] Graphics3D 1024,786,16 SetBuffer BackBuffer() cam1=CreateCamera() Dim sprite(50) For I=1 To 50 sprite(I)=CreateSprite() SeedRnd MilliSecs() x=Rand(1,70) y=Rand(1,20) PositionEntity sprite(I),x,y,15 Next While Not KeyDown(1) If KeyDown(208) Then MoveEntity cam1,0,0,-2 UpdateWorld RenderWorld Flip Wend End isses so nicht richtig? |
||
| Gewinnen ist nicht alles-so denken die Verlierer | ||
|
|
Suco-XBetreff: ..... |
Antworten mit Zitat |
|---|---|---|
|
Tu das SeedRnd MilliSecs() über die For next schleife, nicht in die For next schleife. Sonst ist die Position Trotz Rand trotzdem immer gleich bei allen Sprites.
bye |
||
| Intel Core 2 Quad Q8300, 4× 2500 MHz, 4096 MB DDR2-Ram, GeForce 9600GT 512 MB | ||
Crayhole |
Antworten mit Zitat |
|
|---|---|---|
|
und wie wird jetzt nach ner Zeit immer eins gelöscht? das funzt bei mir auch net |
||
| Gewinnen ist nicht alles-so denken die Verlierer | ||
|
|
Suco-XBetreff: ...... |
Antworten mit Zitat |
|---|---|---|
|
In die Schleife mit diesem Code :
Code: [AUSKLAPPEN] If Rand(0,100) = 1 For i = 1 to 50 If Sprite(i)<>0 freeentity Sprite(i) Sprite(i) = 0 exit endif next endif Ist jetzt aus dem Kopf, sollte aber klappen. bye |
||
| Intel Core 2 Quad Q8300, 4× 2500 MHz, 4096 MB DDR2-Ram, GeForce 9600GT 512 MB | ||
Übersicht
BlitzBasic
Blitz3D
Powered by phpBB © 2001 - 2006, phpBB Group
