Hallo verehrte Community,
ich habe gerade ein kleine Klausurenpause und versuche mich an der Irrlicht-Engine.
Ich habe ein md2-Model in Blender erstellt und nutze das in AutoIt. Nun möchte ich dem ganzen auch noch eine Textur überziehen; allerdings erhält das Objekt
immer nur den Durchschnittsfarbwert der Textur und nicht die Textur an sich:
[Blockierte Grafik: http://www.imagebanana.com/view/cmc6kqdz/dameohnetextur.jpg]
Bild
Das gleiche Problem gab es wohl hier: [ gelöst ] [Irrlicht] Eigenes Model -> Textur ?
Allerdings hilft mir die dort genannte Lösung nicht weiter; ich habe für Blender ein Python-Skript installiert, dass mir den Export in md2 erlaubt.
Allerdings wird einfach keine Textur über das Bild gezogen.
Skript:
Skript
#include "Irrlicht/Irrlicht.au3"
Opt("MustDeclareVars", True)
HotKeySet("{ESC}", "_exit")
Global $BSPMesh, $BSPNode, $Camera
Global $screen_width, $screen_height
Global $MD2Mesh, $SceneNode, $MeshTexture
$screen_width = 800
$screen_height = 600
_IrrStart($IRR_EDT_OPENGL, $screen_width, $screen_height, $IRR_BITS_PER_PIXEL_32, $IRR_WINDOWED, $IRR_SHADOWS, $IRR_IGNORE_EVENTS, $IRR_VERTICAL_SYNC_OFF)
_IrrSetWindowCaption("Irrlichtgehversuch")
;_IrrAddZipFile("Irrlicht/media/map-20kdm2.pk3", $IRR_IGNORE_CASE, $IRR_IGNORE_PATHS)
;$BSPMesh = _IrrGetMesh("20kdm2.bsp")
;$BSPNode = _IrrAddMeshToSceneAsOcttree($BSPMesh)
$MD2Mesh = _IrrGetMesh("dame.md2")
$SceneNode = _IrrAddMeshToScene($MD2Mesh)
$MeshTexture = _IrrGetTexture("holztextur.png")
_IrrSetNodeMaterialTexture($SceneNode, $MeshTexture, 0)
_IrrSetNodeMaterialFlag($SceneNode, $IRR_EMF_LIGHTING, $IRR_OFF)
_IrrSetNodeScale($SceneNode, 5, 5, 5)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$Camera = _IrrAddFPSCamera()
[/autoit] [autoit][/autoit] [autoit]_IrrSetNodePosition($Camera, 1500, 93, 1369)
_IrrSetCameraTarget($Camera, 1600, 93, 1369)
_IrrSetNodePosition($SceneNode, 1600, 93, 1369)
_IrrHideMouse()
While _IrrRunning()
_IrrBeginScene(255, 255, 255)
_IrrSetNodePosition($SceneNode, 1600, 93, 1369)
_IrrDrawScene()
_IrrEndScene()
WEnd
Func _exit()
_IrrStop()
Exit
EndFunc ;==>_exit
Die Models, Irrlicht etc. waren leider zu groß für den Anhang;
ich hab sie hier hochgeladen:
Download ZIP von FTP-Server
Die Textur ist das Holzbrett (Holztextur.png).
Viele Grüße und Dank im Vorraus
stay
PS: Das Skript entstammt zu großen Teilen Schnacko's Irrlicht Tutorial.