Skip to content
This repository was archived by the owner on Sep 24, 2022. It is now read-only.

Commit f280fdd

Browse files
committed
refactor
1 parent 50c35d7 commit f280fdd

5 files changed

Lines changed: 127 additions & 4 deletions

File tree

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,6 @@
77
[submodule "dependencies/imgui"]
88
path = dependencies/imgui
99
url = https://github.com/ocornut/imgui
10+
[submodule "dependencies/Semper"]
11+
path = dependencies/Semper
12+
url = https://github.com/hoffstadt/Semper

dependencies/Semper

Submodule Semper added at a195fa3

src/build.bat

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
@REM --------------------------Common Include Paths----------------------------
2525
@set S_INCLUDE_DIRECTORIES=/I. /I.. /I "%WindowsSdkDir%Include\um" /I "%WindowsSdkDir%Include\shared" /I "%DXSDK_DIR%Include"
2626
@set S_INCLUDE_DIRECTORIES=/I../dependencies/imgui /I../dependencies/imgui/backends %S_INCLUDE_DIRECTORIES%
27-
@set S_INCLUDE_DIRECTORIES=/I../dependencies/stb %S_INCLUDE_DIRECTORIES%
27+
@set S_INCLUDE_DIRECTORIES=/I../dependencies/stb /I../dependencies/Semper %S_INCLUDE_DIRECTORIES%
2828

2929
@REM --------------------------Common Library Paths----------------------------
3030
@set S_LINK_DIRECTORIES=/LIBPATH:%S_OUT_DIR% /LIBPATH:"%DXSDK_DIR%/Lib/x86"
@@ -55,7 +55,7 @@
5555

5656
@REM ---------------------Run Semper build script------------------------------
5757
@pushd %dir%
58-
@if NOT EXIST %S_OUT_DIR%\%S_OUT_BIN% @call ..\dependencies\Semper\semper_build.bat -c Debug
58+
@if NOT EXIST %S_OUT_DIR%\%S_OUT_BIN% @call ../src/semper_build.bat -c Debug
5959
@popd
6060

6161
@REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -76,6 +76,6 @@
7676
@REM ---------------------Run Semper build script------------------------------
7777
@pushd %dir%
7878
@if EXIST %S_OUT_DIR%\%S_OUT_BIN% del %S_OUT_DIR%\%S_OUT_BIN%
79-
@call ..\dependencies\Semper\semper_build.bat -c Debug
79+
@call ../src/semper_build.bat -c Debug
8080
@popd
8181

src/main.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ int main()
6767
modelIDCache[0] = modelIndex;
6868

6969
window = initialize_viewport(1850, 900);
70-
mvGraphics graphics = setup_graphics(*window, "../sandbox_d3d11/shaders/");
70+
mvGraphics graphics = setup_graphics(*window, "../src/shaders/");
7171

7272
// setup imgui
7373
ImGui::CreateContext();

src/semper_build.bat

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
@if [%1]==[] @goto usage
2+
@goto Run
3+
4+
:Usage
5+
echo.%~nx0 [flags and arguments]
6+
echo.
7+
echo.Available flags:
8+
echo. -h Display this help message
9+
echo.
10+
echo.Available arguments:
11+
echo. -c Release ^| Debug ^|
12+
echo. Set the configuration (default: Debug)
13+
exit /b 127
14+
15+
:Run
16+
@set S_COMPILER_FLAGS_FINAL=%S_COMPILER_FLAGS%
17+
@set S_LINKER_FLAGS_FINAL=%S_LINKER_FLAGS%
18+
@set S_LINK_LIBRARIES_FINAL=%S_LINK_LIBRARIES%
19+
@set S_INCLUDE_DIRECTORIES_FINAL=%S_INCLUDE_DIRECTORIES%
20+
@set S_LINK_DIRECTORIES_FINAL=%S_LINK_DIRECTORIES%
21+
@set S_DEFINES_FINAL=%S_DEFINES%
22+
@set S_FINAL_RESULT=Pending.
23+
@set S_CONFIG_INFO=Debug
24+
25+
:CheckOpts
26+
@if "%~1"=="-h" @goto Usage
27+
@if "%~1"=="-i" @goto PrintInfo
28+
@if "%~1"=="-c" (@set conf=%2) & @shift & @shift & @goto CheckOpts
29+
30+
@if "%conf%" EQU "Release" (
31+
@set S_COMPILER_FLAGS_FINAL=%S_COMPILER_FLAGS_FINAL% %S_RELEASE_COMPILER_FLAGS%
32+
@set S_LINKER_FLAGS_FINAL=%S_LINKER_FLAGS_FINAL% %S_RELEASE_LINKER_FLAGS%
33+
@set S_LINK_LIBRARIES_FINAL=%S_LINK_LIBRARIES_FINAL% %S_RELEASE_LINK_LIBARIES%
34+
@set S_DEFINES_FINAL=%S_DEFINES_FINAL% %S_RELEASE_DEFINES%
35+
@set S_LINK_DIRECTORIES_FINAL=%S_LINK_DIRECTORIES_FINAL% %S_RELEASE_LINK_DIRECTORIES%
36+
@set S_FINAL_RESULT=Pending.
37+
@set S_CONFIG_INFO=Release
38+
)
39+
@if "%conf%" EQU "Debug" (
40+
@set S_COMPILER_FLAGS_FINAL=%S_COMPILER_FLAGS_FINAL% %S_DEBUG_COMPILER_FLAGS%
41+
@set S_LINKER_FLAGS_FINAL=%S_LINKER_FLAGS_FINAL% %S_DEBUG_LINKER_FLAGS%
42+
@set S_LINK_LIBRARIES_FINAL=%S_LINK_LIBRARIES_FINAL% %S_DEBUG_LINK_LIBARIES%
43+
@set S_DEFINES_FINAL=%S_DEFINES_FINAL% %S_DEBUG_DEFINES%
44+
@set S_LINK_DIRECTORIES_FINAL=%S_LINK_DIRECTORIES_FINAL% %S_DEBUG_LINK_DIRECTORIES%
45+
@set S_FINAL_RESULT=Pending.
46+
@set S_CONFIG_INFO=Debug
47+
)
48+
49+
@REM Final flag consolidation (don't touch)
50+
@REM --------------------------------------------------------------------------
51+
@set CommonCompilerFlags=%S_COMPILER_FLAGS_FINAL% %S_DEFINES_FINAL%
52+
@set CommonLinkerFlags=%S_LINKER_FLAGS_FINAL% %S_LINK_DIRECTORIES_FINAL% %S_LINK_LIBRARIES_FINAL%
53+
54+
@if EXIST %S_OUT_DIR%\%S_OUT_BIN% del %S_OUT_DIR%\%S_OUT_BIN%
55+
@if NOT EXIST %S_OUT_DIR% mkdir %S_OUT_DIR%
56+
57+
@REM --------------------------------------------------------------------------
58+
@REM Build
59+
@REM --------------------------------------------------------------------------
60+
61+
@if %S_STATIC_LIB% EQU 0 (
62+
@echo Compiling and linking...
63+
cl %S_INCLUDE_DIRECTORIES% %CommonCompilerFlags% /permissive- %S_SOURCES% /Fe%S_OUT_DIR%/%S_OUT_BIN% /Fo%S_OUT_DIR%/ /link %CommonLinkerFlags%
64+
)
65+
66+
@if %S_STATIC_LIB% EQU 1 (
67+
@echo Compiling...
68+
cl /c %S_INCLUDE_DIRECTORIES% %CommonCompilerFlags% /permissive- %S_SOURCES% /Fe%S_OUT_DIR%/%S_OUT_BIN% /Fo%S_OUT_DIR%/
69+
)
70+
71+
@if %ERRORLEVEL% EQU 0 ( goto Linking)
72+
73+
@if %ERRORLEVEL% NEQ 0 (
74+
echo Compilation Failed with error code: %ERRORLEVEL%
75+
@set S_FINAL_RESULT=Failed.
76+
goto Cleanup
77+
)
78+
79+
@REM --------------------------------------------------------------------------
80+
@REM Linking
81+
@REM --------------------------------------------------------------------------
82+
:Linking
83+
@echo Compiled successfully.
84+
@if %S_STATIC_LIB% EQU 1 (
85+
@echo Linking...
86+
lib /nologo /OUT:%S_OUT_DIR%/%S_OUT_BIN% %S_OUT_DIR%\*.obj
87+
)
88+
89+
@echo Linked successfully.
90+
@set S_FINAL_RESULT=Successful.
91+
goto Cleanup
92+
93+
@REM --------------------------------------------------------------------------
94+
@REM Cleanup
95+
@REM --------------------------------------------------------------------------
96+
:Cleanup
97+
@echo Cleaning up intermediate files...
98+
del %S_OUT_DIR%\*.obj
99+
100+
@REM --------------------------------------------------------------------------
101+
@REM Information Output
102+
@REM --------------------------------------------------------------------------
103+
:PrintInfo
104+
@echo --------------------------------------------------------------------------
105+
@echo  Build Information 
106+
@echo Results:  %S_FINAL_RESULT%
107+
@echo Configuration:  %S_CONFIG_INFO%
108+
@echo Working directory:  %dir%
109+
@echo Output directory:  %S_OUT_DIR%
110+
@echo Output binary:  %S_OUT_BIN%
111+
@echo Link libraries:  %S_LINK_LIBRARIES_FINAL%
112+
@echo Defines:  %S_DEFINES_FINAL%
113+
@echo Compiler flags:  %S_COMPILER_FLAGS_FINAL%
114+
@echo Linker flags:  %S_LINKER_FLAGS_FINAL%
115+
@echo Include directories:  %S_INCLUDE_DIRECTORIES%
116+
@echo Link directories:  %S_LINK_DIRECTORIES_FINAL%
117+
@echo Sources:  %S_SOURCES%
118+
@echo --------------------------------------------------------------------------
119+
:End

0 commit comments

Comments
 (0)