Irrlicht 3D Engine for PureBasic! *Official Thread*
-
- Addict
- Posts: 1648
- Joined: Mon Sep 20, 2004 3:52 pm
- Contact:
-
- Addict
- Posts: 1648
- Joined: Mon Sep 20, 2004 3:52 pm
- Contact:
-
- Addict
- Posts: 1648
- Joined: Mon Sep 20, 2004 3:52 pm
- Contact:
I'm not using your stuff. Its written fully in C/C++ and the lua license is included in the zip so you can stop playing cop. I've also changed the lua code to suit my own preferences, and since lua is under the MIT license it states I can use it for whatever purposes I want.FloHimself wrote:maybe i am wrong, but as far as i can see, this is Lua with exported functions from irrlicht.dracflamloc wrote:I've created a 3d programming scripting language thats simple, and very fast.
if so, please don't say you have "created a 3d programming scripting language".
if you have used the pblua lib, be carefull with copyright notices please.
-
- Enthusiast
- Posts: 229
- Joined: Wed May 14, 2003 3:38 pm
- Location: Lüneburg - Germany
keep on going dracflamloc, irrlicht is indeed able to make some great graphics!
( PB6.00 LTS Win11 x64 Asrock AB350 Pro4 Ryzen 5 3600 32GB GTX1060 6GB)
( The path to enlightenment and the PureBasic Survival Guide right here... )
( The path to enlightenment and the PureBasic Survival Guide right here... )
-
- Addict
- Posts: 1648
- Joined: Mon Sep 20, 2004 3:52 pm
- Contact:
-
- Addict
- Posts: 1648
- Joined: Mon Sep 20, 2004 3:52 pm
- Contact:
HOLY CRAP!!!!! I RECENTLY HAD A HD CRASH AND GUESS WHAT'S GONE
Sorry guys, you shouldn't use this lib anymore, we'll just have to wait for OGRE3D 1.0 support. I *may* have a backup somewhere but I'll have to look through a TON of DVD-Rs, so if I find it again I'll be sure to resume work on it. Until then, all I can say is sorry.

Sorry guys, you shouldn't use this lib anymore, we'll just have to wait for OGRE3D 1.0 support. I *may* have a backup somewhere but I'll have to look through a TON of DVD-Rs, so if I find it again I'll be sure to resume work on it. Until then, all I can say is sorry.

ooooooh
that's why people have to share sources...




that's why people have to share sources...



( PB6.00 LTS Win11 x64 Asrock AB350 Pro4 Ryzen 5 3600 32GB GTX1060 6GB)
( The path to enlightenment and the PureBasic Survival Guide right here... )
( The path to enlightenment and the PureBasic Survival Guide right here... )
-
- Addict
- Posts: 1648
- Joined: Mon Sep 20, 2004 3:52 pm
- Contact:
OMG YES!!!
I just did a browse through my computer here at work and I found the 0.3 PB_Irrlicht sources. The i3d scripter sources are gone but screw those I just made that so I could learn lua in C.
So I'll recompile the lib and reupload it later this weekend, I'll need you to test it and make sure theres nothing I am missing in this version here at work. The source is dated 1/6/2005 so hopefully it's up to date with my latest release.
I just did a browse through my computer here at work and I found the 0.3 PB_Irrlicht sources. The i3d scripter sources are gone but screw those I just made that so I could learn lua in C.
So I'll recompile the lib and reupload it later this weekend, I'll need you to test it and make sure theres nothing I am missing in this version here at work. The source is dated 1/6/2005 so hopefully it's up to date with my latest release.
-
- Addict
- Posts: 1648
- Joined: Mon Sep 20, 2004 3:52 pm
- Contact:
Darn... Looks like I'm one version behind. The shadows will be easy to add back in, (and i'll add that removenode function while i'm at it), but the event handler is the old way (0.3), so I'll need to rewrite that, it could take a while since I'm busy with school.
Good news is though that I found this stuff.
Good news is though that I found this stuff.
Definitely good news.
Now, how about an off-site backup?
Seriously though, I've got about 11 months of hosting left on a site that I don't intend to use for anything. 250Meg of storage, supposedly unlimited bandwidth, ftp, pop3 email, etc.... If you are interested, it's all yours. Use it for a website, use it just for offsite file storage, whatever. Its just wasting away, so I don't mind handing it over for free to someone that can use it.


Seriously though, I've got about 11 months of hosting left on a site that I don't intend to use for anything. 250Meg of storage, supposedly unlimited bandwidth, ftp, pop3 email, etc.... If you are interested, it's all yours. Use it for a website, use it just for offsite file storage, whatever. Its just wasting away, so I don't mind handing it over for free to someone that can use it.
-
- Addict
- Posts: 1648
- Joined: Mon Sep 20, 2004 3:52 pm
- Contact:
looks like he forgot to comment down the keyboard checking part..
and also he might of published the zip with an old dll as
So this guy.. dracflamloc, should rework it 
Dude, the idea is nice, having irrlicht on purebasic has great potential! and if you're going to release all upcoming versions for free, thats going to be the best decision you've ever made on your life
Now: I would like to see a working demo (i fixed the code with what I could do, the mesh is not displayed tho).
I dont see why irrlicht works like that... load a mesh into memory and later add a "node" ... weird I would say... one would think that loadmesh will let you set a handle for the mesh and it will be loaded.. and thats about all.
What about the other functions of irrlicht? if i were you i'd start adding them once I got nailed down the big bugs and issues. once you got a stable all working demo, you should go on wrapp the other functions.
and also he might of published the zip with an old dll as
Code: Select all
;**************************
; Test PB_Irrlicht Program
; fixed by dagcarck.......
;**************************
;GUI EVENT HANDLER
ProcedureCDLL EventHandler(*EventData.I3D_GUI_EVENT)
If *EventData\EventType=#I3D_EVENT_GUI
If *EventData\flag2=#I3D_GUIEVENT_BUTTON_CLICKED
If *EventData\flag1=102
i3D_Node_SetMaterialFlag(1,#I3D_MATERIALFLAG_WIREFRAME,1)
EndIf
EndIf
EndIf
EndProcedure
;MAIN PROGRAM
ShipData.I3D_NODEDATA
PlanetData.I3D_NODEDATA
If i3D_Initialize3D(#I3D_DRIVER_OPENGL, 640,480,32,0,1,@EventHandler())
;set startup values
i3D_SetShadowColor(255,0,0,0)
i3D_SetBackgroundColor(155,90,90,90)
i3D_SetWindowCaption("Test PB_Irrlicht - Version: " + i3D_GetEngineVersion())
i3D_GUI_SetFont("./fontcourier.bmp")
i3D_LoadMesh("./ship1.ms3d")
i3D_LoadTexture("./ship1.bmp")
i3D_AddAnimatedNode("./ship1.ms3d",1,1,1,1,1)
i3D_AddAnimatedNode("./planet.ms3d",3,1,1,1,1)
i3D_Node_SetMaterialType(1,#I3D_MATERIALTYPE_SPHERE_MAP)
i3D_Node_SetTexture("./ship1.bmp",1,0)
i3D_AddDynamicLight(1,5,5,5,100,255,255,255,100)
i3D_Camera_SetPosition(20,50,20)
i3D_Node_AddDynamicShadow(2)
;create GUI
EditBox1.l = i3D_GUI_CreateEditBox("Edit box sample",101,100,100,250,150,1)
Button1.l = i3D_GUI_CreateButton("Wireframe",102,400,100,500,150)
Static1.l = i3D_GUI_CreateStaticText("Static text is fun!",103,250,250,400,300,0,0)
MsgBox.l = i3D_GUI_CreateMessageBox("Test MsgBox","Testing 1 2 3",104,1,#I3D_GUI_MSGBOX_OK + #I3D_GUI_MSGBOX_CANCEL)
While i3D_IsRunning()
i3D_Camera_PointAtNode(1)
;Start the rendering sequence - ORDER MATTERS
i3D_BeginRender(1,1)
;Render to the screen
i3D_RenderScene()
i3D_RenderGUI()
;Draw2DText must be done between beginrender and endrender, no other time
i3D_Draw2DText("./fontcourier.bmp",10,10,"Hello and welcome to PB_Irrlicht by dracflamloc!",255,255,255,255,0)
i3D_Draw2DText("./fontcourier.bmp",10,30,"http://www.dracsoft.com/",255,255,255,255,0)
i3D_Draw2DText("./fontcourier.bmp",10,50,"X: " + Str(ShipData\xPos),255,255,255,255,0)
i3D_Draw2DText("./fontcourier.bmp",10,70,"Z: " + Str(ShipData\zPos),255,255,255,255,0)
i3D_Draw2DText("./fontcourier.bmp",10,90,"FPS: " + Str(i3D_GetFPS()),255,255,255,255,0)
;End the rendering sequence
i3D_EndRender()
;update data and rotate object
i3D_Node_GetData(1,@ShipData)
i3D_Node_SetRotation(1,ShipData\xRot+0.05,ShipData\yRot+0.05,ShipData\zRot-0.05)
i3D_Node_GetData(3,@PlanetData)
i3D_Node_SetRotation(3,PlanetData\xRot,PlanetData\yRot+0.15,PlanetData\zRot)
;check keypress
; ExamineKeyboard()
; If KeyboardPushed(#PB_Key_Left)
; i3D_Node_SetPosition(1,ShipData\xPos - 0.05,ShipData\yPos,ShipData\zPos)
; ElseIf KeyboardPushed(#PB_Key_Right)
; i3D_Node_SetPosition(1,ShipData\xPos + 0.05,ShipData\yPos,ShipData\zPos)
; ElseIf KeyboardPushed(#PB_Key_Down)
; i3D_Node_SetPosition(1,ShipData\xPos,ShipData\yPos,ShipData\zPos + 0.05)
; ElseIf KeyboardPushed(#PB_Key_Up)
; i3D_Node_SetPosition(1,ShipData\xPos,ShipData\yPos,ShipData\zPos - 0.05)
; ElseIf KeyboardPushed(#PB_Key_Escape)
; i3D_Close3D()
; EndIf
Wend
Else
MessageRequester("Error","Could not initialize the 3D device. Make sure you have PB_Irrlicht.dll")
EndIf
i3D_DoCleanUp()
End

Dude, the idea is nice, having irrlicht on purebasic has great potential! and if you're going to release all upcoming versions for free, thats going to be the best decision you've ever made on your life


Now: I would like to see a working demo (i fixed the code with what I could do, the mesh is not displayed tho).
I dont see why irrlicht works like that... load a mesh into memory and later add a "node" ... weird I would say... one would think that loadmesh will let you set a handle for the mesh and it will be loaded.. and thats about all.
What about the other functions of irrlicht? if i were you i'd start adding them once I got nailed down the big bugs and issues. once you got a stable all working demo, you should go on wrapp the other functions.
-
- Enthusiast
- Posts: 362
- Joined: Wed Aug 06, 2003 2:49 pm
- Location: Venice - Italy, Japan when possible.
- Contact:
I had the same feeling, but supposed that it's how the Irrlicht engine works...dagcrack wrote: I dont see why irrlicht works like that... load a mesh into memory and later add a "node" ... weird I would say... one would think that loadmesh will let you set a handle for the mesh and it will be loaded.. and thats about all.
dracflamloc was just wrapping it, isn't he?