Arrays mit Terrain nutzen?
Übersicht

OnkelManfredBetreff: Arrays mit Terrain nutzen? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hallo
ich hab da mal ne frage. und zwar: ich hab mir mal das codebeispiel modify terrain angeschaut. dort kann man ja die höhe des terrains beliebig verändern, etc. ist es möglich, die einzelnen höhen des terrains in einem array zu speichern? wenn ja wie sollte man das umsetzen? hier nochmal der code: Code: [AUSKLAPPEN] ; Terrain erhöhen/senken
marker_y#=TerrainHeight(terra,marker_x,marker_z) If KeyDown(42)=True If marker_y#<1 Then marker_y#=marker_y#+0.005 ModifyTerrain terra,marker_x,marker_z,marker_y# EndIf If KeyDown(29)=True If marker_y#>0 Then marker_y#=marker_y#-0.005 ModifyTerrain terra,marker_x,marker_z,marker_y# EndIf könnt ihr mir vielleicht weiterhelfen? |
||
OnkelManfred |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
OK, problem hat sich gelöst. man muss einfach das schon vorhandene (![]() die ausgelesenen daten können dann noch in eine einfache for/next-schleife eingebunden werden: ![]() Code: [AUSKLAPPEN] If KeyHit(28) Then terrainfile=WriteFile("höhe.dat") For x=0 To terrain_size-1 For z=0 To terrain_size-1 WriteLine(terrainfile,TerrainHeight(terrain,x,z)) Next Next EndIf eigentlich ein ganz einfaches problem ![]() erklärung: das terrain_size-1 entsteht dadurch, dass man sonst bei einer terraingröße von 16x16 feldern die koordinaten des 17. feldes ebenfalls in die datei mit reinschreiben würde. allerdings ergibt sich dann ein vielleicht unwichtiges problem: anstatt z.B. den wert 0.5 in die datei zu schreiben, schreibt das programm einen wert von 0.498039. ich denke, dass dies aber eher unwichtig ist, da der wert eh kaum wahrnembar verändert wird. den wert von WriteLine könnte man natürlich genausogut wieder auslesen: ![]() Code: [AUSKLAPPEN] If KeyDown(59) Then filein=ReadFile("höhe.dat") For x=0 To terrain_size-1 For z=0 To terrain_size-1 hoehe_in=ReadLine(filein) ModifyTerrain terrain,x,z,hoehe_in Next Next EndIf oder kurz: wenn die taste [F1] gedrückt wird, liest der computer die werte in der datei aus und verändert somit direkt ![]() mfg OnkelManfred |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
ReadLine![]() ![]() ![]() |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
OnkelManfred |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ok geht aber so auch
war auch nur nen flüchtigkeitsfehler ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group