Jump to content

Leadwerks suitability for MMO's


adder_noir
 Share

Recommended Posts

Hi,

 

Having recently battered my brain stupid trying to render my own mesh format I've finally caved in. I'm going to need an engine. I have indeed managed to get alot of stuff onscreen but when it came to writing my own normal smoothing calculation code I was lost. So it's time to admit I can't do this without using pro code. The reasons for wanting to DIY are personal and lifelong problems I have. Used to make life hell for people I worked with although someone I used to work with has recently appeared to have forgiven me for that :)

 

I'm not just jumping in saying I want to make an MMO without having any concept of what's going on here. I have tried hard to make this work :)

 

Someone recommened this engine and for me it looks sooo good. I have some questions though I would appreciate being answered if you can:

 

1)How easy are mesh files to work with? Can I export strait out of blender and into leadwerks with animations and artwork complete (.3DS format?).

 

2)Can I render only a portion of a mesh at a time or must I render the entire leadwerks compatible mesh whenever I call it? THinking of terrain here.

 

3)Can I mix part of leadwerks display with my own Directx code if I wanted to say have more control over terrain rendering?

 

4)How fast is leadwerks generally speaking? Is it fast enough for say 100 player models on screen at any given time? Will frequently be less than that.

 

5)How much is the license to go pro with this? Surely a single user license doesn't cover the cost of being able to profit from this endlessly. It sounds too cheap.

 

6)If I wanted to recall a camera's pixels from a perspective other than the player can I do this or does leadwerks lock me out of talking to DirectX?

 

That's it for now. Sorry for so many but I have to learn sometime ;)

Link to comment
Share on other sites

 

1)How easy are mesh files to work with? Can I export strait out of blender and into leadwerks with animations and artwork complete (.3DS format?).

 

LE has its own format GMF. Ultima Unwrap Pro is a good tool to convert any mesh into GMF.

 

2)Can I render only a portion of a mesh at a time or must I render the entire leadwerks compatible mesh whenever I call it? THinking of terrain here.

 

You don't have to think about that. LE does the culling for you.

 

3)Can I mix part of leadwerks display with my own Directx code if I wanted to say have more control over terrain rendering?

 

No way. LE uses OpenGL. Forget about mixing it with DX. :)

 

4)How fast is leadwerks generally speaking? Is it fast enough for say 100 player models on screen at any given time? Will frequently be less than that.

 

I think the bottle neck might become the network and server. With 100 players in one area everyone has to get an update for all other visible players. Let's assume you need a bandwidth of 1k per second for one player. Then you would need to send an update to every of these 100 players (of the other players) and retrieve status information from the other ones which leads to 100*(100-1) = 9900 updates (every player needs updates from the other 99 ones!). With 1k per second (which is rather less) you'd already need a bandwidth of about 9.9MByte per second. That means with a 100MBit connection your server already sees his limit. :)

 

At the beginning you should not scratch your head about these facts and any other speed limits. LE uses SM3.0+ hardware and might run slow on older hardware. But if you finish your project let's say in 3 years it's fair to say that it will run very smoothly on almost every computer.

 

5)How much is the license to go pro with this? Surely a single user license doesn't cover the cost of being able to profit from this endlessly. It sounds too cheap.

 

$200. Nothing more. LE3.0 will be a paid update. It's very, very cheap indeed.

  • Upvote 1

Triassic Games

Link to comment
Share on other sites

"1)How easy are mesh files to work with? Can I export strait out of blender and into leadwerks with animations and artwork complete (.3DS format?)."

Very. Although this engine only uses its own proprietary format. Ultimate Unwrap 3D is quite cheap, can import almost anything, and export almost anything (including the leadwerks format *.gmf). Also I believe that your animations would be lost with the 3ds file format. I may be wrong on that, but I did not think they supported bone based animation

 

"2)Can I render only a portion of a mesh at a time or must I render the entire leadwerks compatible mesh whenever I call it? THinking of terrain here."

Meshes are hierarchical. That is, say for a character: the hands are connected to the arms, and the arms to the body, you could choose to hide various parts of the hierarchy, and thus only render portions of a mesh. I'm not sure about terrains though, I believe they are completely seperate entities

 

"3)Can I mix part of leadwerks display with my own Directx code if I wanted to say have more control over terrain rendering?"

You can render to custom buffers yes, but I'm not sure about custom DirectX buffers. You see, Leadwerks is built on top of an OpenGL renderer

 

"4)How fast is leadwerks generally speaking? Is it fast enough for say 100 player models on screen at any given time? Will frequently be less than that."

It all depends on the user's video card. Leadwerks runs almost entirely on the GPU, and it MUST be SM 3.0 compliant (although SM 4.0 is strongly recommended). With an 8800, even with several lights all casting dynamic soft shadows, the performance should still be decent

 

"5)How much is the license to go pro with this? Surely a single user license doesn't cover the cost of being able to profit from this endlessly. It sounds too cheap."

It really is just $200 to use it any way you want. Freeware, commercial, subscription based games. It's all allowed. The only restrictions really are that you can't make a sandbox game creator with this. But it sounds like what you want is definitely allowed, and only for $200 too... Infinite number of games, no price limit on your games, and no royalties paid to Leadwerks.

 

"6)If I wanted to recall a camera's pixels from a perspective other than the player can I do this or does leadwerks lock me out of talking to DirectX?"

That's the only point I do not really know. But again DirectX / OpenGL limitation may get in the way, but then again, it may be very simple to do. Hopefully someone else knows that one...

You can create more than one camera, and you should be able to project/unproject from it. That may be what you are after. But that is just a guess...

  • Upvote 1

LE Version: 2.50 (Eventually)

Link to comment
Share on other sites

Generally speaking Leadwerks Engine is a very good choice for DIY people, because it doesn't restrict you in anything or force you to do things in the engine's way. And even when you do everything your way, it still makes it very easy and allows to mix your own ways with the engine's ways.

 

1) From blender you can export as FBX and don't need any other tools then, since there is FBX2GMF.exe converter in the engine.

 

3) You can mix OpenGL code with Leadwerks.

 

4) We have seen a demo with 200 animated zombies, and the FPS was still very high. So I guess there can be around 1000 or more animated characters at once on the screen (and much more out of sight).

  • Upvote 1

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Link to comment
Share on other sites

Actually you can do much more in OpenGL than in DirectX, because for the newest DirectX you need a DX11 capable card and OS, and for OpenGL you just need a SM3.0 capable card to do the same things and much more. The code in OpenGL is also much shorter than in DirectX, which brings a speed benefit in rendering and programming.

 

The current DirectX doesn't even run under Windows (Windows NT, 2000, 2003, CE, XP), but only under special versions of Windows (Vista, 7), but OpenGL runs on all Windows versions while bringing the same and more features as DX11 has.

  • Upvote 1

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Link to comment
Share on other sites

Ultimate Unwrap has been named already, it converts anything to anything. Well worth the purchase.

An exporter has been written for 3D Max, and several converters exist to achieve the Leadwerks GMF format (fbx,dae,obj etc.) so it's safe to say you can just use the modeler you're comfortable with.

 

What may be confusing at first is that all textures should be in DDS format and that all textured models need material files (which is just a text file stating the path to the texture and the shader it will use)

 

@Lumooja: I've seen you state this several times now but unfortunately, DirectX is faster than OpenGL.

  • Upvote 1

desktop: Quad core Q6600 + 4GB + ATI HD4890 + XP

laptop: Dual core T6400 + 4 GB + NVidia 9600M GT + Vista 32

Link to comment
Share on other sites

Ultimate unwrap it is. Thanks again for the help. Shame I can't vote you guys up like on other forums. I'm pretty blown away by how much pain the £100 takes away from the user here. Seems this even does collision detection (is that right?). Even has a physics engine too! I'd probably want to write my own flight code stuff tho. Or at least try :)

 

Anyways I've got enough info now, so cheers a bundle :)

Link to comment
Share on other sites

@Lumooja: I've seen you state this several times now but unfortunately, DirectX is faster than OpenGL.

 

Is this true for all versions of Windows? (I don't know)

 

But think about it: Windows 7: "Look how good this new version of DirectX is. It's faster than OpenGL".

 

Yet interestingly, OpenGL runs, what is it? Something like 20% slower on 7 than it does on XP? I don't know how much of that is intentional and how much of that is due to poor optimisation...

 

I'm pretty blown away by how much pain the £100 takes away from the user here.

 

When I bought the engine (May 2008), it was only £76 (£75.99, or $150) but now, due to the dollar rate (and a new price tag of $200), it's almost double what I paid (£130). The engine is still well worth its new price though, before it was just insanely cheap for what it does.

LE Version: 2.50 (Eventually)

Link to comment
Share on other sites

Is this true for all versions of Windows? (I don't know)

 

But think about it: Windows 7: "Look how good this new version of DirectX is. It's faster than OpenGL".

 

Yet interestingly, OpenGL runs, what is it? Something like 20% slower on 7 than it does on XP? I don't know how much of that is intentional and how much of that is due to poor optimisation...

Yep, Microsoft plays a big part in this of course, they're not going out of their way to optimize for OpenGL when DirectX is their baby. But LE is Windows only...

Ogre can render in both, but also pre-windows 7 (XP) running the same scene in Ogre, DirectX beats OpenGL by 10% or so.

desktop: Quad core Q6600 + 4GB + ATI HD4890 + XP

laptop: Dual core T6400 + 4 GB + NVidia 9600M GT + Vista 32

Link to comment
Share on other sites

but also pre-windows 7 (XP) running the same scene in Ogre, DirectX beats OpenGL by 10% or so.

 

That's true. But it isn't an issue. Maybe Microsoft someone drops OpenGL support completely, who knows?

Triassic Games

Link to comment
Share on other sites

Well that's something like Windows against Linux flamewars.

 

Fact is, DX is not better or worse than OpenGL.

No need for another flame war :)

It depends on what you're doing with it of course, but at this point in time, when creating a windows/xbox only game, DX is the faster (FPS) choice.

desktop: Quad core Q6600 + 4GB + ATI HD4890 + XP

laptop: Dual core T6400 + 4 GB + NVidia 9600M GT + Vista 32

Link to comment
Share on other sites

That's true. But it isn't an issue. Maybe Microsoft someone drops OpenGL support completely, who knows?

But then they would lose the ability to say: Look, our API is much better! :)

desktop: Quad core Q6600 + 4GB + ATI HD4890 + XP

laptop: Dual core T6400 + 4 GB + NVidia 9600M GT + Vista 32

Link to comment
Share on other sites

For some users DirectX might be faster than OpenGL, but that means they have something wrong in their configuration: no Windows XP, no nVidia card, badly written engine.

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Link to comment
Share on other sites

Seems this even does collision detection (is that right?). Even has a physics engine too! I'd probably want to write my own flight code stuff tho. Or at least try :)
Collision detection is quite sophisticated, because it uses the physics engine for all collisions, even static ones. Static collisions take basically no FPS away (I've tried with a test scene with 10000 cubes).

It has also 3D sound, which is quite important in full 3D simulations too.

The only thing which I am missing from the 3D sound system is raytracing and occlusion of sounds. So far 3D engines do that for graphics only, but I could actually do that myself in LE also, for example if a sound is not visible to the camera, it would dampen it. And using A* pathfinding I could check how a sound would reflect over a corner in a corridor.

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Link to comment
Share on other sites

For some users DirectX might be faster than OpenGL, but that means they have something wrong in their configuration: no Windows XP, no nVidia card, badly written engine.

- no windows XP: nope, see above

- no nVidia card: is this a "wrong configuration"? (doesn't matter anyway, since the 10% is the same on both ATI & nVidia)

- badly written engine: Ogre badly written? :)

desktop: Quad core Q6600 + 4GB + ATI HD4890 + XP

laptop: Dual core T6400 + 4 GB + NVidia 9600M GT + Vista 32

Link to comment
Share on other sites

Yep, Microsoft plays a big part in this of course, they're not going out of their way to optimize for OpenGL when DirectX is their baby.

 

I'm not a fan of such artificial promotion. But, what do they care if just one person doesn't like the promotion style?

 

But LE is Windows only...

 

In Windows, the difference between them is fractional. But don't forget about wine. Whilst it's not officially supported, it does work. I'm sure you know the clear winner when running under wine (Yes, wine actually can do DX, but not 10 or newer, and even with 9, it's not brilliant). OpenGL runs just as nicely on wine as if it were Windows itself...

LE Version: 2.50 (Eventually)

Link to comment
Share on other sites

In Windows, the difference between them is fractional. But don't forget about wine. Whilst it's not officially supported, it does work. I'm sure you know the clear winner when running under wine (Yes, wine actually can do DX, but not 10 or newer, and even with 9, it's not brilliant). OpenGL runs just as nicely on wine as if it were Windows itself...

I expected Lumooja to come up with wine sooner or later, you beat him to it! ;)

Yes, we'll probably never see the true power of OpenGL on Windows as we can on Linux. It just might be a little bit of a problem to convince the buyers/gamers to have a Linux machine ready for your game and run it with a Windows compatibility program (not an emulator)...

desktop: Quad core Q6600 + 4GB + ATI HD4890 + XP

laptop: Dual core T6400 + 4 GB + NVidia 9600M GT + Vista 32

Link to comment
Share on other sites

I expected Lumooja to come up with wine sooner or later, you beat him to it! ;)

Yes, we'll probably never see the true power of OpenGL on Windows as we can on Linux. It just might be a little bit of a problem to convince the buyers/gamers to have a Linux machine ready for your game and run it with a Windows compatibility program (not an emulator)...

 

Linux just isn't marketed the same way. It should not be at all difficult to convince people to move to a free OS, that can still play games brilliantly. id software would always release linux executables for their games, but the majority of users would stick with the system that they already knew. After all, most people do not want to be associated with the spotty nerds, so it has a bit of a negative image at this time. But you just don't see these 7 second adverts (which last more like 15 seconds) for linux, or 8 second adverts for its applications. it doesn't have some random losers (one in a suit, and the other in an allegely casual outfit) claiming to be computers (maybe cyborgs?), claiming that they can both run Microsoft Office, or making other silly claims about what they are apparently doing.

 

It enjoys a small market share, but not casuals (Windows - home line), professionals (Windows - professional line), or rich snobs (Mac). But long running computer experts who either saw sense from the beginning, or (like me) people who got so frusrated with at least one of the other 'major' systems, that they went to try out what the hard core nerds swore by.

 

And be honest, the sexist world that we are. If when my project was finished it was actually popular, it would make news all around the world. "Great new game by single programmer... a girl" And it became known that I used linux, how many other people would suddenly start using it? Or investigating it at the very least, along the lines of "If a girl can use it, so can I"... Well, now that I've said that, you just know that it would generate no interest at all, but you get my idea.

LE Version: 2.50 (Eventually)

Link to comment
Share on other sites

One very last Q:

 

Should I stick to MS Visual for compiling or can I use code blocks? I don't really know how to thank you all. I couldn't possibly have asked for more help than this ;)

 

I use visual studio (and the language is plain C, but many others are available). It's the only reason I still use XP. That and the upcoming Mafia II

LE Version: 2.50 (Eventually)

Link to comment
Share on other sites

One very last Q:

 

Should I stick to MS Visual for compiling or can I use code blocks? I don't really know how to thank you all. I couldn't possibly have asked for more help than this ;)

It depends on your coding background. If you're proficient with C++ or .NET, stick with that and visual studio. If not, try BlitzMax: I had never touched it until I used Leadwerks but it will make you code like the wind.

 

@mumbles (we're slightly derailing the thread here - my fault):

Next time your grandpa/aunt/anyone else who uses their computer as a luxurious typewriter with email/internet asks for help, just install Ubuntu. Linux will never emerge from the shadows if only embraced by the "spotty nerds".

desktop: Quad core Q6600 + 4GB + ATI HD4890 + XP

laptop: Dual core T6400 + 4 GB + NVidia 9600M GT + Vista 32

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...