Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 14 Feb 2012
Offline Last Active Nov 20 2014 04:06 PM

#5186528 How to make collision mesh for animated not rigid human mesh?

Posted by anders211 on 12 October 2014 - 01:21 PM

I have skeletonal human mesh. It consists of tens of bones. Now how I know that collision object like for example ball hits the shoulder or knee of human mesh?
My algorithm:
1.) Make based on bone vertex influences bounding volumes (spheres,boxes,cyllinder etc). So after this step You have your animated human mesh approximated by tens of separate plain bounding volumes. The amount of bounding volumes is equal to the number of bones.
In my case I take into account only vertex weights > 0.5 and the reaults are as below.
Thanks to this approximated model I can detect what part of body the ball hits.
2.) However the last sentence is not true. I can determine if ball hits head or knee or shoulder, however I am not able to determine if ball hits mouths, left/right ear, forehead etc
So what to do in order to have such functionality? And here I stuct! My only one idea:
    a.) In 3d tool (blender in my case) bounds left ear with the aid of for example sphere mesh. Save mesh to file.
    b.) In 3d tool bounds right ear with the aid of for example sphere mesh. Save mesh to file.
    z.) In 3d tool bounds another interesting small part of body and save it to file.
Now read to the C++ application each part of body mesh file and execute for each D3DXComputeBoundingBox/Sphere or make Your own implementation for computing another volumes like cyllinder.
Now in order to detect if bal hits left ear You firstly iterate through bounding volumes (transformed by final matrices) from step 1. The results is that ball hit bounding volume made from head bone. Then You iterate through all small pieces of body in the head area and in this way You find ear sphere from step 2.
Is my algorithm OK? Or making collision mesh is done in another way? I have none experience in it, this is just my thoughts how to detect ball collision with human mesh.

#5106274 The death of D3D9

Posted by anders211 on 01 November 2013 - 10:47 AM

Is directX 9 supported in Vista/Windows7? Probably people use directX 9 because there are much more documenation and it is easier for developing purposes. Moreover for many people graphic from directx9 is OK and when they create game they don't want to have better one as they can achieve in directx 10, 11. I have been developing game since 2 years in directx 9. I chose it from the reasons above. However I don't use fixed function pipeline so maybe adaptation to directx10/11 wouldn't be hard for me, however I don't care of it now, I will take care if for example when microsoft release directx package in which backward support is not available, so if somebody install this package he cannot run games which are created on directx lower than 10.

#5068100 why pixel shader does not work

Posted by anders211 on 07 June 2013 - 04:06 PM

I reccomend to resign with PixelShader because life is too short to be nervous on such stupid things. Please use fixed function pipeline and You will be more happier. In msdn microsoft tutorials there are a lot of bugs.

#4998164 Difference between callback function and non-callback one

Posted by anders211 on 06 November 2012 - 01:24 PM

typedef VOID (CALLBACK* PCALLBACKEVENT)(u32 nEvent, u32 controlID, Control* pControl, void* userContext);

In DXUTility library I see that callback functions are declared but this is nonsense. In fact I may skip word 'callback' and the effect will be the same