TheInstance's Recent Forum Activity

  • Maybe I just don't understand what you're trying to get at. Do you want there to be multiple ticks per frame?

    That would implie that i drop V-synced. And that is a no-no-situation.

    [quote:1vwdpoaf]What exactly is so inaccurate about 60 ticks per second unless you have incredibly fast moving objects?

    I would say: try it yourself. A few behavior based bouncing balls and try to catch EVERY collission. Its not the speed of the balls thats the problem. Its the event of the collission thats very short. When i give u a tick on the shoulder, its not the speed of my arm that needs dedection. Its the very small time frame in wich i touch you that needs dedection. A bounce happens in 1/400 of a second.

    Look at this:

    I run it at 60 frames/second. I can optimize the dedection loops with my Cpu and Graphics card. Now build it so it auto-adjust for other CPU's and faster graphic cards.

    Is the CPU faster, it can handle a bigger loop.

    Is the Graphics card faster, it dont have to handle a bigger loop.

  • ....

  • checking for collisions 10000 times per frame isn't necessary

    You are also using a loop. Your loop is checking max 156 times / frame (by 60 fr a sec).

    With a TimeDelta of 16 miliseconds you check in that timeframe (TimeDelta is the time between 2 ticks) a full 7 miliseconds for collission. Meaning, there are still 9 miliseconds left without any collision checking. And that is to much for any bouncing events.

    Here is a Cap (test2) illustrating how your solution fails.

    Also. There is no break into your loop. Your solution will restrict the frames/second to 142. Faster is impossible because the refresh rate will wait for completion of your tick. Your tick will exceed the TimeDelta.

    Further, that is not a collission dedection. You check for overlaps. In pixel based games de moving object will be randomly 1 pixel off. Especialy on the left side. Your objects will go stuck.

    Ty 4 the help though.

  • Very sorry.

    Used in this

  • The file is not online. But, based on the comments poeple that gave you, i think your example was pixel-driven. When pixel driven you always have 100% control, and indeed objects do not move if you dont move them. Behaviours do move objects in the huge time between the end of a tick and a frame refresh.

  • Lets assume the game runs V-synced with a graphics card that's refresching at a 60 F/sec rate.

    Every tick wil then take place every 1/60 of a second. Wich is to slow for accurate collission detection. A normal CPU is able to run like 1000 ticks every frame refresch. Or that would be every 1/60.0000 of a second.

    I could use an in-tick loop to improve the accuracy. In the download there is a Cap that makes an attempt to do this.

    I know that the basics are there. But its not working as i expect it would work.

    Would someone be so nice to direct me to a better way to accomplish this.

    Thx.

  • Upload for this thread in Help/Tech

  • Hey Deadeye. Nice to see 'the old rats' are still present. Ive not been here a long while. My english still sucks, bare with me plz. : )

    Interesting

    I'm a big pinball fan, so I was excited to see this. I had to make a bunch of changes to get the .cap to run, though... changing the screen size, changing the layout scrolling, zooming the display out, turning off motion blur, relinking the sounds... heh

    This i knew. That it would be a problem. Physics have to run full screen. Else they do weird things. I made it 'resolution ready' for my laptop. How to make it 'universal' i did not know. No experience with that. I figured you guys would addapt it to your own computer.

    [quote:jibqvpk3]the flippers often don't knock the ball in the correct direction, ...

    They are pure Physics driven. No additional math. Its not that bad to be those simple 3 events. There are 2 major things that cause this.

    1/ Its hard to draw a perfect collision mask. I did't put much afford in this.

    2/ the ball has an 'ellips' collison dedection methode. And that is not perfect round. Its better to draw a perfect round collission mask. But i was lazy. An everyone will use the ellips eh ? : )

    Besides that, i am VERY suprised about the custom collision masks working this well. Its such a great addition to construct. Its very well done.

    The collision with the plunger and the ball is kind of wonky too... you get the collision sound playing over and over again.[/code:jibqvpk3]
    
    The old pain. Collision dedection by events & behaviors are still no good marriage. In the .cap you find 2 nice 'new' workarrounds. Take a look : ).
    
    The real solution would be something else though. Collission dedection conditions in the behavior it self. The behavior should stack all collision (made in one tick, or as many ticks as given in a property) and the objects it collides with in a list. This way you can read them out with an event loop. And purge them every tick (or not) with an action. That way you could also read accurate collisions out like only every 10 ticks.
    
    [quote:jibqvpk3]But overall it was pretty enjoyable, I played it for quite a while. 
    
    Thank you sir ! Its far from perfect. But its a start. Especialy the negative spring force is great and easy to use.
    
    In the past i had the feeling that Ashley never read me. When i see the 'pick system' now i know he did. Its just perfect now and great to work with. I hope he considers about stacking collisons by behaviors too.
    
    Another nice thing (for me) would be an action that halts an object at given postion or angle.
    
    Greetings.
    
    j0h
  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I never intented this to be 'score driven'. I just played with the physics. Here is the result:

    http://www.mediafire.com/file/nnmjgnyjijo/PinB.zip

    While working with the latest version, i have to say that the 'pick system' is awwsome now.

  • : )

  • What you look for is a Recursion allgoritme. (with min/max)

    Here is a good start for you: http://www.devshed.com/c/a/Practices/So ... Recursion/

    Now i have to say that i tried recursion in construct in de form of a 4connect AI. I found myself to dumb to complete it. And i abandonded it.

    I found one thing though, in my attemped. The way you can add variables to the function object, loop trough them, clear them easy, call them easy is a BIG help in recursion solutions. If i only had the right background in programming, i woulda finished it.

    Ashley, you have the right background and the backbone. I would love to see a recursion tech demo. Maybe i would be able to understand an use it.

    j0h

TheInstance's avatar

TheInstance

Member since 5 May, 2008

None one is following TheInstance yet!

Trophy Case

  • 16-Year Club

Progress

16/44
How to earn trophies