irrichlet mod?

BlitzMax Forums/BlitzMax Programming/irrichlet mod?

'
'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=True
		ming=Self
	End Method

	Method display(width,height,depth,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
			
	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
	
	Field mesh:T_irrIAnimatedMesh

End Type

Global Ming:Engine 

'---Example Code



Evak, there's always option number 3 :)