Tag/Nachtwechsel

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

mk

Betreff: Tag/Nachtwechsel

BeitragDo, Dez 16, 2004 16:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe wieder ein Problem.
Der Tag und Nachtwechsel funktioniert zwar, aber a=a+1 ist mir zu schnell.
Deshalb habe ich Delay 50 genommen.
Jetzt ist der Tag und Nachtwechsel zwar in Ordnung, aber ich kann mich nicht mehr richtig fortbewegen.
a=a+0.1 hat nicht funktioniert, eine andere Möglichkeit fällt mir aber nicht ein.

Code: [AUSKLAPPEN]


a=a+1
AmbientLight a,a,a
Delay 50
Pentium 4 2,6 GHz | 256 MB RAM | 120 GB Festplatte | DVD-ROM Laufwerk (48 Fach) |


I am a noob Smile

www.marcelkroener.de.vu

Mein Arcor Webspace =)
 

Dreamora

BeitragDo, Dez 16, 2004 16:44
Antworten mit Zitat
Benutzer-Profile anzeigen
definiere a als a# dann geht + 0.1 auch.

und dann einfach

ea = int(a)
AmbientLight ea, ea, ea

oder sowas
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
  • Zuletzt bearbeitet von Dreamora am Do, Dez 16, 2004 20:03, insgesamt einmal bearbeitet

mk

BeitragDo, Dez 16, 2004 16:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Vielen Dank! Very Happy
Pentium 4 2,6 GHz | 256 MB RAM | 120 GB Festplatte | DVD-ROM Laufwerk (48 Fach) |


I am a noob Smile

www.marcelkroener.de.vu

Mein Arcor Webspace =)
 

Timo

BeitragDo, Dez 16, 2004 19:58
Antworten mit Zitat
Benutzer-Profile anzeigen
bitte noch Status auf "Problem gelöst" stellen, sonst passts nicht Wink

mk

BeitragDo, Dez 16, 2004 20:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe mich eigentlich nur für Zitat:
definiere a als a# dann geht + 0.1 auch.
bedankt. Surprised

Ich schaffe es ja, dass von dunkel auf hell geht, aber dann springt er wieder auf null.
Es soll heller werden, und nach einer weile wieder dunkler. Rolling Eyes
Pentium 4 2,6 GHz | 256 MB RAM | 120 GB Festplatte | DVD-ROM Laufwerk (48 Fach) |


I am a noob Smile

www.marcelkroener.de.vu

Mein Arcor Webspace =)

wunderkind

BeitragDo, Dez 16, 2004 20:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Sieh dir mal die Hilfe auf BlitzBase.de an: http://www.blitzbase.de/befehle3d/ambientlight.htm

Der Wert kann nur von 0 bis 255 gehen (byte). Anschließend gibt's einen Überlauf und es geht von vorn los. 256 würde quasi wie 0 behandelt werden. Ergo musst du, sobald a = 255 ist, wieder runterzählen z.B. mit a = a - 0.1 .
 

Dreamora

BeitragDo, Dez 16, 2004 20:12
Antworten mit Zitat
Benutzer-Profile anzeigen
am einfachsten garnicht + 0.1 bzw -0.1 sondern + modifikator

Code: [AUSKLAPPEN]


; das muss in die initialisierung des programs
global tages_modifikator# = 0.1


; das in die tageswechsel funktion
a = a + tages_modifikator
ea = floor( a )

if a > 255 or a < 0
 tages_modifikator= -1 * tages_modifikator
endif




*sind verschiedene pseudocode abschnitte. vor allem das tages_modifikator# = 0.1 darf nicht in der schleife sein, sonst funktionierts nicht Smile*
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

mk

BeitragDo, Dez 16, 2004 20:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Es hat trotzdem nicht funktioniert.
Das Licht in meinem Spiel ist gleichgeblieben.
Pentium 4 2,6 GHz | 256 MB RAM | 120 GB Festplatte | DVD-ROM Laufwerk (48 Fach) |


I am a noob Smile

www.marcelkroener.de.vu

Mein Arcor Webspace =)
 

Dreamora

BeitragDo, Dez 16, 2004 20:37
Antworten mit Zitat
Benutzer-Profile anzeigen
ja da muss natürlich noch der AmbientLight ea, ea, ea von oben wieder rein ...
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

mk

BeitragDo, Dez 16, 2004 20:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Vielleicht liegt es ja am Programm.

BlitzBasic: [AUSKLAPPEN]

AppTitle \"Labyrinth\"
Graphics3D 800,600,32,2
SetBuffer=BackBuffer

grass=LoadTexture (\"data\gras.bmp\")
mauer=LoadTexture (\"data\wand.bmp\")
terrain=LoadTerrain(\"data\hmap.bmp\")
check=LoadMesh (\"data\checkpoint.b3d\")

plane=CreatePlane()
camera=CreateCamera()


PositionEntity camera,2,2,3
PositionEntity plane,0,0.1,0
PositionEntity check,61,4,2


Global tages_modifikator# = 0.1



While Not KeyHit (1)



EntityType camera,1
EntityType check,2
EntityType terrain,3

ScaleEntity terrain,1,5,1
ScaleEntity check,0.05,0.05,0.05
ScaleTexture grass,7,7
ScaleTexture mauer,0.5,0.5

EntityTexture terrain,mauer
EntityTexture plane,grass



If KeyDown(31) Then MoveEntity camera,0,0,-0.2 ;Rückwärts
If KeyDown(17) Then MoveEntity camera,0,0,0.2 ;Vorwärts
If KeyDown(30) Then TurnEntity camera,0,1,0 ;Links
If KeyDown(32) Then TurnEntity camera,0,-1,0

If EntityY(camera)-2<TerrainY(terrain, EntityX(camera),0,EntityZ(camera)) Then
PositionEntity camera, EntityX(camera),TerrainY(terrain, EntityX(camera),0,EntityZ(camera))+2,EntityZ(camera)
ElseIf EntityY(camera)>250 Then
PositionEntity camera, EntityX(camera),250,EntityZ(camera)
EndIf

Delay 10
Collisions 1,3,2,2
Collisions 1,2,2,1


MoveEntity camera,0,-1,0








AmbientLight 255,255,255



RenderWorld

UpdateWorld
col=CountCollisions(check)
If col=1 Then ccol=ccol+1
If ccol >0 Then

font=LoadFont (\"Comic Sans MS\",48,0,0,0)
SetFont font
Color 0,0,0
Rect 0,0,800,600
Color 0,128,255
Rect 190,255,560,45
Color 255,100,0
Text 200,250, \"Du hast den Ausgang gefunden !!!\"
FreeFont font
font2=LoadFont (\"Comic Sans MS\",30,1,0,0)
SetFont font2
Color Rnd (255),Rnd (255),Rnd (255)
Text 0,560, \"Drücke ESC...\"
FreeFont font2
Delay 50
EndIf
Color 0,0,0
Rect 610,570,190,30
Color 0,255,0
Text 620,580, \"2004 by Marcel Kröner\"
Flip



Wend
Pentium 4 2,6 GHz | 256 MB RAM | 120 GB Festplatte | DVD-ROM Laufwerk (48 Fach) |


I am a noob Smile

www.marcelkroener.de.vu

Mein Arcor Webspace =)

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group