Updated OpenCL (AMD/NVIDIA) and DX11 DirectCompute Visual Studio project files
CMake: minor fixes for project file distribution Make resource loading more robust for DX11ClothDemo, and remove buttons that crash the demo
This commit is contained in:
@@ -17,6 +17,7 @@ OPTION(USE_MSVC_RUNTIME_LIBRARY_DLL "Use MSVC Runtime Library DLL (/MD or /MDd)"
|
||||
OPTION(USE_MSVC_INCREMENTAL_LINKING "Use MSVC Incremental Linking" OFF)
|
||||
|
||||
|
||||
|
||||
IF(MSVC)
|
||||
IF (NOT USE_MSVC_INCREMENTAL_LINKING)
|
||||
#MESSAGE("MSVC_INCREMENTAL_DEFAULT"+${MSVC_INCREMENTAL_DEFAULT})
|
||||
@@ -109,10 +110,13 @@ SET(BulletClothExample_HDRS
|
||||
INCLUDE_DIRECTORIES(
|
||||
${DX11_INCLUDE_PATH}
|
||||
${BULLET_PHYSICS_SOURCE_DIR}/src
|
||||
"DXUT/Core" "DXUT/Optional"
|
||||
"DXUT/Core"
|
||||
"DXUT/Optional"
|
||||
${VECTOR_MATH_INCLUDE}
|
||||
)
|
||||
LINK_DIRECTORIES(${DX11_LIB_PATH})
|
||||
LINK_DIRECTORIES(
|
||||
${DX11_LIB_PATH}
|
||||
)
|
||||
|
||||
ADD_DEFINITIONS(-DUNICODE)
|
||||
ADD_DEFINITIONS(-D_UNICODE)
|
||||
@@ -134,10 +138,16 @@ TARGET_LINK_LIBRARIES(AppDX11ClothDemo
|
||||
BulletCollision
|
||||
LinearMath
|
||||
BulletSoftBody
|
||||
BulletSoftBodySolvers_CPU
|
||||
BulletSoftBodySolvers_DX11
|
||||
)
|
||||
|
||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
SET_TARGET_PROPERTIES(AppDX11ClothDemo PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||
SET_TARGET_PROPERTIES(AppDX11ClothDemo PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||
SET_TARGET_PROPERTIES(AppDX11ClothDemo PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||
ENDIF()
|
||||
|
||||
|
||||
IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
|
||||
ADD_CUSTOM_COMMAND(
|
||||
TARGET AppDX11ClothDemo
|
||||
|
||||
@@ -380,6 +380,17 @@ bool DXUTFindMediaSearchTypicalDirs( __in_ecount(cchSearch) WCHAR* strSearchPath
|
||||
if( GetFileAttributes( strSearchPath ) != 0xFFFFFFFF )
|
||||
return true;
|
||||
|
||||
// Search in "%EXE_DIR%\Demos\DX11ClothDemo\Media\". This matches the Bullet SDK layout
|
||||
swprintf_s( strSearchPath, cchSearch, L"%s\\Demos\\DX11ClothDemo\\Media\\%s", strExePath, strLeaf );
|
||||
if( GetFileAttributes( strSearchPath ) != 0xFFFFFFFF )
|
||||
return true;
|
||||
|
||||
// Search in "%EXE_DIR%\Demos\DX11ClothDemo\". This matches the Bullet SDK layout
|
||||
swprintf_s( strSearchPath, cchSearch, L"%s\\Demos\\DX11ClothDemo\\%s", strExePath, strLeaf );
|
||||
if( GetFileAttributes( strSearchPath ) != 0xFFFFFFFF )
|
||||
return true;
|
||||
|
||||
|
||||
// Search in media search dir
|
||||
WCHAR* s_strSearchPath = DXUTMediaSearchPath();
|
||||
if( s_strSearchPath[0] != 0 )
|
||||
|
||||
@@ -694,10 +694,10 @@ void InitApp()
|
||||
g_SampleUI.Init( &g_DialogResourceManager );
|
||||
|
||||
g_HUD.SetCallback( OnGUIEvent ); int iY = 10;
|
||||
g_HUD.AddButton( IDC_TOGGLEFULLSCREEN, L"Toggle full screen", 0, iY, 170, 23 );
|
||||
|
||||
g_HUD.AddButton( IDC_TOGGLEREF, L"Toggle REF (F3)", 0, iY += 26, 170, 23, VK_F3 );
|
||||
g_HUD.AddButton( IDC_CHANGEDEVICE, L"Change device (F2)", 0, iY += 26, 170, 23, VK_F2 );
|
||||
//restart is broken, @todo: fix
|
||||
// g_HUD.AddButton( IDC_TOGGLEFULLSCREEN, L"Toggle full screen", 0, iY, 170, 23 );
|
||||
// g_HUD.AddButton( IDC_TOGGLEREF, L"Toggle REF (F3)", 0, iY += 26, 170, 23, VK_F3 );
|
||||
// g_HUD.AddButton( IDC_CHANGEDEVICE, L"Change device (F2)", 0, iY += 26, 170, 23, VK_F2 );
|
||||
g_HUD.AddButton( IDC_PAUSE, L"Pause", 0, iY += 26, 170, 23 );
|
||||
g_HUD.AddButton( IDC_WIREFRAME, L"Wire frame", 0, iY += 26, 170, 23 );
|
||||
|
||||
@@ -1020,8 +1020,8 @@ HRESULT CALLBACK OnD3D11CreateDevice( ID3D11Device* pd3dDevice, const DXGI_SURFA
|
||||
// Setup the camera's view parameters
|
||||
|
||||
|
||||
D3DXVECTOR3 vecEye( 0.0f, 0.0f, -100.0f );
|
||||
D3DXVECTOR3 vecAt ( 0.0f, 0.0f, -0.0f );
|
||||
D3DXVECTOR3 vecEye( 30.0f, -10.0f, -80.0f );
|
||||
D3DXVECTOR3 vecAt ( 0.0f, 20.0f, -0.0f );
|
||||
|
||||
|
||||
g_Camera.SetViewParams( &vecEye, &vecAt );
|
||||
@@ -1040,12 +1040,20 @@ HRESULT CALLBACK OnD3D11CreateDevice( ID3D11Device* pd3dDevice, const DXGI_SURFA
|
||||
|
||||
|
||||
|
||||
std::wstring flagTexs[] = {
|
||||
std::wstring flagTexsName[] = {
|
||||
L"atiFlag.bmp",
|
||||
L"amdFlag.bmp",
|
||||
};
|
||||
int numFlagTexs = 2;
|
||||
|
||||
|
||||
|
||||
WCHAR flagTexs[2][MAX_PATH];
|
||||
|
||||
HRESULT res = DXUTFindDXSDKMediaFileCch(flagTexs[0],MAX_PATH, flagTexsName[0].c_str());
|
||||
res = DXUTFindDXSDKMediaFileCch(flagTexs[1],MAX_PATH, flagTexsName[1].c_str());
|
||||
|
||||
|
||||
for( int flagIndex = 0; flagIndex < numFlags; ++flagIndex )
|
||||
{
|
||||
cloths[flagIndex].create_texture(flagTexs[flagIndex % numFlagTexs]);
|
||||
|
||||
@@ -80,3 +80,8 @@ IF (UNIX)
|
||||
TARGET_LINK_LIBRARIES(AppOpenCLClothDemo_AMD pthread)
|
||||
ENDIF(UNIX)
|
||||
|
||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_AMD PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_AMD PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_AMD PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
@@ -85,3 +85,9 @@ IF (UNIX)
|
||||
TARGET_LINK_LIBRARIES(AppOpenCLClothDemo_Mini pthread)
|
||||
ENDIF(UNIX)
|
||||
|
||||
|
||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_Mini PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_Mini PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_Mini PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
@@ -82,3 +82,8 @@ IF (UNIX)
|
||||
TARGET_LINK_LIBRARIES(AppOpenCLClothDemo_NVidia pthread)
|
||||
ENDIF(UNIX)
|
||||
|
||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_NVidia PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_NVidia PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_NVidia PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
@@ -81,3 +81,8 @@ IF (UNIX)
|
||||
TARGET_LINK_LIBRARIES(AppParticlesOCL_AMD pthread)
|
||||
ENDIF(UNIX)
|
||||
|
||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
SET_TARGET_PROPERTIES(AppParticlesOCL_AMD PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||
SET_TARGET_PROPERTIES(AppParticlesOCL_AMD PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||
SET_TARGET_PROPERTIES(AppParticlesOCL_AMD PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
@@ -89,3 +89,8 @@ IF (UNIX)
|
||||
TARGET_LINK_LIBRARIES(AppParticlesOCL_Mini pthread)
|
||||
ENDIF(UNIX)
|
||||
|
||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
SET_TARGET_PROPERTIES(AppParticlesOCL_Mini PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||
SET_TARGET_PROPERTIES(AppParticlesOCL_Mini PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||
SET_TARGET_PROPERTIES(AppParticlesOCL_Mini PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
@@ -84,3 +84,9 @@ IF (UNIX)
|
||||
ENDIF(UNIX)
|
||||
|
||||
ENDIF(CMAK_GLEW_LIBRARY)
|
||||
|
||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
SET_TARGET_PROPERTIES(AppParticlesOCL_Nv PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||
SET_TARGET_PROPERTIES(AppParticlesOCL_Nv PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||
SET_TARGET_PROPERTIES(AppParticlesOCL_Nv PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
@@ -26,4 +26,9 @@ IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different ${BULLET_PHYSICS_SOURCE_DIR}/Demos/VectorAdd_OpenCL/VectorAddKernels.cl ${CMAKE_CURRENT_BINARY_DIR}
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
|
||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
SET_TARGET_PROPERTIES(AppVectorAdd_AMD PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||
SET_TARGET_PROPERTIES(AppVectorAdd_AMD PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||
SET_TARGET_PROPERTIES(AppVectorAdd_AMD PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
@@ -30,4 +30,9 @@ IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different ${BULLET_PHYSICS_SOURCE_DIR}/Demos/VectorAdd_OpenCL/VectorAddKernels.cl ${CMAKE_CURRENT_BINARY_DIR}
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
|
||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
SET_TARGET_PROPERTIES(AppVectorAdd_Mini PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||
SET_TARGET_PROPERTIES(AppVectorAdd_Mini PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||
SET_TARGET_PROPERTIES(AppVectorAdd_Mini PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
@@ -21,3 +21,8 @@ IF (UNIX)
|
||||
TARGET_LINK_LIBRARIES(AppVectorAdd_NVidia pthread)
|
||||
ENDIF(UNIX)
|
||||
|
||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
SET_TARGET_PROPERTIES(AppVectorAdd_NVidia PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||
SET_TARGET_PROPERTIES(AppVectorAdd_NVidia PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||
SET_TARGET_PROPERTIES(AppVectorAdd_NVidia PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
Reference in New Issue
Block a user