Updated INSTALL description. This info should go also in Bullet User Manual and Online.

Thanks to ejtttje http://code.google.com/p/bullet/issues/detail?id=248

Use GJK for GImpact triangle test
See http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=3687

More improvements in GJK degeneracy handling (using second EPA/GJK run)
Issue/discussion here http://code.google.com/p/bullet/issues/detail?id=250

CMake improvements
Thanks to ejtttje http://code.google.com/p/bullet/issues/detail?id=247

Added basic camera/wall detection for character demo
This commit is contained in:
erwin.coumans
2009-07-14 02:10:03 +00:00
parent c4ad354ac0
commit 60c107b7a7
20 changed files with 348 additions and 173 deletions

View File

@@ -67,7 +67,9 @@ class DemoApplication
int m_mouseOldX;
int m_mouseOldY;
int m_mouseButtons;
public:
int m_modifierKeys;
protected:
float m_scaleBottom;
float m_scaleFactor;

View File

@@ -25,9 +25,9 @@ subject to the following restrictions:
#include <OpenGL/glu.h>
#include <GLUT/glut.h>
#else
#ifndef _WINDOWS
#include <GL/glut.h>
#else
#ifndef _WINDOWS
#include <windows.h>
#include <GL/gl.h>
#include <GL/glu.h>
@@ -49,6 +49,8 @@ subject to the following restrictions:
#define BT_KEY_PAGEDOWN VK_NEXT
#define BT_KEY_END VK_END
#define BT_KEY_HOME VK_HOME
#define BT_ACTIVE_ALT VK_LMENU
#else

View File

@@ -32,7 +32,6 @@ DemoApplication* gDemoApplication = 0;
DemoApplication* createDemo();
// Function Declarations
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
@@ -86,7 +85,8 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
gDemoApplication->myinit();
//gDemoApplication->reshape(1024, 768);
gDemoApplication->initPhysics();
gDemoApplication->getDynamicsWorld()->setDebugDrawer(&debugDraw);
if (gDemoApplication->getDynamicsWorld())
gDemoApplication->getDynamicsWorld()->setDebugDrawer(&debugDraw);
// program main loop
@@ -146,10 +146,35 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_SYSKEYDOWN:
{
if (lParam & 1<<29)
{
gDemoApplication->m_modifierKeys = VK_LMENU;
}
break;
}
case WM_SYSKEYUP:
{
if (lParam & 1<<29)
{
gDemoApplication->m_modifierKeys = VK_LMENU;
} else
{
gDemoApplication->m_modifierKeys = 0;
}
break;
}
case WM_SIZE: // Size Action Has Taken Place
switch (wParam) // Evaluate Size Action
{
case SIZE_MINIMIZED: // Was Window Minimized?

View File

@@ -41,6 +41,12 @@ void Win32DemoApplication::clientResetScene()
}
#endif
void Win32DemoApplication::updateModifierKeys()
{
//not yet
}
void Win32DemoApplication::specialKeyboard(int key, int x, int y)
{

View File

@@ -32,6 +32,7 @@ public:
void specialKeyboard(int key, int x, int y);
virtual void updateModifierKeys();
};