Irrlicht 1.8.1 for Blitz

BlitzPlus Forums/BlitzPlus Programming/Irrlicht 1.8.1 for Blitz

AquaLung(Posted 2013) [#1]




Find new release here: bIrrlicht Wrapper

Ed Musolino (AquaLung)


=======================================================================


Hotshot2005(Posted 2013) [#2]
Yeah it does work on Blitz 3D :)

It is Great and all need is Document and tutorials then you are on way...

p.s. Of course it does take time to do them all


AquaLung(Posted 2013) [#3]
Re-download from 1st post, added converted terrain and fog example. Be sure to add the updated decls to userlibs. Use ALT + F4 to exit this example.

AquaLung


Yasha(Posted 2013) [#4]
I think this is really cool!

If you do have a C++ problem, it won't hurt to ask. Sounds like it's under control though. The only thing you should plan around possibly being really difficult in advance are callbacks, if it uses them.


Hotshot2005(Posted 2013) [#5]
I run the terrain program but I get error saying

Function irraddterrain not found

It is alright now :-D

Very good and so fast :)


Kryzon(Posted 2013) [#6]


Works here, Blitz3D 1.106


Rick Nasher(Posted 2013) [#7]
Indeed works in Blitz3D as well, without changes to the source. Bit surprised that the includes don't even need conversion to ".BB" format to work there.

Only thing I couldn't get is how to end the terrain example without getting dirty. LOL


Rick Nasher(Posted 2013) [#8]
Nice update.


Rick Nasher(Posted 2013) [#9]
Ah well the quick and dirty route: Alt-F4.. :-)

Forgive my ignorance, but I was trying to make the cam follow an entity to create a 3rd person cam, similar to:
EntityParent MD2Mesh,OurCamera

but got a MAV when used:
IrrSetNodeParent MD2Mesh,OurCamera

Anybody knows this is possible in some way or is it just not meant to work like that?


Rick Nasher(Posted 2013) [#10]
BTW: the shading on the MD2(self) and BSP is quite impressive. I think this deserves an entry in the Blitz3D section too(it does work), cos appears some people are avoiding Blitz+ as if it has the plague(based on the low amount of comments round here on such an awesome project) LOL


Yue(Posted 2013) [#11]
Nice!!
BlitzPlus and Blitz3D




Rick Nasher(Posted 2013) [#12]
Yep, cool huh? I've added the skybox example to this one too and looks pretty impressive, almost a full game. LOL

Btw, model has the following animation modes(and perhaps more, I dunno):
STAND, RUN, JUMP, ATTACK, FLIP, SALUTE, WAVE, POINT.

Found them playing with below command:
IrrPlayNodeMD2Animation( SceneNode, IRR_EMAT_STAND )


Rick Nasher(Posted 2013) [#13]



Rick Nasher(Posted 2013) [#14]
Now we only need controls(up,down,left,right,jump,crouch,shoot, launch grenade),colission detection, gates opening/closing and an enemy with AI or UDP multiplayer to add and there we have it: QuakeBlitz.. :-)

(can't wait)


Yasha(Posted 2013) [#15]
model has the following animation modes(and perhaps more, I dunno):
STAND, RUN, JUMP, ATTACK, FLIP, SALUTE, WAVE, POINT.


MD2s normally have the following animation sequence:
"stand", "run", "attack", "pain1", "pain2", "pain3", "jump", "flip", "salute", "taunt", "wave", "point", "crstnd", "crwalk", "crattack", "crpain", "crdeath", "death1", "death2", "death3"

They don't have to - technically the file format can support whatever list of animations you want - but it's a de-facto standard because it's the sequence used by Quake II.


Hotshot2005(Posted 2013) [#16]
impressive for Blitz 3D with Direct x 9!


Hotshot2005(Posted 2013) [#17]
Just wondering what 3D Models does Irrlicht used apart from .MD2?


Yue(Posted 2013) [#18]
To me what bothers me is why not use the same commands of Blitz3D, and would be much easier to implement and begin again to learn how commands, which is confusing me.


Yasha(Posted 2013) [#19]
why not use the same commands of Blitz3D


Because this is not a "new" thing for the Blitz community. Irrlicht is a separate engine, completely unrelated to Blitz3D, with its own history and its own (bigger) community.

Since Irrlicht is not B3D, and doesn't work like B3D, giving it a layer with the same commands would be highly misleading and make things even more difficult, because the layer wouldn't fit. (People have tried, in the past; the general impression is that it just doesn't work as well.)

Use this userlib if you want to use Irrlicht.


Yue(Posted 2013) [#20]
Ok Thanks You Yasha!!

Some documentation about commands??


AquaLung(Posted 2013) [#21]
Most of the commands in the decls may not work as of yet, you may even crash out. They are there just because of a direct translation between the freebasic includes and a decls for blitz. Some of the commands may work unmodified but the only ones that have been tested are the commands used in the converted examples.

Still alot of work to be done.


Rick Nasher(Posted 2013) [#22]
Well, AquaLung as you can see you have caught our undivided attention and enthusiasm. Hope you can pull it off, but looks like you are onto something really good here.


Rick Nasher(Posted 2013) [#23]
Dunno if already possible, but a 3rd Person Cam example with collision detection would be great. (beg-beg) ;-)


Rick Nasher(Posted 2013) [#24]
Hmm,radio silence for 5 days, hope I wasn't asking for too much, cos this really seems like a VERY cool project.


AquaLung(Posted 2013) [#25]
I'm still here, I have to find time around work to play with this. Time is hard to come by when you have to work your life away. LoL

AquaLung

.


Rick Nasher(Posted 2013) [#26]
I know exactly what you mean. :-)


AquaLung(Posted 2013) [#27]
Updated first post.
I see Irrlicht released an engine update on 11/20 ver 1.8.1 that contains bug fixes. I will add it to the next release.

@ hotshot
Just wondering what 3D Models does Irrlicht used apart from .MD2?


Reference the Irrlicht Documentation to see what models are supported.


Irrlicht Documentation


.


rickychus(Posted 2013) [#28]
Hey,
I was going to give you encouragement and thanks for your work... Keep it up!
I have a lot to learn! XD
Thank you!

Ricky.-


Rick Nasher(Posted 2013) [#29]
Thanks Ploppy, awsome! Can't believe the speed at which your are doing this. Gathered the commands you've published on the forum up till now and it's a pretty huge list(counted 182, correct me if I'm wrong). I dunno how many commands Blitz3D currently has, but I appears you're well on your way of doing the complete rewrite!




Rick Nasher(Posted 2013) [#30]
Woopa wrong forum, please ignore and delete..


Rick Nasher(Posted 2013) [#31]
Pretty awsome too btw. There are currently two great projects, each with it's own special appeal actually. One foccussing on DX9 and the other Irrlicht(DX/OpenGL). Stunningly running at the same time. Where were you guys all those years? :-)

Amazing, but very humbling.. As Rickychus so accurately put it: "Lots to learn".


Yue(Posted 2013) [#32]
PowerFull men =)


AquaLung(Posted 2013) [#33]
Updated 1st post!


Rick Nasher(Posted 2013) [#34]
Working marvelously, in both Blitz+ & Blitz3d.
However for example 44_Example_Animating_Joints.bb to work in Blitz3d, only a semicolon is needed to ignore the Notify command(as it's a Blitz+ only command).

Like so in this line:
; Notify "Unable to get joint node"

Still going strong.


Guy Fawkes(Posted 2013) [#35]
api_messagebox(0, msg$, title$, 0)


;)


Rick Nasher(Posted 2013) [#36]
I've combined the following examples and merged into one(very messy):

04_Example_3DModel.bb/bp
05_Example_BSPMap.bb/bp
08_Example_ShadowsAndLights.bb/bp
09_Example_Skybox.bb/bp
10_Example_TerrainAndFog.bb/bp
12_Example_Collision.bb/bp
30_Example_Animated_Water.bb/bp

I've added some crude 3rd person controls to see how would hold up in an actual 3rd person game like situation.
Cam: Cursorkeys and mouse | 3rd person: W,A,S,D and spacebar.

I realise these controls are far from perfect(collision is not handled properly and so is movement and animation), I just couldn't think of another quick way to do it.

*** If anybody can put up a better way, please do. ***




Guy Fawkes(Posted 2013) [#37]
Crashes for me even in debug mode. Even with the code file in the right place... :/


Rick Nasher(Posted 2013) [#38]
@Guy Fawkes: Weird, works fine with me in both Blitz3d and Plus.
Did you download the latest (02-12)?


Guy Fawkes(Posted 2013) [#39]
i have 1.8.1.


Rick Nasher(Posted 2013) [#40]
I don't know, but perhaps the version number refers to the Irrlicht version, not to the Blitz release by Aqualung?
How does it crash, any error codes, freezes up -what happens-?
What OS/Blitz version did you try it with?


Guy Fawkes(Posted 2013) [#41]
Windows 7 (x64) but 32 bit programs work on it no problem.

unfortunately, your above example crashes completely silently.. even from debug >.<


Yue(Posted 2013) [#42]
Powerfull.

Animated objects:

B3D files (.b3d, r, skeleton)
Microsoft DirectX (.x, r) (binary & text, skeleton)
Milkshape (.ms3d, r, skeleton)
Quake 3 models (.md3, r, morph)
Quake 2 models (.md2, r, morph)


AquaLung(Posted 2013) [#43]
Unfortunately the Blitz debugger is not of much use when using an external graphics addon. You can get an Irrlicht log file by doing either of the followiing:

1
Use DebugView from sysinternals.

2
Create a new text file and name it START.bat

Edit this file and add the following line:

"NAME OF YOUR EXECUTABLE.exe" > Irrlicht.txt

Save this file and run it. Upon exiting your .exe, Irrlicht will dump a log to this file.

I noticed in Rick's sample, he is using a modified heightmap file "./media/terrain-heightmapMod.bmp" If this file does not exist on your PC Irrlicht will crash out. You must be very careful that files exist or you will have issues. I think the log procedure above will show if it fails to load a texture or image but maybe not the way it is used in this terrain command. You may want to check if a file exists with the FileType command before certain Irrlicht commands which use a direct path to a file in it.

Once I get the keyboard and mouse somewhat workable, I will release a simple 3rd Person Demo.

AquaLung

P.S.

Version 1.8.1 is the version of Irrlicht, not the Engine Wrapper. Just always make sure to use the latest release in the 1st post, a lot of things are changing fast in the DLL's.


.


Rick Nasher(Posted 2013) [#44]
Ah, sorry GF. Forgot I leveled the mid of the terrain heightmap a bit to have a place for the BSP model to live in. Can be done very quickly in MSpaint or so by putting in a black square or circle with blurred edges in the middle of it.
That's probably the cause indeed.

Thanks AquaLung, that will be super cool. I'll be looking forward to that.


Rick Nasher(Posted 2013) [#45]
Ah well, here's a heightmap image that can be used with the code.
Not very sophisticated, but to show the idea, end result below:


Don't ask me how I got it onto the stairs, but takes a lot patience as controls aren't working properly:

All in all, I think it shows a lot of potential even with my crappy code. ;-)


Hotshot2005(Posted 2013) [#46]
I know it take lots of work but can the texture itself can improve if you can?


Guy Fawkes(Posted 2013) [#47]
BEAUTIFUL! And yea, but you need to make the texture much more real as in HD if you want that, HotShot.


AquaLung(Posted 2013) [#48]
New update released, see 1st post!


Rick Nasher(Posted 2013) [#49]
Wauw Aqualung! Absolutely love this, thanks thanks thanks.
Love the grassy stuff(very handy), the clouds(beautiful, great for flight) and sphere terrain too(amazing, I can see a space game coming up).

The line below I find quite intriguing:
"; Create a type for players for future network expansion"

Questions:
1) Does this mean you have some networking stuff up your sleeve too?
2) Do you have any plans for including physics and/or a particle engine?

Again many thanks, this is great stuff, I'm sure everyone will agree.


AquaLung(Posted 2013) [#50]
Irrlicht has a built in particle engine, I want to get that working next.

The Freebasic version of the wrapper also tied into newton physics, this will be looked at later down the road. I am a one man team. Lol

Also looking to add a 3D sound library like Irrklang or something similar.

AquaLung


Guy Fawkes(Posted 2013) [#51]
I think I'm in love with this library now! :D And OMG! SUNFLARES?! Do you think you can add a total day / night system with animated star texture and light fade?! :O


AquaLung(Posted 2013) [#52]
I think once this library is more developed it will be possible.


Rick Nasher(Posted 2013) [#53]
Can hardly wait to see it.


Guy Fawkes(Posted 2013) [#54]
^ WHAT HE SAID^10000000! =D


AquaLung(Posted 2013) [#55]
I just went ahead and re-uploaded to correct some issue's in the 3rd Person Demo. Also added angled keyboard controls.

AquaLung


rickychus(Posted 2013) [#56]
Hey AquaLung!

Many and varied your progress.Very good work!

I'm using the IDE (IDEAL with B+), and for each execution of your examples, IDEAL returns a lot of errors, not serious (Examples run fine):

**********>> Created: 11/12/2013, 9:24:18<<***********
IDEal version :0.8.94
App. Path :C:\Program Files\IDEal
File Name :Mod_Compiler
Method Name :ParseError
Error Description :Procedure call or argument is not valid
Error Number :5
Error Line :0
Error Source :IDEal
OS Info : Version:6.1 Build:7601
Files opened :2
**************************************************************

7 errors in the execution of the example "Blitz-Irrlicht 3rd Person Demo.bb", maybe this information will help.

Itīs IDEAL time to retire? :(

Thanks, Keep it up

Ricky.-


PS: I like the walking animation, is hypnotic! :)


Guy Fawkes(Posted 2013) [#57]
Hi, Aqualung. Can you please make it so that a variable can control whether or not you want "auto cam rotation" ? That auto thing it does when you're trying to right click / look around is quite annoying.

Thank you!


AquaLung(Posted 2013) [#58]
@Guy

Did you change the screen resolution?

If so, re-download. I corrected this issue.

@rickychus
I don't use IDEAL so I'm not sure how it interacts with the execution of a program. I have not seen these errors in debugview.


Guy Fawkes(Posted 2013) [#59]
Yea, it works in everything ABOVE 800x600 :(


Rick Nasher(Posted 2013) [#60]
@GF: Seems to be working ok at 800x600 now.

@Aqualung: One thing that caught my attention in the LensFlare example:

;simply add the lens flare object and then move it to the position of the
;lightsource that causes the effect, you may have to cast a ray out to this
;point and see if it strikes a node that might be obscuring the light.
;in this case you would make the lens flare invisible.

Sounds like a good idea. In Blitz3d I would use the LinePick command for this.
Now my question of course: what command can we use for casting a ray in Irrlicht?


Guy Fawkes(Posted 2013) [#61]
@Rick Nasher, that's not what I'm saying. I'm saying anything ABOVE 800x600 does NOT work with the camera fix. :( My screen is 1366x768....


AquaLung(Posted 2013) [#62]
@Guy Fawkes
I tested your dim of 1366x768 on my end and works normal. Something else must be the issue. Have you changed anything else in the demo?

@Rick Nasher
Not sure, I will let you know when I get to those commands.


Guy Fawkes(Posted 2013) [#63]
@AquaLung, no I have not. The ONLY thing I changed was the screen resolution... :(


Rick Nasher(Posted 2013) [#64]
Uhuh, just tried at 1280x800 and think I know what you mean GF. Suddenly camera seems to be trying to auto reposition itself when using mouse controls to run around when zoomed in more closely(shoulder/neck breathing view). Which doesn't (or seem to) happen in 1024x768 or lower.


Guy Fawkes(Posted 2013) [#65]
^ SEE?! I TOLD you! :(


Rick Nasher(Posted 2013) [#66]
No need to get all worked up about it GF. ;-)
Probably has something to do with the min/max values/algorithm.. Don't think has something to do with the wrapper.

You haven't tried altering code to see what happens I guess? If so, with what results?


Guy Fawkes(Posted 2013) [#67]
Yes, I tried different values, and it only made the auto camera problem faster and worse... :(


Yue(Posted 2013) [#68]
Power Full!!


UUICEO(Posted 2013) [#69]
You have done one heck of a good job on this wrapper. I hope you keep it up, I would love to be able to do 3d stuff in B+ rather than having to use B3d.


SabataRH(Posted 2013) [#70]
Is there an alternative download link? None of my browsers will allow me to access the current 'http://fbe.am/pIk' link.. thanks


Guy Fawkes(Posted 2014) [#71]
http://filebeam.com/da9a80ccfb7656a5ca0076b0c207acd1

Try this


SabataRH(Posted 2014) [#72]
Thanks Guy Fawkes, works fine.


Rick Nasher(Posted 2014) [#73]
Great sfx additions.


Rick Nasher(Posted 2014) [#74]
How about that good old Linepick? ;-)


KronosUK(Posted 2014) [#75]
Another vote of thanks to Aqualung for this brilliant port.

I tried porting the Freebasic wrapper myself to Blitzmax a while back but got stuck when trying to write the glue code for the various types such as IRR_VECTOR and keyboard commands.


AquaLung(Posted 2014) [#76]
Thanks. I decided to rewrite the entire wrapper with friendlier Blitz style commands. I'm making alot of progress but still need more time. Watch for a new release in a month or so. Should be much easier to remember the shorter commands.


AquaLung.


.


Rick Nasher(Posted 2014) [#77]
Cool, can't wait to see it AquaLung.


Yue(Posted 2014) [#78]
:D


AquaLung(Posted 2014) [#79]
Updated first post.


AquaLung

.


Rick Nasher(Posted 2014) [#80]
Great, I'll check it tomorrow cos just reinstalled windows, still need to install Blitz. I'm very eager to see this stuff.


Yue(Posted 2014) [#81]
This is great. Thanks for your work and interest.


Yue(Posted 2014) [#82]
Any chance encrypt the game data? (Models, textures etc)


AquaLung(Posted 2014) [#83]
Let me check the Irrlicht API and see if it supports passwords for the addziparchive command.

AquaLung

.


AquaLung(Posted 2014) [#84]
It appears to support passwords. Let me add it in and I'll do some testing. I'll let you know.

AquaLung

.


Iamhere(Posted 2014) [#85]
Really good work, thank you.
Nice clouds from only one 16x16 Pixel Picture in example 51.


Yue(Posted 2014) [#86]
@AquaLung =)


AquaLung(Posted 2014) [#87]
Passwords for iAddZipFile has been added and will be in next release.

AquaLung


.


Yue(Posted 2014) [#88]
That's great, I have a lot of questions to see if you can add functionality to the library, but I guess you know what I mean and everything is set as your mind.

Always grateful.


Hotshot2005(Posted 2014) [#89]
can it do Volume clouds? sorry if I am not saying right but I am sure you know what I mean


Yue(Posted 2014) [#90]
Is it possible to change screen resolution, without deleting the scene??


AquaLung(Posted 2014) [#91]
I have not tested it but u should be able to save the scene, stop and restart irrlicht then load the scene. Not sure if the library is complete enough to do this yet. When I get time I can run some tests. May be easier to write a function that loads all your scene nodes and if the screen res is changed, just call the function again after stopping and restarting irrlicht.


Yue(Posted 2014) [#92]
Questions, you may remove the credits that appear at the bottom of the screen?


AquaLung(Posted 2014) [#93]
Eventually, yes.


AquaLung(Posted 2014) [#94]
@Hotshot2005
Clouds are currently limited by the the command options of iCreateClouds(texture%,lod%,depth%,density%).


Rick Nasher(Posted 2014) [#95]
@Aqualung(took a bit more time to reinstall my stuff):

Pretty cool! Linepick stuff is working, appreciate the new Blitz-like syntax and additional FX. especially water and shadows. It all really came together nicely.

BTW: What is "vcredistmin_x86.exe" supposed to do?


AquaLung(Posted 2014) [#96]
That's just the Visual C Redistributable if your getting any missing DLL errors. If you have no DLL errors, you don't need it.

AquaLung


.


Rick Nasher(Posted 2014) [#97]
Ah OK, well couldn't use that exe anyway as I'm on Win7 X64.


BLaBZ(Posted 2014) [#98]
Great port, but I've never been impressed by this engine. The graphics look dated, anyone have anything to showcase that might drop a jaw?


Ploppy(Posted 2014) [#99]
I kind of disagree. From what I have quickly witnessed this userlib provides you with many raw tools needed for even for games of today. In my opinion if you're looking for jaw-droppedness all you need is a bit of imagination to make the most of an already extensive list of commands. This userlib, beit a wrapper seems very streamlined and solid.


Yue(Posted 2014) [#100]
Tools do not make creative decisions, no matter the tool, blame the lousy worker tools and good worker making art regardless of the tool.


Hotshot2005(Posted 2014) [#101]
I just wondering....It is possible to make Bump mapping of castle or does it take lots of work to do it?

I have managed put castle in with clouds above it!


Rick Nasher(Posted 2014) [#102]
@Hotshot2005:
Ah nice, just what I was planning to do too(did it before with an earlier version as you can see in above thread).

Wanna publish/share the code too and save us some work on that?


Hotshot2005(Posted 2014) [#103]
Ok Rick

; A EXAMPLE OF PUTTING THINGS TOGETHER(Castle with Clouds above!)
;; Converted to Blitzplus and Irrlicht 1.8.1 by AquaLung (2013)

;; ////////////////////////////////////////////////////////////////////////////
;; Includes for extension libraries
Include "bIrrlicht.bp"

;; ////////////////////////////////////////////////////////////////////////////
;; global variables

; irrlicht objects
Global BSPMesh%
Global BSPNode%

; irrlicht objects
Global Terrain%
Global TerrainNode%
Global TerrainTexture0%
Global TerrainTexture1%
Global Camera%
Global CameraNode%
Global CloudTexture%
Global CloudNode%
Global X#
Global Y#
Global Z#
Global TerrainHeight#


;; ////////////////////////////////////////////////////////////////////////////
; start the irrlicht interface
iIrr3D( 800, 600, 32, False )

; send the window caption
iAppTitle( "Example 05: BSP Map" )

; first we add the pk3 archive to our filing system. once we have done this
; we can open any of the files in the archive as if they were in the current
; working directory
iAddZipFile( "./media/map-20kdm2.pk3", IRR_IGNORE_CASE, IRR_IGNORE_PATHS )

; load the BSP map from the archive as a mesh object. any polygons in the mesh
; that do not have textures will be removed from the scene!
BSPMesh = iLoadOctreeMesh( "20kdm2.bsp" )

; add the map to the scene as a node. when adding the mesh this call uses a 
; mechanism called an octtree that if very efficient at rendering large amounts
; of complext geometry most of which cant be seen, using this call for maps
; will greatly improve your framerates
BSPNode = iAddOctreeMeshNode( BSPMesh )

; add a first person perspective camera into the scene that is controlled with
; the mouse and the cursor keys. if however you capture events when starting
; irrlicht this will become a normal camera that can only be moved by code
Camera = iCreateFPSCamera(0,100.0,0.5,-1,0,0,0,0.0)

; the clipping distance of a camera is a distance beyond which no triangles are
; rendered, this speeds the scene up by not showing geometry that is in the
; distance and too small to see however our terrain is so huge we need to
; extend this distance out
iCameraRange( Camera, 12000, 1.0 )


; reposition and rotate the camera to look at a nice part of the map
iPositionNode( Camera, 1750, 149, 1369 )
iRotateNode( Camera, 4, -461.63, 0 )


; load the cloud image in as a video texture
CloudTexture = iLoadTexture( "./media/cloud4.png" )

; add the clouds to the scene
; the first parameter is the level of detail, higher values add more structure
; to the cloud when it is closer to the camera
; the second parameter sets the number of child clouds created higher values
; create more structure
; the third parameter defines how many clouds are created
CloudNode = iCreateClouds( CloudTexture, 3, 1, 500 )

; switch the fog on the clouds to prevent the clouds popping up in the distance
iNodeMaterialFlag( CloudNode, IRR_EMF_FOG_ENABLE, True )

; raise the clouds into the sky
iPositionNode( CloudNode, 0,2700,0 )

; slowly rotate the clouds to simulate drift across the sky
iRotationAnimator( CloudNode, 0, 0.01, 0 )

; add a fog to the scene to gently fade the clouds out in the distance
iCameraFog ( 128,128,255, IRR_EXPONENTIAL_FOG, 0.0,4000.0, 0.5 )

; hide the mouse pointer
iHideMouse()

; erase the canvas with sky-blue Before rendering
iCameraCLSColor( 128, 255, 255 )

; -----------------------------------------------------------------------------
; while the irrlicht environment is still running
While iRun() And (Not iKeyHit( KEY_ESCAPE ))
    ; begin the scene
    iBeginScene()

    ; draw the scene
    iDrawScene()

    ; end drawing the scene and display it
    iEndScene()
Wend

; -----------------------------------------------------------------------------
; Stop the irrlicht engine and release resources
iEndIrr3D()


End


Now then one got me stump...how I get make sure the player is on the ground as then it wont fall through the land if you know what I mean :)


Rick Nasher(Posted 2014) [#104]
Ah but you didn't put in the terrain just yet.. :-)

how I get make sure the player is on the ground as then it wont fall through the land if you know what I mean :)

Using LinePick which is now supported I believe?

I think the "Blitz-Irrlicht 3rd Person Demo.bp" example should be a good base to put the castle on and then adjust character control a bit to use linepick and/or collisions.

I'll need to look into it. Didn't yet cos just got my laptop back up and running.


Hotshot2005(Posted 2014) [#105]
I try to run Blitz-Irrlicht 3rd Person Demo but it say Function iklanginit not found

how do I fixed that?


Hotshot2005(Posted 2014) [#106]
It is alright now and I have managed it...It work :)


KronosUK(Posted 2014) [#107]
Can someone show me an example of how to extract tri and vertex info from a mesh.

I think I need to use these commands but I'm not sure what the function parameters are.

iCopyMeshVerticesFrom(mesh%,frame%,verticies%,meshBuffer%)
iCopyMeshIndicesFrom(mesh%,frame%,indicies%,meshBuffer%)
iMeshVertexCoords(mesh%,frame%,vertexCoord%,groupAmount%,startPos%,endPos%,meshbuffer%)

Also is it possible to change the keys for iCreateFPSCamera. I want to use WASD instead of the arrow keys.

edit: what/where are the commands for controlling non-MD2 animations?

I'm using Blitzmax btw


Yue(Posted 2014) [#108]
I have a problem, User lib not found.

copied the files to userlibs but does not work, any suggestions?


Rick Nasher(Posted 2014) [#109]
@Yue:
I have bIrrlicht.decls and bIrrKlang.decls in: C:\Program Files (x86)\BlitzPlus\userlibs\

No need to copy anything else, just leave the dll's in the directory where you unpacked _bIrrlicht Release.rar.
This works fine when using Windows7 x64, which I believe you're having too.

Or are you trying to use something else, like BlitzMax?


Yue(Posted 2014) [#110]
I've managed to solve the problem, for some reason it works with framework 4.0 and I have repaired and working properly.


Yue(Posted 2014) [#111]
I have the following problems, do not load b3d model textures and not to encourage them.

Greetings.


JaviCervera(Posted 2014) [#112]
Download file on the first post is corrupted. Is there any other place where I can get it?


KronosUK(Posted 2014) [#113]
Further to my previous post I've been playing around with birrlicht and found a couple of answers at least.

1. To animate non-MD2 models you use the misleadingly named command

iAnimateMD2(node%,mode%,speed#,first_frame%,last_frame%,transition#)

2. To change the fps camera to use WASD keys you can do this (Blitzmax code)



I haven't revisited the mesh commands yet

@Jedive - I could only get the download link to work by using Chrome

Some of the GUI dll function call names are wrong in the decls file

Here's a list of the correct ones I've found so far

iCreateWindow
iButton
iScrollBar
iListBox
iListBoxItem
iEditBox
iCheckBox


AquaLung(Posted 2014) [#114]
Updated, see first post.


Rick Nasher(Posted 2014) [#115]
very welcome additions, both the gui as the zipfile example.


Yasha(Posted 2014) [#116]
Hey Aqualung, is the source for this available?

A C-style interface to Irrlicht would be tremendously useful in all sorts of non-Blitz contexts (weird request from someone with his own Irrlicht wrapper, but mine relies on SWIG which gives it a rather punishing auto-generated translation layer that I'd rather avoid).


AquaLung(Posted 2014) [#117]
SOURCE

AquaLung

.


Yasha(Posted 2014) [#118]
Thanks. This should be quite helpful.


MichiGamian(Posted 2014) [#119]
is there a way to generate a mesh in code? i.e. an
addvertex
command and an
addtriangle
command? also a UV chords set command?

if so, could someone post an example of how to create a simple mesh, give it UV chords and then create several instances of said mesh?


petimat(Posted 2014) [#120]
MichiGamian.
The 'iCreateMesh' function should serve that purpose...at least in the freebasic version it does.I don't know if that work with this wrapper.(the vertices% and indices% arguments should be pointers that point to arrays or memory banks or something)


videz(Posted 2015) [#121]
Hello AquaLung, awesome work. This seems to be a great port for B+/B3D. I'm interested in trying this one out. But the wrapper code you posted is for Freebasic?

Can you post the latest wrapper sources for Blitz Irrlicht v1.8.1?

How do I recreate the bIrrlicht.dll wrapper?

Thanks.