wassereffekt darstellen

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

 

aave13

Betreff: wassereffekt darstellen

BeitragDi, Sep 05, 2006 15:40
Antworten mit Zitat
Benutzer-Profile anzeigen
moin,
ich wollte mir bewegendes wasser erstellen. vorerst hatte ich die idee, das terrain dann in einer reihe zu modifizieren, dass eine kleine welle entsteht. diese welle soll dann durch das ganze terrain laufen. aber nicht nur eine, sondern ganz viele im abstand von 1 oder 2... da das aber zu kompliziert ist (denke ich), habe ich mir etwas anderes überlegt, wäre aber schön, wenn jemand das komplizierte knacken würde.
methode2: das sich das terrain hin und herbewegt, wie ebbe und flut...
also dass sich das terrain bis zu einem bestimmten punkt hin in die eine richtung bewegt, wenn es dort angelangt ist zurückfährt und wenn es an einem anderen punkt angekommen ist wieder in die andere richtung fährt.

hab da mal nen vorschlag, der mir aber leider nicht ganz gelingen will:
Code: [AUSKLAPPEN]

If EntityX(terrain)<4 Then MoveEntity terrain,.005,0,0
If EntityX(terrain)>6 Then MoveEntity terrain,-.005,0,0


hab ich da technich was falsch oder einfach bei den werten nur sch**** eingegeben?^^

hoffe ihr könnt mir helfen, danke Smile

mfg aave
 

Dreamora

BeitragDi, Sep 05, 2006 15:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Ansatz ist richtig, kann so aber nicht funktionieren.

Du brauchst eine Variable "xMove". Wenn x < 4 oder x > 6, dann muss xMove invertiert werden (*-1) damit die bewegungsrichtung ändert.


Was dein Code macht ist es in eine richtung bewegen lassen und es wenn es den rand erreicht, zurück zu setzen, was es dann unendlich lange macht, da bewegungsrichtung nicht ändert.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

aave13

BeitragDi, Sep 05, 2006 16:38
Antworten mit Zitat
Benutzer-Profile anzeigen
kannst du mir das mal bitte in den code einbauen, versteh das mit dem intervetieren nicht... thx
 

Dreamora

BeitragDi, Sep 05, 2006 16:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein geht nicht, weil bei deinem Code die kontinuierliche Bewegung fehlt.

Was du brauchst ist eine kontinuierliche Bewegung (das heisst, Terrain wird bei jedem schleifendurchlauf um einen bestimmten Wert *xMove* bewegt).
Diese Bewegung wird dann invertiert (-> xMove = -1*xMove), wenn die x Position gewisse Grenzen überschreitet.

Du willst ja nicht das sich dein Terrain nur 1x vor und 1x zurück bewegt und das ist das, was dein aktueller Code tut.

Am besten überlegst du dir mit Bleistift und Papier, wie sich das ganze bewegt und überlegst dir dann wie der Code genau aussehen müsste (wobei obige Beschreibung das schon sehr detailiert aufzeigt)
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Black Spider

BeitragDi, Sep 05, 2006 18:07
Antworten mit Zitat
Benutzer-Profile anzeigen
da gab´s allerdings schon reichlich threads zu ( Arrow Suchfunktion),
in einem von 5k41 hat hectic ne schöne idee gepostet,
weiss net ob das was brauchbares für dich wäre...
Coming soon:
http://img132.imageshack.us/im...im2ab6.gif

StepTiger

BeitragDi, Sep 05, 2006 20:49
Antworten mit Zitat
Benutzer-Profile anzeigen
du kannst es doch via sin(), cos() funktion bewegen!

Das sind beides Wellen ^^
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer:
AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t
Gewinner: BP Code Compo #2
Π=3.141592653589793238...<--- und das aus dem kopf Laughing
Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser.

Rone

BeitragDi, Sep 05, 2006 20:53
Antworten mit Zitat
Benutzer-Profile anzeigen
moin,
jede Menge Codes und Denkansätze für schönes Wasser findest hier...

http://www.blitzbasic.com/Comm...162#609343
http://www.blitzbasic.com/Comm...631#699821

mfg

FreetimeCoder

BeitragMo, Sep 11, 2006 19:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Das ist zu größten Teil aus einer Beispieldatei von Blitz3D.
So schön sieht das Wasser zwar nicht aus, aber versuchen kostet nichts Wink

Code: [AUSKLAPPEN]

Graphics3D 800,600,0,2
SetBuffer BackBuffer()

; Modify these if you like :)
Const  WATER_GRID_SIZE = 64
Global WATER_HEIGHT# = 7.5

; Setup the water grid values
Dim WaterY(WATER_GRID_SIZE+1,WATER_GRID_SIZE+1)
For q1 = 0 To WATER_GRID_SIZE
   For j1 = 0 To WATER_GRID_SIZE
      WaterY(q1,j1) = Rnd(0,360)
   Next
Next

; Create some terrain and load the water texture onto it
water = CreateTerrain(WATER_GRID_SIZE)
;EntityAlpha water,0.6

; Modify the detail of the terrain
TerrainShading water,True
Global curdetail = 10000
TerrainDetail water,curdetail,True

; Resize and position the water
ScaleEntity water,7,WATER_HEIGHT#,7
EntityColor water,0,0,255
TerrainShading water,1

Licht=CreateLight()
Pivot=CreatePivot()
Kamera=CreateCamera(Pivot)
PositionEntity Pivot,100,0,100

Const Oben=17,Unten=31,Links=30,Rechts=32,Leer=57
MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 UpdateWorld


Repeat
   Cls
   For z1 = 0 To WATER_GRID_SIZE-1
      For x1 = 0 To WATER_GRID_SIZE-1
         hite# = Sin(WaterY(z1,x1))
         ModifyTerrain water,x1,z1,Abs(hite#/2)+.5,False
         WaterY(z1,x1) = WaterY(z1,x1) + 1
      Next
   Next

   If KeyDown(Oben)
      MoveEntity Pivot,0,0,0.5
   EndIf
   If KeyDown(Unten)
      MoveEntity Pivot,0,0,-0.5
   EndIf
   If KeyDown(Rechts)
      MoveEntity Pivot,0.5,0,0
   EndIf
   If KeyDown(Links)
      MoveEntity Pivot,-0.5,0,0
   EndIf
   PositionEntity Pivot,EntityX(Pivot),TerrainY(water,EntityX(Pivot),EntityY(Pivot),EntityZ(Pivot))+5,EntityZ(Pivot)
   Mx#=MouseXSpeed()
   My#=MouseYSpeed()
   TurnEntity Pivot,0,-Mx/2,0
   TurnEntity Kamera,My/2,0,0
   MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 UpdateWorld
   RenderWorld
   Flip
Until KeyHit(1)
End
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte:
Dexterity Ball (100%)
Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz
(ehemals Uboot)
PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA

SYSThern

BeitragFr, Sep 26, 2008 21:37
Antworten mit Zitat
Benutzer-Profile anzeigen
bbh hilft
googl hilft
blitzbasic.com hilft auch!

http://www.blitzbasic.com/Comm...162#609343

und wenn ich darf Mr.Keks??!!

user posted image

hier kannst du das ganze downloaden mit code

http://www.inarie.de/downloads/pbwater.rar


hoffe ich konnte helfen?

mfG SYSThern[/img]

[edit] sry falscher thread löschen [edit]
Tools and Programms
--------------------
www.systhern.de

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group