WorldSim3D game engine for FreeBasic

User projects written in or related to FreeBASIC.
Tyr_Anassazi
Posts: 28
Joined: Jul 01, 2013 15:01
Location: Italy

WorldSim3D game engine for FreeBasic

Post by Tyr_Anassazi »

Hello there, Image
I’m Alec.

I’m making (or rather continue) the work, which is a successor of Irrlicht wrapper for FreeBASIC by Frank Dodd.
Frank stopped developing his nice work about 4 years ago and unfortunately is inactive on the forum since February 2013. So, I decided to continue with his work, because I saw good potentialities, considering how much had already been done.

I started my part of work about 1.5 years ago. The first thing I did was evaluated the amount of work that needs to be done to bring it into a proper form. The Irrlicht wrapper was basically a very good work, but had lots of flaws, that could be removed if one could invest much time. The goal I had, was to turn it into a good game engine, suitable for creating good 3D games for Windows and Linux.

By January of this year I did a lot, polish it up in many ways. And yes, I invested lots of hours to achieve the goal. For example,
- fixed the conflict of the FB (0.24) with the physics library ODE;
- fixed lots of inaccuracies and gaps caused by the fact that after the appearance of the new Irrlicht wrapper versions, the documentation has not been updated;
- fixed several bugs with inconsistencies types of variables: for example, in the declarations of some functions, variables were not consistent with other similar types of functions (eg, integer fixed on the single etc)
and a lot more.

I thought, I couldn’t call this work “Irrlicht wrapper” anymore. Firstly, because I was going to continue to develop it as a full game engine and not as just an Irrlicht wrapper. Clarify: Irrliht wrapper is a graphics engine wrapper, and I would like to have a game engine on its basis. So I gave him a new (sounding Image ) name – WorldSim3D. Since then it became WorldSim3D 0.8. Secondly, I took into account the point in the license to it: “Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software”. And as I mentioned above, the name "Irrlicht wrapper" could be mislead someone, because Irrliht is the graphics engine, and the game engine, as is known, beside graphics part includes physics, music, network, and more as well. (By the way, strictly speaking, already at the time when Frank Dodd developed it, it was not an Irrlicht wrapper in the full sense, because he linked in physical libraries (ODE and Newton), the Xeffects shades, and more). I am sure this does not detract from the great work being done by Frank Dodd.

I kept working on it and six months later version 0.9 was released with the next changes:
- Sound library FBSound (by D.J.Peters) linked in. 3 simple examples are added;
- fixed another inaccuracies and gaps in help file;
- polished up some examples (for example, to more clearly show the features of the engine);
- fixed some errors in the header files.

And finally, I released the next (current) version 0.9.1 in October of this year (the changelog is included in the archive).
It is for Windows so far.
You’ll find a good function reference (chm and pdf), which comes with it.

I would be glad to answer questions, especially those associated with the creation of games/projects with WorldSim3D.
Download WorldSim3D 0.9.1 (zip, 76.6 mb)

Screenshots:

Image
Image
Image
Image
Image
Last edited by Tyr_Anassazi on Nov 10, 2014 17:06, edited 2 times in total.
D.J.Peters
Posts: 8642
Joined: May 28, 2005 3:28
Contact:

Re: WorldSim3D game engine for FreeBasic

Post by D.J.Peters »

Irrlicht and FreeBASIC works on many platforms why are your engine/wrapper is only for Windows ?

Joshy
Tyr_Anassazi
Posts: 28
Joined: Jul 01, 2013 15:01
Location: Italy

Re: WorldSim3D game engine for FreeBasic

Post by Tyr_Anassazi »

Irrlicht and FreeBASIC works on many platforms why are your engine/wrapper is only for Windows ?
Hello, Joshy. Windows is my main platform. As to Linux,I installed it recently and still a newbie with it. So it would be great if someone helps to port the engine to Linux (to ARM processors as well, of course) (perhaps to FreeBSD ?).
By the way, I sent an e-mail to you yesterday. As far as I know, your FBSound library, which I included in the engine is a cross-platform one, isn't it?
Kot
Posts: 336
Joined: Dec 28, 2006 10:34

Re: WorldSim3D game engine for FreeBasic

Post by Kot »

I had time only for a glimpse, but looks awesome at the first sight. Great job, keep it on!
Tyr_Anassazi wrote:includes physics, music, network, and more as well.
Do you plan suport for network, too? Would be awesomest! ;-)
D.J.Peters
Posts: 8642
Joined: May 28, 2005 3:28
Contact:

Re: WorldSim3D game engine for FreeBasic

Post by D.J.Peters »

All examples works good job.

The static libs of FBSound are missing ?
Compiler output wrote:C:\FreeBASIC\bin\win32\ld.exe: cannot find -lfbsound
C:\FreeBASIC\bin\win32\ld.exe: cannot find -lfbscpu
C:\FreeBASIC\bin\win32\ld.exe: cannot find -lmad
C:\FreeBASIC\bin\win32\ld.exe: cannot find -logg
C:\FreeBASIC\bin\win32\ld.exe: cannot find -lvorbis
C:\FreeBASIC\bin\win32\ld.exe: cannot find -lvorbisfile
By the way FBSound 0.19 supports DirectX and MM sound device plugins and many tracker sound formats.

Joshy
D.J.Peters
Posts: 8642
Joined: May 28, 2005 3:28
Contact:

Re: WorldSim3D game engine for FreeBasic

Post by D.J.Peters »

Looks like your Lens Flare are not dynamic soft fading in and out.
I posted two examples on youtube: http://www.youtube.com/watch?v=7XNkLdeE ... pC&index=1

Joshy
Tyr_Anassazi
Posts: 28
Joined: Jul 01, 2013 15:01
Location: Italy

Re: WorldSim3D game engine for FreeBasic

Post by Tyr_Anassazi »

looks awesome at the first sight. Great job, keep it on!
Thanks. I'll try to do my best. Image
Do you plan suport for network, too?
Yes, network support is one of the most important features in the to-do list.
The static libs of FBSound are missing ?
Ah yes, I missed this. Not all FB users have those static libraries installed. I'll fix this.
By the way FBSound 0.19 supports DirectX and MM sound device plugins and many tracker sound formats.
Yes, the engine has an older version FBSound 0.16, and I'll try v.0.19 (I downloaded it a week ago, but didn't try yet). Thanks for the updates. Image

I'll look at lens flare examples on youtube.
Tyr_Anassazi
Posts: 28
Joined: Jul 01, 2013 15:01
Location: Italy

Re: WorldSim3D game engine for FreeBasic

Post by Tyr_Anassazi »

Aha, I see. I didn't think about it. Although a couple of times I used lens flare in my projects, I didn't notice. Indeed, this effect looks more realistic when it can fade in and out like in these videos. I've made a note of it.
Kot
Posts: 336
Joined: Dec 28, 2006 10:34

Re: WorldSim3D game engine for FreeBasic

Post by Kot »

Example 14, the keys left and right are reversed. D should be marked in comments Right while A should be Left, also in the manual (pdf page 55), the mistake just like in Frank's example.
leopardpm
Posts: 1795
Joined: Feb 28, 2009 20:58

Re: WorldSim3D game engine for FreeBasic

Post by leopardpm »

Question: The name "WorldSIM3D" implies (to me) some level of AI... do you plan on incorporating any?
D.J.Peters
Posts: 8642
Joined: May 28, 2005 3:28
Contact:

Re: WorldSim3D game engine for FreeBasic

Post by D.J.Peters »

currently it's a good Irrlicht wrapper for FreeBASIC not more nor less.

Tyr_Anassazi and Kot, If you need easy to use network TCP and UDP (Windows/Linux X86 only)

http://www.freebasic.net/forum/viewtopi ... 14&t=22760

Joshy
Tyr_Anassazi
Posts: 28
Joined: Jul 01, 2013 15:01
Location: Italy

Re: WorldSim3D game engine for FreeBasic

Post by Tyr_Anassazi »

Example 14, the keys left and right are reversed.
I'll correct this. Thanks. Image
Question: The name "WorldSIM3D" implies (to me) some level of AI... do you plan on incorporating any?
Yes. The first (and usually the main) thing is A* Pathfinding. Possibly, you mean something else.
currently it's a good Irrlicht wrapper for FreeBASIC not more nor less.
Basically, it is, especially if we consider only the graphics part of "Frank Dodd's Irrlicht wrapper" or the WorldSim3D and do not take into account physics libraries ODE (thank you for your FB ODE, by the way) and Newton, Freetype, Xeffects and a few other little things (there's no this stuff in the official Irrlicht SDK) and FBSound, which I consider as a part of the engine if you don't mind Image .
If you need easy to use network TCP and UDP (Windows/Linux X86 only)
Good and workable library as I understood from its topic. I saw it and perhaps I use it. Thanks. If I use it, may I include it in the WorldSim3D API ?
D.J.Peters
Posts: 8642
Joined: May 28, 2005 3:28
Contact:

Re: WorldSim3D game engine for FreeBasic

Post by D.J.Peters »

The TCP/UDP lib is closed source and free for any usage, FBSound is open source and free also.
This libs and many other stuff I posted is © by D.J.Peters :-)

Joshy
St_W
Posts: 1634
Joined: Feb 11, 2009 14:24
Location: Austria
Contact:

Re: WorldSim3D game engine for FreeBasic

Post by St_W »

You could use TSNE instead of that lib from DJPeters. It's completely open source (just a single include file) in constrast to DJ's lib. You can download the sources here: http://www.freebasic-portal.de/projekte/tsne-11.html

I'd strongly suggest to use a library for which the source code is available (just think about the currently added x64 platform).
Kot
Posts: 336
Joined: Dec 28, 2006 10:34

Re: WorldSim3D game engine for FreeBasic

Post by Kot »

The problem with most network libraries here is that they are designed to send just strings, not raw data used in games. They are good to create a www server, but complex arrays consisting strings, numbers (like unit's name, its coordinates, ammo etc) need to be converted in often troublesome way. I don't know why there is no such procedurę in TSNE library for example (tbh a great one). Some time ago I added such procedurę just by copying an existing one and adding some minor changes and it worked - and I can't say I know anything about network programming.
Post Reply