Merging the BEST 3D engine with the BEST 2D engine EVER!!

Announce new projects or updates of Irrlicht Engine related tools, games, and applications.
Also check the Wiki
Ace
Posts: 18
Joined: Mon Mar 15, 2004 4:47 am
Location: Louisiana
Contact:

Merging the BEST 3D engine with the BEST 2D engine EVER!!

Post by Ace »

I need all experienced C++ programmers' attention here if you're willing to listen!

http://forums.gamemaker.nl/index.php?ac ... ntry258533

Please read that topic for more details on this. I'm just going to give a simple overview of the topic here...


How would you like to be able to use an AMAZING and FREE game programming engine for 2D mixed with Irrlicht's Awesome 3D graphics and capabilities? Well, Game Maker is the best 2D game programming tool out there, by far, and it's FREE! (Sorry if I'm coming off sounding too commercial, but I'm excited, so sue me.)


It's got its own built in language which is VERY similar to C/C++, so, there's not really a learning curve whatsoever, it's got functions such as a do until loop, case statements, if else, fors, online multiplayer, you name it, it's pretty much got it.

Anyways, to the point, one of the great folks from this and GM's community, Xception, has developed a DLL for this program that will allow GM to use Irrilcht's Engine.

Whoopdie doo you say? Well, let's just put it this way, if you want a basic level editor, and don't want to waste time building one, and you want internet multiplayer, but don't feel like programming all the multiplayer functions, or even if you wanted to have a complicated event handler and once again, you don't feel like programming one.... then this little 2D engine's for you!!

Now, Irrlicht's 2D capabilities are great, but say you wanted a mostly 2D game on a 3D background, or at least 2D pop-ups, etc, you'd have to hold all your files externally, and load them externally with Irrilcht...

But I'm here to say there's a better way!

This DLL allows you to use Game Maker's interface to develop 3D applications of mostly 2D OR 3D! Now, this DLL isn't quite complete with all of Irrilcht's functions, but it DOES represent an oppourtunity to make game development much easier!!

My proposal is to help both communities finish developing a DLL that will make this a possibility! Irrilcht's great on its own, don't get me wrong, but if you DO want to implement 2D game graphics, A Level Editor, Multiplayer, OR Create/Destroy, Keyboard, Joystick, etc. Event Handlers, then you MIGHT want to give this a look!!


See, 2D graphics can be used through GM's interface by implementing a "Save Irrilcht Screenshot" function to the DLL to be loaded back into GM as a background (real time, btw) to place all your sprites, etc on it and be drawn through GM!

On top of all of this, you can do MULTIPLAYER that is actually very fast. GM supports nearly 1,000 functions to do all sorts of computing FOR you!! It's got great event handlers, and EVERYTHING you could POSSIBLY want for GAME DEVELOPMENT!! (With the implmentation of this tiny DLL, you can even do COMPLETELY commercial games with 3D and SELL them, too!!)

There are quite a few TINY things that could be improved on this DLL such as finishing implementing the rest of Irrilcht's functions through this DLL, and possibly documenting some simple documentation on it.

I know Irrilcht through GM, so I know the basic functionality of Irrilcht, but I am also aware of a few functions that weren't implemented in the DLL by Xception. I can do the documentation, if someone would be willing to help me with the C++ programming of the final features that are lacking in the DLL.

Really, there are only a FEW FEW features that are lacking, such as:

-Advanced GUI commands such as list boxes, radio boxes, etc.
-FadeInOut command
-The DLL doesn't hide the GM window, and doesn't allow for hiding/showing either window at any given time
-The DLL doesn't give a function that will allow the user to save a screenshot of the Irrilcht Rendering Window to a BMP file.

That's pretty much it! All the other stuff is done, so it's not a very big workload at ALL!! I just need someone with the knowledge to help me do it! I can easily document it, if someone would help me finalize it!

The rest of the stuff would be easy to add through GM as functions! Such as 3rd person cameras, and stuff like that. ^_^

Remember, the features by FAR outweigh the work involved!! (Thanks again to Xception the starter of this DLL and Mark Overmars, the creator of Game Maker!)

-internal 2D game graphics (...if you were able to save a screenshot of the Rendering window that is)
-All sorts of Event Handlers
-Close to 1000 extra functions Irrilcht Doesnt have that works for both 2D and 3D games alike such as calculations like sin(), cos(), and distance_to_point(), and all sorts of other fancy stuff.
-VERY cheap registration fee to help Mark add more stuff and keep up the forums, etc.
-Game Development environment that includes Objects with a 2D level editor that could EASILY be used for 3D since all Objects have a local x,y,depth to make the placement of nodes easier. ^_^ (Even if I knew C++ I wouldn't be caught dead without this program!!)
-Online Multiplayer with all the functions you should need besides sending files, though that's not hard since you can easily convert binary to text, send multiple messages, then convert text to binary! Perfect for FPS, custom 3D maps, etc, over a server! (You can even rewrite your objects/resources from real time as well!!)



I suggest you check it out, if you haven't already! Anyone willing to help me with this, I would beg you to do so! ^_^ Please!


Here's a list of EXTENDED features for the Irrilcht Engine that shows what has been implmented in it or not to compare to Xception's Port to GM.
http://irrlicht.sourceforge.net/development.html

Here's the Irrlicht Engine port for GM. Download this to see what features from the list haven't been implemented to GM's port yet.
http://home.tiscalinet.de/xception/files/GMIrrlicht.zip



See Xception's site if you want to look at any of his other stuff. He did a great thing to start this wonderful project for the GM community. I hope someone would help finish this port to GM! I know it would be much appreciated by everyone in the Game Maker Community!
http://home.tiscalinet.de/xception/dlls.htm

Please give me a hand in finishing this wonderful project! ^_^ For all would-be game developers out there including yourself.
niko
Site Admin
Posts: 1759
Joined: Fri Aug 22, 2003 4:44 am
Location: Vienna, Austria
Contact:

Post by niko »

I know GameMaker (but never used it) and its is cool that it works together with Irrlicht through that dll. I've no time to support this by myself, but maybe it helps if I announce the existance of that project on the newspage. Lets see. :)
Mercior
Posts: 100
Joined: Tue Feb 24, 2004 1:53 am
Location: UK
Contact:

Post by Mercior »

Well that sounds REALLY great and I'm very EXCITED about the OPPORTUNITY (sorry, couldnt resist :p), but remember this is a programming community and personally I program because I enjoy it.. Using a tool to make games for you takes away the fun and the challenge of writing a c++ application. Not to mention the lack of control you get with these game maker tools.

Having said that though, im sure theres lot of other people out there who will like using this tool. What puts me off wanting to help on such a project is this line:
VERY cheap registration fee to help Mark add more stuff and keep up the forums, etc.
"Add more stuff" ? Like adding Irrlicht support? Which you've come in here to hunt for programmers to do work for free for you? Doesnt seem quite right to me.. If he's going to charge money for this software then he can damn well code it himself!

Mercior
Wolf Dreamer
Posts: 121
Joined: Tue Feb 10, 2004 6:39 am
Location: the land of chaotic dreams
Contact:

Post by Wolf Dreamer »

Running it through Game Maker slows it down too much.

Professor Mark Overmars always said his Game Maker would be 2d only, ignoring all the post from people over the years trying to get him to change it. He is unlikely to help with any programming now or ever dealing with this.

Free Gadgets made a way to create a 3d environment with Game Maker, providing it could be done. He originally didn't use any .dll's. Others later did the same, in various ways. None of them get much speed though, and all have limitations. You could make a Doom like game with it though.

Game Maker was totally free for years, then the good professor started asking for donations, then he ended up selling registeration for those wishing to use its higher features, such as .dll support, which was totally free in a previous version.

The online support isn't uh... I believe there are many more efficient ways to handle multiplayer.

I don't believe there is any reason to use Game Maker with Irrlicht. If you could make Irrlicht work with the type of wonderfully simple interface Game Maker has, then so be it. I discussed doing that on my forum before. Just make a similiar interface as Game Maker, without any of Game Maker's code.
The last sane human being in a world gone mad

http://s8.invisionfree.com/Game_Maker_f ... hp?act=idx
Ace
Posts: 18
Joined: Mon Mar 15, 2004 4:47 am
Location: Louisiana
Contact:

Post by Ace »

Niko, do you mind editing the news a tad and inform people of this topic or project? I think it would be nice to be able to finish the Irrlicht Port to GM to possibly raise interest in both programs for people beginning to learn programming and those seasoned in programming alike! ^_-

Thanks a TON for your help! I REALLY appreciate it! I love Irrlicht, though I don't know much C++, I DO know it's got some EXCELLENT possibilities if the final features were implemented! Which is exactly why this topic is here! ;D



As for the rest of the comments, guys, Game Maker allows the non-programmer as well as the seasoned programmer common grounds for simplicity of programming. If you ever get lazy like me, it helps to already have some general stuff done for you such as sin, cos, distances, level builders, etc. Anyways:
Running it through Game Maker slows it down too much.
Not on my machine. It runs as fast as any of the other Irrlicht programs easily. I've got a standard Pentium 2 Intel Graphics card with Open GL, and a Hewlett Packard. Need I say more?
The online support isn't uh... I believe there are many more efficient ways to handle multiplayer.
I beleive you have it mistaken. The online support works great, and I've tried it with Irrlicht! It r0x! ^_^ It's all a matter of how you code it, and the techniques you use. I'm sure if your server running the game was good enough, you wouldn't have to worry much about lag. Game Maker runs Irrlicht at excellent speeds, and multiplayer as well if you simplify your coding, so I really don't see the problem! (Trust me, multiplayer will lag with ANY engine you use! I know from experience with other engines.)
If you could make Irrlicht work with the type of wonderfully simple interface Game Maker has, then so be it.
You don't need to program event handlers, excess functions, nor multiplayer support. I'm telling you, Game Maker can do anything you want it to do! If you still want to program in C++, you can easily use DLLs to extend Game Maker's functionality!
Using a tool to make games for you takes away the fun and the challenge of writing a c++ application. Not to mention the lack of control you get with these game maker tools.
Dude, trust me, you can program in this "tool" just as well as you could do in C++. It's got its own built in language that is nearly EXACTLY the same as C++. If you wanted to, you could code your entire game in code actions. Game Maker does nothing more than simplify common tasks like event handlers and objects. It also gives an excellent development environment! Color Coded synax and all. It's VERY nice. I suggest you download it if you don't beleive me. I had my doubts at first, but once I delved into the possibilities, I realized there's no game that's impossible to make with this excellent program! 2D OR 3D!!
"Add more stuff" ? Like adding Irrlicht support? Which you've come in here to hunt for programmers to do work for free for you? Doesnt seem quite right to me.. If he's going to charge money for this software then he can damn well code it himself!
Dude, once again, the program is FREE! He only asks for donations, and the rest of the previous versions still support multiplayer and dlls and they are still available on his site! http://www.gamemaker.nl The guy is amazing for charging so little for a program so powerful! You're crazy if you don't check this program out!

I've wanted to develop games ever since I played Nintendo for the first time as a child. (Super Mario Bros., the original, & still the coolest!)

I came across game maker one day and thought it was just some weak scam to get someone to buy their software, but it was a free download, so I said what the hell and downloaded it.

It took a little while to learn the GML, though the interface was pretty easy! Since then it's undergone some major facelifts. Professor Mark Overmars developed this tool mainly to teach his students game design and computer programming. (Hence the C++ like style, though it was programmed in Delphi) He doesn't charge anything, though IMO it's EASILY worth $100+. All he does is ask for donations since it does cost time and money to continue to develop game maker.

The guy only intended this to be 2D, but people wanted this great interface to be 3D, too. Though, currently this is now possible with the Irrlicht DLL, and if someone gives me a hand, developing games with this interface could prove quite useful to ANYONE developing games without a big budget! Trust me, checking this program out is definetly worth it!
disanti
Posts: 367
Joined: Sat Jan 17, 2004 1:36 am
Location: California, US
Contact:

Post by disanti »

You're crazy if you don't check this program out!
I'd say your crazy if you think I'm going to use this cr*p! :P

If you want to make a 2d game but want no challenge making it, go to Clickteam.com. Otherwise, use C++... maybe Irrlicht or OpenGL/DirectX.
________
Think mill
Last edited by disanti on Tue Feb 22, 2011 8:06 am, edited 1 time in total.
Ace
Posts: 18
Joined: Mon Mar 15, 2004 4:47 am
Location: Louisiana
Contact:

Post by Ace »

quote:
--------------------------------------------------------------------------------
You're crazy if you don't check this program out!
--------------------------------------------------------------------------------



I'd say your crazy if you think I'm going to use this cr*p!

If you want to make a 2d game but want no challenge making it, go to Clickteam.com. Otherwise, use C++... maybe Irrlicht or OpenGL/DirectX.
Obviously you've never actually used Game Maker before. There's nothing but flexibility in this program. The name is definetly deceiving. It can make any game you can dream of. You obviously don't realize it's potential.

Personally, I don't care if you use it or not. I just want those who DO realize this potential to help me out a little bit, and not criticize me.
pex
Posts: 16
Joined: Sun Mar 28, 2004 11:51 am

Post by pex »

i used game maker for more than 1 year, and belive me - its a bad idea to put it together with Irrlicht !
here are my reasons:
1) the DLL is GMIrrlicht.dll. the GM thingy destroy the look, less professional i would say. and not everybody would want that you will know they used GM..there is GMIrrlicht.dll and Irrlicht.dll, its too invisible!
2) even if when you buy gm, in the source of your created files you will see the name Mark Overmars. so unprofessional and bull****! so yuckie..
3) game maker is 100% not a 2d engine! live with this! its a software for creating 2d games that will be compiled with delphy. thats all! nothing special! its very old program, niko is much better programmer than mark! ( :) )
4) there is no subroutines or void(), there are scripts instead. every script to a "Script".
5) whats so problem to use the keyboard and mouse in irrlicht? when you have the class ready, you just add the events you want to use and thats all..
6) as much as i know, there are no Classes in gm. gm is very not like c/cpp.
7) if you want to use a ready engine? there is no dll for it, just header files for c++. lets take for example..zlib. how will you use zlib in your 3d game? (for example, creating .gz files. i have reasons to create (and then change the file name to .sav) :) )
8 ) its not cool to add 20-100 .dll files to your game and game's directory just for more small features..(now its vs. gm :P )
9) there are a lot of things that gm doesnt support, such as:
gui, text process (like pattern matching in perl), ..
sorry but im lazy to continue my evil reply :twisted:
Guest

Post by Guest »

1) the DLL is GMIrrlicht.dll. the GM thingy destroy the look, less professional i would say. and not everybody would want that you will know they used GM..there is GMIrrlicht.dll and Irrlicht.dll, its too invisible!
Rename the dlls. :P
2) even if when you buy gm, in the source of your created files you will see the name Mark Overmars. so unprofessional and bull****! so yuckie..
Where's his name in your source code? If you created the game, why would his name be there..? And who would look at your source code unless you let them? That's very unprofessional and unwise of any programmer.
3) game maker is 100% not a 2d engine! live with this! its a software for creating 2d games that will be compiled with delphy. thats all! nothing special! its very old program, niko is much better programmer than mark!
Since when does the question of niko and mark's programming abilities come into question here? (and FYI, GM can make 3D games with the dll... Where have you been this whole topic? The use of DLLs allows GM to do things normally not possible. Even be a 3D engine. :P Live with it yourself.)
6) as much as i know, there are no Classes in gm. gm is very not like c/cpp.
you don't need classes in GM. You have objects/parents/heirarchies. :P You obviously didn't use GM very much in that year.

The rest of your reasons I find you're not very knowledgable about what you're talking about, so do me a favor and don't post. All of your reasons aren't even problems with GM, it's a problem with the programmer's methods. Why would one need multiple DLLs when one is a sufficient enough library..? :P


And to anyone else posting to negatively criticize my idea just because you wouldn't do it! Currently, I'm just posting for help. If you don't want to help in any way, then DON'T POST!
Wolf Dreamer
Posts: 121
Joined: Tue Feb 10, 2004 6:39 am
Location: the land of chaotic dreams
Contact:

Post by Wolf Dreamer »

Am I the only one that gets a massive speed reduction when using this thing?

I have a Pentium 4, 1.9GHz processor, with 256MB PDRAM, and a 64MB NVIDIA GeForce2 MX graphics card, and am running Windows XP.

When I run the example, I get 60 ftp maximum. And it only has one character in it. What about everyone else?

The techdemo has its slow down moments in places, strangely enough, but when I move around the FTP always goes up to up to 160 at times. With the GMIrrlicht example it stays at 60 maximum.

---
By the way, the earlier versions of Game Maker that do not require regesteration to use .dlls would not have all the current features. Rooms would be limited in size because it keeps track of every item in the game constantly, instead of just ignoring those off screen as the current versions do.

Also, even with the current version, what happens when you have a large number of things in the room? What happens when you start moving them about, etc?

With the older versions I'm certain it would lag far too much. With the newer versions that can ignore items out of the players view, I'm not so sure.

For multiplayer games that have large numbers of people to keep track of in a constantly changing world, I can't imagine the server in Game Maker managing that through its current room system. The server side of the program would have to keep everything active everywhere there was a player nearby, and that would surely cause problems.
The last sane human being in a world gone mad

http://s8.invisionfree.com/Game_Maker_f ... hp?act=idx
guest1

Post by guest1 »

I think the reason why you only get 60fps is because vsync is enabled...
thesmileman
Posts: 360
Joined: Tue Feb 10, 2004 2:20 am
Location: Lubbock, TX

Post by thesmileman »

I agree Wolf I have simular slow downs as you. I do enjoy these quotes by ace
I love Irrlicht, though I don't know much C++
Dude, trust me, you can program in this "tool" just as well as you could do in C++. It's got its own built in language that is nearly EXACTLY the same as C++.
Hmmm lets see "I don't know much C++, however it is nearly EXACTLY the same as C++". Not really sure your qualified to make such a statement acording to yourself.
Not on my machine. It runs as fast as any of the other Irrlicht programs easily. I've got a standard Pentium 2 Intel Graphics card with Open GL, and a Hewlett Packard.
Pentium 2 Intel Graphics card? what are you getting 1 frame a second now and you were getting 2? Seriously, even on Irrlicht by itself can you get more than 10 frames a second?
there's not really a learning curve whatsoever
It took a little while to learn the GML
The above two speak for themselfs.

Besides the funny above quotes, I actually gave it a shot(With an open mind) and checked it out. And lets say I was less than impressed.

Lets see. What we now know:

1.) We can add tremendously easy 2D to Irrlicht.

2.) We can make an already easy engine somewhat easier. If only you learn how to use the GML. But don't be afraid it has no learning curve whatsoever, but it does take a while to learn.

3.) We have to limit the items in a users view so that we don't slow down this engine that has little performance hit on Ace's P2 intel graphics (Wolf)

4.) Multiplayer would most likely suck(because the engine keeps track of everything.

5.) All this and only an average reduction in speed by 1-3 times(Wolf and thesmileman)

Oh I almost forgot we HAVE to pay yes HAVEto pay(He is not just asking for donations as Ace said) for the full version. What is in the full version? Ohh nothing too important just multiplayer support, dll support, data structures, and many more. But I am sure that you don't need any of the above do you?

WOW all I can say is I am sooooo EXCITED!!!!! Sorry guys I guess I am not going to be around or posting for a while because I am going to be working a TON with Game Maker.Its GRRRRRRR...8!!!
Last edited by thesmileman on Tue Apr 13, 2004 3:08 am, edited 3 times in total.
Wolf Dreamer
Posts: 121
Joined: Tue Feb 10, 2004 6:39 am
Location: the land of chaotic dreams
Contact:

sorry if its a bit off topic

Post by Wolf Dreamer »

What is vsync?

I loaded up the techdemo and scanned for vsync but found nothing. I searched the windows help file, but there were no results.

I just went through all my NVIDIA settings to find a way to increase speed. I change from performance to quality, and it doesn't affect speed at all. Strange really.

---
Anyway, back on topic, does anyone think they can make a Game Maker type interface for Irrlicht?
The last sane human being in a world gone mad

http://s8.invisionfree.com/Game_Maker_f ... hp?act=idx
guest1

Post by guest1 »

lol @ smileman

I have not yet tried GM with irrlicht, but as a guess, I figured it would be vsync because of the solid 60 (which is default monitor refresh rate).

Anyway, what vsync does, is it waits for the monitor to finish refreshing the display before it flips the buffer... Take this example to illustrate my point:

unsigned int *buffer; // this is an address to a buffer
for(i=0; i<(1024*768); i++)
{
displayColor(buffer+i);
}

well, whenever you "flip" the buffer, it just changes the pointer to the buffer. Well, typically, we have a frontbuffer and a backbuffer. We write to the frontbuffer, and then "flip" the buffers... So, imagine half way through that loop, the address buffer points to changes, you will notice half of one frame and half of the previous frame. So, if it's half way done showing when the buffer is flipped, you will notice a "jagged" line when you scroll or make sudden motions in a program. (usually this isn't noticable, unless the scene has changed dramatically from one scene to the next, and the line is in the middle of the screen.)

When you look in your advanced video properties in windows, under the monitor tab, the refresh rate of your monitor, that is your "physical maximum" for FPS. That doesn't mean the engine cannot go faster... That's just the max your monitor can go.

Disable the vsync (not sure how on your specific card) and it won't wait for the monitor, and you should get significant higher fps in GM (although probably much slower than using C++)

P.S. it's sometiems called "wait for vertical refresh"
Wolf Dreamer
Posts: 121
Joined: Tue Feb 10, 2004 6:39 am
Location: the land of chaotic dreams
Contact:

Post by Wolf Dreamer »

Thanks. That did increase it a bit, going from 60 to 79 I think.

I also found that in Game Maker there are options that affect the screen refresh rate, and playing with that as well got me up to 86.

Screen refresh rate I changed from 60 to 85. To go higher than that I would apparently risk damaging my hardware somewhat.
This may lead to unstable display and/or damaged hardware
Thats what the spooky warning says and searching the net it can apparently do that.

Anyone know anything about that? I found on the net that some games that try to run higher than the monitor is set give people problems, with a blank screen or it shutting down.

---edit---
http://www.sony-cp.com/en/support/faq/ after reading that it couldn't really damage my system I tried higher settings, unclicking the "hide modes this monitor can not display" to display all the options. I could handle up to 144 without the screen going blank and refusing to do anything, while at 170 or above things shut down. I had to reboot in VGA mood to get Windows XP to start again but nevermind that.

The important thing is that I learned that it doesn't run as well at 144 or any number higher than the 85.

So only list the modes your monitor can display, and choose the highest one there for maximum efficiency.

I'll put this advice over in the Beginners forum as well since it'll help them.
The last sane human being in a world gone mad

http://s8.invisionfree.com/Game_Maker_f ... hp?act=idx
Post Reply