Camera + Geschwindigkeit?

Übersicht BlitzBasic Blitz3D

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

noobyblaster

Betreff: Camera + Geschwindigkeit?

BeitragFr, Okt 02, 2009 17:07
Antworten mit Zitat
Benutzer-Profile anzeigen
servus Smile

Ich bin jetzt bei meinem Racedriver schon ziemlich "weit" vorangekommen
und nun will ich das wenn ich NO² aktiviere der bildschirm rund um das auto unscharf gezeichnet wird. Also ich will die Beschleunigung/Geschindigkeit rüberbringen....
wie mach ich das am besten???

so in der art solls werden !
http://www.polizeibericht.ch/t...usse_u.jpg
  • Zuletzt bearbeitet von noobyblaster am Fr, Okt 02, 2009 18:08, insgesamt einmal bearbeitet

ToeB

BeitragFr, Okt 02, 2009 17:10
Antworten mit Zitat
Benutzer-Profile anzeigen
am besten nimmst du einen Blur der aber ver schieden stark gerendert wird.

Also als beispiel nimmst du eine Texture die innen schwarz ist (da wo kein Blur gezeichent werden soll und nach außen hin weiß. Dann normalen Blur benutzen nur die Texture draufprojezieren (farg mich net wie )

mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

noobyblaster

BeitragFr, Okt 02, 2009 17:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Shocked
kann das einer mal erklären?
Projekt: Crazy Racedriver [vorübergehend eingestellt]
Genre: Rennspiel
Fortschritt: ca. 60%

Tankbuster

BeitragFr, Okt 02, 2009 18:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Meinst du sowas?

user posted image

Das ist ein Sprite, dass vor der kamera hängt.
Es wird der BackBuffer mit CopyRect auf den Texturbuffer gezeichnet. Natürlich ist das Sprite dann transparent und hat eventuell noch verschiedene Blend und FX Modes aktiv.

Sieht ganz gut aus, oder? Wink
Twitter
Download Jewel Snake!
Windows|Android

noobyblaster

BeitragFr, Okt 02, 2009 18:44
Antworten mit Zitat
Benutzer-Profile anzeigen
ganeu das mein ich Wink
aber ich hab noch nicht wirklich richtig verstanden wie ich das mach?
Projekt: Crazy Racedriver [vorübergehend eingestellt]
Genre: Rennspiel
Fortschritt: ca. 60%

Tankbuster

BeitragFr, Okt 02, 2009 19:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]

Type Bloom
Field img
Field tex
Field art
End Type
Global bloom_on=1
Const graphic_x=1024
Const graphic_y=768

Graphics3D graphic_x,graphic_y
SetBuffer BackBuffer()
camera=CreateCamera()
light=CreateLight(1)
RotateEntity light,90,0,0

cube1=CreateCube()
EntityBlend cube1,3
EntityColor cube1,100,100,100
PositionEntity cube1,-.5,0,5

create_bloom(cam,.9)

While Not KeyDown(1)
TurnEntity cube1,1,2,1
If KeyHit(28) Then bloom_on=-bloom_on


RenderWorld()
update_bloom()



         
RenderWorld
Flip
Wend
End


Function create_bloom(camera,alpha#)
bloom.Bloom = New Bloom

bloom\tex = CreateTexture(graphic_x,graphic_y,256)
bloom\img = CreateSprite(camera)
PositionEntity bloom\img,0,-0.5,1.9
EntityOrder bloom\img,-1
ScaleSprite bloom\img,2,2
EntityTexture bloom\img,bloom\tex
EntityAlpha bloom\img,alpha
EntityBlend bloom\img,3

End Function


Function update_bloom()

For bloom.bloom = Each bloom
If bloom_on=1 Then ShowEntity bloom\img
If bloom_on=-1 Then HideEntity bloom\img
CopyRect 0,0,graphic_x,graphic_y,0,0,BackBuffer(),TextureBuffer(bloom\tex)
Next
End Function



Bittesehr. Das hab ich grad noch von meinen alten Codes ausgegraben. Ist zwar irgendwie sehr Sinnlos, dass der verzerrte-Bloom in einem Type verwaltet wird, aber hier sollte das Prinzip klarwerden Wink


PS: Später sieht das dann richtig gut aus Wink
Twitter
Download Jewel Snake!
Windows|Android

noobyblaster

BeitragFr, Okt 02, 2009 19:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Das sieht richtig geil aus Smile
aber ich bekomms nicht richtig übertragen
Hier der
Code: [AUSKLAPPEN]
Type Bloom
Field img
Field tex
Field art
End Type
Global bloom_on=1               

Graphics3D 640,480,16,1

Global timer#=CreateTimer(60)

SetBuffer BackBuffer()

fntArial=LoadFont("impact.ttf",40)
fntArial2=LoadFont("impact.ttf",20)


player=LoadMesh("Meshes\auto.3ds")
PositionEntity player,400,28.452,300
ScaleMesh player,0.035,0.03,0.03
RotateMesh player,0,180,0
EntityType player,2


camera=CreateCamera(player)
PositionEntity camera,0,5,-11
CameraFogColor camera,255,255,255
CameraFogRange camera,1,400




l5=CreateLight(2)
PositionEntity l5,250,230,300
RotateEntity l5,90,0,0
EntityParent l5,m


s_posten=LoadMesh("Meshes\Streckenposten.3ds")
ScaleMesh s_posten,0.1,0.1,0.1
PositionMesh s_posten,460,80,415
EntityFX s_posten,1


st=LoadTexture("Texturen\Wolken.jpg")
ScaleTexture st,0.1,0.1


skybox=CreateSphere ()
FlipMesh skybox
EntityType skybox,1
EntityTexture skybox,st
ScaleEntity skybox ,500,550,500
EntityOrder skybox,1
PositionEntity skybox,200,0,200
EntityFX skybox,1
      

terrain=LoadMesh("Meshes\Rennstrecke.b3d")
PositionMesh terrain,250,40,300
EntityType terrain,1
EntityFX terrain,1


zaun1=LoadMesh("Meshes\zaun.3ds")
ScaleEntity zaun1,0.83,0.3,0.5
PositionEntity zaun1,10,31,-13
EntityType zaun1,1


zaun2=CopyMesh(zaun1)
RotateMesh zaun2,0,-90,0
ScaleEntity zaun2,0.5,0.3,0.51
PositionEntity zaun2,-63,31,73
EntityType zaun2,1


kmhbalken=LoadSprite("Texturen\kmh balken.png",4)
ScaleSprite kmhbalken,2,1
PositionEntity kmhbalken,408,26.9,299
EntityParent kmhbalken,camera
EntityOrder kmhbalken,-1




Collisions 2,1,2,2


boost#=10
campos=1
 

create_bloom(cam,.9)

While Not KeyDown(1)



If KeyHit(2) Then campos=1
If KeyHit(3) Then campos=2
If KeyHit(4) Then campos=3 

If  campos=1 Then PositionEntity camera,0,5,-11
If  campos=2 Then PositionEntity camera,0,5,-15
If  campos=3 Then PositionEntity camera,0,3,-1



If KeyDown( 200 )=True And speed# < 0.2 Then
speed#=speed#+0.001
EndIf

If KeyDown( 200 )=True And speed# < 0.5 Then
speed#=speed#+0.0009
EndIf

If KeyDown( 200 )=True And speed# < 0.7 Then
speed#=speed#+0.0009
EndIf

If KeyDown( 200 )=True And speed# < 1 Then
speed#=speed#+0.0008
EndIf

If KeyDown( 200 )=True And speed# < 1.2 Then
speed#=speed#+0.0008
EndIf

If KeyDown( 200 )=True And speed# < 1.5 Then
speed#=speed#+0.0008
EndIf

If KeyDown( 200 )=True And speed# < 2 Then
speed#=speed#+0.0007
EndIf

If KeyDown( 200 )=True And speed# < 2.2 Then
speed#=speed#+0.0007
EndIf

If KeyDown(208)
speed# = speed# - 0.01
EndIf


If speed# > 2.2 speed# = 2.2
If speed# < -0.5 speed# = -0.5

If KeyDown(200)
   If speed# < 0 speed# = speed# + 0.01
   Else
   If speed# > 0 Then speed# = speed# - 0.002 Else speed# = 0
   If speed# > 0 speed# = speed# - 0.002
EndIf

If Not KeyHit(57) Then CameraFogMode camera,0

If KeyDown(200)=True And KeyDown(57)=True And boost# > 0 And speed# < 2.2 Then
   bloom_on=-bloom_on
   ;CameraFogMode camera,1
   speed#=speed#+0.015
   boost#=boost#-0.125
End If


If speed#=2.2 And boost# < 10 Then boost#=boost#+0.0085
If boost# < 0 Then boost# = 0
If boost# > 10 Then boost# = 10

lenken# = 1.5

If speed# = 0 Then lenken# = 0

If KeyDown( 205 )=True Then TurnEntity player,0,-lenken#,0
If KeyDown( 203 )=True Then TurnEntity player,0,lenken,0

If Not EntityCollided (player,1) speed#=speed# -0.01


If EntityY(player) > 45 speed#=speed#-0.1
If EntityY(player) < 20 Then PositionEntity player,400,30,300
 


balken#=boost#*10
tacho=speed#*100


MoveEntity player,0,0,speed#


RotateMesh skybox,0,0.02,0

TranslateEntity player,0,-0.3,0


RenderWorld()
update_bloom()
RenderWorld
UpdateWorld

SetFont fntArial
Color 0,0,0
Text 525,430,Int(tacho)
Color 128,128,128
Rect 513,399,130,20
Color 0,0,200
SetFont fntArial2
Text 515,400, "NO²"
Rect 539,404,balken#,13
Color 255,255,255
Text 10,40, "x: " +EntityX(player)
Text 10,55, "y: " +EntityY(player)
Text 10,70, "z: " +EntityZ(player)
Text 10,10, "Kameramodus: " + campos

Flip

Wend

End





Function create_bloom(camera,alpha#)
bloom.Bloom = New Bloom

bloom\tex = CreateTexture(graphic_x,graphic_y,256)
bloom\img = CreateSprite(camera)
PositionEntity bloom\img,0,-0.5,1.9
EntityOrder bloom\img,-1
ScaleSprite bloom\img,2,2
EntityTexture bloom\img,bloom\tex
EntityAlpha bloom\img,alpha
EntityBlend bloom\img,3

End Function


Function update_bloom()

For bloom.bloom = Each bloom
If bloom_on=1 Then ShowEntity bloom\img
If bloom_on=-1 Then HideEntity bloom\img
CopyRect 0,0,graphic_x,graphic_y,0,0,BackBuffer(),TextureBuffer(bloom\tex)
Next
End Function


was mach ich falsch?
Projekt: Crazy Racedriver [vorübergehend eingestellt]
Genre: Rennspiel
Fortschritt: ca. 60%

Tankbuster

BeitragFr, Okt 02, 2009 20:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
create_bloom(camera,.9)

könnte helfen Wink Very Happy
Twitter
Download Jewel Snake!
Windows|Android

noobyblaster

BeitragFr, Okt 02, 2009 21:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Das funktioniert nur teilweise schau dir bitte mal an was ich falschmache Sad
und ein kleines feedback (zum code und game) wär auch ganz nett. Smile
hier ist mein kleiner Racedriver :

https://www.blitzforum.de/upload/file.php?id=6987
Projekt: Crazy Racedriver [vorübergehend eingestellt]
Genre: Rennspiel
Fortschritt: ca. 60%

ToeB

BeitragFr, Okt 02, 2009 22:00
Antworten mit Zitat
Benutzer-Profile anzeigen
Du hast graphics_x und graphics_y vergessen ... ohne das kopiert der nur ein 1*1 feld Wink


Edit :
Probier den code mal :
Code: [AUSKLAPPEN]
Type Bloom
Field img
Field tex
Field art
End Type
Global bloom_on=1
   
Const graphic_x=1024
Const graphic_y=768

Graphics3D graphic_x,graphic_y,16,2

Global timer#=CreateTimer(60)

SetBuffer BackBuffer()

fntArial=LoadFont("impact.ttf",40)
fntArial2=LoadFont("impact.ttf",20)


player=LoadMesh("Meshes\auto.3ds")
PositionEntity player,400,28.452,300
ScaleMesh player,0.035,0.03,0.03
RotateMesh player,0,180,0
EntityType player,2


camera=CreateCamera(player)
PositionEntity camera,0,5,-11
CameraFogColor camera,255,255,255
CameraFogRange camera,1,400




l5=CreateLight(2)
PositionEntity l5,250,230,300
RotateEntity l5,90,0,0
EntityParent l5,m


s_posten=LoadMesh("Meshes\Streckenposten.3ds")
ScaleMesh s_posten,0.1,0.1,0.1
PositionMesh s_posten,460,80,415
EntityFX s_posten,1


st=LoadTexture("Texturen\Wolken.jpg")
ScaleTexture st,0.1,0.1


skybox=CreateSphere ()
FlipMesh skybox
EntityType skybox,1
EntityTexture skybox,st
ScaleEntity skybox ,500,550,500
EntityOrder skybox,1
PositionEntity skybox,200,0,200
EntityFX skybox,1
      

terrain=LoadMesh("Meshes\Rennstrecke.b3d")
PositionMesh terrain,250,40,300
EntityType terrain,1
EntityFX terrain,1


zaun1=LoadMesh("Meshes\zaun.3ds")
ScaleEntity zaun1,0.83,0.3,0.5
PositionEntity zaun1,10,31,-13
EntityType zaun1,1


zaun2=CopyMesh(zaun1)
RotateMesh zaun2,0,-90,0
ScaleEntity zaun2,0.5,0.3,0.51
PositionEntity zaun2,-63,31,73
EntityType zaun2,1


kmhbalken=LoadSprite("Texturen\kmh balken.png",4)
ScaleSprite kmhbalken,2,1
PositionEntity kmhbalken,408,26.9,299
EntityParent kmhbalken,camera
EntityOrder kmhbalken,-1




Collisions 2,1,2,2


boost#=10
campos=1
 

create_bloom(camera,.5)

While Not KeyDown(1)

If KeyHit (57) Then bloom_on=-bloom_on

If KeyHit(2) Then campos=1
If KeyHit(3) Then campos=2
If KeyHit(4) Then campos=3 

If  campos=1 Then PositionEntity camera,0,5,-11
If  campos=2 Then PositionEntity camera,0,5,-15
If  campos=3 Then PositionEntity camera,0,3,-1



If KeyDown( 200 )=True And speed# < 0.2 Then
speed#=speed#+0.001
EndIf

If KeyDown( 200 )=True And speed# < 0.5 Then
speed#=speed#+0.0009
EndIf

If KeyDown( 200 )=True And speed# < 0.7 Then
speed#=speed#+0.0009
EndIf

If KeyDown( 200 )=True And speed# < 1 Then
speed#=speed#+0.0008
EndIf

If KeyDown( 200 )=True And speed# < 1.2 Then
speed#=speed#+0.0008
EndIf

If KeyDown( 200 )=True And speed# < 1.5 Then
speed#=speed#+0.0008
EndIf

If KeyDown( 200 )=True And speed# < 2 Then
speed#=speed#+0.0007
EndIf

If KeyDown( 200 )=True And speed# < 2.2 Then
speed#=speed#+0.0007
EndIf

If KeyDown(208)
speed# = speed# - 0.01
EndIf


If speed# > 2.2 speed# = 2.2
If speed# < -0.5 speed# = -0.5

If KeyDown(200)
   If speed# < 0 speed# = speed# + 0.01
   Else
   If speed# > 0 Then speed# = speed# - 0.002 Else speed# = 0
   If speed# > 0 speed# = speed# - 0.002
EndIf

If Not KeyHit(57) Then CameraFogMode camera,0

If KeyDown(200)=True And KeyDown(57)=True And boost# > 0 And speed# < 2.2 Then
   
   ;CameraFogMode camera,1
   speed#=speed#+0.015
   boost#=boost#-0.125
End If


If speed#=2.2 And boost# < 10 Then boost#=boost#+0.0085
If boost# < 0 Then boost# = 0
If boost# > 10 Then boost# = 10

lenken# = 1.5

If speed# = 0 Then lenken# = 0

If KeyDown( 205 )=True Then TurnEntity player,0,-lenken#,0
If KeyDown( 203 )=True Then TurnEntity player,0,lenken,0

If Not EntityCollided (player,1) speed#=speed# -0.01


If EntityY(player) > 45 speed#=speed#-0.1
If EntityY(player) < 20 Then PositionEntity player,400,30,300
 


balken#=boost#*10
tacho=speed#*100


MoveEntity player,0,0,speed#


RotateMesh skybox,0,0.02,0

TranslateEntity player,0,-0.3,0


RenderWorld()
update_bloom()
RenderWorld
UpdateWorld

SetFont fntArial
Color 0,0,0
Text 525,430,Int(tacho)
Color 128,128,128
Rect 513,399,130,20
Color 0,0,200
SetFont fntArial2
Text 515,400, "NO²"
Rect 539,404,balken#,13
Color 255,255,255
Text 10,40, "x: " +EntityX(player)
Text 10,55, "y: " +EntityY(player)
Text 10,70, "z: " +EntityZ(player)
Text 10,10, "Kameramodus: " + campos

Flip

Wend

End





Function create_bloom(camera,alpha#)
bloom.Bloom = New Bloom

bloom\tex = CreateTexture(graphic_x,graphic_y,256)
bloom\img = CreateSprite(camera)
PositionEntity bloom\img,0,-0.5,1.9,0
EntityOrder bloom\img,-1
ScaleSprite bloom\img,2,2
EntityTexture bloom\img,bloom\tex
EntityAlpha bloom\img,alpha
EntityBlend bloom\img,3

End Function


Function update_bloom()

For bloom.bloom = Each bloom
If bloom_on=1 Then ShowEntity bloom\img
If bloom_on=-1 Then HideEntity bloom\img
CopyRect 0,0,graphic_x,graphic_y,0,0,BackBuffer(),TextureBuffer(bloom\tex)
Next
End Function


Bei mir funtz er Wink

mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

noobyblaster

BeitragSa, Okt 03, 2009 10:24
Antworten mit Zitat
Benutzer-Profile anzeigen
ja das funktioniert jetzt kam mir über Nacht die idee:
ich könnte bloom_on=-bloom_on permanennt lassen ohne bedingung und könnte statt create_bloom(camera,.5)
bloom# mit dem speed# rechnen create_bloom(camera,bloom#) d.h. umso schneller speed# umso höher bloom# hab ich probiert geht aber nicht weil ich da ja create_bloom(camera,bloom#) in der mainloop haben müsste und dann wird bloom# von allein immer größer.....
wie könnte ich das anstellen das es immer verzogener wird umso schneller ich fahre???

P.S was sagst du zu dem " Game " ? Smile
Projekt: Crazy Racedriver [vorübergehend eingestellt]
Genre: Rennspiel
Fortschritt: ca. 60%

Tankbuster

BeitragSa, Okt 03, 2009 12:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
create_bloom(camera,bloom#)


Das zweite ist nur der Alpha-Wert des Sprites. Wenn du den erhöhst, wird alles heller. Es sei denn du verwendest andere Blendmodi. Diese Verzerrung wird hauptsächlich in dieser Zeile erreicht.
Wenn du aus 1.9 z.B. 2 machst, dann ist die Verzerrung fast ganz weg.

Zitat:
PositionEntity bloom\img,0,-0.5,1.9,0




Außerdem funktioniert der Bloom nur bei einer bestimmten Auflösung. Ansonsten musst du das Bloom-Sprite (bloom\img) manuell richtig positionieren.
Oh man, dieser Bloom von mir ist ja total billig. Mom, ich liefere bald eine bessere Lösung Very Happy
Twitter
Download Jewel Snake!
Windows|Android

noobyblaster

BeitragSa, Okt 03, 2009 12:32
Antworten mit Zitat
Benutzer-Profile anzeigen
ok ich werd dann jetzt den bloom erstmal wieder raus machen.....
Projekt: Crazy Racedriver [vorübergehend eingestellt]
Genre: Rennspiel
Fortschritt: ca. 60%

ToeB

BeitragSa, Okt 03, 2009 13:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Also das game an sich sieht nicht schlecht aus, aber ich würde trotzdem eine nachscheifende kamera sicht vorziehen (guck mal im samples ordner nach dem Driver Sample).

mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

noobyblaster

BeitragSa, Okt 03, 2009 13:23
Antworten mit Zitat
Benutzer-Profile anzeigen
ja genau.
Das ist gleich meine nächste frage ^^
Projekt: Crazy Racedriver [vorübergehend eingestellt]
Genre: Rennspiel
Fortschritt: ca. 60%

ToeB

BeitragSa, Okt 03, 2009 13:57
Antworten mit Zitat
Benutzer-Profile anzeigen
setzte einfach ein Pivot mit entityParent und PositioneEntity an dein Auto an die stelle wo die camera sein soll.

BlitzBasic: [AUSKLAPPEN]
Global campiv = CreatePivot(Car)
PositionEntity campiv,0,5,-10


Dann musst du nur noch die Differenz der beiden Positionen errechen (Camera / Pivot) und dann die Camera dort verlangsamt hinbewegen :

BlitzBasic: [AUSKLAPPEN]
dx#=EntityX( campiv,True )-EntityX( camera )
dy#=EntityY( campiv,True )-EntityY( camera )
dz#=EntityZ( campiv,True )-EntityZ( camera )
TranslateEntity camera,dx*.1,dy*.1,dz*.1


Die *.1 kannst du ersetzen mit einem wert den du schön findest. Nur umso näher der Wert an 1 rankommt, umso schneller bewegt sich die camera zu dem Pivot und um so weiter der wert an 0 herankommt umso langsamer bweget sie sich (versuch es mal mit *.3).

Jetzt nur noch die Camera auf das Auto richten mit PointEntity.

Möchtest du aber, das die camera nicht direct auf das Auto guckt sondern etwas darüber damit das auton nicht in der Mitte des Bildschirmes ist sondern etwas weiter unten musst du einen weiteren Pivot erstellen (an dem Auto) und dahin positionieren, wo du gerne die camera hinguecken lassen möchtest. Dann das gleiche mit Pointentity nur auf den Pivot gerichtet.

mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

noobyblaster

BeitragSa, Okt 03, 2009 14:46
Antworten mit Zitat
Benutzer-Profile anzeigen
is aber doch genau wie vorher oder?

Code: [AUSKLAPPEN]
Graphics3D 1280,800,16,1

Global timer#=CreateTimer(60)

SetBuffer BackBuffer()

fntArial=LoadFont("impact.ttf",70)
fntArial2=LoadFont("impact.ttf",30)
fntArial3=LoadFont("impact.ttf",22)


player=LoadMesh("Meshes\auto.3ds")
PositionEntity player,400,28.452,300
ScaleMesh player,0.035,0.03,0.03
RotateMesh player,0,180,0
EntityType player,2


Global campiv = CreatePivot(player)
EntityParent campiv,player
PositionEntity campiv,0,5,-10

camera=CreateCamera(campiv)
PointEntity camera,player,.1



l5=CreateLight(2)
PositionEntity l5,250,230,300
RotateEntity l5,90,0,0
EntityParent l5,m


s_posten=LoadMesh("Meshes\Streckenposten.3ds")
ScaleMesh s_posten,0.1,0.1,0.1
PositionMesh s_posten,460,80,415
EntityFX s_posten,1


st=LoadTexture("Texturen\Wolken.jpg")
ScaleTexture st,0.1,0.1


skybox=CreateSphere ()
FlipMesh skybox
EntityType skybox,1
EntityTexture skybox,st
ScaleEntity skybox ,500,550,500
EntityOrder skybox,1
PositionEntity skybox,200,0,200
EntityFX skybox,1
      

terrain=LoadMesh("Meshes\Rennstrecke.b3d")
PositionMesh terrain,250,40,300
EntityType terrain,1
EntityFX terrain,1


zaun1=LoadMesh("Meshes\zaun.3ds")
ScaleEntity zaun1,0.83,0.3,0.5
PositionEntity zaun1,10,31,-13
EntityType zaun1,1


zaun2=CopyMesh(zaun1)
RotateMesh zaun2,0,-90,0
ScaleEntity zaun2,0.5,0.3,0.51
PositionEntity zaun2,-63,31,73
EntityType zaun2,1


kmhbalken=LoadSprite("Texturen\kmh balken.png",4)
ScaleSprite kmhbalken,2.5,1
PositionEntity kmhbalken,411.49,23.72,299
EntityParent kmhbalken,camera
EntityOrder kmhbalken,-1




Collisions 2,1,2,2


boost#=10
campos=1
benzin#=100






While Not KeyDown(1)



dx#=EntityX( campiv,True )-EntityX( camera )
dy#=EntityY( campiv,True )-EntityY( camera )
dz#=EntityZ( campiv,True )-EntityZ( camera )

TranslateEntity camera,dx*0,dy*0,dz*0






If KeyHit(2) Then campos=1
If KeyHit(3) Then campos=2
If KeyHit(4) Then campos=3 

If  campos=1 Then PositionEntity camera,0,4,-11
If  campos=2 Then PositionEntity camera,0,5,-15
If  campos=3 Then PositionEntity camera,0,3,-1



If KeyDown( 200 )=True And speed# < 0.2 And benzin# > 0 Then
speed#=speed#+0.001
EndIf

If KeyDown( 200 )=True And speed# < 0.5 And benzin# > 0 Then
speed#=speed#+0.0009
EndIf

If KeyDown( 200 )=True And speed# < 0.7 And benzin# > 0 Then
speed#=speed#+0.0009
EndIf

If KeyDown( 200 )=True And speed# < 1 And benzin# > 0 Then
speed#=speed#+0.0008
EndIf

If KeyDown( 200 )=True And speed# < 1.2 And benzin# > 0 Then
speed#=speed#+0.0008
EndIf

If KeyDown( 200 )=True And speed# < 1.5 And benzin# > 0 Then
speed#=speed#+0.0008
EndIf

If KeyDown( 200 )=True And speed# < 2 And benzin# > 0 Then
speed#=speed#+0.0007
EndIf

If KeyDown( 200 )=True And speed# < 2.2 And benzin# > 0 Then
speed#=speed#+0.0007
EndIf

If KeyDown(208)
speed# = speed# - 0.01
EndIf


If speed# > 2.2 speed# = 2.2
If speed# < -0.5 speed# = -0.5

If KeyDown(200)
   If speed# < 0 speed# = speed# + 0.01
   Else
   If speed# > 0 Then speed# = speed# - 0.002 Else speed# = 0
   If speed# > 0 speed# = speed# - 0.002
EndIf

If Not KeyHit(57) Then CameraFogMode camera,0

If KeyDown(200)=True And KeyDown(57)=True And boost# > 0 And speed# < 2.2 Then
   speed#=speed# + 0.015
   boost#=boost# - 0.125
End If

If speed# = 0 Then benzin# = benzin# - 0.000001
If speed# > 0 Then benzin# = benzin# - 0.0005
If speed# > 1 Then benzin# = benzin# - 0.0006
If speed# > 2 Then benzin# = benzin# - 0.0007

If benzin# < 0 Then benzin# = 0
If benzin# = 0 Then speed# = speed# - 0.004

If speed# < 0 Then speed# = 0
If speed# = 2.2 And boost# < 10 Then boost#=boost#+0.0085
If boost# < 0 Then boost# = 0
If boost# > 10 Then boost# = 10

lenken# = 1.5

If speed# = 0 Then lenken# = 0

If KeyDown( 205 )=True Then TurnEntity player,0,-lenken#,0
If KeyDown( 203 )=True Then TurnEntity player,0,lenken,0

If Not EntityCollided (player,1) speed#=speed# -0.01


If EntityY(player) > 45 speed#=speed#-0.1
If EntityY(player) < 20 Then PositionEntity player,400,30,300
 


n_balken#=boost#*18
b_balken#=benzin#*2.2
tacho=speed#*100


MoveEntity player,0,0,speed#


RotateMesh skybox,0,0.02,0

TranslateEntity player,0,-0.3,0


RenderWorld

UpdateWorld

SetFont fntArial
Color 0,0,0
Text 1076,720,Int(tacho)
Color 128,128,128
Rect 1051.5,629,230,80
Color 0,0,200
SetFont fntArial2
Text 1056,654, "NO²"
Rect 1095,658,n_balken#,20
Color 200,0,50
Rect 1055,686,b_balken#,20
Color 0,0,0
SetFont fntArial3
Text 1056,686,"Benzin"
Color 255,255,255
Text 10,40, "x: " +EntityX(player)
Text 10,55, "y: " +EntityY(player)
Text 10,70, "z: " +EntityZ(player)
Text 1055,630, "Kameramodus: " + campos

Flip

Wend

End
Projekt: Crazy Racedriver [vorübergehend eingestellt]
Genre: Rennspiel
Fortschritt: ca. 60%

ToeB

BeitragSa, Okt 03, 2009 15:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Du schreibst
Zitat:
Global camera = CreateCamera(campiv)


Du musst die camera als object nicht als child von dem campiv erstellen Wink

mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

noobyblaster

BeitragSo, Okt 04, 2009 12:40
Antworten mit Zitat
Benutzer-Profile anzeigen
is aber immernoch so ^^

Code: [AUSKLAPPEN]
           

Graphics3D 1280,800,16,1

Global timer#=CreateTimer(60)

SetBuffer BackBuffer()

fntArial=LoadFont("impact.ttf",70)
fntArial2=LoadFont("impact.ttf",30)
fntArial3=LoadFont("impact.ttf",22)

player=LoadMesh("Meshes\auto.3ds")
PositionEntity player,400,28.452,300
ScaleMesh player,0.035,0.03,0.03
RotateMesh player,0,180,0
EntityType player,2




Global campiv = CreatePivot(player)
EntityParent campiv,player
PositionEntity campiv,0,5,-10


Global camera=CreateCamera(campiv)
PointEntity camera,player,.1






l5=CreateLight(2)
PositionEntity l5,250,230,300
RotateEntity l5,90,0,0
EntityParent l5,m


s_posten=LoadMesh("Meshes\Streckenposten.3ds")
ScaleMesh s_posten,0.1,0.1,0.1
PositionMesh s_posten,460,80,415
EntityFX s_posten,1


st=LoadTexture("Texturen\Wolken.jpg")
ScaleTexture st,0.1,0.1


skybox=CreateSphere ()
FlipMesh skybox
EntityType skybox,1
EntityTexture skybox,st
ScaleEntity skybox ,500,550,500
EntityOrder skybox,1
PositionEntity skybox,200,0,200
EntityFX skybox,1
      

terrain=LoadMesh("Meshes\Rennstrecke.b3d")
PositionMesh terrain,250,40,300
EntityType terrain,1
EntityFX terrain,1


zaun1=LoadMesh("Meshes\zaun.3ds")
ScaleEntity zaun1,0.83,0.3,0.5
PositionEntity zaun1,10,31,-13
EntityType zaun1,1


zaun2=CopyMesh(zaun1)
RotateMesh zaun2,0,-90,0
ScaleEntity zaun2,0.5,0.3,0.51
PositionEntity zaun2,-63,31,73
EntityType zaun2,1


kmhbalken=LoadSprite("Texturen\kmh balken.png",4)
ScaleSprite kmhbalken,2.5,1
PositionEntity kmhbalken,411.49,23.72,299
EntityParent kmhbalken,camera
EntityOrder kmhbalken,-1




Collisions 2,1,2,2


boost#=10
campos=1
benzin#=100






While Not KeyDown(1)



dx#=EntityX( campiv,True )-EntityX( camera )
dy#=EntityY( campiv,True )-EntityY( camera )
dz#=EntityZ( campiv,True )-EntityZ( camera )

TranslateEntity camera,dx*.1,dy*.1,dz*.1






If KeyHit(2) Then campos=1
If KeyHit(3) Then campos=2
If KeyHit(4) Then campos=3 

If  campos=1 Then PositionEntity camera,0,4,-11
If  campos=2 Then PositionEntity camera,0,5,-15
If  campos=3 Then PositionEntity camera,0,3,-1



If KeyDown( 200 )=True And speed# < 0.2 And benzin# > 0 Then
speed#=speed#+0.001
EndIf

If KeyDown( 200 )=True And speed# < 0.5 And benzin# > 0 Then
speed#=speed#+0.0009
EndIf

If KeyDown( 200 )=True And speed# < 0.7 And benzin# > 0 Then
speed#=speed#+0.0009
EndIf

If KeyDown( 200 )=True And speed# < 1 And benzin# > 0 Then
speed#=speed#+0.0008
EndIf

If KeyDown( 200 )=True And speed# < 1.2 And benzin# > 0 Then
speed#=speed#+0.0008
EndIf

If KeyDown( 200 )=True And speed# < 1.5 And benzin# > 0 Then
speed#=speed#+0.0008
EndIf

If KeyDown( 200 )=True And speed# < 2 And benzin# > 0 Then
speed#=speed#+0.0007
EndIf

If KeyDown( 200 )=True And speed# < 2.2 And benzin# > 0 Then
speed#=speed#+0.0007
EndIf

If KeyDown(208)
speed# = speed# - 0.01
EndIf


If speed# > 2.2 speed# = 2.2
If speed# < -0.5 speed# = -0.5

If KeyDown(200)
   If speed# < 0 speed# = speed# + 0.01
   Else
   If speed# > 0 Then speed# = speed# - 0.002 Else speed# = 0
   If speed# > 0 speed# = speed# - 0.002
EndIf

If Not KeyHit(57) Then CameraFogMode camera,0

If KeyDown(200)=True And KeyDown(57)=True And boost# > 0 And speed# < 2.2 Then
   speed#=speed# + 0.015
   boost#=boost# - 0.125
End If

If speed# = 0 Then benzin# = benzin# - 0.000001
If speed# > 0 Then benzin# = benzin# - 0.0005
If speed# > 1 Then benzin# = benzin# - 0.0006
If speed# > 2 Then benzin# = benzin# - 0.0007

If benzin# < 0 Then benzin# = 0
If benzin# = 0 Then speed# = speed# - 0.004

If speed# < 0 Then speed# = 0
If speed# = 2.2 And boost# < 10 Then boost#=boost#+0.0085
If boost# < 0 Then boost# = 0
If boost# > 10 Then boost# = 10

lenken# = 1.5

If speed# = 0 Then lenken# = 0

If KeyDown( 205 )=True Then TurnEntity player,0,-lenken#,0
If KeyDown( 203 )=True Then TurnEntity player,0,lenken,0

If Not EntityCollided (player,1) speed#=speed# -0.01


If EntityY(player) > 45 speed#=speed#-0.1
If EntityY(player) < 20 Then PositionEntity player,400,30,300
 


n_balken#=boost#*18
b_balken#=benzin#*2.2
tacho=speed#*100


MoveEntity player,0,0,speed#


RotateMesh skybox,0,0.02,0

TranslateEntity player,0,-0.3,0


RenderWorld

UpdateWorld

SetFont fntArial
Color 0,0,0
Text 1076,720,Int(tacho)
Color 128,128,128
Rect 1051.5,629,230,80
Color 0,0,200
SetFont fntArial2
Text 1056,654, "NO²"
Rect 1095,658,n_balken#,20
Color 200,0,50
Rect 1055,686,b_balken#,20
Color 0,0,0
SetFont fntArial3
Text 1056,686,"Benzin"
Color 255,255,255
Text 10,40, "x: " +EntityX(player)
Text 10,55, "y: " +EntityY(player)
Text 10,70, "z: " +EntityZ(player)
Text 1055,630, "Kameramodus: " + campos

Flip

Wend

End
Projekt: Crazy Racedriver [vorübergehend eingestellt]
Genre: Rennspiel
Fortschritt: ca. 60%

ToeB

BeitragSo, Okt 04, 2009 13:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Sag mal ließt du nicht was ich schreibe ??

Ich habe doch gesagt das "campiv" inder Klammer von "CreateCamera" muss weg, und Pointentity gehört nicht hinter Create Camera sondern in die schleife....

mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group