summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Maskell <Jason Maskell>2016-07-25 12:13:14 +0700
committerJason Maskell <Jason Maskell>2016-07-25 12:13:14 +0700
commit9fc34880f8e0674cb61a8dd479c64280d056cca2 (patch)
tree417b6f4b8163b32d96bfec784ff3f4bcb2f0bfb6
parentRenamed Logger.h to GFSDK_Logger.h since it's a shared header. (diff)
downloadwaveworks_archive-9fc34880f8e0674cb61a8dd479c64280d056cca2.tar.xz
waveworks_archive-9fc34880f8e0674cb61a8dd479c64280d056cca2.zip
Had some compilation issues without previously generated code, fixed now.
Disabled OpenGL in the D3D11 build, for now. This is an ugly hack and needs to be fixed. Separated FindFXC into its own finder so that we can fail when it's not found.
-rw-r--r--GenerateProjects.bat2
-rw-r--r--cmake/FindDirectX.cmake7
-rw-r--r--compiler/cmake/NvWaveWorks.cmake35
-rw-r--r--compiler/cmake/sample_d3d11.cmake1
-rw-r--r--compiler/cmake/test_d3d11.cmake1
-rw-r--r--src/Internal.h2
-rw-r--r--src/shader/CalcGradient.fx2
7 files changed, 24 insertions, 26 deletions
diff --git a/GenerateProjects.bat b/GenerateProjects.bat
index ad815e8..cbc826b 100644
--- a/GenerateProjects.bat
+++ b/GenerateProjects.bat
@@ -4,8 +4,6 @@ REM Make sure the various variables that we need are set
IF NOT DEFINED GW_DEPS_ROOT GOTO GW_DEPS_ROOT_UNDEFINED
-IF NOT DEFINED CUDA_BIN_PATH GOTO CUDA_ROOT_UNDEFINED
-
REM Generate projects here
rmdir /s /q compiler\vc12win64-cmake\
diff --git a/cmake/FindDirectX.cmake b/cmake/FindDirectX.cmake
index 33be604..cd28e12 100644
--- a/cmake/FindDirectX.cmake
+++ b/cmake/FindDirectX.cmake
@@ -220,10 +220,5 @@ if (WIN32)
find_combined (D2D1_1 D2D1_1 D2D1)
endif ()
- find_program (DirectX_FXC_EXECUTABLE fxc
- HINTS "${ProgramFiles}/Windows Kits/8.1/bin/x86" "${ProgramFiles}/Windows Kits/8.0/bin/x86" ${DirectX_BIN_SEARCH_PATH}
-
- DOC "Path to fxc.exe executable."
- )
-
+
endif ()
diff --git a/compiler/cmake/NvWaveWorks.cmake b/compiler/cmake/NvWaveWorks.cmake
index 9ac0d91..e8c7b56 100644
--- a/compiler/cmake/NvWaveWorks.cmake
+++ b/compiler/cmake/NvWaveWorks.cmake
@@ -3,6 +3,7 @@
#
FIND_PACKAGE(CUDA REQUIRED)
+FIND_PACKAGE(FXC REQUIRED)
SET(WW_SOURCE_DIR ${PROJECT_SOURCE_DIR}/src)
@@ -132,17 +133,6 @@ SET(DISTRO_INCLUDE_FILES
SET(HLSL_FILES
- ${SHADER_SRC_DIR}/CalcGradient.fx
- ${SHADER_SRC_DIR}/CalcGradient_SM3.fx
- ${SHADER_SRC_DIR}/CalcGradient_SM4.fx
-
- ${SHADER_SRC_DIR}/FoamGeneration.fx
- ${SHADER_SRC_DIR}/FoamGeneration_SM3.fx
- ${SHADER_SRC_DIR}/FoamGeneration_SM4.fx
-
- ${SHADER_SRC_DIR}/Quadtree_SM4_sig.fx
- ${SHADER_SRC_DIR}/Quadtree_SM5_sig.fx
-
${WW_SOURCE_DIR}/FFT_Simulation_DirectCompute_shader.hlsl
)
@@ -151,6 +141,14 @@ SET(CUDA_FILES
)
SET(FX_FILES
+ ${SHADER_SRC_DIR}/CalcGradient.fx
+ ${SHADER_SRC_DIR}/CalcGradient_SM3.fx
+ ${SHADER_SRC_DIR}/CalcGradient_SM4.fx
+
+ ${SHADER_SRC_DIR}/FoamGeneration.fx
+ ${SHADER_SRC_DIR}/FoamGeneration_SM3.fx
+ ${SHADER_SRC_DIR}/FoamGeneration_SM4.fx
+
${SHADER_SRC_DIR}/Quadtree_SM4_sig.fx
${SHADER_SRC_DIR}/Quadtree_SM5_sig.fx
${SHADER_SRC_DIR}/FoamGeneration_SM4.fx
@@ -169,6 +167,10 @@ SET(GENERATED_HLSL_FILES
${GEN_SRC_DIR}/ComputeH0_cs_5_0.h
${GEN_SRC_DIR}/ComputeRows_cs_5_0.h
${GEN_SRC_DIR}/ComputeColumns_cs_5_0.h
+ ${GEN_SRC_DIR}/CalcGradient_ps_4_0.h
+ ${GEN_SRC_DIR}/CalcGradient_vs_4_0.h
+ ${GEN_SRC_DIR}/CalcGradient_ps_3_0.h
+ ${GEN_SRC_DIR}/CalcGradient_vs_3_0.h
)
@@ -181,6 +183,12 @@ INCLUDE(cmake/CompileFXToH.cmake)
# Compile the .fx files to .h files so they can be loaded easily.
ADD_CUSTOM_TARGET(fx ALL)
+CompileFXToH(${SHADER_SRC_DIR}/CalcGradient_SM4.fx ${GEN_SRC_DIR}/CalcGradient_ps_4_0.h fx ${SHADER_SRC_DIR} ${DISTRO_INCLUDE_DIR} ps /Tps_4_0)
+CompileFXToH(${SHADER_SRC_DIR}/CalcGradient_SM4.fx ${GEN_SRC_DIR}/CalcGradient_vs_4_0.h fx ${SHADER_SRC_DIR} ${DISTRO_INCLUDE_DIR} vs /Tvs_4_0)
+
+CompileFXToH(${SHADER_SRC_DIR}/CalcGradient_SM3.fx ${GEN_SRC_DIR}/CalcGradient_ps_3_0.h fx ${SHADER_SRC_DIR} ${DISTRO_INCLUDE_DIR} ps /Tps_3_0)
+CompileFXToH(${SHADER_SRC_DIR}/CalcGradient_SM3.fx ${GEN_SRC_DIR}/CalcGradient_vs_3_0.h fx ${SHADER_SRC_DIR} ${DISTRO_INCLUDE_DIR} vs /Tvs_3_0)
+
CompileFXToH(${SHADER_SRC_DIR}/Quadtree_SM4_sig.fx ${GEN_SRC_DIR}/Quadtree_SM4_sig.h fx ${SHADER_SRC_DIR} ${DISTRO_INCLUDE_DIR} GFSDK_WAVEWORKS_VERTEX_INPUT_Sig /Tvs_4_0)
CompileFXToH(${SHADER_SRC_DIR}/Quadtree_SM5_sig.fx ${GEN_SRC_DIR}/Quadtree_SM5_sig.h fx ${SHADER_SRC_DIR} ${DISTRO_INCLUDE_DIR} GFSDK_WAVEWORKS_VERTEX_INPUT_Sig /Tvs_5_0)
@@ -192,11 +200,6 @@ CompileFXToH(${SHADER_SRC_DIR}/FoamGeneration_SM4.fx ${GEN_SRC_DIR}/FoamGenerati
CompileFXToH(${SHADER_SRC_DIR}/FoamGeneration_SM3.fx ${GEN_SRC_DIR}/FoamGeneration_ps_3_0.h fx ${SHADER_SRC_DIR} ${DISTRO_INCLUDE_DIR} ps /Tps_3_0)
CompileFXToH(${SHADER_SRC_DIR}/FoamGeneration_SM3.fx ${GEN_SRC_DIR}/FoamGeneration_vs_3_0.h fx ${SHADER_SRC_DIR} ${DISTRO_INCLUDE_DIR} vs /Tvs_3_0)
-CompileFXToH(${SHADER_SRC_DIR}/CalcGradient_SM4.fx ${GEN_SRC_DIR}/CalcGradient_ps_4_0.h fx ${SHADER_SRC_DIR} ${GEN_SRC_DIR} ps /Tps_4_0)
-CompileFXToH(${SHADER_SRC_DIR}/CalcGradient_SM4.fx ${GEN_SRC_DIR}/CalcGradient_vs_4_0.h fx ${SHADER_SRC_DIR} ${GEN_SRC_DIR} vs /Tvs_4_0)
-
-CompileFXToH(${SHADER_SRC_DIR}/CalcGradient_SM3.fx ${GEN_SRC_DIR}/CalcGradient_ps_3_0.h fx ${SHADER_SRC_DIR} ${GEN_SRC_DIR} ps /Tps_3_0)
-CompileFXToH(${SHADER_SRC_DIR}/CalcGradient_SM3.fx ${GEN_SRC_DIR}/CalcGradient_vs_3_0.h fx ${SHADER_SRC_DIR} ${GEN_SRC_DIR} vs /Tvs_3_0)
CompileFXToH(${WW_SOURCE_DIR}/FFT_Simulation_DirectCompute_shader.hlsl ${GEN_SRC_DIR}/ComputeH0_cs_5_0.h fx ${SHADER_SRC_DIR} ${GEN_SRC_DIR} ComputeH0 /Tcs_5_0 /Vng_ComputeH0)
CompileFXToH(${WW_SOURCE_DIR}/FFT_Simulation_DirectCompute_shader.hlsl ${GEN_SRC_DIR}/ComputeRows_cs_5_0.h fx ${SHADER_SRC_DIR} ${GEN_SRC_DIR} ComputeRows /Tcs_5_0 /Vng_ComputeRows)
diff --git a/compiler/cmake/sample_d3d11.cmake b/compiler/cmake/sample_d3d11.cmake
index dac6b24..96ab6a4 100644
--- a/compiler/cmake/sample_d3d11.cmake
+++ b/compiler/cmake/sample_d3d11.cmake
@@ -7,6 +7,7 @@ SET(GW_DEPS_ROOT $ENV{GW_DEPS_ROOT})
FIND_PACKAGE(DXUT REQUIRED)
FIND_PACKAGE(FX11 REQUIRED)
FIND_PACKAGE(DirectXTK REQUIRED)
+FIND_PACKAGE(FXC REQUIRED)
SET(SAMP_SOURCE_DIR ${PROJECT_SOURCE_DIR}/sample/d3d11)
SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
diff --git a/compiler/cmake/test_d3d11.cmake b/compiler/cmake/test_d3d11.cmake
index bbc7ca7..a51a126 100644
--- a/compiler/cmake/test_d3d11.cmake
+++ b/compiler/cmake/test_d3d11.cmake
@@ -7,6 +7,7 @@ SET(GW_DEPS_ROOT $ENV{GW_DEPS_ROOT})
FIND_PACKAGE(DXUT REQUIRED)
FIND_PACKAGE(FX11 REQUIRED)
FIND_PACKAGE(DirectXTK REQUIRED)
+FIND_PACKAGE(FXC REQUIRED)
MESSAGE("FX11 ${FX11_SDK_PATH}")
diff --git a/src/Internal.h b/src/Internal.h
index a7a73e7..d8f64ef 100644
--- a/src/Internal.h
+++ b/src/Internal.h
@@ -414,7 +414,7 @@ void handle_hr_error(HRESULT hr, const char_type* file, int line);
#endif
#ifdef TARGET_PLATFORM_WINDOWS
-#define WAVEWORKS_ENABLE_GL WAVEWORKS_ALLOW_GFX
+//#define WAVEWORKS_ENABLE_GL WAVEWORKS_ALLOW_GFX
#else
#ifdef TARGET_PLATFORM_MACOSX
#define WAVEWORKS_ENABLE_GL WAVEWORKS_ALLOW_GFX
diff --git a/src/shader/CalcGradient.fx b/src/shader/CalcGradient.fx
index e66e75f..58ffd3e 100644
--- a/src/shader/CalcGradient.fx
+++ b/src/shader/CalcGradient.fx
@@ -26,7 +26,7 @@
// strictly prohibited.
//
-#include "Common.fxh"
+#include "GFSDK_WaveWorks_Common.fxh"
#ifdef GFSDK_WAVEWORKS_GL
#define DECLARE_ATTR_CONSTANT(Type,Label,Regoff) uniform Type Label