Baum-Map

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

AMD

Betreff: Baum-Map

BeitragDo, Nov 29, 2007 21:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi

ich hatte ja schon mal n problem mit meinen Bäumen die zu positioniern...

jetzt wollte ich mir ne Baum-Map machen also nen Terrain und jedes weiße Pixel soll n Baum sein!

aber mit welchen Befehl kann ich die Pixel-farbe des Terrainbildes überprüfen?

Readpixel hat doch glaube ich gar nix mit 3D-Raumkoordinaten zu tun odeR?

Forensuche hat eigendlich nur auf meinen alten beitrag verwiesen..

danke jetzt schon!

MfG
Das Leben ist ein scheiß Spiel hat aber eine saugute Grafik!
PC:
AMD 5200 X2(2x2,6Ghz), 250GB Festplatte, 2048MB Arbeitsspeicher, Nvidia 9800 GTX mit 512MB.....
Bildschrim mit 22 Zoll und 5msk Übertragungszeit......
Mein BaumMap Tutorial:
http://www.blitzforum.de/forum...hp?t=26341

The_Nici

BeitragDo, Nov 29, 2007 21:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Tja, also, du hast ein Image der Baum-Map.
Also liest du in einer For-Next Schleife mit Readpixel() die Farbe aus. Sollte sie weiss sein, positionierst du an der Stelle einen Baum und mit Terrainy() ermittelst du die Höhe.
 

AMD

BeitragDo, Nov 29, 2007 22:06
Antworten mit Zitat
Benutzer-Profile anzeigen
hmm also ich hab des jetzt mal probiert ...

Code: [AUSKLAPPEN]
Graphics3D 640,480,32,2

SetBuffer BackBuffer()

cam=CreateCamera()

Terrain=LoadTerrain("Map.png")
PositionEntity Terrain,0,-1,5
Boden=LoadTexture("Boden.png")
EntityTexture Terrain,Boden

Baum=LoadMesh("PalmeNeu1.3ds")
ScaleEntity Baum,.01,.01,.01

For i = 1 To 100
BaumNeu = CopyEntity(Baum)

Farbe=ReadPixel(XTerrain,ZTerrain)
F=(Farbe+Terrain)

PositionEntity BaumNeu,$00000000,0,$00000000
ScaleEntity BaumNeu,.01,.01,.01

Next

While Not KeyHit(1)

If KeyDown(200) MoveEntity cam,0,0,1
If KeyDown(203) MoveEntity cam,-1,0,0
If KeyDown(205) MoveEntity cam,1,0,0
If KeyDown(208) MoveEntity cam,0,0,-1

UpdateWorld
RenderWorld
Flip
Wend
End


hm aber des geht net Sad die Bäume werden net so platziert wie ich will Sad

sorry wenn der code i-wie total unlogisch sein sollte aber ich kenn mich einfach auf dem gebiet was mit "Readpixel" etc. zu tun hat net so aus...
Das Leben ist ein scheiß Spiel hat aber eine saugute Grafik!
PC:
AMD 5200 X2(2x2,6Ghz), 250GB Festplatte, 2048MB Arbeitsspeicher, Nvidia 9800 GTX mit 512MB.....
Bildschrim mit 22 Zoll und 5msk Übertragungszeit......
Mein BaumMap Tutorial:
http://www.blitzforum.de/forum...hp?t=26341

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDo, Nov 29, 2007 23:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Du musst auch bei XTerrain und ZTerrain jeweils die X und Y-Koordinaten angeben, wo an welcher Stelle der Pixel ausgelesen werden soll. Ausserdem musst du dein Terrain dann zweimal laden, da du sicherlich keine Pixelfarben anhand eines Terrains auslesen kannst. Du musst dich also entscheiden, ob du nun das Bild einmal unter 2D-Mode (LoadImage) lädst und ausliesst oder im 3D-Mode (LoadTexture).

Deine Überlegung wird aber auch so nicht ganz stimmig sein, denn an jeder Stelle würde eine überhohe Bergspitze rausragen wo als Krone noch ein Baum oben drauf steht. Die Überlegung müsste also von grund auf anders sein. Eventuell kann man den Alphakanal für weitere Mapinfo benutzen, ohne das sich das Terrain daran stört. Das ganze müsste dann noch durch eine AND -Maske gefiltert werden.
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D
 

AMD

BeitragDo, Nov 29, 2007 23:25
Antworten mit Zitat
Benutzer-Profile anzeigen
stimmt o_O des sieht ja scheiße aus wenn da noch so n teil raus ragt

hmm und wenn ich des wieder anders mach Wink

also ich lad meine Bäume so:

Code: [AUSKLAPPEN]
Baum=LoadMesh("Palme/PalmeNeu1.3ds")
EntityAutoFade Baum,100,400
EntityType Baum,3
HideEntity Baum
n=4000
For a = 1 To n
x#=Rnd (-105,2400)
z#=Rnd (-105,2400)
y#=TerrainY(mesh,x,0,z)
If EntityDistance(BaumNeu,Sandburg)>100
If y>2
 BaumNeu=CopyEntity(Baum)
 ScaleEntity BaumNeu,Rnd(0.1,0.2),Rnd(0.3,0.4),Rnd(0.1,0.2)
 TurnEntity BaumNeu,0,Rnd (0,360),0
 PositionEntity BaumNeu,x#,y#,z#
End If
End If
Next


also da hab ich eingebaut dasn die Bäume ne Entfernung von mehr als 100 von meiner Burg haben soll aber da kommt "Entity does not exist" des liegt ja glaub ich daran das in dieser For-Next Schleife der Baum erst erstellt wird... wie könnte ich das lösen?
Das Leben ist ein scheiß Spiel hat aber eine saugute Grafik!
PC:
AMD 5200 X2(2x2,6Ghz), 250GB Festplatte, 2048MB Arbeitsspeicher, Nvidia 9800 GTX mit 512MB.....
Bildschrim mit 22 Zoll und 5msk Übertragungszeit......
Mein BaumMap Tutorial:
http://www.blitzforum.de/forum...hp?t=26341
  • Zuletzt bearbeitet von AMD am Do, Nov 29, 2007 23:34, insgesamt einmal bearbeitet

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDo, Nov 29, 2007 23:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Wo kommt das ''Entity does not exist'', in welcher Zeile? Sind die anderen Handles alle gültig?
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D
 

AMD

BeitragDo, Nov 29, 2007 23:34
Antworten mit Zitat
Benutzer-Profile anzeigen
in der zeile die ich angefügt hab um zu prüfen ob der baum mehr als 100 weg is also in der zeile:

Code: [AUSKLAPPEN]
If EntityDistance(BaumNeu,Sandburg)>100


und sonst funzt eigl. alles daran
Das Leben ist ein scheiß Spiel hat aber eine saugute Grafik!
PC:
AMD 5200 X2(2x2,6Ghz), 250GB Festplatte, 2048MB Arbeitsspeicher, Nvidia 9800 GTX mit 512MB.....
Bildschrim mit 22 Zoll und 5msk Übertragungszeit......
Mein BaumMap Tutorial:
http://www.blitzforum.de/forum...hp?t=26341

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDo, Nov 29, 2007 23:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Misst, habe ich vorhin übersehen. Die Reihenfolge kann ja irgendwie nicht stimmen. Sieh selbst:

Code: [AUSKLAPPEN]
...
If EntityDistance(BaumNeu,Sandburg)>100
...
BaumNeu=CopyEntity(Baum)
...
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D
 

AMD

BeitragDo, Nov 29, 2007 23:40
Antworten mit Zitat
Benutzer-Profile anzeigen
jo hab ich natürlich auch schon gemerkt aber wenn ichs unter dem Copyfile mach gehts auch net... müsste es eigendlich so gehn? weil wenn ja dann muss der fehler wo anders liegen obwohl es "Sandburg" gibt...
Das Leben ist ein scheiß Spiel hat aber eine saugute Grafik!
PC:
AMD 5200 X2(2x2,6Ghz), 250GB Festplatte, 2048MB Arbeitsspeicher, Nvidia 9800 GTX mit 512MB.....
Bildschrim mit 22 Zoll und 5msk Übertragungszeit......
Mein BaumMap Tutorial:
http://www.blitzforum.de/forum...hp?t=26341
 

AMD

BeitragFr, Nov 30, 2007 17:01
Antworten mit Zitat
Benutzer-Profile anzeigen
hi

sorry wenn ich nerven sollte a ber ich will des jetzt hin bekommen also ich hab mich jetzt doch für ne Baum-Map entschieden da die Hügel die dann aus der Erde raus schaun kleiner als meine Bäume sind also werden die ja dann praktisch von den Bäumen verdeckt...

ich hab mal etwas weiter rumprobiert und hier der code:

Code: [AUSKLAPPEN]
Graphics3D 640,480,32,2

SetBuffer BackBuffer()

cam=CreateCamera()

Terrain=LoadTerrain("Map.png")
PositionEntity Terrain,0,-1,5
Boden=LoadTexture("Boden.png")
EntityTexture Terrain,Boden

Terraintextur=LoadTexture("Map.png")
PositionTexture Terraintextur,x,z

Baum=LoadMesh("PalmeNeu1.3ds")
ScaleEntity Baum,.01,.01,.01
EntityColor terrain,0,255,0

For i = 1 To 100
BaumNeu = CopyEntity(Baum)

Farbe=ReadPixel(x,z)
F=(Farbe+Terraintextur)

PositionEntity BaumNeu,x+$00000000,0,z+$00000000
ScaleEntity BaumNeu,.01,.01,.01

Next

While Not KeyHit(1)

If KeyDown(200) MoveEntity cam,0,0,1
If KeyDown(203) MoveEntity cam,-1,0,0
If KeyDown(205) MoveEntity cam,1,0,0
If KeyDown(208) MoveEntity cam,0,0,-1

UpdateWorld
RenderWorld
Flip
Wend
End


die Bäume werden immer noch nicht richtig platziert da seh ich i-wie nur einen Baum und zwar ganz am anfang an der Koordinate 0,0,0 oder so...

danke für jede hilfe!

sollte ich mir vll mal das Grasssample im BB-Ordner ansehn? wird das da net ungefähr genau so gemacht oder teusche ich mich da?

MfG
Das Leben ist ein scheiß Spiel hat aber eine saugute Grafik!
PC:
AMD 5200 X2(2x2,6Ghz), 250GB Festplatte, 2048MB Arbeitsspeicher, Nvidia 9800 GTX mit 512MB.....
Bildschrim mit 22 Zoll und 5msk Übertragungszeit......
Mein BaumMap Tutorial:
http://www.blitzforum.de/forum...hp?t=26341

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group