tulamide's Recent Forum Activity

  • Ashley

    Here are the results of the CC performance test:

    picture 1

    picture 2

    picture 3

    About 58000 objects, pretty stable. But without a reference I don't know if this is close enough to the WebGL test to make it an evidence?

    I didn't try FF Nightly or Chrome Canary. I would want to avoid having too many browsers installed, that's why I didn't use Chrome yet. Do you think it would be helpful? I could try to overcome my resistance then <img src="smileys/smiley9.gif" border="0" align="middle">

    I also retried the WebGL test two times. Results were 45666 and 43576. The differences between these tests and the CC test were that the latter was more stable with a result after less than a minute, while the WebGL test had peaks up to 49k and coming to a result took until a few thousand ticks (approx. 3-5 minutes)

  • Ashley

    Now comes the fun: I still have my low end pc, a AMD Athlon II X2 250 (2 cores)@3Ghz, 2GB RAM, WinXP SP3, NVidia 460 GTX Hawk, FF 16.0.1

    In the Canvas 2D test it starts at 15 fps slowly raising while the object number increases (I already know why, you explained it well in another thread), but it reaches 30 fps very rarely. The result however was 375. <img src="smileys/smiley19.gif" border="0" align="middle" />

    But doing the WebGL test was like having a totally different pc. The result was 47882 (!!), which is more than 3x of your result. And my cpu is much less capable than a Core i5 3.3GHz (for example, there is no level 3 cache on the AMD cpu), but my gpu is a lot more capable than the 6570

    My conclusion is that the gpu has a bigger impact on the performance than the cpu (contrary to your description?), at least in this test configuration. Or do I miss something?

  • The running cycle looks like that of a wolf's or something similar. I imagine a boar running at full speed would look quick and goofy due to it's massive body and tiny legs...more like a trot I suppose.I don't think so. While the animation could run a bit faster, a running boar doesn't look goofy. In fact it looks a lot more like -Silver- animated it:

    Subscribe to Construct videos now
  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Thank you very much! I hope you'll like the next ones, too. <img src="smileys/smiley4.gif" border="0" align="middle" />

  • I'll rework the snout and update tomorrow. I still think it's an issue with the end looking like a nose instead of a snout, rather than the length, but if people still think it doesn't look right tomorrow I'll edit the length too.I think it is the combination of the end looking more like a nose plus the eyes. They are more or less round, but to make it look more aggressive you painted the eye more lengthy (man, that is hard to explain without using my main language, hopefully you understand it anyway). When working on the snout, why not reworking the eye area as well, just a test?

    EDIT: um, where is the tail? <img src="smileys/smiley4.gif" border="0" align="middle" />

  • but no such luck, maybe im just stupid.   <img src="smileys/smiley4.gif" border="0" align="middle"> You definitely are not!

    There's so many things that could prevent a desired result. For example, whatever the blur effect is you're using, it might not expect the value range that you use. Or it might be programmed to not be reliably alterable in runtime. There is a lot that might not work.

    I extended my "speed measurement" example. This time the sprite has a "pattern" effect and the left scale of the sprite is changed from 100% to 0% while gaining speed (from 0 to 80 px/s). It uses nothing more than the calculations and rules I explained in this thread.

    http://db.tt/nnzTp9e5

  • Well, yes, you are missing 2 things <img src="smileys/smiley4.gif" border="0" align="middle" />

    1) FormatDecimal is a function that outputs a string, I used it to format the string in the text box. Just omit it.

    2) Sprite('dist') / 20 will be a relative number [0, 1] If the blur shader you're using accepts a strength value in that range, then everything's ok. Else you need to transform the value just like in the first cap, I uploaded here, but for the value range the blur shader expects.

    You are close to a result. Step by step we will get it right. <img src="smileys/smiley2.gif" border="0" align="middle" />

  • As far as I know you can only time the whole sequence, not individual frames.

    The animation player is one of the things, where comfort is missing. It plays all layers that are on top of the hierarchy. Before testing any set or subset, you have to move the frames of those sets to the top and delete all other sets and layers.

  • Would you mind uploading the .cap and the music? I'm interested in this, as MrMiller experienced it exactly the other way round, whereas I never had any issues.

  • Hmm, I just don't know how to explain it other than "by trial and error"

    dist is just a variable, and like all variables it can be of different values. It may be at 2 or at 10 or at 20 and changing a lot throughout the game. You'd first run the game and have a look at what situation you want the blur to be most prominent. With the events implemented, you could constantly fill a text box with the current speed value. This way you see the current speed at the moment where you want the blur to be at full strength. This value is your max-speed-value.

    Example: You experiment with your game and see that the sprite has a current speed of 20 at the moment where you want the blur to be at full strength. And you decide the minimum speed to be 0.

    Then the calculation would be

    dist / 20

    and that will produce a relative number in the range [0, 1] for 0 <= dist <= 20

  • Anyone have any thoughts on GIMP for animation?I'm not an animator, but I work a lot with GIMP. Just like Photoshop it is a workhorse for everything related to graphics.

    The layer system offers layers, sets and subsets, wich helps organizing the animations. You can do onion skinning manually by setting the transparancies of the layers. There's an animation player that plays layers as animation, complete with definable fps and playing speed.

    What you don't get is a timeline. But for sprite animations to be used in Construct you'll barely need it.

    I think it is an alternative if you can't afford a professional animation suite. You get almost the same functionality, it is more or less the comfort that is missing. Without this comfort it takes a little bit more time to get the same results.

  • So, the real question isn't how to set two values in relation, but how to determine speed?

    I already answered that in a thread somewhere here on the forums, but I'll try to summarize it (although I can't guarantee that it will be the simplest description. I tend to say more than would be needed^^)

    Speed is "distance over time". To measure speed, you can either set a fixed distance and measure the time passed, or set a fixed time and measure the distance passed.

    When you move your sprite with your own events you don't need to measure anything - you already know the speed. For example, if moving a sprite by

    Sprite.X = Sprite.X + 10 * TimeDelta

    then the speed is 10 px/s at any time. It almost looks like a rule: n * TimeDelta = n px/s

    You may also have acceleration/decceleration, but let's not make it too complicated. I just mention that these dynamics are a part of n. Something like

    (10 + 20 * TimeDelta) * TimeDelta

    still can be reduced to

    n = (10 + 20 * TimeDelta)

    and therefore the rule still applies.

    If you don't have access to the values, you need to measure the speed. The simplest way is to just measure the distance moved per tick. Create three PVs (lastX, lastY, dist), set the first two to the position of the sprite at start of layout and then

    + Always

    -> Set dist to distance(lastX, lastY, Sprite.X, Sprite.Y)

    -> Set lastX to Sprite.X

    -> Set lastY to Sprite.Y

    You now have a speed value at any time. dist is the speed, expressed as px/tick. You can even extrapolate that to px/s by using TimeDelta:

    -> Set Text to FormatDecimal((Sprite('dist') / TimeDelta), 1) & " px/s"

    The rest is up to you. You have to decide at which speed value the blur has to be at full strength, either by calculating or by trial and error.

    EDIT: The simple example above as a .cap -> http://db.tt/enNzNAQr

tulamide's avatar

tulamide

Member since 11 Sep, 2009

Twitter
tulamide has 3 followers

Trophy Case

  • 15-Year Club
  • Coach One of your tutorials has over 1,000 readers
  • Email Verified

Progress

17/44
How to earn trophies