Skip to content

Commit 43928d4

Browse files
Merge pull request #13 from johnpayne-dev/dev
v1.2
2 parents 9e0e5f0 + 43314f6 commit 43928d4

39 files changed

+2697
-8798
lines changed

.gitmodules

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
11
[submodule "External/SDL"]
22
path = External/SDL
33
url = https://github.com/libsdl-org/SDL.git
4+
[submodule "External/OpenCL-Headers"]
5+
path = External/OpenCL-Headers
6+
url = https://github.com/KhronosGroup/OpenCL-Headers
7+
[submodule "External/OpenCL-ICD-Loader"]
8+
path = External/OpenCL-ICD-Loader
9+
url = https://github.com/KhronosGroup/OpenCL-ICD-Loader
10+
[submodule "External/stb"]
11+
path = External/stb
12+
url = https://github.com/nothings/stb.git
13+
[submodule "External/cute_headers"]
14+
path = External/cute_headers
15+
url = https://github.com/johnpayne-dev/cute_headers.git

CMakeLists.txt

Lines changed: 40 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ set(MINECRAFTC_SOURCES
2828
MinecraftC/GUI/LevelNameScreen.h
2929
MinecraftC/GUI/LoadLevelScreen.c
3030
MinecraftC/GUI/LoadLevelScreen.h
31+
MinecraftC/GUI/ModsScreen.c
32+
MinecraftC/GUI/ModsScreen.h
3133
MinecraftC/GUI/OptionsScreen.c
3234
MinecraftC/GUI/OptionsScreen.h
3335
MinecraftC/GUI/PauseScreen.c
@@ -83,8 +85,11 @@ set(MINECRAFTC_SOURCES
8385
MinecraftC/Level/Level.c
8486
MinecraftC/Level/Level.h
8587
MinecraftC/Level/NextTickListEntry.h
86-
MinecraftC/Particle/PrimedTNT.c
87-
MinecraftC/Particle/PrimedTNT.h
88+
MinecraftC/Mods/Matrix.h
89+
MinecraftC/Mods/Raytracer.c
90+
MinecraftC/Mods/Raytracer.h
91+
MinecraftC/Mods/PrimedTNT.c
92+
MinecraftC/Mods/PrimedTNT.h
8893
MinecraftC/Particle/Particle.c
8994
MinecraftC/Particle/Particle.h
9095
MinecraftC/Particle/ParticleManager.c
@@ -131,6 +136,7 @@ set(MINECRAFTC_SOURCES
131136
MinecraftC/Utilities/List.h
132137
MinecraftC/Utilities/Log.c
133138
MinecraftC/Utilities/Log.h
139+
MinecraftC/Utilities/OpenCL.h
134140
MinecraftC/Utilities/OpenGL.h
135141
MinecraftC/Utilities/Random.c
136142
MinecraftC/Utilities/Random.h
@@ -154,6 +160,8 @@ set(MINECRAFTC_SOURCES
154160
MinecraftC/SessionData.h
155161
MinecraftC/Timer.c
156162
MinecraftC/Timer.h
163+
Resources/Shaders/DistanceField.cl
164+
Resources/Shaders/Raytracer.cl
157165
)
158166

159167
if(MSVC)
@@ -172,6 +180,9 @@ add_definitions(
172180
-DSDL_VIDEO_OPENGL_EGL=0
173181
-DSDL_VIDEO_RENDER_OGL_ES2=0
174182
)
183+
if(MINECRAFTC_MODS)
184+
add_definitions(-DMINECRAFTC_MODS)
185+
endif()
175186

176187
if(APPLE)
177188
set(SOURCES
@@ -195,12 +206,25 @@ if(APPLE)
195206
"-framework Metal"
196207
"-framework OpenGL"
197208
)
209+
if (MINECRAFTC_MODS)
210+
set(LIBRARIES ${LIBRARIES} "-framework OpenCL")
211+
endif()
198212
elseif(WIN32)
199213
set(SOURCES
200214
${MINECRAFTC_SOURCES}
201215
${SDL2_COMMON_SOURCES}
202216
${SDL2_WINDOWS_SOURCES}
203217
Resources/App/AppIcon.rc
218+
External/OpenCL-ICD-Loader/loader/icd.c
219+
External/OpenCL-ICD-Loader/loader/icd_dispatch.c
220+
External/OpenCL-ICD-Loader/loader/icd_dispatch_generated.c
221+
External/OpenCL-ICD-Loader/loader/windows/icd_windows.c
222+
External/OpenCL-ICD-Loader/loader/windows/icd_windows_apppackage.cpp
223+
External/OpenCL-ICD-Loader/loader/windows/icd_windows_dxgk.c
224+
External/OpenCL-ICD-Loader/loader/windows/icd_windows_envvars.c
225+
External/OpenCL-ICD-Loader/loader/windows/icd_windows_hkr.c
226+
External/OpenCL-ICD-Loader/loader/windows/OpenCL.def
227+
External/OpenCL-ICD-Loader/loader/windows/OpenCL.rc
204228
)
205229
set(LIBRARIES
206230
opengl32
@@ -209,9 +233,19 @@ elseif(WIN32)
209233
Winmm
210234
Version
211235
Imm32
236+
RuntimeObject
237+
Cfgmgr32
212238
)
213239
elseif(UNIX)
214-
set(SOURCES ${MINECRAFTC_SOURCES})
240+
set(SOURCES
241+
${MINECRAFTC_SOURCES}
242+
External/OpenCL-ICD-Loader/loader/icd.c
243+
External/OpenCL-ICD-Loader/loader/icd_dispatch.c
244+
External/OpenCL-ICD-Loader/loader/icd_dispatch_generated.c
245+
External/OpenCL-ICD-Loader/loader/linux/icd_linux.c
246+
External/OpenCL-ICD-Loader/loader/linux/icd_linux_envvars.c
247+
External/OpenCL-ICD-Loader/loader/linux/icd_exports.map
248+
)
215249
set(FLAGS ${FLAGS} "-I/usr/include/SDL2" "-D_GNU_SOURCE=1" "-D_REENTRANT")
216250
set(LIBRARIES
217251
m
@@ -231,5 +265,8 @@ target_include_directories(MinecraftC PRIVATE
231265
External/SDL/include
232266
External/cute_headers
233267
External/stb
268+
External/OpenCL-Headers
269+
External/OpenCL-ICD-Loader/loader
234270
)
271+
235272
target_link_libraries(MinecraftC ${LIBRARIES})

External/OpenCL-Headers

Submodule OpenCL-Headers added at 7f216e8

External/OpenCL-ICD-Loader

Submodule OpenCL-ICD-Loader added at 7072cf2

External/cute_headers

Submodule cute_headers added at 07165d7

0 commit comments

Comments
 (0)