Jump to content

  • Log In with Google      Sign In   
  • Create Account

Interested in a FREE copy of HTML5 game maker Construct 2?

We'll be giving away three Personal Edition licences in next Tuesday's GDNet Direct email newsletter!

Sign up from the right-hand sidebar on our homepage and read Tuesday's newsletter for details!


Mechanism of collision in games


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
4 replies to this topic

#1 anders211   Members   -  Reputation: 202

Like
0Likes
Like

Posted 01 January 2013 - 04:34 PM

Let's assume that I am creating the basketball game. What is the better way.

1.) creating the separate man without the ball in blender (animate his movements like jump, throw, tricks without the ball)
In this scenario I have to fit the mechanism of ball with animating man in C++ code (so I have separate ball animation and man animation, as far as ball is concerned it will be just one mesh of ball and rolling will be implemented in C++ code)

2.) creating the man with ball animation inside one X-file. This seems to be better solution, because I don't have to fit the mechanism of ball with animating man in C++ code, because I have them both animated in the same animation (in the same X-file). However now the question is what kind of mechanism of collision may I use (like tackle the ball from another player). It seems that the best algorithm would be:

a.) detect the collision.
b.) check the time in AnimationController in which the collision occur.
c.) let's the AnimationController to animate the object till the specific time in which I might change animation set.
d.) if my animation reaches the specific time then I change the animation set (which in this cases would be animation of loosing the ball). And in this way from user point of view the animation would be smooth.

So if I use the solution 1 I have to implement more C++ code responsible for connecting movements of ball and player.
If I use the solution 2 I have to create more animations in blender, I will have only some discreet points in which the player might loose the ball.

Or maybe I should create something in the middle between 1 and 2, so in this case animation of throw, running etc. with the ball, but for example if there is a collision detected then change the animation of the man with ball into separate man and ball animation and use C++ code into implementing loosing of the ball (so some physics in C++ code).

Edited by anders211, 01 January 2013 - 04:37 PM.


Sponsor:

#2 ShadowValence   Members   -  Reputation: 380

Like
0Likes
Like

Posted 01 January 2013 - 05:36 PM

It seems to me that the logical separation of man and balls in your first suggestion would be more correct. The ball could then be animated using some faux physics.
Besides, the methods, times and locations of a ball "steal" would be far to numerous to efficiently pre-key out in animations, would they not? And then, what happens when the ball is shot? does it then signal the hoop model to include the ball? Let alone the different possible trajectories of a shot (regardless of success calculations).
I vote to keep them separate - that's how it is in real life...

#3 Krohm   Crossbones+   -  Reputation: 3167

Like
0Likes
Like

Posted 02 January 2013 - 03:02 AM

Seconded, the ball must really be in its own resource file.



#4 NewDisplayName   Members   -  Reputation: 359

Like
0Likes
Like

Posted 02 January 2013 - 06:16 AM

Even though, logical choice is to keep the man and ball separate and work around their collision detection, there are several options to make the gameplay interesting around collision scenarios.

One I can think of right away is to rather, keep the gameplay interactive till a certain level of collision is detected, and depending on whether it's a steal or block or hoop or dunk, you can introduce cutscenes. Many games are using this nowadays, and not only does it save some code complexity, it makes things more fun.



#5 ShadowValence   Members   -  Reputation: 380

Like
0Likes
Like

Posted 02 January 2013 - 11:11 AM

True that. Reminds me of an old NINTENDO gamer i used to play. Add soon as you shot, it split to a scene of the ball & the hoop. Of course, the players were in a sorry of "paused" state until the scene was over (i.e. No player activity until the ball has scored or rebounded). But it would make for an interesting game style.

I hadn't considered that as an option. I stand amended. :D




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS