irrichlet mod?

BlitzMax Forums/BlitzMax Programming/irrichlet mod?

budman, care to share? My one is messing up somewhere because the video driver is being returned as null for some bizarre yet probably my fault anyway reason.

here's the code as it stands i'm using to test the little bit i've done so far,

'
'Irrlicht-Abstraction-Layer
'
'(c)Antony Wells
'--
'IAL V0.1
'
Strict

Framework BRL.Blitz

Import gg.IrrBMAX

Const I_DX =EDT_DIRECTX9,I_GL=EDT_OPENGL

Type Engine

	Method New()
		stencils=True
		vSync=False
		fullScreen=False
		ming=Self
	End Method

	Method Delete()
	
		device.drop()
	
	End Method
	
	Method display(width,height,depth=16,driver=I_DX)
	
		device = T_irrIrrlichtDevice.create(driver,T_irrDimension2d_s32.create(width,height),depth,fullScreen,stencils,vsync,0)
		driver=device.getVideoDriver()
		scene=device.getSceneManager()
		gui=device.getGUIEnvironment()
	
	End Method
		
	Method vSyncOn()
		vsync=True
	End Method
	
	Method vSyncOff()
		vSync=False
	End Method
	
	Method StencilOn()
		stencils=True
	End Method
	
	Method StencilOff()
		stencils=False
	End Method
	
	Method fullScreenOn()
		fullScreen=True
	End Method
	
	Method fullScreenOff()
		fullScreen=False
	End Method
	
	Method appTitle(title:String)
	
		device.setwindowcaption(title)
	
	End Method

	Method Loop()
		Return device.run()
	End Method
	
	Method renderWorld()
	
		driver.beginScene(True,True,T_irrSColor.createFromVals(clsd,clsr,clsg,clsb))
	
			scene.drawAll()
				
		driver.endscene()
	
		FlushMem
		
	End Method
	
	'cls color
	Field clsr,clsg,clsb,clsd!
			
	'---
	Field device:T_irrIrrlichtDevice
	Field vsync,stencils,fullscreen
	
	Field driver:T_irrIVideoDriver
	Field scene:T_irrISceneManager
	Field gui:T_irrIGUIEnvironment
			
End Type

Type Entity

	Function Load:Entity(file:String)

		Local out:entity = New entity
		If ming = Null Throw "No 3D Display Initialized, cannot load mesh without scene context"
		out.mesh = ming.scene.getmesh( file )
		Return out
					
	End Function
	
	Method Show()
	
		node = ming.scene.addAnimatedMeshSceneNode( mesh )
		
	End Method
		
	Field mesh:T_irrIAnimatedMesh
	Field node:T_irrIAnimatedMeshSceneNode

End Type

Global Ming:Engine 

'---Example Code

DebugStop
Local Test:Engine = New Engine

test.display(640,480)

While Test.Loop()

	test.RenderWorld()
	FlushMem

	If KeyDown(KEY_ESCAPE) Exit
Wend






I wouldn't say devcpp was a bad step anyway, nice little ide :)