Levelbegrenzung und Terrain

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

 

Dayf

Betreff: Levelbegrenzung und Terrain

BeitragDo, Apr 27, 2006 14:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo liebe Blitz-Gemeinde

1. Frage:
Ich möchte die spielwelt begrenzen und habe mir gedacht, durch einen großen
Würfel, der über das terrain gelegt wird (mit entityalpha,0) könne ich eine Grenze schaffen.
Die kollision mit den"Innenwänden" functioniert jedoch nicht.
Gibt es da eine Möglichkeit?

2. Frage
Wie kann ich meshes (Bäume) per DIM auf dem terrain platzieren, dass alle Bäume eine Position von terrainY()-1 haben?

Ich freue mich über alle Antworten, denn besonders das Baum-Problem juckt mich schon eine ganze Weile Wink

Jan_

Ehemaliger Admin

BeitragDo, Apr 27, 2006 14:48
Antworten mit Zitat
Benutzer-Profile anzeigen
zu den Bäumen, kann ich dir nur sagen, lerne Types.

Zur Kollision,

wenn ein Würfel von ausen nur Kollisionen annimmt,
dann würde ich doch das äusere nach innen drehen.

Arbeite mit -Werten.
between angels and insects
 

BlackError

BeitragDo, Apr 27, 2006 17:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich glaube, dass bei der kollision ein flipmesh recht angebracht wäre Wink
 

Darren

BeitragDo, Apr 27, 2006 17:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Normalen umdrehen Laughing

Jetzt wurde es dreimal gesagt
MFG Darren

Jan_

Ehemaliger Admin

BeitragFr, Apr 28, 2006 7:39
Antworten mit Zitat
Benutzer-Profile anzeigen
@Blackerror, joa bei nem Würfel ist es ja egal, ob man die normalen umdreht oder ihn negativ Scaliert, weil von der Ansict es ja das selbe ist,
ich weiß aber nciht, ob das mit den Collis dann funktioniert,
weildie normalen aber nciht die Vertex anordnung geändert wurde.

wenns wirklich funktioniert, bitte mal sagen, würde mich interressieren
between angels and insects
 

Dayf

BeitragFr, Apr 28, 2006 14:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Vielen Dank;
Die Levelbegrenzung funktioniert einwandfrei mit "Flipmesh".

Das Baumproblem ist jedoch immer noch nicht gelößt.
Hier mein bisheriger code:

Code: [AUSKLAPPEN]
Global Baum = LoadMesh("C:\tree2.b3d")
              ScaleEntity Baum,.2,.2,.2
              PositionEntity Baum,40,3,40

Type baueig
Field Mesh
Field xpt#
Field zpt#
Field ypt#
Field neigung#
Field skaleX#
Field skaleY#
Field skaleZ#
Field speed#
End Type


Global tree.baueig


For I = 1 To 100 ;100 BaumCopyEntity tree
tree.baueig = New baueig
tree\xpt# = Rnd(50,400)
tree\zpt# = Rnd(50,400)
tree\ypt# = terrainy()-1
tree\neigung# = Rnd(-20,180)
tree\skaleX# = .2
tree\skaleY# = .2
tree\skaleZ# = .2
tree\Mesh = Baum
tree\speed# = 2

Next



For tree.baueig = Each baueig

CopyEntity tree\mesh
PositionEntity tree\Mesh,tree\xpt#,tree\ypt#,tree\zpt#
RotateEntity tree\Mesh,0,tree\neigung#,0
ScaleEntity tree\Mesh,tree\skaleX#,tree\skaleY#,tree\skaleZ#

EntityType tree\mesh,1



Next






Wie kann ich jeden Baum auf TerrainY(terrain)-1 setzen?
Bitte m Hilfe
Smile

Fuchsi

BeitragFr, Apr 28, 2006 19:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Versuch es mal so:
Code: [AUSKLAPPEN]

Global main_baum_green=LoadMesh("baum_normal2.b3d")
   ScaleMesh main_baum_green,0.2,0.2,0.2
      Dim baum1         (349)
      For max_1 =       0 To 349
         baum1(max_1)=   CopyMesh(main_baum_green)
         x_map=         EntityX(map)
         EntityZ(map)
         x=            Rnd(x_map,500)
         z=            Rnd(z_map,1200)
         y=            TerrainY(map,x,1000,z)-2
         PositionEntity    baum1(max_1),x,y,z
         EntityType       baum1(max_1),2
         ScaleMesh       baum1(max_1),Rnd(0.8,1.5),Rnd(0.3,1),Rnd(0.8,1.5)
         TurnEntity       baum1(max_1),Rnd(-11,11),Rnd(0,360),Rnd(-11,11)
         EntityAutoFade    baum1(max_1),400,500
         If EntityY(baum1(max_1)) < wasser_hoehe Then
         FreeEntity baum1(max_1)
         EndIf         
      Next
 

Dayf

BeitragMi, Mai 03, 2006 14:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Vielen Dank!!!

klappt alles perfect Very Happy [/img]

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group