Irrlciht Wrapper Bug?
BlitzMax Forums/BlitzMax Beginners Area/Irrlciht Wrapper Bug?| 
 | ||
| Is it a Bug in the Wrapper? <code> Strict Framework BRL.Blitz Import BRL.StandardIO Import gg.IrrBMAX ' let user Select driver Type Local driverType:Int=EDT_NULL Local strInput:String="" Local shadows:Int=1 driverType=EDT_OPENGL ' create device Local device:T_irrIrrlichtDevice= .. T_irrIrrlichtDevice.create(driverType,T_irrDimension2d_s32.create(1024,768),32,True,shadows) If device.handle=0 Then Return ' could Not create selected driver. Local Driver:T_irrIVideoDriver=device.getVideoDriver() Local smgr:T_irrISceneManager=device.getSceneManager() Local mesh:T_irrIAnimatedMesh=smgr.getMesh("../media/room.3ds") Local entity:T_irrIMesh=mesh.getmesh(1)'getMeshBufferCount() Local i%=entity.getMeshBufferCount() Local l% Local m:T_irrIMeshBuffer Local mat:T_irrSMaterial For l=1 To i m=entity.getMeshBuffer(i) mat=m.getmaterial() ' mat. Next smgr.getMeshManipulator().makePlanarTextureMapping(mesh.getMesh(0),0.004) Local node:T_irrISceneNode=smgr.addAnimatedMeshSceneNode(mesh) node.setMaterialTexture(0,driver.getTexture("../media/rockwall.bmp")) node.getMaterial(0).getEmissiveColor().set(0,0,0,0) </code> | 
| 
 | ||
| had a few bugs in your sample code.  all my fixes have comments denoted by "FIX:" 
Strict 
Framework BRL.Blitz 
Import BRL.StandardIO 
Import gg.IrrBMAX 
' let user Select driver Type 
Local driverType:Int=EDT_NULL 
Local strInput:String="" 
Local shadows:Int=1 
driverType=EDT_OPENGL 
' create device 
Local device:T_irrIrrlichtDevice= .. 
T_irrIrrlichtDevice.create(driverType,T_irrDimension2d_s32.create(1024,768),32,True,shadows) 
If device.handle=0 Then Return ' could Not create selected driver. 
Local Driver:T_irrIVideoDriver=device.getVideoDriver() 
Local smgr:T_irrISceneManager=device.getSceneManager() 
Local mesh:T_irrIAnimatedMesh=smgr.getMesh("../media/room.3ds") 
' FIX: changed to 0 since all indexes are 0 based
' NOTE: mesh.getFrameCount() will get you how many frames there are
Local entity:T_irrIMesh=mesh.getmesh(0)'getMeshBufferCount() 
Local i%=entity.getMeshBufferCount() 
Local l% 
Local m:T_irrIMeshBuffer 
Local mat:T_irrSMaterial 
' FIX: again, need to start indexing with 0 here
For l=0 To i-1
' FIX: had variable i as the index, needed to be l
m=entity.getMeshBuffer(l) 
mat=m.getmaterial() 
' mat. 
Next 
smgr.getMeshManipulator().makePlanarTextureMapping(mesh.getMesh(0),0.004) 
Local node:T_irrISceneNode=smgr.addAnimatedMeshSceneNode(mesh) 
node.setMaterialTexture(0,driver.getTexture("../media/rockwall.bmp")) 
node.getMaterial(0).getEmissiveColor().set(0,0,0,0)
 |