1 (edited by Serge Petrowski 2007-05-12 12:41:49)

Topic: iB3d Examples?

Hi, gman! You are have any examples for iB3d? Simple, created with ib3d without examles is hard sad And, how complete ib3d? This is 100% Blitz-simmilar functions or not? I'm see source ib3d and think that not all blitz-functions created. I'm rights?

Re: iB3d Examples?

greetings smile  i would say iB3D is 65% - 75% similar functions for the 3D functions.  unfortunately i do not have any good examples at this time.

Re: iB3d Examples?

here is the sample i am currently using to test picking.  as for a reference, the functions are named the same as the corrosponding B3D functions so check the online reference for B3D if you can.  also, i have most of the functions documented so they should show up under the BMAX module documentation.

SuperStrict 
Framework Irrlicht.B3D

ib3d_Graphics3D(640,480)
Local cam:CAMERA=ib3d_CreateCamera()
ib3d_PositionEntity(cam,80,30,30)

Local syd:MESH=ib3d_LoadAnimMesh("sydney.md2")
Local tex:TEXTURE=ib3d_LoadTexture("sydney.bmp")
ib3d_EntityTexture(syd,tex)
ib3d_PositionEntity(syd,10,0,30)

Local LIGHT:LIGHT=ib3d_CreateLight()
ib3d_CameraClsColor(0,0,0)

ib3d_EntityDebugDataVisible(syd,True)
ib3d_NameEntity(syd,"SYD")
ib3d_NameEntity(cam,"CAM")

ib3d_EntityRadius(cam,30)
ib3d_EntityOffset(cam,0,10,0)
ib3d_EntityType(cam,1)
ib3d_EntityType(syd,2)
ib3d_EntityType(syd,1)

Local done:Int=False 
Local current:Int=0

Local zoom:Float=1.0
Local controlled:ib3d_Entity=cam
Local projmode:Int=1
Local cnt:Int=0

Local cube:PRIMITIVE=ib3d_CreateCube()
ib3d_PositionEntity(cube,10,80,30)
ib3d_NameEntity(cube,"CUBE")

cube._node.setID(2)

Local sphere:PRIMITIVE=ib3d_CreateSphere()
ib3d_EntityPickMode(sphere,PM_BOX)
ib3d_PositionEntity(sphere,10,125,30)
ib3d_NameEntity(sphere,"SPHERE")

Local speed:Float=.05

ib3d_PointEntity(cam,sphere)

Local fnt:FONT=ib3d_LoadImageFont("fonthaettenschweiler.bmp",18)
ib3d_SetImageFont(fnt)
ib3d_SetFontColor(255,0,0)

While Not ib3d_KeyDown(EKEY_ESCAPE)

    If ib3d_KeyDown(EKEY_KEY_Z) Then zoom:+0.005
    If ib3d_KeyDown(EKEY_KEY_X) Then zoom:-0.005
    
    If ib3d_KeyDown(EKEY_LEFT) Then ib3d_TurnEntity(controlled,0,-speed,0)
    If ib3d_KeyDown(EKEY_RIGHT) Then ib3d_TurnEntity(controlled,0,speed,0)
    If ib3d_KeyDown(EKEY_UP) Then ib3d_TurnEntity(controlled,speed,0,0)
    If ib3d_KeyDown(EKEY_DOWN) Then ib3d_TurnEntity(controlled,-speed,0,0)
    If ib3d_KeyDown(EKEY_SPACE) Then ib3d_TurnEntity(controlled,0,0,speed)
    If ib3d_KeyDown(EKEY_NUMPAD9) Then ib3d_MoveEntity(controlled,0,speed,0)
    If ib3d_KeyDown(EKEY_NUMPAD3) Then ib3d_MoveEntity(controlled,0,-speed,0)
    If ib3d_KeyDown(EKEY_NUMPAD6) Then ib3d_MoveEntity(controlled,speed,0,0)
    If ib3d_KeyDown(EKEY_NUMPAD4) Then ib3d_MoveEntity(controlled,-speed,0,0)
    If ib3d_KeyDown(EKEY_NUMPAD8) Then ib3d_MoveEntity(controlled,0,0,speed)
    If ib3d_KeyDown(EKEY_NUMPAD2) Then ib3d_MoveEntity(controlled,0,0,-speed)
    If ib3d_KeyDown(EKEY_KEY_U) Then ib3d_TurnEntity(controlled,0,0,-speed)
    If ib3d_KeyDown(EKEY_KEY_Y) Then ib3d_TurnEntity(controlled,0,0,speed)
    
    If ib3d_KeyDown(EKEY_KEY_T) Then ib3d_TrackEntity(cam)
    If ib3d_KeyDown(EKEY_KEY_V) Then ib3d_PointEntity(syd,sphere)

    If ib3d_KeyHit(EKEY_KEY_O) Then
        If projmode=1 Then projmode=2 Else projmode=1
        ib3d_CameraProjMode(cam,projmode)
    EndIf

    Local picked:ib3d_Entity=ib3d_EntityPick(syd)

    If picked Then 
        DebugLog(MilliSecs()+" | "+ib3d_EntityName(picked))
    EndIf

    If ib3d_KeyHit(EKEY_KEY_C) Then 
        If current=0 Then 
            current=1 
            controlled=syd
        Else 
            current=0
            controlled=cam
        EndIf
    EndIf
                
    ib3d_UpdateWorld()
    ib3d_DrawText("This is my test text",10,10)
    ib3d_DrawLine3df(ib3d_LastPickRay(),255,0,0)
    ib3d_DrawTriangle3df(ib3d_PickedTriangle(),255,0,0)

    ib3d_RenderWorldBegin()
    ib3d_RenderEntities()
    ib3d_RenderDrawCmds()
    
    ib3d_RenderGUI()        
    ib3d_RenderWorldEnd()
    
    cnt:+1    
Wend

ib3d_FreeEntity(syd)
ib3d_EndGraphics()

Re: iB3d Examples?

Hi gman,
the drawtext function is not displaying any text here. I tested with different fonts ( fonts made in Irrfonttool and including "fonthaettenschweiler.bmp") but nothing. Tested with drirectx and OGL. I get no error, and the font texture is loaded. I will try more.

Re: iB3d Examples?

thx for the heads up ksalomao smile  found the bug and put out a new release.

Re: iB3d Examples?

Now it is great!