Maps bauen

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

 

matchwinner

Betreff: Maps bauen

BeitragDi, Jan 08, 2008 23:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!

Ich baue ein einfaches 3d jump'n'run . Die Landschaft soll aus Meshes bestehen. Ich brauche einen kostenlosen Worldeditor. In der Toolbox der englischen Seite habe ich nur Programme gefunden die für mein Vorhaben nicht geeignet waren hab ich auch im Forum fast tot gesucht Twisted Evil . Ich will aus meinen eigen 3d-Tiles (im .x-Format) eine Map bauen und das ist zwar primitiv sollte doch aber möglich sein.
Ich hoffe auf Hilfe.

mfg matchwinner
Labyrus3D GUI = 30% Leveldesign = 10% Steuerung = 90% Gesamt =

Schnittlauch

Unkraut

BeitragDi, Jan 08, 2008 23:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Bastel dir selber einen.
Ich wars nicht.
 

matchwinner

BeitragDi, Jan 08, 2008 23:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Kannst du mir nen Beispielcode geben. solll ich es mit arrays, types oder banks machen?
Question
Labyrus3D GUI = 30% Leveldesign = 10% Steuerung = 90% Gesamt =

hectic

Sieger des IS Talentwettbewerb 2006

BeitragMi, Jan 09, 2008 0:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du uns ganz genau erklärst wie deine Map aussehen soll, dann sind unsere Ratechancen um ein wesentliches besser gelegen, und können dir dann auch eventuell Tipps geben wie so sowas am besten zu lösen sei.

Soll heissen:

- Wie soll die Map aussehen (3D-Tiles im X-Format sagt uns recht wenig)

- Welche Eigenschaften soll die Map haben (wie groß, Pathfinding beinhalten etc.)

- Sollen Mapeigenschaften sich im verlauf eines Spieles verändern (z.B. Steine wegschiessen)

- Im betracht der Tatsachen gibt es kein Beispielcode, da bereits die, die du schon ersucht hast nicht deinen Ansprüchen genügen, musst du dir wohl deine eigenst individuell gestalltete Map machen.
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D
 

matchwinner

BeitragMi, Jan 09, 2008 12:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Also ich will einfache Levels aus Meshes im DirectX Format in einem Level verbauen. Ich habe zum Beispiel Kisten auf die man springen kann. Daraus (und auch aus anderen Objekten) soll nun eine map gebaut werden, die ich in Blitz 3d verwenden kann. Ich brauche kein Pathfinding und so weiter. Die maps sollen bis zu 100x100 groß sein. Ich brauche nun einen Leveleditor mit passenden Export- und Importfunktionen. Später will ich auch noch auf einfache Art und Weise Wasser und eine Skybox hinzufügen.
Die Levels sollten möglichst ebenfalls im DirectX-Format exportiert werden.

Danke schonmal im voraus.

mfg matchwinner
Labyrus3D GUI = 30% Leveldesign = 10% Steuerung = 90% Gesamt =

The_Nici

BeitragMi, Jan 09, 2008 13:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Wahrscheinlich will er was ähnliches wie Ratchet und Clank, mit den Spielen im Spiel zeugs da mit dem Superhelden.

Für 3D-Editoren selper proggen würde ich empfehlen:

-Guck dir die "Picked"-Befehle auf www.blitzbase.de an
-Überlege dir was besser sein könnte, Types oder Banks. Schreibe dir die Vor- und Nachteile auf und entscheide dann, welches besser für dies ist.
-Informiere dich über Singlesurface, wirst du bei vielen 3D-Tiles brauchen, denke ich.

Ansonsten nimm dir 3DWorldstudio von Leadwerks.com

MfG

Silver_Knee

BeitragMi, Jan 09, 2008 14:57
Antworten mit Zitat
Benutzer-Profile anzeigen
bau doch sowas wie den GTK RADIANT nach... CameraProjMode würde da helfen um die objekte genau zu positionieren.

Des mit dem exportieren wird schwierig werden denn den Exporter müsstest du selber schreiben.. Eine info-Datei inder drinne steht welches Objekt sich wo befindet dürfte auch recichen
 

matchwinner

BeitragMi, Jan 09, 2008 18:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Also ich habe da mal angefangen und diesen Code entwickelt (er unterstützt erstmal nur ein Modell). Allerdings passiert nichts wo liegen die Feher?:

Code: [AUSKLAPPEN]
;Graphics
Graphics3D 640,480,32,2
SetBuffer BackBuffer()

;Kamera
camera = CreateCamera()
PositionEntity camera,0,75,0
RotateEntity camera,-45,45,0
CameraProjMode camera,2

;Variablen
mx = MouseX()
my = MouseY()
mz = MouseZ()

;Types
Type land1
   Field x
   Field y
   Field z
   Field mesh
End Type


If MouseHit(1)
   block.land1 = New land1
   block.land1\x=mx
   block.land1\y=my
   block.land1\z=mz
   block.land1\mesh=LoadMesh("land_box.x")
   PositionEntity block.land1\mesh,block.land1\x,block.land1\y=my,block.land1\z=mz
EndIf

UpdateWorld
RenderWorld
Flip

WaitKey
Labyrus3D GUI = 30% Leveldesign = 10% Steuerung = 90% Gesamt =

Eingeproggt

BeitragMi, Jan 09, 2008 18:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Da passiert schon was, allerdings nur exakt einmal. Danach wartet dein Programm auf eine Tasteneingabe und beendet sich danach. ql:Repeat -Schleife oder alternativ ql:While ist unbedingt nötig.

mfG, Christoph.
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9
 

matchwinner

BeitragMi, Jan 09, 2008 20:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Stimmt! das hätte ich bemerke müssen. dummer fehler. danke!
Labyrus3D GUI = 30% Leveldesign = 10% Steuerung = 90% Gesamt =
 

matchwinner

BeitragMi, Jan 09, 2008 21:06
Antworten mit Zitat
Benutzer-Profile anzeigen
Also ich hänge jetzt immer noch in diesem Script:
Code: [AUSKLAPPEN]
;Graphics
Graphics3D 640,480,32,2
SetBuffer BackBuffer()

;Kamera
camera = CreateCamera()
PositionEntity camera,0,75,0
RotateEntity camera,-45,45,0
CameraProjMode camera,2

;Types
Type land1
                 Field mesh
End Type

While Not KeyHit(1)
If MouseHit(1)
   block.land1 = New land1
   block.land1\mesh=LoadMesh("land_box.x")
   PositionEntity block.land1\mesh,10,0,10
   RotateEntity camera,45,0,0
EndIf

UpdateWorld
RenderWorld
Flip
Wend

WaitKey


Hab es ein bisschen verändert, aber der Bildschirm bleibt immer noch schwarz.
Kann mir jemand mal ein kleines Beispielscript geben, damit ich überhaupt das grundlegene verstehe?
Labyrus3D GUI = 30% Leveldesign = 10% Steuerung = 90% Gesamt =
 

CaeSar

BeitragMi, Jan 09, 2008 21:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Versuchs doch erstmal ohne Types, die kannste später einbauen.

Code: [AUSKLAPPEN]

;Graphics
Graphics3D 640,480,32,2
SetBuffer BackBuffer()

;Kamera
camera = CreateCamera()
PositionEntity camera,0,75,0
RotateEntity camera,-45,45,0
CameraProjMode camera,2

;Mesh laden
mesh=LoadMesh("land_box.x")

;Damit nun Platziert wird oder nicht
Plazieren=0

Repeat

If MouseHit(1)
Platzieren=1
EndIf

If Platzieren=1 then
PositionEntity mesh,10,0,10
RotateEntity camera,45,0,0
Endif

UpdateWorld
RenderWorld

Flip
Cls
Until Keyhit(1)
End
 

matchwinner

BeitragMi, Jan 09, 2008 21:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Es geht immer noch nicht. Wenn ich klicke erscheint kein Mesh und folgt auch nicht dem Mauszeiger.
Kann mir jemand mal einen Beispielcode für einen ganzen Leveleditor schicken. Er muss gar nicht unbedingt mit meinem Problem zutun haben. Nur so als Richtlinie, denn schließlich ist der Editor von fundamentaler Wichtigkeit für mein Spiel. Is erst mein erstes Wink , bin also noch totaler Noob.
Labyrus3D GUI = 30% Leveldesign = 10% Steuerung = 90% Gesamt =

BladeRunner

Moderator

BeitragMi, Jan 09, 2008 21:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Kann mir jemand mal einen Beispielcode für einen ganzen Leveleditor schicken.

Auch wenn dir das jetzt nicht gefallen wird: nein.
Wieso: Wenn du diese Konzepte noch nicht umsetzen kannst solltest Du dich solange mit einfacheren Dingen beschäftigen bis Du es kannst. Es dauert Monate bis man die Grundlagen der Programmierung halbwegs verinnerlicht hat. Spiel mit den Befehlen, aber erwarte nicht in der ersten Zeit ein ganzes 3d_Game auf die Beine zu stellen.

Bevor Du rennst solltest Du erstmal laufen lernen Wink
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

matchwinner

BeitragMi, Jan 09, 2008 21:44
Antworten mit Zitat
Benutzer-Profile anzeigen
. Dann verschieb ich das Projekt oder bastel noch ein bisschen rum.
Labyrus3D GUI = 30% Leveldesign = 10% Steuerung = 90% Gesamt =
 

matchwinner

BeitragSa, Jan 12, 2008 12:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab mich jetz mal länger mit den Types und den Picked Funktionen beschäftigt. Ich kapier allerdings nicht wie genau ich sie einsetzen soll.

Sonst läuft mein Editor einwandfrei. Wenn das mit den Types gebau ist, entwickel ich noch eine Funktion zum abspeihern.

Mein Code ist dieser:

Code: [AUSKLAPPEN]
;Grafik setzen
Graphics3D(800,600,32,2)
SetBuffer BackBuffer()

;Meshes laden
Global land1 = LoadMesh("land_box.x")
ScaleEntity land1,0.2,0.2,0.2
EntityPickMode land1,3

;Variablen setzen
mx# = MouseX()
mz# = MouseZ()

;Kamera setzen
Global camera1 = CreateCamera()
PositionEntity camera1, 20,20,0
RotateEntity camera1,45,90,0
CameraProjMode camera1,1
CameraZoom camera1,0.4

;Licht
AmbientLight 255,255,255

;land1 setzen
PositionEntity land1,0,0,0

Repeat

   Cls
   
   picked = PickedEntity()
   
   ;Bewegung nach links
   If KeyHit(203)
      MoveEntity land1,0,0,-2
   EndIf
   
   ;Bewegung nach rechts
   If KeyHit(205)
      MoveEntity land1,0,0,2
   EndIf
   
   ;Bewegung nach hinten
   If KeyHit(200)
      MoveEntity land1,-2,0,0
   EndIf
   
   ;Bewegung nach vorne
   If KeyHit(208)
      MoveEntity land1,2,0,0
   EndIf
   
   ;Bewegung nach oben
   If KeyHit(78)
      MoveEntity land1,0,2,0
   EndIf
   
   ;Bewegung nach unten
   If KeyHit(74)
      MoveEntity land1,0,-2,0
   EndIf
   
   ;Aktualisieren
   UpdateWorld
   RenderWorld
   Flip
   
Until KeyHit(1)


Könnt ihr mir nen paar Tipps geben wound wie ich die Types und die Picked-Funktionen einbauen kann?

mfg matchwinner
Labyrus3D GUI = 30% Leveldesign = 10% Steuerung = 90% Gesamt =

BladeRunner

Moderator

BeitragSa, Jan 12, 2008 13:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich sehe weder einen Type in deinem Code noch erwähnst Du was Du mit ihm anstellen willst. Ratespielchen bringen da wenig, Du solltest schon genau erklären was dir vorschwebt, sonst kann man dir einfach nicht helfen.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

matchwinner

BeitragSa, Jan 12, 2008 15:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Also jetzt mal ganz ausführlich. Ich baue einen Level-Editor für ein Spiel (s.o.). Ich habe bereits diesen Code erstellt:

Code: [AUSKLAPPEN]
;Grafik setzen
Graphics3D(800,600,32,2)
SetBuffer BackBuffer()

;Meshes laden
Global land1 = LoadMesh("land_box.x")
ScaleEntity land1,0.2,0.2,0.2
EntityPickMode land1,3

;Variablen setzen
mx# = MouseX()
mz# = MouseZ()

;Kamera setzen
Global camera1 = CreateCamera()
PositionEntity camera1, 20,20,0
RotateEntity camera1,45,90,0
CameraProjMode camera1,1
CameraZoom camera1,0.4

;Licht
AmbientLight 255,255,255

;land1 setzen
PositionEntity land1,0,0,0

Repeat

   Cls
   
   picked = PickedEntity()
   
   ;Bewegung nach links
   If KeyHit(203)
      MoveEntity land1,0,0,-2
   EndIf
   
   ;Bewegung nach rechts
   If KeyHit(205)
      MoveEntity land1,0,0,2
   EndIf
   
   ;Bewegung nach hinten
   If KeyHit(200)
      MoveEntity land1,-2,0,0
   EndIf
   
   ;Bewegung nach vorne
   If KeyHit(208)
      MoveEntity land1,2,0,0
   EndIf
   
   ;Bewegung nach oben
   If KeyHit(78)
      MoveEntity land1,0,2,0
   EndIf
   
   ;Bewegung nach unten
   If KeyHit(74)
      MoveEntity land1,0,-2,0
   EndIf
   
   ;Aktualisieren
   UpdateWorld
   RenderWorld
   Flip
   
Until KeyHit(1)


Jetzt wüsst ich gerne wie da die Types einbaue (sind ja noch keine drin) und wie ich sie benutze. Ich brauche nur ein paar Tipps, schließlich will ich ja nicht, dass ihr mein ganzes Spiel baut Wink . Ich hab mir alles was ich in der Blitzbase Types gefunden habe ein paar mal durchgelesen und versucht auf meinen Editor anzuwenden, doch leider hat es nie geklappt Crying or Very sad .

Bitte gebt mir ein paar Tipps.

Danke schonmal das ihr so fleißig gepostet habt.

mfg matchwinner
Labyrus3D GUI = 30% Leveldesign = 10% Steuerung = 90% Gesamt =

The_Nici

BeitragSa, Jan 12, 2008 15:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]

Type block
   Field mesh
   Field x
   Field y
   Field z
End Type

;....etcetc

ablock.block=New block
ablock\mesh=Loadmesh("bla.x")
ablock\x=PickedX()
ablock\y=PickedY()
ablock\z=PickedZ()

BladeRunner

Moderator

BeitragSa, Jan 12, 2008 15:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Schau mal: Du willst was einbauen ohne zu wissen wofür überhaupt. Das bringt recht wenig. Ich könnte dir jetzt einen tollen type basteln und du würdest nicht wissen was du damit anzustellen hast, weil er an deinen Bedürfnissen vorbei entwickelt wäre.
Also: entweder Du weisst was types sind und damit auch was man damit anstellen kann. Dann kannst du uns sagen was dein type bewirken soll und wir können beim Finetuning helfen.
Oder, und das halte ich für wahrscheinlicher, Du weisst noch nicht wirkich was types sind und dann solltest Du erst ein wenig damit üben bis du das verstanden hast bevor Du sie irgendwo ernsthaft verwenden willst.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group