Goombert
|
|
Posted on: January 06, 2013, 07:23:29 am |
|
|
Location: Cappuccino, CA Joined: Jan 2013
Posts: 2993
|
I came over here and registered to see what you guys have actually been up to. I've tested out the compiler and it's speed increases, but I want to know what exactly are you guys planning to do now that GM will soon be completely compiled and doing some stress tests I am able to get pretty similar results between you guys. I think if you guys need to realize you've already lost the battle and start moving away from the GM architecture of things and use your wrapper for your own custom designed open source game engine. Giving YYG a REAL, GOOD run for their money would be better for everybody competition between software developers usually brings out the best in both. So what are you guys thinking over here? Edit: Also I am from the GMC and I come in peace I've been developing a 3D Mario clone in GM without the use of extensions... http://gmc.yoyogames.com/index.php?showtopic=562628&st=0[youtube]http://www.youtube.com/watch?v=phxxMPSLqC4[/youtube]
|
|
« Last Edit: March 20, 2016, 04:23:02 am by Robert B Colton »
|
Logged
|
I think it was Leonardo da Vinci who once said something along the lines of "If you build the robots, they will make games." or something to that effect.
|
|
|
TheExDeus
|
|
Reply #1 Posted on: January 06, 2013, 09:26:14 am |
|
|
Joined: Apr 2008
Posts: 1860
|
Well, we are already going away from GM in many different ways. Compatibility is what remains, so that you can run almost every GM game in ENIGMA without a single change. But ENIGMA has many additional things, like many syntax possibilities. Including structs and optional data types which speeds up things tremendously, and as far as I know YYG said they will not add them. Its of course open-source so you can add functionality (in C++ so its faster) when you need it. I for example do this all the time. In every single one of my projects I find something lacking, so I add the functionality that I couldn't do via the GM or ENIGMA IDE. And its also free and it will remain so for foreseeable future. If we can make it as functional as GM, then people just will have no interest to pay 100's of dollars for GM. And in Windows, Linux and MacOS it basically is as functional already. Though mostly this is just an educational project I think. None of use are industry veterans or somethings, so everything we do goes trough 100000 iterations. If we had, for example, a professional 3D programmer on our team we could make the OpenGL 3D part way more advanced than GM's. For example by adding shaders (which I plan to look into, but someone with more experience is welcome).
|
|
|
Logged
|
|
|
|
|
polygone
|
|
Reply #3 Posted on: January 06, 2013, 12:24:11 pm |
|
|
Location: England Joined: Mar 2009
Posts: 794
|
I recognize you from the GMC, and actually looked at that Mario engine a few days ago - I don't have GM8.1 though and the source looked a bit convoluted so I couldn't be bothered getting it to work. If you check the EDC ( http://enigma-dev.org/edc/games.php?action=list) you can see that I've actually got the Kingspace engines working in ENIGMA. As far as GM compatibility is concerned, it exists in ENIGMA now so there's not really much point in removing it. And I wouldn't overlook it's benefits, if ENIGMA never had GM compatibility I doubt the project would even be running still - and certainly a lot of people (myself included) would never have come here. In any case it doesn't require much effort to maintain and a lot of the missing GM features are desired in ENIGMA anyway. So what the **** are you guys thinking over here? The thing that you probably don't realize is that there aren't really that many developers here and the main developer, Josh, is constantly busy with school and work. YYG's have a team of paid developers and a lot of money to spend, they're bound to make progress in areas where ENIGMA is not. Like the TheExDeus said it's about getting the right developers, if you want a feature in ENIGMA you can always try writing it yourself if you have the ability to do so - if ENIGMA had as large a user-base as GM has the project would be massively featureful.
|
|
« Last Edit: January 06, 2013, 12:36:08 pm by polygone »
|
Logged
|
I honestly don't know wtf I'm talking about but hopefully I can muddle my way through.
|
|
|
Josh @ Dreamland
|
|
Reply #4 Posted on: January 06, 2013, 02:06:53 pm |
|
|
Prince of all Goldfish
Location: Pittsburgh, PA, USA Joined: Feb 2008
Posts: 2950
|
Hiya,
I have been working on a new parser for a much more capable dialect of GML than the one employed by Yoyo. I am aware of their potential hike in speed from trying to compile their games, but I'm afraid that it will not do them any good when you compare the price tags. Even if they do match our speed, 100%, they will still not be competition for us ceteris paribus due to their incredible pricing scheme. That said, I don't see that we've lost any battle.
With the new parser I want to make ENIGMA at least as easy to use for mobile development as GM:S. At that point, it will come down to price and language features—ENIGMA will curb-stomp GM in both departments.
In addition to static typing, the new flavor of EDL I have written (and am still writing) will offer a lot of features that Dailly turned his nose up at, and a few more that he had expressed a desire to implement but did not believe he would find time for. Among these features are static typing (which we've always supported), much better support for arrays, support for closures, support for C++ operators, support for class/structure declarations, etc.
We also have a special surprise planned that we had introduced in R3, but that has since fallen into the history books. We'll be reintroducing it soon; ideally before Yoyo ever comes up with it. It's guaranteed to make development easier, especially for games like yours.
So yes, while Yoyo is catching up to us in performance, we'll still be in a league of our own in pricing and capability.
|
|
|
Logged
|
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble "I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
|
|
|
Goombert
|
|
Reply #5 Posted on: January 06, 2013, 02:12:03 pm |
|
|
Location: Cappuccino, CA Joined: Jan 2013
Posts: 2993
|
Ok well here is the biggest set back as I see it right now, is not functionality or anything because I've read through some of the stuff on here I already understand what is kind of going on here, but I think it is, first of all you guys don't even have a section for Work in Progress (wtf is up with that?) but most importantly lateral GM looks like shit, is outdated and just horribly god awful.
Now let's say someone like me who is a so/so experienced C++ programmer and really experience .net framework programmer came along and want to write a basic editor for your, I guess I'll call ENIGMA a wrapper, cause it really is not a GM Augmentation it is kind of it's little thing from what I can see you guys have put extensive work into it. Would you guys officially support my Open Source IDE that is built ontop of your compiler, since I do not even think lateral GM is even being made anymore.
What do you mean my code was hard to, whatever the hell you said, if you ask me I am a pretty optimal, clean, efficient programmer. If you look at any of my source code everything will always follow a logical coherent path, usually some of my source files can be tricky.
|
|
|
Logged
|
I think it was Leonardo da Vinci who once said something along the lines of "If you build the robots, they will make games." or something to that effect.
|
|
|
TheExDeus
|
|
Reply #6 Posted on: January 06, 2013, 02:14:47 pm |
|
|
Joined: Apr 2008
Posts: 1860
|
I sure don't know how to optimize OpenGL, but I believe some functions could double their performance. Well the problem is in the idea of draw event actually. In modern games and serious 3D (be it OpenGL or DirectX) everything is usually loaded into vertex arrays and batches for faster drawing. That can improve drawing speed several orders of magnitude. The problem is that in GM and ENIGMA you can't really do that. You can add functions (I once did for VBO, but didn't commit) so users can do that themselves, but its not really possible to do that automatically. Maybe only for object sprites that are predetermined. In draw event everything can change because of some variables. That means you cannot batch the whole draw event of an object and then re-render it all the time. You could batch them every draw event (like every frame), but I am not sure that would create such a massive boost. Like its done with 3D models in GM and ENIGMA. You create them, add vertexes and then draw them. When you draw them you gain massive speed boost because they are already on GPU and are not changed. When you add per-vertex software based modification the it gets slow. I am no professional either, so I am not sure how actually things like animations work in big commercial games, but these are things I have noticed. For example, I remember watching a video from a guy who made physics engine for Diablo3. He mentioned that the whole shattered object that has many physical pieces is drawn with only 1 draw call. And I am not sure how that works without remaking the model all the time. Now let's say someone like me who is a so/so experienced C++ programmer and really experience .net framework programmer came along and want to write a basic editor for your, I guess I'll call ENIGMA a wrapper, cause it really is not a GM Augmentation it is kind of it's little thing from what I can see you guys have put extensive work into it. Would you guys officially support my Open Source IDE that is built ontop of your compiler, since I do not even think lateral GM is even being made anymore. ENIGMA is both an engine and a parser which is actually called by a plugin for LGM. It can probably be hooked in anywhere. You actually don't need LGM to compile a game. You can do that trough the console. Some java is needed in this case because ENIGMA doesn't load sources files (gm6, gmk, egm etc.), but only parses it and the compiles it. The looks can be changed, the default Java one is the ugly blue. Sadly, there is no dropdown list or something in LGM to actually do that. And yes, it is worked on. All of LGM is functional as far as I know and the only buggy thing is the code editor that was never actually finished. So if you have an IDE that is somehow better, then you can share with it here and probably others will help to hook it up with ENIGMA. P.s. I hope I didn't lie about the LGM/ENIGMA relationship. I still tend to confuse all that.
|
|
« Last Edit: January 06, 2013, 02:24:34 pm by TheExDeus »
|
Logged
|
|
|
|
polygone
|
|
Reply #7 Posted on: January 06, 2013, 02:18:22 pm |
|
|
Location: England Joined: Mar 2009
Posts: 794
|
What do you mean my code was hard to, whatever the hell you said, if you ask me I am a pretty optimal, clean, efficient programmer. If you look at any of my source code everything will always follow a logical coherent path, usually some of my source files can be tricky.
The problem was with the use of some 8.1 only functions, which were wrapped in with the project - it looked like too much effort getting it to work on 8.0 which is what I use. By the way the main method of communicating here is on the IRC channel, this forum doesn't actually have that much activity as of now since most things take place there.
|
|
|
Logged
|
I honestly don't know wtf I'm talking about but hopefully I can muddle my way through.
|
|
|
Josh @ Dreamland
|
|
Reply #8 Posted on: January 06, 2013, 02:18:51 pm |
|
|
Prince of all Goldfish
Location: Pittsburgh, PA, USA Joined: Feb 2008
Posts: 2950
|
LateralGM's development is at a low, yes, but it's still maintained. As for it looking like shit, I'll grant that.
Anyway, we'd be happy to support your IDE in the same way we support LGM; we just ship it with the compiler. All you have to do is implement the same methods you can see done in Enigma.jar, and you can load ENIGMA and call it in the same way LGM does. The two projects are very separate.
|
|
|
Logged
|
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble "I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
|
|
|
polygone
|
|
Reply #9 Posted on: January 06, 2013, 02:20:22 pm |
|
|
Location: England Joined: Mar 2009
Posts: 794
|
I'm sure Ism is going to be happy to read this thread
|
|
|
Logged
|
I honestly don't know wtf I'm talking about but hopefully I can muddle my way through.
|
|
|
Goombert
|
|
Reply #10 Posted on: January 06, 2013, 02:23:28 pm |
|
|
Location: Cappuccino, CA Joined: Jan 2013
Posts: 2993
|
Well still this is where I see you guys falling behind your not even paying attention to there roadmap are you? LLVM FULL script compilation, aiming to provide a 10x speed increase to game code and logic. Cross platform support for Windows, Mac, iOS and Android. Shaders Allowing simple shader creation for current Flexible Vertex Formats (FvF), while also allowing access to vertex and pixel shader constants.
But I think there bluffing about how great there implementations are going to be, and there already losing out big time because of what happened with the DRM software.
|
|
|
Logged
|
I think it was Leonardo da Vinci who once said something along the lines of "If you build the robots, they will make games." or something to that effect.
|
|
|
Goombert
|
|
Reply #11 Posted on: January 06, 2013, 02:26:33 pm |
|
|
Location: Cappuccino, CA Joined: Jan 2013
Posts: 2993
|
I would love to do it, would it really matter what language the IDE was written in, I would prefer using .net and VB as I am most experienced with that and it would provide the most cross compatibility, I do not think Java was a very smart idea for lateralGM. Where is the IRC btw and I already have Enigma set up from some testing I was doing about a month ago.
|
|
|
Logged
|
I think it was Leonardo da Vinci who once said something along the lines of "If you build the robots, they will make games." or something to that effect.
|
|
|
TheExDeus
|
|
Reply #12 Posted on: January 06, 2013, 02:27:10 pm |
|
|
Joined: Apr 2008
Posts: 1860
|
Where did you see that roadmap? Never read that thing. edit: Also, LGM was in Java because that IS the most portable thing ever. The one .jar works on all platforms without modifications. So even though I hate Java and it seems its a resource whore, it is still the most portable thing. .net and VB doesn't usually work outside Windows environment, but you can try.
|
|
« Last Edit: January 06, 2013, 02:28:57 pm by TheExDeus »
|
Logged
|
|
|
|
|
Josh @ Dreamland
|
|
Reply #14 Posted on: January 06, 2013, 02:28:03 pm |
|
|
Prince of all Goldfish
Location: Pittsburgh, PA, USA Joined: Feb 2008
Posts: 2950
|
We already compile our scripts natively. Their use of LLVM is simply not a threat to us.
As for shaders, those are still in the planning phase. We need to come up with a unified syntax that will work over DX, GLES, and GL. I am already laying out a method of importing scripting languages into ENIGMA, though, so using multiple shader languages is a really simple solution.
|
|
|
Logged
|
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble "I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
|
|
|
|