jayderyu's Recent Forum Activity

  • This is a fantastic start. however your gravity is still off. Gravity is still essentially -Y which is down. I know you know this, but it is sorta fun :) keep it up :)

  • The balls are bullets with the gravity option on. Since our aim is to figure out what is killing performance on mobile I elected to hold off on Box2d physics. Though that would be pretty cool :)

    Lovelocke64, here is another one to test out(the buttons are a little sensitive)

    studioryu.net/dev/paintrendertest

    This was inspired by CocoonJS Sprite2 demo. However I want to know what FPS impact occurs when there are 50/100/150 objects on the screen; and the different between the 3 backgrounds.

    Tiled: blue with light blue lines. These are 256x256

    Sprite: this is the sky image at a size of 720p to the pixel

    Plain: this is just the basic colour of the layer

    So here is an interesting run down on all this testing.

    Canvas2d(html) is unoptimized for rendering. in fact it's likely that like Android NDK the canvas has a number of method calls that are still software. So the result is that performance is just terrible. ultimatly Canvas2d rendering in the webview render rate is entirely based on the number of pixels pushed in the frame. instead of number of render calls. This leads to terrible performance. More pixels push the slower it goes :(

    CocoonJS(which is not viable for Ouya right now) has over come the pixel amount limit and is wonderfully based on number of draw calls :) When CocoonJS is Ouya ready we will be sitting pretty and able to do some astounding games. infact based on my particular hardware it's pretty close to about 60% native now. however you need to be super smart and careful in regards to logic. This is fantastic platform. But that's the future on the Ouya and not the now :(

    PhoneGap, since we are limited to using PhoneGap :( we are bound to the amount of pixels being rendered for performance. Less pixels rendered the better. This hurts as it will heavily impact background usage. Now since we are aiming for the Tegra 3 which is supposedly going to be 6 to 10 times more powerful than my testing device. We may be fine. My tests results with backround + 50 objects is 20fps. At 6 times the power that would leave the same test running with 120fps(limited to 6)... so you need to let me know the results :)

    I assume your nexus has a screen res of 1280x800?

    this leaves in the browser 1280x648

  • ok. let's start with something easy

    studioryu.net/dev/bounceball

    I looked up and it says your device is 1280x800. So just use your browser as I set this to run at your Android Browser(built in) available resolution.

    The demo just creates ball's while it has more than 30fps. The second number is the ball count. Just let me know where it starts to stop.

  • I can't speak for this version of plugin. I do know that the last version even if you did name all the objects there was no garuntee it would import properly..

    SPRITER guys

    How is the overall plugin stability and importantly is it now possibly effective to do re-import's yet? I'm hesitent to import anything right now knowing that if I make any changes all the in game spriter code is deleted :\ that is seriously the one huge disadvantage to C2. Code deletion upon object removal :( but there is no alternative as you "don't need code" if the object isn't there.

  • Actually I`ll set up a website for direct browser testing. It might be easier than constantly uploadnig and downloading :D

  • Actually this can't be right at all aboout larger objects.

    In CocoonJS tests there many demo's with full screen images running at 60fps. However C2 on my device crawls with TileBackground at 256x256 over the screen. There is definitely something wrong.

    I will take you up on that offer. Try this

    original simple: dl.dropbox.com/u/14087254/ballbouncetest.capx

    CocoonJS: dl.dropbox.com/u/14087254/balltest.zip

    CAPX: dl.dropbox.com/u/14087254/performancetest.capx

    modify resolution and position if needed. try to be sure that when using letterbox your getting exacctly the availble screen size :)

  • hmmm. I did some more testing. This time to see if we can get some background images based on the theory I had. The result was startling bad.

    Ok first as with my prior suggestions and studies there are ways to get the base rendering to 60fps on a Tegra2 chip(I don't speak for T3). That's good. I managed to get 1 green bouncing ball with an FPS of 20 to 60. Then after some tests managed to get that up to 85 balls running at an FPS of 50.

    With that I decided to try some backgrounds and the results were very painful. Backgrounds(tiled or sprite) that filled the screen killed performance. I've tried difference size tiles based on the 8,16,32,64... model for speed. There were no good results. The end result is that on a Tegra2 it all comes down to pixel pushing and backgrounds are killers :|

    Ok the good news. This is an Ouya thread and the GPU in the Ouya is much better. what ever maybe causing terrible pixel push on my device may not exist at all on the Tegra3/Ouya... sigh. I wish I had my Ouya :)

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • If your having communications problems maybe try to illicit a response in your native tongue. There might be someone on the sight that knows how to communicate effectively with you and can relate how to proceed with your game situation.

    The problem is that if basic is difficult, then advanced is going to be far to hard. However, i'm sure we will manage something :) GL :)

    Also I would suggest Clay.io for achievments. it's online feature only, but it's nicely setup :)

  • "@jayderyu - I think you're behind the times. Did I mention you can already enable WebGL on Chrome Beta for Android? I think this is good evidence they intend to have it enabled by default in the stable release. BB10 and Firefox OS will be shipping with WebGL-supporting browsers too. So WebGL is already here on mobile in some ways, and it's improving."

    yes I did :) "chrome://flags/" and turned it on. Also reported the results which weren't very good, but at least steady in the mid range(low end Tegra 2). It's in beta for a reason obviously :)

    Also Chrome is not Android Browser and neither team(and indeed they are TWO separate and distinct teams) really work all that close together. While I'm sure Android team will eventually do WebGL, it is clear they are not working on it at the same rate as Chrome team. Also even when Chrome WebGL is fixed and fast getting over the hurdle. Chrome is not the internal webkit that any packaged game will run on. Which again is dependent on the Android Team.

    My posts were meant to be behind the times to show that it has been 2 years since articles last talked about the subject yet we are still waiting. You mentioned that it took 2 years for WebGL to mature for desktop. Well we are pretty much at 3 years and counting for for full acceleration and the tricks that OpenGL can offer. Phoboslab got around it by creating Ejecta which they have already started using various OGL ES2 render tricks to improve performance. As I understand it. All that does is wrap up webgames into another wrapper. I would love to see performance difference between Ejecta and CocoonJS some time :D

    I have no doubt it's coming, but where as there was a push to get it out on the desktop. On mobile it has been an entirely different situation.

    But in the end. I managed to find a fantastic little tweak and maybe with a few other tricks can get the visual and logic performance anyways. If anything this thread has offered a lot of insight and inspiration to think out side of the box. Plus working with C2 has been a joy :)

  • Been a few months, but I will always chip in with the sentiment. I love C2 and has given me new rejuvenation to make games. I just got so sick of coding :|

    yay C2 :)

  • Good stuff to think on. Youtube is blocked at work, but I'll check it the videos when I get home. Few points:

    1. "SNES-Era" games represent the high-end of what I'd like to do nowadays, at least using Construct 2. We have a good artist, she's currently learning the way of the pixel art however, so for our first outing I'm thinking something more along the lines of the Colecovision for our first title. Ever play Montezuma's Revenge? It also came out on Commodore 64 (another desired look). Although of course, I'm open to a more diverse color palette.

    http://www.mobygames.com/game/c64/montezumas-revenge/screenshots

    2. Didn't realize the link between android and Open GL, though I knew that Direct X was a Microsoft convention. As I read your thoughts on the subject, my mind drifted toward an (old?) article I saw last year... please peruse! extremetech.com/gaming/133824-valve-opengl-is-faster-than-directx-even-on-windows

    There are a few Direct X -> OpenGL wrappers out there already, the most famous being "WINE" perhaps, but as far as I know, that's for Apple Computers only. Again, we're coming to a wall of what I do know compared to what I've heard/read, but the main reason nobody does OpenGL on Windows is because, well, DX is there... and has been since Windows 95. "They don't know any better".

    At this time I'm also aiming at the SNES era limitation design.

    Yikes, I haven't played on a Coleco in... many many years.

    yes I agree. People just use DX because it's there and it's what people use. Vicious circle really :) To me IOS and Android will be breaking that circle in the next 2 decades.

    Thanks everyone. Please keep the positive interests coming. I can only hope that others are doing the same at other game engine communities :) Also i know there are a few others who show interest who haven't commented yet :) more the merrier :)

  • Count me in... however because the future of Construct 2 and Ouya is so damned iffy, I've just about convinced myself to go the route of Construct Classic and make a Direct X9 game for Windows instead. That'd be "good enough" as the .exe exporter for Construct 2, from what I've read, is unpredictable enough to NOT be reliable for commercial release.

    Plus, Construct Classic is free and open source? Maybe the route to go about all of this is to somehow dig into the guts of Construct Classic and make IT support Ouya somehow, seeing as it has nothing to do with HTML5 whatsoever.

    Very open to discussion on that subject, it requires knowledge I don't have.

    I figure I'll take a little more time to answer your question. I didn't want get into a performance discussion here, but I like to talk about the subjects that interest me and this one for me is a hot topic. So I will answer it :)

    First let's just accept that right now HTML5 is not up to par for mobile performance compared to native. let's end that right here. This however does not exclude the ability to make beutiful and deep game experience than just simple puzzles. In fact some old classic games can be readily done on common Android devices now with HTML5.

    Classic SNES games: youtube.com/watch

    Many SNES games on the list are very deep, but no where graphically complex. I know it sounds disheartening to be compared to an older console, but there is a brighter side. These games had less performance for the most part than what we can currently get on the mobile. All we have to do is take advantage of the technology and treat it differently than the PC. We can't brute force are development based on PC design standards... sadly :(

    youtube.com/watch

    I love this game. But remove background for now. remove the OpenGL effects(ok DX) and the game really is very small on the object count. not only that the game will zoom in at smaller rooms cutting out larger environments and allow for minute details. Brilliant really. I could see C2 on Tegra 3 pulling off such a game. Then just add a simpler parralax background with less object count.

    Right now with smart game design we can still make deep, fun, addictive, bueatiful(if you have the artist) games for the Ouya. We just have to be clever about what limited resources we have.

    As for CC, it will be far more work to convert DX to OpenGL. However it is an option. C++ can be bound to Android JNI port in about a week providing you have the source. I've never played with CC ever.

    In the mean time maybe we can look into creating a few graphical tricks :) One blazing performance trick in 3D is billboarding a 3d model. this often deals with rendering a 3d model to a 2d sprite. Then display the 2d sprite. Only re-render the 3d model again when there is a required change. This can boost performance massively. back when I used to hang around jMonkey someone did a test and went from 120fps to 1000+fps. Without requiring to render the animation every frame it left a lot of time to do other work.

    Well we are working in 2d, but we can still take advantage of the same trick. We can group objects to a canvas and only update the canvas on a 30 fps or less scale. This can let us keep logic performance closer to 60fps, but keep animation smooth at 30fps and increase performance. This performance increase occurs from the benefit of not having to blit every object every frame. I haven't implement this as of yet, and likely won't for my current game; as it is for me to far in developement. However I can see my next game experimenting with this.

    Also keep in mind all my testing is on a low end Tegra 2 where as the Ouya is running the top end Tegra 3. It is likely closer to 10 times the performance. Keeping this in mind. My simple ball test I posted in the "sad thruth thread" I managed 86 balls at 40fps in the Android stock browser finding that letterbox scale integer did something interesting. With the Tegra 3 we shuold be clear to make some really good games. Still no special effects, but good gorgues games none the less :)

jayderyu's avatar

jayderyu

Member since 11 Apr, 2012

Twitter
jayderyu has 1 followers

Connect with jayderyu

Trophy Case

  • 12-Year Club
  • Coach One of your tutorials has over 1,000 readers
  • Educator One of your tutorials has over 10,000 readers
  • RTFM Read the fabulous manual
  • Email Verified

Progress

16/44
How to earn trophies