Seite 1 von 2

3d Terrain erstellen

Verfasst: 14.10.2004 19:06
von M@xx
Hi Ihr!

Kann mir vielleicht jemand sagen, was an dem folgenden Code falsch ist?
Wenn ich ihn ausführe, kommt die Meldung, die jeder von euch sehr gut kennen sollte <) :

Diese Anwendung wird aufgrund eines ungültigen Vorgangs geschlossen.

Code: Alles auswählen

InitEngine3D()
InitSprite()
InitSprite3D()
Start3D()


CreateTexture(1, 300, 300)
CreateMaterial(1, TextureID(1))
CreateTerrain("Pfad", MaterialID(1), 1, 1, 1, 1)

Stop3D()

Verfasst: 14.10.2004 19:45
von memdee
Probier mal, die Größe der Textur auf ein Vielfaches von 8 zu setzen, also 256x256 oder 512x512 usw.
Andere Formate werden von manchen Grafikkarten afaik nicht unterstützt.

Verfasst: 14.10.2004 20:38
von Lars
PB Hilfe hat geschrieben:Hinweis: Innerhalb eines Start3D() : Stop3D() Blocks sollten sich keine Befehle der normalen Sprite Library (wie z.B. DisplaySprite()) befinden, sondern ausschließlich Befehle der Sprite3D Library.
Ich vermute, das kann man auf andere Libs ausweiten. Sprite3D ist in
diesem Kontext außerdem völlig sinnlos, mache dir mal den Unterschied
zwischen der 3D Engine und Sprite3D klar.

Verfasst: 15.10.2004 12:23
von M@xx
Danke für die Tipps.
Ich hab den Code ein bischen geändert. Funktionieren tut er aber leider genauso wie vorher :|

Code: Alles auswählen

InitEngine3D()
InitSprite()
InitSprite3D()

OpenScreen(800, 600, 16, "3D")


CreateTexture(1, 256, 256)
CreateMaterial(1, TextureID(1))
CreateTerrain("pfad\terrain.jpg", MaterialID(1), 1, 1, 1, 1)
Ist da immernoch was falsch oder ist das eine der vielen Macken meines Computers?

Verfasst: 16.10.2004 23:32
von grapy
Hi,

Code: Alles auswählen

InitEngine3D()
InitSprite()
OpenScreen(1280, 1024, 32, "my3DWorld")

CreateMaterial(0, LoadTexture(0, "myterraintex.jpg"))
CreateTerrain("myterrain.png", MaterialID(0), 10, 2, 10, 0)
Die "myterraintex.jpg" sollte durch 8 teilbar sein.

Das "myterrain.png" auch aber +1 z.b. 257*257 und 256 Graustufen,
welche die Höhenwerte angeben.

Gruß grapy :mrgreen:

Verfasst: 17.10.2004 16:03
von M@xx
Danke für eure Versuche, mir zu helfen.
Er beendet diese Anwendung immernoch aufgrund eines ungültigen Vorgangs. Muss wohl am Rechner liegen. :bluescreen:
Egal, denn bleib ich erstmal bei 2D. Is fürn PB Einsteiger wahrscheinlich sowieso besser.

Verfasst: 18.10.2004 19:36
von grapy
Läuft den die Terrain Demo im Purebasic Examples Ordner?

grapy :mrgreen:

Verfasst: 10.11.2004 15:25
von Kaeru Gaman
MANN

ab welcher Version ist denn das Engine3D in PB ?

ich brauch unbedingt 'n update... war so blöde mir die 35,-€ Version bei Amazon zu bestellen, die hat keine updateberechtigung...

Verfasst: 10.11.2004 15:49
von Danilo
Kaeru Gaman hat geschrieben:ab welcher Version ist denn das Engine3D in PB ?
PB 3.50 vom 6.Januar 2003.

Das Update brauchst Du vorerst nicht, da die 3D-Sachen
noch nicht großartig zu gebrauchen sind.
Dieses 3D-Zeugs gibts ja erst seit (bald) 2 Jahren in PB,
da kann man nichts erwarten. ;) :lol:

Verfasst: 10.11.2004 23:01
von Kaeru Gaman
?? :| ??

ich hab mir von knapp 1 jahr die version von amazon bestellt...

muss ich für Engine3D ne .DLL runterladen ?

[EDIT]

also, meine version scheint ja echt schon asbach zu sein.. da hat amazon mich aber beschissen...
... hab grad das "raumschiff im 2D"-beispiel ausprobieren wollen - du hattest den link gepostet unter 2D-Berechnungen...
...meine version kennt noch nichma die PNG-Geschichten (argl..F*c..grr...#*§~@&%€)