Quick Links: Download Gideros Studio | Gideros Documentation | Gideros Development Center | Gideros community chat | DONATE
EpicGames are launching new appstore! — Gideros Forum

EpicGames are launching new appstore!

Apollo14Apollo14 Member
edited December 2018 in General questions
Hey guys!
https://www.unrealengine.com/en-US/blog/announcing-the-epic-games-store
They're launching new appstore with innovative features, like automatic referal program for youtubers&streamers.
If you opt to participate, creators who refer players to buy your game will receive a share of the revenue that you set (tracked by code or affiliate marketing link)
Looks like they really know what they're doing, they already have extremely successful titles and lots of money to invest. It is quite possible that it will bite off a piece of GooglePlay's pie. With referal program youtubers will promote the hell out of this new appstore.

I guess it would be great for Gideros to support their API?
What do you guys think?
B)
> Newcomers roadmap: from where to start learning Gideros
"What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
“The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)

Comments

  • Personally I would push Gideros in other directions, like getting some basic native noise, steering behavior, pathfinding (the list of things it needs for basic gaming functionality is rather large) in the core instead of running off after another revenue stream that is likely to be as bad as other ones that currently exist ;)

    Likes: oleg

    +1 -1 (+1 / -0 )Share on Facebook
  • Apollo14Apollo14 Member
    edited December 2018
    the list of things it needs for basic gaming functionality is rather large
    Thx! Can you pls list it somewhere? Maybe on github section? This way maintainters will know what is missing and see what they can do.

    btw, @antix did you test lua-based pathfinding libs? Do they easily become a bottleneck in the project?
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
  • @Apollo14 yes I've used Lua based A* and it's pretty slow
  • @antix I don't get what is the main bottleneck there?
    The whole lib is pretty tiny: https://github.com/lattejed/a-star-lua/blob/master/a-star.lua

    I see 'ipairs' and 'table.insert' are used heavily.
    As far as I know, this stuff is expensive in Lua and should be avoided whenever possible.
    Also probably 'dist' function is too heavy? (with math.sqrt and math.pow)
    I wonder if somebody from advanced Lua Gurus could suggest an optimization hack there? :)
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
  • hgy29hgy29 Maintainer
    you could check what profiler has to say about it, but making math functions local could help. Also math.pow could be replaced by x^2 and math.sqrt by x^0.5
    +1 -1 (+4 / -0 )Share on Facebook
  • antixantix Member
    edited December 2018
    @Apollo14, I didn't use that library, I used some other one. I don't know what the bottleneck was.. it just slowed down a lot so I immediately got rid of it and created my own crazy solution (not A*) for that particular prototype which performed a load better.

    @hgy29 so that is a very optimized dist function then.. I'll have to try that out!
  • Apollo14Apollo14 Member
    edited December 2018
    hgy29 said:

    you could check what profiler has to say about it, but making math functions local could help. Also math.pow could be replaced by x^2 and math.sqrt by x^0.5

    okay hackers, Profiler says it's 92ms vs 16ms
    looks like it got optimized a little :D
    function dist( x1, y1, x2, y2 )
    	return math.sqrt ( math.pow ( x2 - x1, 2 ) + math.pow ( y2 - y1, 2 ) )
    end
     
    function dist2( x1, y1, x2, y2 )
    	return ((x1 - x2)^2 + (y1 - y2)^2)^0.5
    end
     
    for i=1,100000 do dist(10,10,50,50) end
     
    for i=1,100000 do dist2(10,10,50,50) end

    Likes: SinisterSoft

    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
    +1 -1 (+1 / -0 )Share on Facebook
  • SinisterSoftSinisterSoft Maintainer
    Accepted Answer
    Do it fully inline without the function call, it could possibly be replaced with a macro definition.

    Likes: keszegh

    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
    +1 -1 (+1 / -0 )Share on Facebook
  • Do it fully inline without the function call, it could possibly be replaced with a macro definition.

    I don't get it totally, can you pls share a code snippet, what you mean?
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
  • local x1,y1,x2,y2=10,10,50,50
    for i=1,100000 do
     local d=((x1 - x2)^2 + (y1 - y2)^2)^0.5
    end
    You may have to put the whole lot in a single function call - but then you will know the overhead of using a dist function rather than just having the code inline without a function call at all.

    Likes: Apollo14

    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
    +1 -1 (+1 / -0 )Share on Facebook
  • SinisterSoftSinisterSoft Maintainer
    edited December 2018
    also try:
    local x1,y1,x2,y2=10,10,50,50
    for i=1,100000 do
     local dx,dy=x1-x2,y1-y2
     local d=((dx*dx) + (dy*dy))^0.5
    end
    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
  • SinisterSoftSinisterSoft Maintainer
    edited December 2018
    Also, if you only need to see which of multiple objects is nearer and not actually bother with distance then you can leave out the ^0.5.

    Likes: Apollo14

    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
    +1 -1 (+1 / -0 )Share on Facebook
  • Apollo14Apollo14 Member
    edited December 2018

    also try:

    local x1,y1,x2,y2=10,10,50,50
    for i=1,100000 do
     local dx,dy=x1-x2,y1-y2
     local d=((dx*dx) + (dy*dy))^0.5
    end
    Also, if you only need to see which of multiple objects is nearer and not actually bother with distance then you can leave out the ^0.5.
    Thx!! :)
    p. s. I've tried also '-=' operator, but perfomance was the same, it seems that +- operations affect perfomance very slightly (if at all).
    function getDistance3( x1, y1, x2, y2 )
    	x1-=x2; y1-=y2
    	return (x1^2 + y1^2)^0.5
    end
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
  • Yes, they are just sugar I think - I did think they would be faster as there is one less table read - but it may not actually do that in practice. ++ and -- might have save a little (for inc and dec), but people would have got confused with -- also being used for comments.
    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
  • Apollo14Apollo14 Member
    edited December 2018
    omg Epic revealed more details, it seems they've decided to totally annihilate the industry with all their upcoming free services that normally cost lots of money:

    IMO it would be great for Gideros to support their SDKs.

    Likes: SinisterSoft

    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
    +1 -1 (+1 / -0 )Share on Facebook
  • Lol yesterday EpicGames humiliated Unity :D
    They want 3d devs to move away from Unity, so Unity will become an indie 2d engine :D
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
  • Hey guys! little update, Epic finally launched free online services.
    Imo it would be awesome for Gideros to support their SDK.
    https://dev.epicgames.com/en-US/services
    https://www.unrealengine.com/en-US/blog/epic-s-free-online-services-launch-for-all-game-developers
    (I've submitted suggestion on github section also)
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
    +1 -1 (+4 / -0 )Share on Facebook
Sign In or Register to comment.