Jump to content


Photo

Yoyo Compiler


  • Please log in to reply
56 replies to this topic

#1 round

round

    GMC Member

  • GMC Member
  • 169 posts

Posted 31 May 2013 - 05:11 PM

Hi, After watching the video, I think that YoYo Compiler looks

professional and wonderful. Well done.!!!!

http://www.youtube.c...h?v=i3ECuXBc7Ks

:)


Edited by round, 31 May 2013 - 05:14 PM.

  • 2

#2 logstar6

logstar6

    Crosshairgames

  • GMC Member
  • 225 posts
  • Version:GM:Studio

Posted 31 May 2013 - 05:30 PM

Wow, yes this does look amazing! :biggrin:

 

If I understand correctly from the video it will be released with 1.2?


  • 0

#3 benf2

benf2

    GMC Member

  • GMC Member
  • 489 posts
  • Version:GM:Studio

Posted 31 May 2013 - 05:33 PM

Can anyone explain what is that compiler and what does it means?

Will it boost particle use specifically or everything?

Thanks.


  • 0

#4 Overloaded

Overloaded

    Seeker of Balance

  • GMC Member
  • 972 posts
  • Version:GM:Studio

Posted 31 May 2013 - 05:36 PM

Wow, yes this does look amazing! :biggrin:
 
If I understand correctly from the video it will be released with 1.2?

 
Yes it will be released at v1.2, which will come to us soon, perhaps in a few weeks, according to Sandy Duncan's twitter page.
https://twitter.com/...347937815138305
 

Can anyone explain what is that compiler and what does it means?
Will it boost particle use specifically or everything?
Thanks.

 

Check out these 3 links, the might help you.

 

http://gmnewsbite.ne...-power-of-llvm/

 

http://gmnewsbite.ne...-compiler-gmlc/

 

http://gmnewsbite.ne...amemaker-users/


Edited by Overloaded, 31 May 2013 - 05:38 PM.

  • 1

#5 benf2

benf2

    GMC Member

  • GMC Member
  • 489 posts
  • Version:GM:Studio

Posted 31 May 2013 - 05:52 PM

All that stuff sounds heavenly


  • 0

#6 NakedPaulToast

NakedPaulToast

    GM Studio/Mac/Win

  • GMC Member
  • 8357 posts
  • Version:GM:Studio

Posted 31 May 2013 - 06:07 PM

What's particularly encouraging is the side by side comparison of the traditional runner (~ 2000 particles @15 FPS) vs the compiled (~50,000 particles @30 FPS). 

 

Other interesting tidbits from Sandy's twitter feed:

 

  • @metkis sssshhhh...I thought the vector graphics was a secret ?
  • @TimBuchalka @metkis GameMaker:Studio for OSX. should happen before the end of the year.

  • 6

#7 Mr. RPG

Mr. RPG

    GMC's Forum Troll

  • GMC Member
  • 3150 posts
  • Version:GM:Studio

Posted 31 May 2013 - 06:11 PM

 

What's particularly encouraging is the side by side comparison of the traditional runner (~ 2000 particles @15 FPS) vs the compiled (~50,000 particles @30 FPS). 

 

Other interesting tidbits from Sandy's twitter feed:

 

  • @metkis sssshhhh...I thought the vector graphics was a secret ?
  • @TimBuchalka @metkis GameMaker:Studio for OSX. should happen before the end of the year.

 

Studio for OS X sounds really awesome, however I think Windows users should get it for free (or a huge discount). If it does come out, then you should be able to use it as a "personal" install. I don't have a Mac yet, but I am saving up for a MacBook and will have one by the end of the summer.

 

Regarding 1.2, I'm actually quite surprised it has taken this long. I thought we would have gotten it on GameMaker: Studio's first birthday, but at least we have confirmation that it is coming "in a few weeks". Although knowing YoYoGames and 1.1, that could mean almost two months.


Edited by Mr. RPG, 31 May 2013 - 06:13 PM.

  • 0

#8 Andy

Andy

    GMC Veteran

  • GMC Member
  • 1892 posts
  • Version:GM:Studio

Posted 31 May 2013 - 11:08 PM

GM: Studio 1.2 is looking great! :thumbsup:


  • 0

#9 Manuel777

Manuel777

    InvaderGames

  • GMC Member
  • 3538 posts
  • Version:GM:Studio

Posted 31 May 2013 - 11:37 PM

Saw this on twitter, excellent new, and something we were all expecting to see since Studio 1.0.

 

I want it now!!  :P

 

 

PS: The Roadmap needs a good cleanup and then an update... 


  • 0

#10 Lune

Lune

    hic quoque transibit

  • GMC Member
  • 933 posts
  • Version:GM:Studio

Posted 31 May 2013 - 11:48 PM

I saw this earlier after one of the YoYos retweeted it. Super cool stuff! It's certainly an exciting time to be a GameMaker developer.
  • 0

#11 JonathanPzone

JonathanPzone

    GMC Member

  • GMC Member
  • 1215 posts
  • Version:GM:Studio

Posted 01 June 2013 - 05:52 AM

I was very tempted to just post the word "now" repeatedly. However, being a better man I shall merely think it loudly in my head.

 

Finally, I've been waiting for this day ever since 5.3. Great job YoYo! I can't wait to see it in my hands. Civilizations shall crumble.


  • 0

#12 Kapser

Kapser

    GMC Member

  • GMC Member
  • 1640 posts

Posted 02 June 2013 - 07:31 PM

I'm so hyped, this is great!


  • 0

#13 DanRedux

DanRedux

    GMC Member

  • GMC Member
  • 1403 posts
  • Version:GM:Studio

Posted 03 June 2013 - 03:03 AM

Something that may have been missed- Those are SIMULATED particles. I interpret that to mean they are being emulated using GML, not the built-in particle system. 

 

If I'm right, then 30,000 simulated objects at 30fps is really quite amazing.


  • 0

#14 MishMash

MishMash

    GMC Member

  • GMC Member
  • 889 posts
  • Version:GM:Studio

Posted 03 June 2013 - 10:19 AM

If objects are faster, then we'll be able to use true object oriented style programming, rather than the work arounds, whilst these methods are inefficient, they make programming even faster, like in Java, using objects for almost everything is just awesome.

Like the ability to make inventory objects which can be given to a number of instances! 
I would love faster processing so much! 

From what i've seen in the video, this seems to good to be true xD! I feel that i may be dissapointed and overthink my expectation.
Although what would be really cool, is to be able to disable GM's background object code, so i mean the things like the speed, gravity, collision processing that GM does on all objects, if you don't want it, as alot of the time i find myself not using those functions on control objects which dont physically move around in game, and i feel that its a waste of processing power, although its probably necessary to make GM work as it does!

Really excited for this update though, if the speed change is significant enough, im going to be porting all my projects to Studio, not so fussed about the graphics not being any faster, but more processing power, ill take that!


  • 0

#15 Mr. RPG

Mr. RPG

    GMC's Forum Troll

  • GMC Member
  • 3150 posts
  • Version:GM:Studio

Posted 03 June 2013 - 08:57 PM

Something that may have been missed- Those are SIMULATED particles. I interpret that to mean they are being emulated using GML, not the built-in particle system. 

 

If I'm right, then 30,000 simulated objects at 30fps is really quite amazing.

Where does it say that anywhere?


  • 0

#16 lordvtp

lordvtp

    GMC Member

  • GMC Member
  • 705 posts
  • Version:GM:Studio

Posted 03 June 2013 - 09:41 PM

If you read about that test app for android you see there they said they used worst case scenario type gml using objects in order to stress test. 


  • 0

#17 makerofthegames

makerofthegames

    Never you mind!

  • GMC Member
  • 7526 posts
  • Version:GM:Studio

Posted 04 June 2013 - 06:10 AM

Wait, 30000 instances? Objects? What? WHAT? *insert hyperbolic reaction cutting to wacky 80s blank beeping television screen*
  • 2

#18 GenoDoucette

GenoDoucette

    g e n o d o

  • GMC Member
  • 995 posts
  • Version:GM:Studio

Posted 04 June 2013 - 06:33 AM

The video shows it handling a lot of particles, but does that mean it will be able to handle more active objects as well?

That's a good question, I hope it does!
  • 0

#19 Manuel777

Manuel777

    InvaderGames

  • GMC Member
  • 3538 posts
  • Version:GM:Studio

Posted 04 June 2013 - 06:54 AM

 

The video shows it handling a lot of particles, but does that mean it will be able to handle more active objects as well?

That's a good question, I hope it does!

 

 

Well, in theory, this affects everything processing-related, not only particles.. particles were always sucky to deal with because they tend to lag GM pretty badly when used in big ammounts, they are good stress-testers :)

 

Think the GM runner as a cup (or something that gets filled with something else). This cup is built in native code, and is static (doesnt change,is the same for all games, and is built in C++). Right now, to make our games we just fill this cup with commands thrown into the cup (theese commands, combined with the resources comform our game), the cup then reads those commands when its loaded and then interprets them while its running, and ta-da! we can play our game.. But this is terribly inneficient, especially when the runner has to handle those GML commands and 'translate' them! 

 

So now, the compiler will create native code only, no more interpreted GML commands in our standalone releases. I am yet to know if there will be any runner at all trough, that would be simply amazing, but I supposse there will always be a 'static' layer for stuff like GameMaker.. MAYBE, (and this is only a big presumtion), the YYC will create native code for the runner to handle in its own language, making it faster for it to read/handle.

 

I hope this all gets clearified when the YYC comes out, Im looking forward to see it in action!


Edited by Manuel777, 04 June 2013 - 06:57 AM.

  • 2

#20 mr magnus

mr magnus

    Viking King

  • GMC Member
  • 3068 posts
  • Version:GM:Studio

Posted 08 June 2013 - 11:27 AM

Ok, the first thing to do with v 1.2:
create a blank project;
Create an object that creates a bunch of little particle objects.
See how many objects I can cram in there before the FPS drops.


  • 1

#21 MishMash

MishMash

    GMC Member

  • GMC Member
  • 889 posts
  • Version:GM:Studio

Posted 08 June 2013 - 01:27 PM

I want this update so badly xD! I want to see what i can do with this extra power :D!


  • 2

#22 theweirdn8

theweirdn8

    Unrivaled Legend

  • GMC Member
  • 4098 posts
  • Version:GM8.1

Posted 08 June 2013 - 03:38 PM

"Does it come in blue"-noob
  • 1

#23 icuurd12b42

icuurd12b42

    Self Formed Sentient

  • GMC Elder
  • 16283 posts
  • Version:GM:Studio

Posted 08 June 2013 - 04:11 PM

 

Something that may have been missed- Those are SIMULATED particles. I interpret that to mean they are being emulated using GML, not the built-in particle system. 

 

If I'm right, then 30,000 simulated objects at 30fps is really quite amazing.

Where does it say that anywhere?

 

 

More info in the youtube video page

 

This shows the difference the new "YoYo Compiler" makes to a working example. This particular example has been purpose built to stress the language and push GML to breaking point. It processes all the particles manually and helps give a real figure to how much we can expect the actual code execution to speed up.


  • 2

#24 GameRoom

GameRoom

    GMC Member

  • GMC Member
  • 781 posts
  • Version:GM:Studio

Posted 09 June 2013 - 12:31 AM

Does this speed boost affect HTML5? As absolutely amazing as that would be, it would mean that I'd have to convert my entire game from 30 to 60 fps since it can handle it now. That will take forever. Ugggh.


  • 0

#25 MishMash

MishMash

    GMC Member

  • GMC Member
  • 889 posts
  • Version:GM:Studio

Posted 09 June 2013 - 02:14 AM

I thought that HTML5 already compiled down to raw Javascript anyway? So im almost 100% that no, it doesn't affect HTML5.


  • 0

#26 Mr. RPG

Mr. RPG

    GMC's Forum Troll

  • GMC Member
  • 3150 posts
  • Version:GM:Studio

Posted 09 June 2013 - 04:33 AM

Curious, some of the developers said that there will be an option to toggle it off and on, why is this? Could it break things?


  • 0

#27 Manuel777

Manuel777

    InvaderGames

  • GMC Member
  • 3538 posts
  • Version:GM:Studio

Posted 09 June 2013 - 01:46 PM

Curious, some of the developers said that there will be an option to toggle it off and on, why is this? Could it break things?

 

Maybe because its still under testing for mainstream.. I wouldnt like it to be buggy and being completely blocked off compiling all my games  :thumbsup:


  • 0

#28 NakedPaulToast

NakedPaulToast

    GM Studio/Mac/Win

  • GMC Member
  • 8357 posts
  • Version:GM:Studio

Posted 09 June 2013 - 01:52 PM

Does this speed boost affect HTML5? As absolutely amazing as that would be, it would mean that I'd have to convert my entire game from 30 to 60 fps since it can handle it now. That will take forever. Ugggh.

 

 

All platforms with use LLVM, with the (current) exception being HTML5. We're not sure if we'll use it to generate the JavaScript, as we do a pretty good job of it already.

 

  • 0

#29 MishMash

MishMash

    GMC Member

  • GMC Member
  • 889 posts
  • Version:GM:Studio

Posted 09 June 2013 - 02:22 PM

My real hope with this is that it'll actually become a reasonable idea to do Java/C# true OO style programming where you can get away with using objects for alot more, such as making Inventorys out of objects rather than just arrays, so rather than having

objPlayer.InventorySlot[a] you could do something like ObjPlayer . Inventory . Slot[a], that way it helps keep the main objPlayer clean and doesn't require repasting of code, its also easier to visualise than loads of scripts.
one thing having more processing power will be really great for should be large amounts of data processing, currently GM's data is quite slow, with regard to it taking a while to process data in 2d arrays if you loop through the whole thing.
(Thats one of the limitations of my current game.)

I Feel that GameMaker's graphical capabilities are pretty good but are limited by processing, As in 3D if its one model, you can render 1,000,000+ Polygons and still maintain a good FPS which shows GM seems to have a decent graphics pipeline, however it seems to get slowed from the processing side of it, the other thing is whether the Compiler will also make use of compile-time code optimisation, as that could help make a difference!

It would also be nice to be able to turn off GM's default object processing, like the gravity and speed processing as that could also help speed things up, not an expert though.


  • 1

#30 DanRedux

DanRedux

    GMC Member

  • GMC Member
  • 1403 posts
  • Version:GM:Studio

Posted 09 June 2013 - 02:51 PM

MishMash, you can already do that. The speed loss of inlining code in one object, vs splitting it into two, is almost negligible. I do that kind of OO all the time.

 

However, for say, a 3d voxel terrain... Objects would be wonderful to use there, instead of multiple arrays. Structs would be also very useful.


  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users