Ein Berg mitten im Terrain von Markus |
Damit der Berg nicht das ganze Terrain ein nimmt fängt der 1/2 von der gesamt Breite von den Ecken an an :shock: Wenn man mit dem Cosinus rum spielt kann man auch nen Vulkan oder ganz wirre Dinge mit machen :idea: Das die Kamera da drum herum fliegt ist natürlich überflüssig ... Und man sollte auch mit Texture testen sonnst kann man den Berg schlecht erkennen :!: [code:1:91384e6f65] ;Blitz Basic 3D Example von M.Rauch ;Der Berg :-) ;02.04.2003 Graphics3D 640,480,16,0 SetBuffer BackBuffer() Global cpiv=CreatePivot() Global cam=CreateCamera() PositionEntity cam,0,200,-250 PointEntity cam,cpiv ;WireFrame 1 Global ter=32 Global tet=LoadTexture("Fels.bmp") ;<--- deine Eigene Texture !? ScaleTexture tet,ter/4,ter/4 ;So wird die Texture 4*4 mal auf dem Terrain gezeigt Global te=CreateTerrain(ter) Global teb=CreateBrush(255,255,255) BrushTexture teb,tet PaintEntity te,teb ScaleEntity te,10,100,10 PositionEntity te,-ter*10/2.0,0.0,-ter*10/2.0 TerrainDetail te,2000,False For x=-ter/4 To ter/4 For y=-ter/4 To ter/4 x1=x+ter/2 y1=y+ter/2 e#=Sqr(x*x+y*y) h#=1.0-(e/Sqr( (ter/4)*(ter/4) + (ter/4)*(ter/4) ) ) h1#=-Cos(h*180.0)/2.0+0.5 DebugLog "x="+x+" y="+y+" e="+e+" h="+h+" h1="+h1 If h1<0.0 Then h1=0.0 If h1>1.0 Then h1=1.0 ModifyTerrain te,x1,y1,h1 Next Next Local w# While Not KeyHit(1) x=Sin(w)*200 z=Cos(w)*200 w=w+1.0:If w > 360.0 Then w=w-360.0 PositionEntity cam,x,200,z PointEntity cam,cpiv RenderWorld Flip Wend End [/code:1:91384e6f65] |