.mesh einbinden?

Probleme beim Erstellen von 3D-Modellen und Texturen, keine Ahnung womit man Musik macht? Dies ist dein Forum.
Rockmaster
Beiträge: 105
Registriert: 28.04.2006 22:19

.mesh einbinden?

Beitrag von Rockmaster »

Hi Leute!
kennt einer von euch vllt ein gutes Tutorial wie dafür wie man mit Milkshape erstellte 3D-Objekte in PureBasic einbindet?
Ich habs zwar mit dem Ogreexporter geschafft eine .mash datei zu erstellen, aber die bringt mir nichts solange ich nicht weis wie ich sie einsetze...
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: .mesh einbinden?

Beitrag von Kiffi »

> .mesh einbinden?

mh, vielleicht mit LoadMesh()?

Grüße ... Kiffi
Rockmaster
Beiträge: 105
Registriert: 28.04.2006 22:19

Beitrag von Rockmaster »

Ja das weis ich auch, aber viel bringt mir das auch nicht grade...
Sobald ich das mesh geladen habe muss ich es ja irgendwie als 3D-Objekt auf den Schirm bringen und DAS isst mein Problem!
Benutzeravatar
Quaxi
Beiträge: 66
Registriert: 11.09.2004 12:42

Beitrag von Quaxi »

Du brauchst 3 Dinge um ein Mesh anzuzeigen:

1) Das Mesh selbst. Hierbei hilft der Befehl LoadMesh().
Beispiel:

Code: Alles auswählen

LoadMesh(#MYMESH, "TestMesh.mesh")
2) Eine Textur. Die lädst du mit LoadTexture().
Beispiel:

Code: Alles auswählen

LoadTexture(#MYTEXTURE, "Texture.bmp")
3) Ein Material. Das Material wird wird auf das 3D Model gelegt. Es besteht aus mind.1 oder auch mehreren Texturen. Dazu musst du CreateMatterial() aufrufen.
Beispiel:

Code: Alles auswählen

CreateMaterial(#MYMATERIAL, TextureID(#MYTEXTURE))
Jetzt hast du alles um das 3D Modell anzuzeigen. Naja fast alles. Den du musst das Modell erst in ein Entity umwandeln. Nur Entitys können angezeigt werden. Der Befehl lautet CreateEntity().
Beispiel:

Code: Alles auswählen

CreateEntity(#MYENTITY, MeshID(#MYMESH), MaterialID(#MYMATERIAL), 0 ,0 ,0)
Für genaurere Angaben was die einzelnen übergebenen Werte bedeuten rate ich dir die Hilfe durchzulesen, die ist sehr hilfreich.

Das funktioniert aber alles natürlich nur wenn du am Programmstart ein
InitEngine3D() und ein Add3DArchive("Data\", #PB_3DArchive_FileSystem) eingefügt hast. Mit ersterem initialisierst du die Ogre Engine. Mit zweiterem legst du fest wo du deine Mesh und Textur Daten gespeichert hast. In diesem Fall im Ordner Data.
Rockmaster
Beiträge: 105
Registriert: 28.04.2006 22:19

Beitrag von Rockmaster »

Danke ich werde es mal ausprobieren!
Antworten