Final commit before submitting step2
|
@ -3,12 +3,16 @@ project(Step_2)
|
|||
|
||||
set(CMAKE_CXX_STANDARD 20)
|
||||
|
||||
# used to debug memory related issues
|
||||
if (UNIX AND (CMAKE_BUILD_TYPE MATCHES Debug))
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address -g")
|
||||
add_compile_options(-fsanitize=address)
|
||||
add_link_options(-fsanitize=address)
|
||||
endif()
|
||||
|
||||
# enables AVX instructions. if you have issues, try disabling this.
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
|
||||
|
||||
#Setup project source compilation
|
||||
set(source_dir "${PROJECT_SOURCE_DIR}/src/")
|
||||
file(GLOB_RECURSE source_files "${source_dir}/*.cpp")
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
{
|
||||
"directoryIndex" : 0,
|
||||
"id" : "Step_2::@6890427a1f51a3e7e1df",
|
||||
"jsonFile" : "target-Step_2-Debug-b0871e2c8ceabdb41cb5.json",
|
||||
"jsonFile" : "target-Step_2-Debug-111f8a3ac278f773e1d4.json",
|
||||
"name" : "Step_2",
|
||||
"projectIndex" : 0
|
||||
}
|
|
@ -26,7 +26,7 @@
|
|||
"objects" :
|
||||
[
|
||||
{
|
||||
"jsonFile" : "codemodel-v2-ca2b9c3b4517daeec0b9.json",
|
||||
"jsonFile" : "codemodel-v2-a2642f372b53573ff793.json",
|
||||
"kind" : "codemodel",
|
||||
"version" :
|
||||
{
|
||||
|
@ -86,7 +86,7 @@
|
|||
},
|
||||
"codemodel-v2" :
|
||||
{
|
||||
"jsonFile" : "codemodel-v2-ca2b9c3b4517daeec0b9.json",
|
||||
"jsonFile" : "codemodel-v2-a2642f372b53573ff793.json",
|
||||
"kind" : "codemodel",
|
||||
"version" :
|
||||
{
|
|
@ -27,25 +27,25 @@
|
|||
{
|
||||
"command" : 0,
|
||||
"file" : 0,
|
||||
"line" : 20,
|
||||
"line" : 24,
|
||||
"parent" : 0
|
||||
},
|
||||
{
|
||||
"command" : 1,
|
||||
"file" : 0,
|
||||
"line" : 9,
|
||||
"line" : 10,
|
||||
"parent" : 0
|
||||
},
|
||||
{
|
||||
"command" : 2,
|
||||
"file" : 0,
|
||||
"line" : 8,
|
||||
"line" : 9,
|
||||
"parent" : 0
|
||||
},
|
||||
{
|
||||
"command" : 3,
|
||||
"file" : 0,
|
||||
"line" : 18,
|
||||
"line" : 22,
|
||||
"parent" : 0
|
||||
}
|
||||
]
|
||||
|
@ -56,7 +56,7 @@
|
|||
"compileCommandFragments" :
|
||||
[
|
||||
{
|
||||
"fragment" : " -fsanitize=address -g -g"
|
||||
"fragment" : " -fsanitize=address -g -march=native -g"
|
||||
},
|
||||
{
|
||||
"backtrace" : 3,
|
||||
|
@ -102,7 +102,7 @@
|
|||
"commandFragments" :
|
||||
[
|
||||
{
|
||||
"fragment" : "-fsanitize=address -g -g",
|
||||
"fragment" : "-fsanitize=address -g -march=native -g",
|
||||
"role" : "flags"
|
||||
},
|
||||
{
|
|
@ -1,88 +1,11 @@
|
|||
# ninja log v5
|
||||
1 1226 1666137807547706006 CMakeFiles/Step_2.dir/src/main.cpp.o 2fb1ddffcef25127
|
||||
1 1267 1666137493803063763 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o a8a5f894b3fe853c
|
||||
2 1042 1666119401958989993 CMakeFiles/Step_2.dir/src/util/parser.cpp.o dc1044c577ff67b5
|
||||
1 907 1666137807227691822 CMakeFiles/Step_2.dir/src/raytracing.cpp.o cfda37b51895cd7e
|
||||
1227 1315 1666137807635709904 Step_2 a4a11c3e604093b2
|
||||
1 889 1666120427784383680 CMakeFiles/Step_2.dir/src/util/debug.cpp.o bb1e92ec93606b34
|
||||
1 985 1666137807307695367 CMakeFiles/Step_2.dir/src/util/models.cpp.o 637cb95d94c45aa5
|
||||
1 765 1666120427660380125 CMakeFiles/Step_2.dir/src/globals.cpp.o 9579c877d4b65af0
|
||||
1 1075 1666137807395699266 CMakeFiles/Step_2.dir/src/world.cpp.o abef135c83fe5bb1
|
||||
1 1271 1666119402186996525 CMakeFiles/Step_2.dir/src/image/image.cpp.o 13adbb05fcabbeec
|
||||
1 894 1666137931540979015 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o 961741316937a4a5
|
||||
1 951 1666137931596981302 CMakeFiles/Step_2.dir/src/globals.cpp.o 5bebf7bde55fd4af
|
||||
1 961 1666137931608981794 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
1 1250 1666137931896993564 CMakeFiles/Step_2.dir/src/util/debug.cpp.o da2051938d8a4958
|
||||
1 1302 1666137931948995690 CMakeFiles/Step_2.dir/src/image/image.cpp.o a6a5848b13043c30
|
||||
2 1340 1666137931984997161 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
2 1408 1666137932052999939 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
2 1433 1666137932077000920 CMakeFiles/Step_2.dir/src/util/parser.cpp.o e9d3901d3a711cd
|
||||
1 1509 1666137932153004024 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1509 1601 1666137932245007783 Step_2 ba935c9c2d26b32e
|
||||
0 946 1666137973998692682 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
0 1065 1666137974118697465 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
1 1245 1666137974294704480 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
0 1410 1666137974462711175 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1410 1495 1666137974546714524 Step_2 ba935c9c2d26b32e
|
||||
1 949 1666145509856515246 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o 961741316937a4a5
|
||||
1 1015 1666145509920516639 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
1 1124 1666145510028518987 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
1 1326 1666145510228523340 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
0 1489 1666145510392526908 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1489 1592 1666145510496529172 Step_2 ba935c9c2d26b32e
|
||||
1 949 1666145677992183942 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
1 1067 1666145678112186566 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
1 1262 1666145678304190767 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
1 1433 1666145678476194526 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1433 1521 1666145678564196453 Step_2 ba935c9c2d26b32e
|
||||
1 903 1666145713360957883 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
1 1011 1666145713468960248 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
1 1143 1666145713600963137 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
1 1350 1666145713808967689 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1350 1437 1666145713896969617 Step_2 ba935c9c2d26b32e
|
||||
1 886 1666145918908143778 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
1 991 1666145919012154044 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
1 1117 1666145919136166272 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
1 1353 1666145919372189538 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1353 1439 1666145919460198214 Step_2 ba935c9c2d26b32e
|
||||
0 918 1666145941034295533 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
0 1000 1666145941114303198 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
1 1168 1666145941282319295 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
0 1383 1666145941498339991 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1383 1470 1666145941586348422 Step_2 ba935c9c2d26b32e
|
||||
1 904 1666146018509369816 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
1 1084 1666146018693385822 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
1 1169 1666146018773392781 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
1 1322 1666146018929406350 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1322 1407 1666146019013413658 Step_2 ba935c9c2d26b32e
|
||||
1 1050 1666146255207394610 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
1 1335 1666146255487413328 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
1 1543 1666146255699427499 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1543 1642 1666146255795433918 Step_2 ba935c9c2d26b32e
|
||||
1 908 1666147600903596279 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
1 1037 1666147601031600780 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
1 1397 1666147601391613427 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1 1143 1666147615064093392 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
1143 1234 1666147615156096617 Step_2 ba935c9c2d26b32e
|
||||
1 917 1666147894448951725 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
1 1006 1666147894536953463 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
1 1137 1666147894664955988 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
1 1342 1666147894872960096 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1342 1428 1666147894956961753 Step_2 ba935c9c2d26b32e
|
||||
1 1075 1666147964142379106 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
1075 1160 1666147964226380888 Step_2 ba935c9c2d26b32e
|
||||
1 1176 1666150252074198441 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o 961741316937a4a5
|
||||
1 1337 1666150252238202725 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
2 1516 1666150252414207323 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
2 1600 1666150252498209517 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
1 1939 1666150252838218400 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1939 2028 1666150252926220698 Step_2 ba935c9c2d26b32e
|
||||
1 1187 1666150651777081346 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
1 1367 1666150651957086402 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
2 1369 1666150651957086402 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
1 1539 1666150652129091231 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1539 1627 1666150652217093702 Step_2 ba935c9c2d26b32e
|
||||
1 902 1666150926996912836 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
1 1036 1666150927132916751 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
1 1260 1666150927356923195 CMakeFiles/Step_2.dir/src/main.cpp.o 6490b92c9a765459
|
||||
1 1176 1666150252074198441 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o 961741316937a4a5
|
||||
2 1433 1666137932077000920 CMakeFiles/Step_2.dir/src/util/parser.cpp.o e9d3901d3a711cd
|
||||
1 902 1666150926996912836 CMakeFiles/Step_2.dir/src/raytracing.cpp.o f57e640d9f276756
|
||||
1260 1355 1666150927448925842 Step_2 ba935c9c2d26b32e
|
||||
1 1250 1666137931896993564 CMakeFiles/Step_2.dir/src/util/debug.cpp.o da2051938d8a4958
|
||||
1 1367 1666150651957086402 CMakeFiles/Step_2.dir/src/util/models.cpp.o 507adcdc012771a9
|
||||
1 951 1666137931596981302 CMakeFiles/Step_2.dir/src/globals.cpp.o 5bebf7bde55fd4af
|
||||
1 1036 1666150927132916751 CMakeFiles/Step_2.dir/src/world.cpp.o 528709b06ba304b9
|
||||
1 1302 1666137931948995690 CMakeFiles/Step_2.dir/src/image/image.cpp.o a6a5848b13043c30
|
||||
|
|
|
@ -51,63 +51,63 @@ build cmake_object_order_depends_target_Step_2: phony || CMakeFiles/Step_2.dir
|
|||
|
||||
build CMakeFiles/Step_2.dir/src/globals.cpp.o: CXX_COMPILER__Step_2_Debug /home/brett/Documents/Brock/CS$ 3P93/Project/Step$ 2/src/globals.cpp || cmake_object_order_depends_target_Step_2
|
||||
DEP_FILE = CMakeFiles/Step_2.dir/src/globals.cpp.o.d
|
||||
FLAGS = -fsanitize=address -g -g -fsanitize=address -std=gnu++20
|
||||
FLAGS = -fsanitize=address -g -march=native -g -fsanitize=address -std=gnu++20
|
||||
INCLUDES = -I"/home/brett/Documents/Brock/CS 3P93/Project/Step 2/include"
|
||||
OBJECT_DIR = CMakeFiles/Step_2.dir
|
||||
OBJECT_FILE_DIR = CMakeFiles/Step_2.dir/src
|
||||
|
||||
build CMakeFiles/Step_2.dir/src/image/image.cpp.o: CXX_COMPILER__Step_2_Debug /home/brett/Documents/Brock/CS$ 3P93/Project/Step$ 2/src/image/image.cpp || cmake_object_order_depends_target_Step_2
|
||||
DEP_FILE = CMakeFiles/Step_2.dir/src/image/image.cpp.o.d
|
||||
FLAGS = -fsanitize=address -g -g -fsanitize=address -std=gnu++20
|
||||
FLAGS = -fsanitize=address -g -march=native -g -fsanitize=address -std=gnu++20
|
||||
INCLUDES = -I"/home/brett/Documents/Brock/CS 3P93/Project/Step 2/include"
|
||||
OBJECT_DIR = CMakeFiles/Step_2.dir
|
||||
OBJECT_FILE_DIR = CMakeFiles/Step_2.dir/src/image
|
||||
|
||||
build CMakeFiles/Step_2.dir/src/main.cpp.o: CXX_COMPILER__Step_2_Debug /home/brett/Documents/Brock/CS$ 3P93/Project/Step$ 2/src/main.cpp || cmake_object_order_depends_target_Step_2
|
||||
DEP_FILE = CMakeFiles/Step_2.dir/src/main.cpp.o.d
|
||||
FLAGS = -fsanitize=address -g -g -fsanitize=address -std=gnu++20
|
||||
FLAGS = -fsanitize=address -g -march=native -g -fsanitize=address -std=gnu++20
|
||||
INCLUDES = -I"/home/brett/Documents/Brock/CS 3P93/Project/Step 2/include"
|
||||
OBJECT_DIR = CMakeFiles/Step_2.dir
|
||||
OBJECT_FILE_DIR = CMakeFiles/Step_2.dir/src
|
||||
|
||||
build CMakeFiles/Step_2.dir/src/math/colliders.cpp.o: CXX_COMPILER__Step_2_Debug /home/brett/Documents/Brock/CS$ 3P93/Project/Step$ 2/src/math/colliders.cpp || cmake_object_order_depends_target_Step_2
|
||||
DEP_FILE = CMakeFiles/Step_2.dir/src/math/colliders.cpp.o.d
|
||||
FLAGS = -fsanitize=address -g -g -fsanitize=address -std=gnu++20
|
||||
FLAGS = -fsanitize=address -g -march=native -g -fsanitize=address -std=gnu++20
|
||||
INCLUDES = -I"/home/brett/Documents/Brock/CS 3P93/Project/Step 2/include"
|
||||
OBJECT_DIR = CMakeFiles/Step_2.dir
|
||||
OBJECT_FILE_DIR = CMakeFiles/Step_2.dir/src/math
|
||||
|
||||
build CMakeFiles/Step_2.dir/src/raytracing.cpp.o: CXX_COMPILER__Step_2_Debug /home/brett/Documents/Brock/CS$ 3P93/Project/Step$ 2/src/raytracing.cpp || cmake_object_order_depends_target_Step_2
|
||||
DEP_FILE = CMakeFiles/Step_2.dir/src/raytracing.cpp.o.d
|
||||
FLAGS = -fsanitize=address -g -g -fsanitize=address -std=gnu++20
|
||||
FLAGS = -fsanitize=address -g -march=native -g -fsanitize=address -std=gnu++20
|
||||
INCLUDES = -I"/home/brett/Documents/Brock/CS 3P93/Project/Step 2/include"
|
||||
OBJECT_DIR = CMakeFiles/Step_2.dir
|
||||
OBJECT_FILE_DIR = CMakeFiles/Step_2.dir/src
|
||||
|
||||
build CMakeFiles/Step_2.dir/src/util/debug.cpp.o: CXX_COMPILER__Step_2_Debug /home/brett/Documents/Brock/CS$ 3P93/Project/Step$ 2/src/util/debug.cpp || cmake_object_order_depends_target_Step_2
|
||||
DEP_FILE = CMakeFiles/Step_2.dir/src/util/debug.cpp.o.d
|
||||
FLAGS = -fsanitize=address -g -g -fsanitize=address -std=gnu++20
|
||||
FLAGS = -fsanitize=address -g -march=native -g -fsanitize=address -std=gnu++20
|
||||
INCLUDES = -I"/home/brett/Documents/Brock/CS 3P93/Project/Step 2/include"
|
||||
OBJECT_DIR = CMakeFiles/Step_2.dir
|
||||
OBJECT_FILE_DIR = CMakeFiles/Step_2.dir/src/util
|
||||
|
||||
build CMakeFiles/Step_2.dir/src/util/models.cpp.o: CXX_COMPILER__Step_2_Debug /home/brett/Documents/Brock/CS$ 3P93/Project/Step$ 2/src/util/models.cpp || cmake_object_order_depends_target_Step_2
|
||||
DEP_FILE = CMakeFiles/Step_2.dir/src/util/models.cpp.o.d
|
||||
FLAGS = -fsanitize=address -g -g -fsanitize=address -std=gnu++20
|
||||
FLAGS = -fsanitize=address -g -march=native -g -fsanitize=address -std=gnu++20
|
||||
INCLUDES = -I"/home/brett/Documents/Brock/CS 3P93/Project/Step 2/include"
|
||||
OBJECT_DIR = CMakeFiles/Step_2.dir
|
||||
OBJECT_FILE_DIR = CMakeFiles/Step_2.dir/src/util
|
||||
|
||||
build CMakeFiles/Step_2.dir/src/util/parser.cpp.o: CXX_COMPILER__Step_2_Debug /home/brett/Documents/Brock/CS$ 3P93/Project/Step$ 2/src/util/parser.cpp || cmake_object_order_depends_target_Step_2
|
||||
DEP_FILE = CMakeFiles/Step_2.dir/src/util/parser.cpp.o.d
|
||||
FLAGS = -fsanitize=address -g -g -fsanitize=address -std=gnu++20
|
||||
FLAGS = -fsanitize=address -g -march=native -g -fsanitize=address -std=gnu++20
|
||||
INCLUDES = -I"/home/brett/Documents/Brock/CS 3P93/Project/Step 2/include"
|
||||
OBJECT_DIR = CMakeFiles/Step_2.dir
|
||||
OBJECT_FILE_DIR = CMakeFiles/Step_2.dir/src/util
|
||||
|
||||
build CMakeFiles/Step_2.dir/src/world.cpp.o: CXX_COMPILER__Step_2_Debug /home/brett/Documents/Brock/CS$ 3P93/Project/Step$ 2/src/world.cpp || cmake_object_order_depends_target_Step_2
|
||||
DEP_FILE = CMakeFiles/Step_2.dir/src/world.cpp.o.d
|
||||
FLAGS = -fsanitize=address -g -g -fsanitize=address -std=gnu++20
|
||||
FLAGS = -fsanitize=address -g -march=native -g -fsanitize=address -std=gnu++20
|
||||
INCLUDES = -I"/home/brett/Documents/Brock/CS 3P93/Project/Step 2/include"
|
||||
OBJECT_DIR = CMakeFiles/Step_2.dir
|
||||
OBJECT_FILE_DIR = CMakeFiles/Step_2.dir/src
|
||||
|
@ -121,7 +121,7 @@ build CMakeFiles/Step_2.dir/src/world.cpp.o: CXX_COMPILER__Step_2_Debug /home/br
|
|||
# Link the executable Step_2
|
||||
|
||||
build Step_2: CXX_EXECUTABLE_LINKER__Step_2_Debug CMakeFiles/Step_2.dir/src/globals.cpp.o CMakeFiles/Step_2.dir/src/image/image.cpp.o CMakeFiles/Step_2.dir/src/main.cpp.o CMakeFiles/Step_2.dir/src/math/colliders.cpp.o CMakeFiles/Step_2.dir/src/raytracing.cpp.o CMakeFiles/Step_2.dir/src/util/debug.cpp.o CMakeFiles/Step_2.dir/src/util/models.cpp.o CMakeFiles/Step_2.dir/src/util/parser.cpp.o CMakeFiles/Step_2.dir/src/world.cpp.o
|
||||
FLAGS = -fsanitize=address -g -g
|
||||
FLAGS = -fsanitize=address -g -march=native -g
|
||||
LINK_FLAGS = -fsanitize=address
|
||||
OBJECT_DIR = CMakeFiles/Step_2.dir
|
||||
POST_BUILD = :
|
||||
|
|
|
@ -79,7 +79,7 @@
|
|||
}
|
||||
],
|
||||
"type" : "INTERNAL",
|
||||
"value" : "24"
|
||||
"value" : "23"
|
||||
},
|
||||
{
|
||||
"name" : "CMAKE_CACHE_PATCH_VERSION",
|
||||
|
@ -103,7 +103,7 @@
|
|||
}
|
||||
],
|
||||
"type" : "INTERNAL",
|
||||
"value" : "/usr/bin/cmake"
|
||||
"value" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/bin/cmake"
|
||||
},
|
||||
{
|
||||
"name" : "CMAKE_CPACK_COMMAND",
|
||||
|
@ -115,7 +115,7 @@
|
|||
}
|
||||
],
|
||||
"type" : "INTERNAL",
|
||||
"value" : "/usr/bin/cpack"
|
||||
"value" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/bin/cpack"
|
||||
},
|
||||
{
|
||||
"name" : "CMAKE_CTEST_COMMAND",
|
||||
|
@ -127,7 +127,7 @@
|
|||
}
|
||||
],
|
||||
"type" : "INTERNAL",
|
||||
"value" : "/usr/bin/ctest"
|
||||
"value" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/bin/ctest"
|
||||
},
|
||||
{
|
||||
"name" : "CMAKE_CXX_COMPILER",
|
||||
|
@ -887,7 +887,7 @@
|
|||
}
|
||||
],
|
||||
"type" : "INTERNAL",
|
||||
"value" : "/usr/share/cmake-3.24"
|
||||
"value" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23"
|
||||
},
|
||||
{
|
||||
"name" : "CMAKE_SHARED_LINKER_FLAGS",
|
|
@ -1,739 +0,0 @@
|
|||
{
|
||||
"inputs" :
|
||||
[
|
||||
{
|
||||
"path" : "CMakeLists.txt"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeDetermineSystem.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeSystem.cmake.in"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-release/CMakeFiles/3.24.2/CMakeSystem.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeSystemSpecificInitialize.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeDetermineCCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeDetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeDetermineCompilerId.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeCompilerIdDetection.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/ADSP-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/ARMCC-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/ARMClang-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/AppleClang-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Borland-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Bruce-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Clang-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Compaq-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Cray-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Embarcadero-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Fujitsu-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/GHS-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/GNU-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/HP-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/IAR-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/IBMClang-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Intel-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/LCC-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/MSVC-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/NVHPC-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/NVIDIA-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/PGI-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/PathScale-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/SCO-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/SDCC-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/SunPro-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/TI-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Watcom-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/XL-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/XLClang-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/zOS-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeFindBinUtils.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/GNU-FindBinUtils.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeCCompiler.cmake.in"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-release/CMakeFiles/3.24.2/CMakeCCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeDetermineCXXCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeDetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Platform/Linux-Determine-CXX.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeDetermineCompilerId.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeCompilerIdDetection.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/ADSP-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/ARMCC-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/ARMClang-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/AppleClang-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Borland-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Clang-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Cray-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Embarcadero-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Fujitsu-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/GHS-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/HP-CXX-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/IAR-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/IBMClang-CXX-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Intel-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/LCC-CXX-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/MSVC-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/NVHPC-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/NVIDIA-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/PGI-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/PathScale-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/SCO-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/TI-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/Watcom-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/XL-CXX-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeFindBinUtils.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/GNU-FindBinUtils.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeCXXCompiler.cmake.in"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-release/CMakeFiles/3.24.2/CMakeCXXCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeSystemSpecificInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeGenericSystem.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeInitializeConfigs.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Platform/Linux.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Platform/UnixPaths.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeCInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeLanguageInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/GNU-C.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/GNU.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Platform/Linux-GNU-C.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Platform/Linux-GNU.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeCommonLanguageInclude.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeTestCCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeTestCompilerCommon.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeDetermineCompilerABI.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeParseImplicitIncludeInfo.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeParseImplicitLinkInfo.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeParseLibraryArchitecture.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeTestCompilerCommon.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeCCompilerABI.c"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeDetermineCompileFeatures.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Internal/FeatureTesting.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeCCompiler.cmake.in"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-release/CMakeFiles/3.24.2/CMakeCCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeCXXInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeLanguageInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/GNU-CXX.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Compiler/GNU.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Platform/Linux-GNU-CXX.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Platform/Linux-GNU.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeCommonLanguageInclude.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeTestCXXCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeTestCompilerCommon.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeDetermineCompilerABI.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeParseImplicitIncludeInfo.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeParseImplicitLinkInfo.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeParseLibraryArchitecture.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeTestCompilerCommon.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeCXXCompilerABI.cpp"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeDetermineCompileFeatures.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/Internal/FeatureTesting.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/usr/share/cmake-3.24/Modules/CMakeCXXCompiler.cmake.in"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-release/CMakeFiles/3.24.2/CMakeCXXCompiler.cmake"
|
||||
}
|
||||
],
|
||||
"kind" : "cmakeFiles",
|
||||
"paths" :
|
||||
{
|
||||
"build" : "/home/brett/Documents/Brock/CS 3P93/Project/Step 2/cmake-build-release",
|
||||
"source" : "/home/brett/Documents/Brock/CS 3P93/Project/Step 2"
|
||||
},
|
||||
"version" :
|
||||
{
|
||||
"major" : 1,
|
||||
"minor" : 0
|
||||
}
|
||||
}
|
|
@ -0,0 +1,136 @@
|
|||
{
|
||||
"inputs" :
|
||||
[
|
||||
{
|
||||
"path" : "CMakeLists.txt"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-release/CMakeFiles/3.23.2/CMakeSystem.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeSystemSpecificInitialize.cmake"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-release/CMakeFiles/3.23.2/CMakeCCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-release/CMakeFiles/3.23.2/CMakeCXXCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeSystemSpecificInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeGenericSystem.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeInitializeConfigs.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/Platform/UnixPaths.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeLanguageInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU-C.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux-GNU-C.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux-GNU.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCommonLanguageInclude.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCXXInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeLanguageInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU-CXX.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux-GNU-CXX.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux-GNU.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCommonLanguageInclude.cmake"
|
||||
}
|
||||
],
|
||||
"kind" : "cmakeFiles",
|
||||
"paths" :
|
||||
{
|
||||
"build" : "/home/brett/Documents/Brock/CS 3P93/Project/Step 2/cmake-build-release",
|
||||
"source" : "/home/brett/Documents/Brock/CS 3P93/Project/Step 2"
|
||||
},
|
||||
"version" :
|
||||
{
|
||||
"major" : 1,
|
||||
"minor" : 0
|
||||
}
|
||||
}
|
|
@ -39,7 +39,7 @@
|
|||
{
|
||||
"directoryIndex" : 0,
|
||||
"id" : "Step_2::@6890427a1f51a3e7e1df",
|
||||
"jsonFile" : "target-Step_2-Release-ade4af94c9ab4405e102.json",
|
||||
"jsonFile" : "target-Step_2-Release-613990d65d1226e892a7.json",
|
||||
"name" : "Step_2",
|
||||
"projectIndex" : 0
|
||||
}
|
|
@ -8,25 +8,25 @@
|
|||
},
|
||||
"paths" :
|
||||
{
|
||||
"cmake" : "/usr/bin/cmake",
|
||||
"cpack" : "/usr/bin/cpack",
|
||||
"ctest" : "/usr/bin/ctest",
|
||||
"root" : "/usr/share/cmake-3.24"
|
||||
"cmake" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/bin/cmake",
|
||||
"cpack" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/bin/cpack",
|
||||
"ctest" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/bin/ctest",
|
||||
"root" : "/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23"
|
||||
},
|
||||
"version" :
|
||||
{
|
||||
"isDirty" : false,
|
||||
"major" : 3,
|
||||
"minor" : 24,
|
||||
"minor" : 23,
|
||||
"patch" : 2,
|
||||
"string" : "3.24.2",
|
||||
"string" : "3.23.2",
|
||||
"suffix" : ""
|
||||
}
|
||||
},
|
||||
"objects" :
|
||||
[
|
||||
{
|
||||
"jsonFile" : "codemodel-v2-35c33b176d8a13b67c67.json",
|
||||
"jsonFile" : "codemodel-v2-e68e5e0cd915a2b7a3ed.json",
|
||||
"kind" : "codemodel",
|
||||
"version" :
|
||||
{
|
||||
|
@ -35,7 +35,7 @@
|
|||
}
|
||||
},
|
||||
{
|
||||
"jsonFile" : "cache-v2-e96ef1fe168b2fa61909.json",
|
||||
"jsonFile" : "cache-v2-982b05828a3693b9f6c6.json",
|
||||
"kind" : "cache",
|
||||
"version" :
|
||||
{
|
||||
|
@ -44,7 +44,7 @@
|
|||
}
|
||||
},
|
||||
{
|
||||
"jsonFile" : "cmakeFiles-v1-87611bf2d2fdfbd7d20d.json",
|
||||
"jsonFile" : "cmakeFiles-v1-ae4f0337508f2d3e631b.json",
|
||||
"kind" : "cmakeFiles",
|
||||
"version" :
|
||||
{
|
||||
|
@ -66,7 +66,7 @@
|
|||
{
|
||||
"cache-v2" :
|
||||
{
|
||||
"jsonFile" : "cache-v2-e96ef1fe168b2fa61909.json",
|
||||
"jsonFile" : "cache-v2-982b05828a3693b9f6c6.json",
|
||||
"kind" : "cache",
|
||||
"version" :
|
||||
{
|
||||
|
@ -76,7 +76,7 @@
|
|||
},
|
||||
"cmakeFiles-v1" :
|
||||
{
|
||||
"jsonFile" : "cmakeFiles-v1-87611bf2d2fdfbd7d20d.json",
|
||||
"jsonFile" : "cmakeFiles-v1-ae4f0337508f2d3e631b.json",
|
||||
"kind" : "cmakeFiles",
|
||||
"version" :
|
||||
{
|
||||
|
@ -86,7 +86,7 @@
|
|||
},
|
||||
"codemodel-v2" :
|
||||
{
|
||||
"jsonFile" : "codemodel-v2-35c33b176d8a13b67c67.json",
|
||||
"jsonFile" : "codemodel-v2-e68e5e0cd915a2b7a3ed.json",
|
||||
"kind" : "codemodel",
|
||||
"version" :
|
||||
{
|
|
@ -25,13 +25,13 @@
|
|||
{
|
||||
"command" : 0,
|
||||
"file" : 0,
|
||||
"line" : 20,
|
||||
"line" : 24,
|
||||
"parent" : 0
|
||||
},
|
||||
{
|
||||
"command" : 1,
|
||||
"file" : 0,
|
||||
"line" : 18,
|
||||
"line" : 22,
|
||||
"parent" : 0
|
||||
}
|
||||
]
|
||||
|
@ -42,7 +42,7 @@
|
|||
"compileCommandFragments" :
|
||||
[
|
||||
{
|
||||
"fragment" : "-O3 -DNDEBUG"
|
||||
"fragment" : " -march=native -O3 -DNDEBUG"
|
||||
},
|
||||
{
|
||||
"fragment" : "-std=gnu++20"
|
||||
|
@ -84,7 +84,7 @@
|
|||
"commandFragments" :
|
||||
[
|
||||
{
|
||||
"fragment" : "-O3 -DNDEBUG",
|
||||
"fragment" : "-march=native -O3 -DNDEBUG",
|
||||
"role" : "flags"
|
||||
},
|
||||
{
|
|
@ -1,27 +1,105 @@
|
|||
# ninja log v5
|
||||
1 1290 1666189725720627751 CMakeFiles/Step_2.dir/src/main.cpp.o 387235f0a298f257
|
||||
9 1179 1666150207469040507 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o 7957915dde476a69
|
||||
10 1796 1666150208085056398 CMakeFiles/Step_2.dir/src/util/parser.cpp.o 4bae007146d86363
|
||||
1 855 1666189725284614906 CMakeFiles/Step_2.dir/src/raytracing.cpp.o e78f62563fb6428
|
||||
1290 1329 1666189725760628932 Step_2 2fd6ed1a72fdaa11
|
||||
9 1453 1666150207745047625 CMakeFiles/Step_2.dir/src/util/debug.cpp.o e1fa95ca3d6a9ce2
|
||||
1 1085 1666189725516621741 CMakeFiles/Step_2.dir/src/util/models.cpp.o 12734a9214cf8718
|
||||
1 1112 1666150207401038752 CMakeFiles/Step_2.dir/src/globals.cpp.o 5fc3599d89d4b8a2
|
||||
1 1031 1666189725460620093 CMakeFiles/Step_2.dir/src/world.cpp.o 713f22c63a585103
|
||||
1 2595 1666150208885077037 CMakeFiles/Step_2.dir/src/image/image.cpp.o 4d16c0d3199b9aa8
|
||||
2 832 1666190502587578426 CMakeFiles/Step_2.dir/src/raytracing.cpp.o e78f62563fb6428
|
||||
2 995 1666190502751583279 CMakeFiles/Step_2.dir/src/world.cpp.o 713f22c63a585103
|
||||
2 1250 1666190503007590854 CMakeFiles/Step_2.dir/src/main.cpp.o 387235f0a298f257
|
||||
1250 1288 1666190503043591919 Step_2 2fd6ed1a72fdaa11
|
||||
1 829 1666190870249318010 CMakeFiles/Step_2.dir/src/raytracing.cpp.o e78f62563fb6428
|
||||
1 1011 1666190870433308981 CMakeFiles/Step_2.dir/src/world.cpp.o 713f22c63a585103
|
||||
1 1248 1666190870669297401 CMakeFiles/Step_2.dir/src/main.cpp.o 387235f0a298f257
|
||||
1248 1287 1666190870709295439 Step_2 2fd6ed1a72fdaa11
|
||||
1 843 1666190907259587072 CMakeFiles/Step_2.dir/src/raytracing.cpp.o e78f62563fb6428
|
||||
2 994 1666190907411580314 CMakeFiles/Step_2.dir/src/world.cpp.o 713f22c63a585103
|
||||
1 1276 1666190907691567865 CMakeFiles/Step_2.dir/src/main.cpp.o 387235f0a298f257
|
||||
1276 1316 1666190907731566086 Step_2 2fd6ed1a72fdaa11
|
||||
1 840 1666191946805877238 CMakeFiles/Step_2.dir/src/raytracing.cpp.o e78f62563fb6428
|
||||
2 1036 1666191947001878976 CMakeFiles/Step_2.dir/src/world.cpp.o 713f22c63a585103
|
||||
1 1269 1666191947233881035 CMakeFiles/Step_2.dir/src/main.cpp.o 387235f0a298f257
|
||||
1 1329 1666208294813201609 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o 7957915dde476a69
|
||||
10 1796 1666150208085056398 CMakeFiles/Step_2.dir/src/util/parser.cpp.o 4bae007146d86363
|
||||
1 840 1666191946805877238 CMakeFiles/Step_2.dir/src/raytracing.cpp.o e78f62563fb6428
|
||||
1269 1307 1666191947269881356 Step_2 2fd6ed1a72fdaa11
|
||||
9 1453 1666150207745047625 CMakeFiles/Step_2.dir/src/util/debug.cpp.o e1fa95ca3d6a9ce2
|
||||
1 1770 1666208295257215005 CMakeFiles/Step_2.dir/src/util/models.cpp.o 12734a9214cf8718
|
||||
1 1112 1666150207401038752 CMakeFiles/Step_2.dir/src/globals.cpp.o 5fc3599d89d4b8a2
|
||||
2 1036 1666191947001878976 CMakeFiles/Step_2.dir/src/world.cpp.o 713f22c63a585103
|
||||
1 2726 1666208296213243852 CMakeFiles/Step_2.dir/src/image/image.cpp.o 4d16c0d3199b9aa8
|
||||
1 874 1666208421288995782 CMakeFiles/Step_2.dir/src/globals.cpp.o 8caaf06f90e0c038
|
||||
2 1437 1666208421849012493 CMakeFiles/Step_2.dir/src/util/debug.cpp.o 2bec3f4c06e82095
|
||||
2 1440 1666208421853012610 CMakeFiles/Step_2.dir/src/util/parser.cpp.o 67ef710b86dd32d6
|
||||
2 1496 1666208421909014283 CMakeFiles/Step_2.dir/src/raytracing.cpp.o d0ae86d239f7153
|
||||
2 1709 1666208422121020608 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o c0cac41f151ac323
|
||||
2 1728 1666208422141021205 CMakeFiles/Step_2.dir/src/world.cpp.o 9ae7336b91871660
|
||||
2 1966 1666208422381028366 CMakeFiles/Step_2.dir/src/util/models.cpp.o 7aa2ab72df0658e
|
||||
1 2034 1666208422449030392 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1 2886 1666208423301055812 CMakeFiles/Step_2.dir/src/image/image.cpp.o f94f9df081e81271
|
||||
2887 2929 1666208423341057004 Step_2 7437176fc9e68547
|
||||
2 1224 1666210629933631775 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o c0cac41f151ac323
|
||||
2 1374 1666210630081636055 CMakeFiles/Step_2.dir/src/raytracing.cpp.o d0ae86d239f7153
|
||||
2 1548 1666210630257641141 CMakeFiles/Step_2.dir/src/world.cpp.o 9ae7336b91871660
|
||||
2 1652 1666210630361644148 CMakeFiles/Step_2.dir/src/util/models.cpp.o 7aa2ab72df0658e
|
||||
2 1913 1666210630621651665 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1 2643 1666210631353672824 CMakeFiles/Step_2.dir/src/image/image.cpp.o f94f9df081e81271
|
||||
2643 2681 1666210631389673865 Step_2 7437176fc9e68547
|
||||
1 1212 1666212386048431924 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o c0cac41f151ac323
|
||||
1 1360 1666212386196434896 CMakeFiles/Step_2.dir/src/raytracing.cpp.o d0ae86d239f7153
|
||||
1 1484 1666212386320437387 CMakeFiles/Step_2.dir/src/world.cpp.o 9ae7336b91871660
|
||||
1 1611 1666212386448439957 CMakeFiles/Step_2.dir/src/util/models.cpp.o 7aa2ab72df0658e
|
||||
1 1875 1666212386712445259 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1 2656 1666212387492460928 CMakeFiles/Step_2.dir/src/image/image.cpp.o f94f9df081e81271
|
||||
2656 2703 1666212387540461893 Step_2 7437176fc9e68547
|
||||
2 1250 1666212415865034379 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o c0cac41f151ac323
|
||||
2 1375 1666212415989036899 CMakeFiles/Step_2.dir/src/raytracing.cpp.o d0ae86d239f7153
|
||||
2 1566 1666212416181040803 CMakeFiles/Step_2.dir/src/world.cpp.o 9ae7336b91871660
|
||||
2 1617 1666212416233041863 CMakeFiles/Step_2.dir/src/util/models.cpp.o 7aa2ab72df0658e
|
||||
1 1928 1666212416545048206 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1 2621 1666212417237062279 CMakeFiles/Step_2.dir/src/image/image.cpp.o f94f9df081e81271
|
||||
2621 2660 1666212417273063011 Step_2 7437176fc9e68547
|
||||
1 1269 1666212741664012313 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o c0cac41f151ac323
|
||||
1 1368 1666212741764014542 CMakeFiles/Step_2.dir/src/raytracing.cpp.o d0ae86d239f7153
|
||||
2 1543 1666212741940018466 CMakeFiles/Step_2.dir/src/world.cpp.o 9ae7336b91871660
|
||||
2 1646 1666212742044020786 CMakeFiles/Step_2.dir/src/util/models.cpp.o 7aa2ab72df0658e
|
||||
1 1910 1666212742308026673 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1 2600 1666212742996042017 CMakeFiles/Step_2.dir/src/image/image.cpp.o f94f9df081e81271
|
||||
2600 2642 1666212743036042909 Step_2 7437176fc9e68547
|
||||
1 1791 1666215595209880342 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o c0cac41f151ac323
|
||||
1 1840 1666215595257881412 CMakeFiles/Step_2.dir/src/raytracing.cpp.o d0ae86d239f7153
|
||||
1 1888 1666215595305882480 CMakeFiles/Step_2.dir/src/util/models.cpp.o 7aa2ab72df0658e
|
||||
1 1990 1666215595409884798 CMakeFiles/Step_2.dir/src/world.cpp.o 9ae7336b91871660
|
||||
1 2395 1666215595813893798 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
0 3052 1666215596469908420 CMakeFiles/Step_2.dir/src/image/image.cpp.o f94f9df081e81271
|
||||
3052 3125 1666215596541910026 Step_2 7437176fc9e68547
|
||||
1 788 1666215661443385226 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o c0cac41f151ac323
|
||||
1 949 1666215661603388929 CMakeFiles/Step_2.dir/src/raytracing.cpp.o d0ae86d239f7153
|
||||
1 1072 1666215661727391802 CMakeFiles/Step_2.dir/src/world.cpp.o 9ae7336b91871660
|
||||
1 1204 1666215661859394855 CMakeFiles/Step_2.dir/src/util/models.cpp.o 7aa2ab72df0658e
|
||||
1 1441 1666215662095400322 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1 2153 1666215662807416814 CMakeFiles/Step_2.dir/src/image/image.cpp.o f94f9df081e81271
|
||||
2153 2191 1666215662847417737 Step_2 7437176fc9e68547
|
||||
1 1023 1666216381510163196 CMakeFiles/Step_2.dir/src/raytracing.cpp.o d0ae86d239f7153
|
||||
1 1068 1666216381554164424 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o c0cac41f151ac323
|
||||
1 1274 1666216381762170234 CMakeFiles/Step_2.dir/src/util/models.cpp.o 7aa2ab72df0658e
|
||||
1 1520 1666216382006177047 CMakeFiles/Step_2.dir/src/world.cpp.o 9ae7336b91871660
|
||||
1 1732 1666216382218182968 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1 2646 1666216383134208548 CMakeFiles/Step_2.dir/src/image/image.cpp.o f94f9df081e81271
|
||||
2646 2694 1666216383182209890 Step_2 7437176fc9e68547
|
||||
1 878 1666217200233659155 CMakeFiles/Step_2.dir/src/raytracing.cpp.o d0ae86d239f7153
|
||||
0 1380 1666217200733673732 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1380 1421 1666217200773674899 Step_2 7437176fc9e68547
|
||||
1 1341 1666217588772696599 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1341 1380 1666217588812697660 Step_2 7437176fc9e68547
|
||||
0 1305 1666217602745067311 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1305 1345 1666217602785068374 Step_2 7437176fc9e68547
|
||||
0 1381 1666217890128871360 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1381 1424 1666217890172872578 Step_2 7437176fc9e68547
|
||||
0 997 1666218374062493836 CMakeFiles/Step_2.dir/src/world.cpp.o 9ae7336b91871660
|
||||
0 1320 1666218374386503078 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1320 1358 1666218374422504103 Step_2 7437176fc9e68547
|
||||
1 942 1666218674383099244 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o c0cac41f151ac323
|
||||
1 1007 1666218674447101084 CMakeFiles/Step_2.dir/src/raytracing.cpp.o d0ae86d239f7153
|
||||
1 1289 1666218674727109140 CMakeFiles/Step_2.dir/src/util/models.cpp.o 7aa2ab72df0658e
|
||||
1 1342 1666218674779110635 CMakeFiles/Step_2.dir/src/world.cpp.o 9ae7336b91871660
|
||||
1 1597 1666218675035117999 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
0 2433 1666218675871142048 CMakeFiles/Step_2.dir/src/image/image.cpp.o f94f9df081e81271
|
||||
2433 2478 1666218675919143428 Step_2 7437176fc9e68547
|
||||
0 1373 1666218737704921878 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1373 1413 1666218737744923030 Step_2 7437176fc9e68547
|
||||
2 1448 1666220004262511612 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o c0cac41f151ac323
|
||||
2 1482 1666220004294511493 CMakeFiles/Step_2.dir/src/raytracing.cpp.o d0ae86d239f7153
|
||||
2 1663 1666220004478510816 CMakeFiles/Step_2.dir/src/world.cpp.o 9ae7336b91871660
|
||||
2 1879 1666220004694510019 CMakeFiles/Step_2.dir/src/util/models.cpp.o 7aa2ab72df0658e
|
||||
1 2049 1666220004862509401 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1 2908 1666220005722506266 CMakeFiles/Step_2.dir/src/image/image.cpp.o f94f9df081e81271
|
||||
2909 2956 1666220005770506091 Step_2 7437176fc9e68547
|
||||
1 1232 1666220317311320782 CMakeFiles/Step_2.dir/src/math/colliders.cpp.o c0cac41f151ac323
|
||||
1 1413 1666220317491322171 CMakeFiles/Step_2.dir/src/raytracing.cpp.o d0ae86d239f7153
|
||||
1 1568 1666220317647323373 CMakeFiles/Step_2.dir/src/world.cpp.o 9ae7336b91871660
|
||||
1 1708 1666220317783324422 CMakeFiles/Step_2.dir/src/util/models.cpp.o 7aa2ab72df0658e
|
||||
1 2010 1666220318087326770 CMakeFiles/Step_2.dir/src/main.cpp.o 8da3d580eb6e9a1
|
||||
1 2840 1666220318919333214 CMakeFiles/Step_2.dir/src/image/image.cpp.o f94f9df081e81271
|
||||
2840 2881 1666220318959333521 Step_2 7437176fc9e68547
|
||||
|
|
After Width: | Height: | Size: 1.3 MiB |
After Width: | Height: | Size: 448 KiB |
After Width: | Height: | Size: 448 KiB |
After Width: | Height: | Size: 171 KiB |
After Width: | Height: | Size: 264 KiB |
After Width: | Height: | Size: 244 KiB |
After Width: | Height: | Size: 267 KiB |
After Width: | Height: | Size: 334 KiB |
After Width: | Height: | Size: 358 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 154 KiB |
|
@ -1,6 +1,6 @@
|
|||
# This is the CMakeCache file.
|
||||
# For build in directory: /home/brett/Documents/Brock/CS 3P93/Project/Step 2/cmake-build-release
|
||||
# It was generated by CMake: /usr/bin/cmake
|
||||
# It was generated by CMake: /opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/bin/cmake
|
||||
# You can edit this file to change values found and used by cmake.
|
||||
# If you do not want to change any of the values, simply exit the editor.
|
||||
# If you do want to change a value, simply edit, save, and exit the editor.
|
||||
|
@ -232,15 +232,15 @@ CMAKE_CACHEFILE_DIR:INTERNAL=/home/brett/Documents/Brock/CS 3P93/Project/Step 2/
|
|||
//Major version of cmake used to create the current loaded cache
|
||||
CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
|
||||
//Minor version of cmake used to create the current loaded cache
|
||||
CMAKE_CACHE_MINOR_VERSION:INTERNAL=24
|
||||
CMAKE_CACHE_MINOR_VERSION:INTERNAL=23
|
||||
//Patch version of cmake used to create the current loaded cache
|
||||
CMAKE_CACHE_PATCH_VERSION:INTERNAL=2
|
||||
//Path to CMake executable.
|
||||
CMAKE_COMMAND:INTERNAL=/usr/bin/cmake
|
||||
CMAKE_COMMAND:INTERNAL=/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/bin/cmake
|
||||
//Path to cpack program executable.
|
||||
CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack
|
||||
CMAKE_CPACK_COMMAND:INTERNAL=/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/bin/cpack
|
||||
//Path to ctest program executable.
|
||||
CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest
|
||||
CMAKE_CTEST_COMMAND:INTERNAL=/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/bin/ctest
|
||||
//ADVANCED property for variable: CMAKE_CXX_COMPILER
|
||||
CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR
|
||||
|
@ -333,7 +333,7 @@ CMAKE_RANLIB-ADVANCED:INTERNAL=1
|
|||
//ADVANCED property for variable: CMAKE_READELF
|
||||
CMAKE_READELF-ADVANCED:INTERNAL=1
|
||||
//Path to CMake installation.
|
||||
CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.24
|
||||
CMAKE_ROOT:INTERNAL=/opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23
|
||||
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
|
||||
CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Ninja" Generator, CMake Version 3.24
|
||||
# Generated by "Ninja" Generator, CMake Version 3.23
|
||||
|
||||
# This file contains all the rules used to get the outputs files
|
||||
# built from the input files.
|
||||
|
@ -42,7 +42,7 @@ rule CUSTOM_COMMAND
|
|||
# Rule for re-running cmake.
|
||||
|
||||
rule RERUN_CMAKE
|
||||
command = /usr/bin/cmake --regenerate-during-build -S"/home/brett/Documents/Brock/CS 3P93/Project/Step 2" -B"/home/brett/Documents/Brock/CS 3P93/Project/Step 2/cmake-build-release"
|
||||
command = /opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/bin/cmake --regenerate-during-build -S"/home/brett/Documents/Brock/CS 3P93/Project/Step 2" -B"/home/brett/Documents/Brock/CS 3P93/Project/Step 2/cmake-build-release"
|
||||
description = Re-running CMake...
|
||||
generator = 1
|
||||
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
Start testing: Oct 19 00:41 EDT
|
||||
Start testing: Oct 19 18:58 EDT
|
||||
----------------------------------------------------------
|
||||
End testing: Oct 19 00:41 EDT
|
||||
End testing: Oct 19 18:58 EDT
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
|
||||
namespace Raytracing {
|
||||
|
||||
// glorified structure to store our image data.
|
||||
class Image {
|
||||
private:
|
||||
int width;
|
||||
|
@ -41,6 +42,7 @@ namespace Raytracing {
|
|||
~Image();
|
||||
};
|
||||
|
||||
// image writer class used to output the image to a file.
|
||||
class ImageOutput {
|
||||
private:
|
||||
Image image;
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
#include <math/vectors.h>
|
||||
|
||||
namespace Raytracing {
|
||||
// 3D Axis Aligned Bounding Box
|
||||
// 3D Axis Aligned Bounding Box for use in a BVH
|
||||
class AABB {
|
||||
protected:
|
||||
Vec4 min;
|
||||
|
|
|
@ -6,11 +6,14 @@
|
|||
#ifndef STEP_2_VECTORS_H
|
||||
#define STEP_2_VECTORS_H
|
||||
|
||||
// this is a big TODO: add AVX2 instructions to vector class, AVX512 isn't supported on my CPU.
|
||||
#define USE_SIMD_CPU
|
||||
// AVX512 isn't supported on my CPU. We will use AVX2 since it is supported by most modern CPUs
|
||||
// THIS IS CURRENTLY BROKEN. DO NOT USE. it's a great idea, but I've run out of time to debug this. Will be in step 3
|
||||
//#define USE_SIMD_CPU
|
||||
|
||||
#ifdef USE_SIMD_CPU
|
||||
|
||||
#include <immintrin.h>
|
||||
|
||||
#endif
|
||||
|
||||
#include <cmath>
|
||||
|
@ -23,168 +26,303 @@ namespace Raytracing {
|
|||
// but if we move to the GPU it has to be a float.
|
||||
// since GPUs generally are far more optimized for floats
|
||||
// If using AVX or other SIMD instructions it should be double, only to fit into 256bits.
|
||||
// TODO would be to add support for 128bit AVX vectors.
|
||||
|
||||
#ifdef USE_SIMD_CPU
|
||||
// don't change this.
|
||||
typedef double PRECISION_TYPE;
|
||||
|
||||
class Vec4 {
|
||||
private:
|
||||
__m128 VectorValues;
|
||||
public:
|
||||
Vec4(): VectorValues{_mm256_set_pd(0.0, 0.0, 0.0, 0.0)} {}
|
||||
Vec4(PRECISION_TYPE x, PRECISION_TYPE y, PRECISION_TYPE z): VectorValues{x, y, z, 0} {}
|
||||
Vec4(PRECISION_TYPE x, PRECISION_TYPE y, PRECISION_TYPE z, PRECISION_TYPE w): VectorValues{x, y, z, w} {}
|
||||
Vec4(const Vec4& vec): VectorValues{vec.x(), vec.y(), vec.z(), vec.w()} {}
|
||||
}
|
||||
#elif
|
||||
// change this if you want
|
||||
typedef double PRECISION_TYPE;
|
||||
|
||||
class Vec4 {
|
||||
private:
|
||||
union xType {
|
||||
PRECISION_TYPE x;
|
||||
PRECISION_TYPE r;
|
||||
};
|
||||
union yType {
|
||||
PRECISION_TYPE y;
|
||||
PRECISION_TYPE g;
|
||||
};
|
||||
union zType {
|
||||
PRECISION_TYPE z;
|
||||
PRECISION_TYPE b;
|
||||
};
|
||||
union wType {
|
||||
PRECISION_TYPE w;
|
||||
PRECISION_TYPE a;
|
||||
};
|
||||
|
||||
struct valueType {
|
||||
xType v1;
|
||||
yType v2;
|
||||
zType v3;
|
||||
wType v4;
|
||||
};
|
||||
// isn't much of a reason to do it this way
|
||||
// beyond I wanted an explicit immutable vector type of length 4
|
||||
// that could be used as both x,y,z + w? and rgba
|
||||
// it's unlikely that we'll need to use the w component
|
||||
// but it helps better line up with the GPU
|
||||
// and floating point units (especially on GPUs) tend to be aligned to 4*sizeof(float)
|
||||
valueType value;
|
||||
public:
|
||||
Vec4(): value{0, 0, 0, 0} {}
|
||||
Vec4(PRECISION_TYPE x, PRECISION_TYPE y, PRECISION_TYPE z): value{x, y, z, 0} {}
|
||||
Vec4(PRECISION_TYPE x, PRECISION_TYPE y, PRECISION_TYPE z, PRECISION_TYPE w): value{x, y, z, w} {}
|
||||
Vec4(const Vec4& vec): value{vec.x(), vec.y(), vec.z(), vec.w()} {}
|
||||
|
||||
|
||||
// most of the modern c++ here is because clang tidy was annoying me
|
||||
[[nodiscard]] inline PRECISION_TYPE x() const { return value.v1.x; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE y() const { return value.v2.y; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE z() const { return value.v3.z; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE w() const { return value.v4.w; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE r() const { return value.v1.r; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE g() const { return value.v2.g; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE b() const { return value.v3.b; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE a() const { return value.v4.a; }
|
||||
|
||||
// negation operator
|
||||
Vec4 operator-() const { return {-x(), -y(), -z(), -w()}; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE magnitude() const {
|
||||
return sqrt(lengthSquared());
|
||||
}
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE lengthSquared() const {
|
||||
return x() * x() + y() * y() + z() * z() + w() * w();
|
||||
}
|
||||
|
||||
// returns the unit-vector.
|
||||
[[nodiscard]] inline Vec4 normalize() const {
|
||||
PRECISION_TYPE mag = magnitude();
|
||||
return {x() / mag, y() / mag, z() / mag, w() / mag};
|
||||
}
|
||||
|
||||
// add operator before the vec returns the magnitude
|
||||
PRECISION_TYPE operator+() const {
|
||||
return magnitude();
|
||||
}
|
||||
|
||||
// preforms the dot product of left * right
|
||||
static inline PRECISION_TYPE dot(const Vec4& left, const Vec4& right) {
|
||||
return left.x() * right.x()
|
||||
+ left.y() * right.y()
|
||||
+ left.z() * right.z();
|
||||
}
|
||||
|
||||
// preforms the cross product of left X right
|
||||
// since a general solution to the cross product doesn't exist in 4d
|
||||
// we are going to ignore the w.
|
||||
static inline Vec4 cross(const Vec4& left, const Vec4& right) {
|
||||
return {left.y() * right.z() - left.z() * right.y(),
|
||||
left.z() * right.x() - left.x() * right.z(),
|
||||
left.x() * right.y() - left.y() * right.x()};
|
||||
}
|
||||
// don't change this. (working on a float version)
|
||||
typedef double PRECISION_TYPE;
|
||||
|
||||
union AVXConvert {
|
||||
struct {
|
||||
double _x, _y, _z, _w;
|
||||
};
|
||||
__m256d avxData;
|
||||
};
|
||||
|
||||
// Utility Functions
|
||||
class Vec4 {
|
||||
private:
|
||||
// makes it easy to convert between AVX and double data types.
|
||||
union {
|
||||
struct {
|
||||
double _x, _y, _z, _w;
|
||||
};
|
||||
__m256d avxData;
|
||||
};
|
||||
|
||||
// useful for printing out the vector to stdout
|
||||
inline std::ostream& operator<<(std::ostream& out, const Vec4& v) {
|
||||
return out << "Vec4{" << v.x() << ", " << v.y() << ", " << v.z() << ", " << v.w() << "} ";
|
||||
}
|
||||
// finally a use for friend!
|
||||
friend Vec4 operator+(const Vec4& left, const Vec4& right);
|
||||
friend Vec4 operator-(const Vec4& left, const Vec4& right);
|
||||
friend Vec4 operator*(const Vec4& left, const Vec4& right);
|
||||
friend Vec4 operator/(const Vec4& left, const Vec4& right);
|
||||
public:
|
||||
|
||||
// adds the two vectors left and right
|
||||
inline Vec4 operator+(const Vec4& left, const Vec4& right) {
|
||||
return {left.x() + right.x(), left.y() + right.y(), left.z() + right.z(), left.w() + right.w()};
|
||||
}
|
||||
Vec4(): avxData{_mm256_set_pd(0.0, 0.0, 0.0, 0.0)} {}
|
||||
Vec4(PRECISION_TYPE x, PRECISION_TYPE y, PRECISION_TYPE z): avxData{_mm256_set_pd(x, y, z, 0)} {}
|
||||
Vec4(PRECISION_TYPE x, PRECISION_TYPE y, PRECISION_TYPE z, PRECISION_TYPE w): avxData{_mm256_set_pd(x, y, z, w)} {}
|
||||
Vec4(const Vec4& vec): avxData{_mm256_set_pd(vec.x(), vec.y(), vec.z(), vec.w())} {}
|
||||
|
||||
// subtracts the right vector from the left.
|
||||
inline Vec4 operator-(const Vec4& left, const Vec4& right) {
|
||||
return {left.x() - right.x(), left.y() - right.y(), left.z() - right.z(), left.w() - right.w()};
|
||||
}
|
||||
// most of the modern c++ here is because clang tidy was annoying me
|
||||
[[nodiscard]] inline PRECISION_TYPE x() const { return _x; }
|
||||
|
||||
// multiples the left with the right
|
||||
inline Vec4 operator*(const Vec4& left, const Vec4& right) {
|
||||
return {left.x() * right.x(), left.y() * right.y(), left.z() * right.z(), left.w() * right.w()};
|
||||
}
|
||||
[[nodiscard]] inline PRECISION_TYPE y() const { return _y; }
|
||||
|
||||
// divides each element individually
|
||||
inline Vec4 operator/(const Vec4& left, const Vec4& right) {
|
||||
return {left.x() / right.x(), left.y() / right.y(), left.z() / right.z(), left.w() / right.w()};
|
||||
}
|
||||
[[nodiscard]] inline PRECISION_TYPE z() const { return _z; }
|
||||
|
||||
// multiplies the const c with each element in the vector v
|
||||
inline Vec4 operator*(const PRECISION_TYPE c, const Vec4& v) {
|
||||
return {c * v.x(), c * v.y(), c * v.z(), c * v.w()};
|
||||
}
|
||||
[[nodiscard]] inline PRECISION_TYPE w() const { return _w; }
|
||||
|
||||
// same as above but for right sided constants
|
||||
inline Vec4 operator*(const Vec4& v, PRECISION_TYPE c) {
|
||||
return c * v;
|
||||
}
|
||||
[[nodiscard]] inline PRECISION_TYPE r() const { return _x; }
|
||||
|
||||
// divides the vector by the constant c
|
||||
inline Vec4 operator/(const Vec4& v, PRECISION_TYPE c) {
|
||||
return {v.x() / c, v.y() / c, v.z() / c, v.w() / c};
|
||||
}
|
||||
[[nodiscard]] inline PRECISION_TYPE g() const { return _y; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE b() const { return _z; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE a() const { return _w; }
|
||||
|
||||
// negation operator
|
||||
Vec4 operator-() const { return {-x(), -y(), -z(), -w()}; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE magnitude() const {
|
||||
return sqrt(lengthSquared());
|
||||
}
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE lengthSquared() const {
|
||||
return Vec4::dot(*this, *this);
|
||||
}
|
||||
|
||||
// returns the unit-vector.
|
||||
[[nodiscard]] inline Vec4 normalize() const {
|
||||
PRECISION_TYPE mag = magnitude();
|
||||
return {x() / mag, y() / mag, z() / mag, w() / mag};
|
||||
}
|
||||
|
||||
// add operator before the vec returns the magnitude
|
||||
PRECISION_TYPE operator+() const {
|
||||
return magnitude();
|
||||
}
|
||||
|
||||
// preforms the dot product of left * right
|
||||
static inline PRECISION_TYPE dot(const Vec4& left, const Vec4& right) {
|
||||
// multiply the elements of the vectors
|
||||
__m256d mul = _mm256_mul_pd(left.avxData, right.avxData);
|
||||
// horizontal add. element 0 and 2 (or 1 and 3) contain the results which we must scalar add.
|
||||
__m256d sum = _mm256_hadd_pd(mul, mul);
|
||||
AVXConvert conv {};
|
||||
conv.avxData = sum;
|
||||
// boom! dot product. much easier than cross
|
||||
return conv._x + conv._y;
|
||||
}
|
||||
|
||||
// preforms the cross product of left X right
|
||||
// since a general solution to the cross product doesn't exist in 4d
|
||||
// we are going to ignore the w.
|
||||
static inline Vec4 cross(const Vec4& left, const Vec4& right) {
|
||||
// shuffle left values for alignment with the cross algorithm
|
||||
// (read the shuffle selector from right to left) takes the y and places it in the first element of the resultant vector
|
||||
// takes the z and places it in the second element of the vector
|
||||
// takes the x element and places it in the 3rd element of the vector
|
||||
// and then the w element in the last element of the vector
|
||||
// creating the alignment {left.y(), left.z(), left.x(), left.w()} (as seen in the cross algorithm
|
||||
__m256d leftLeftShuffle = _mm256_shuffle_pd(left.avxData, left.avxData, _MM_SHUFFLE(3,0,2,1));
|
||||
// same thing but produces {right.z(), right.x(), right.y(), right.w()}
|
||||
__m256d rightLeftShuffle = _mm256_shuffle_pd(right.avxData, right.avxData, _MM_SHUFFLE(3,1,0,2));
|
||||
// multiply to do the first step of the cross process
|
||||
__m256d multiLeft = _mm256_mul_pd(leftLeftShuffle, rightLeftShuffle);
|
||||
// now we have to do the right side multiplications
|
||||
// {left.z(), left.x(), left.y(), left.w()}
|
||||
__m256d leftRightShuffle = _mm256_shuffle_pd(left.avxData, left.avxData, _MM_SHUFFLE(3,1,0,2));
|
||||
// {right.y(), right.z(), right.x(), right.w()}
|
||||
__m256d rightRightShuffle = _mm256_shuffle_pd(right.avxData, right.avxData, _MM_SHUFFLE(3,0,2,1));
|
||||
// multiply the right sides of the subtraction sign
|
||||
__m256d multiRight = _mm256_mul_pd(leftRightShuffle, rightRightShuffle);
|
||||
// then subtract to produce the cross product
|
||||
__m256d subs = _mm256_sub_pd(multiLeft, multiRight);
|
||||
// yes this looks a lot more complicated, but it should be faster!
|
||||
AVXConvert conv {};
|
||||
conv.avxData = subs;
|
||||
return {conv._x, conv._y, conv._z, conv._w};
|
||||
}
|
||||
};
|
||||
|
||||
// adds the two vectors left and right
|
||||
inline Vec4 operator+(const Vec4& left, const Vec4& right) {
|
||||
__m256d added = _mm256_add_pd(left.avxData, right.avxData);
|
||||
AVXConvert conv {};
|
||||
conv.avxData = added;
|
||||
return {conv._x, conv._y, conv._z, conv._w};
|
||||
}
|
||||
|
||||
// subtracts the right vector from the left.
|
||||
inline Vec4 operator-(const Vec4& left, const Vec4& right) {
|
||||
__m256d subbed = _mm256_sub_pd(left.avxData, right.avxData);
|
||||
AVXConvert conv {};
|
||||
conv.avxData = subbed;
|
||||
return {conv._x, conv._y, conv._z, conv._w};
|
||||
}
|
||||
|
||||
// multiples the left with the right
|
||||
inline Vec4 operator*(const Vec4& left, const Vec4& right) {
|
||||
__m256d multiplied = _mm256_mul_pd(left.avxData, right.avxData);
|
||||
AVXConvert conv {};
|
||||
conv.avxData = multiplied;
|
||||
return {conv._x, conv._y, conv._z, conv._w};
|
||||
}
|
||||
|
||||
// divides each element individually
|
||||
inline Vec4 operator/(const Vec4& left, const Vec4& right) {
|
||||
__m256d dived = _mm256_div_pd(left.avxData, right.avxData);
|
||||
AVXConvert conv {};
|
||||
conv.avxData = dived;
|
||||
return {conv._x, conv._y, conv._z, conv._w};
|
||||
}
|
||||
|
||||
#else
|
||||
// change this if you want
|
||||
typedef double PRECISION_TYPE;
|
||||
|
||||
class Vec4 {
|
||||
private:
|
||||
union xType {
|
||||
PRECISION_TYPE x;
|
||||
PRECISION_TYPE r;
|
||||
};
|
||||
union yType {
|
||||
PRECISION_TYPE y;
|
||||
PRECISION_TYPE g;
|
||||
};
|
||||
union zType {
|
||||
PRECISION_TYPE z;
|
||||
PRECISION_TYPE b;
|
||||
};
|
||||
union wType {
|
||||
PRECISION_TYPE w;
|
||||
PRECISION_TYPE a;
|
||||
};
|
||||
|
||||
struct valueType {
|
||||
xType v1;
|
||||
yType v2;
|
||||
zType v3;
|
||||
wType v4;
|
||||
};
|
||||
// isn't much of a reason to do it this way
|
||||
// it's unlikely that we'll need to use the w component
|
||||
// but it helps better line up with the GPU and other SIMD type instructions, like what's above.
|
||||
valueType value;
|
||||
public:
|
||||
Vec4(): value{0, 0, 0, 0} {}
|
||||
Vec4(PRECISION_TYPE x, PRECISION_TYPE y, PRECISION_TYPE z): value{x, y, z, 0} {}
|
||||
Vec4(PRECISION_TYPE x, PRECISION_TYPE y, PRECISION_TYPE z, PRECISION_TYPE w): value{x, y, z, w} {}
|
||||
Vec4(const Vec4& vec): value{vec.x(), vec.y(), vec.z(), vec.w()} {}
|
||||
|
||||
|
||||
// most of the modern c++ here is because clang tidy was annoying me
|
||||
[[nodiscard]] inline PRECISION_TYPE x() const { return value.v1.x; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE y() const { return value.v2.y; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE z() const { return value.v3.z; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE w() const { return value.v4.w; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE r() const { return value.v1.r; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE g() const { return value.v2.g; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE b() const { return value.v3.b; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE a() const { return value.v4.a; }
|
||||
|
||||
// negation operator
|
||||
Vec4 operator-() const { return {-x(), -y(), -z(), -w()}; }
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE magnitude() const {
|
||||
return sqrt(lengthSquared());
|
||||
}
|
||||
|
||||
[[nodiscard]] inline PRECISION_TYPE lengthSquared() const {
|
||||
return x() * x() + y() * y() + z() * z() + w() * w();
|
||||
}
|
||||
|
||||
// returns the unit-vector.
|
||||
[[nodiscard]] inline Vec4 normalize() const {
|
||||
PRECISION_TYPE mag = magnitude();
|
||||
return {x() / mag, y() / mag, z() / mag, w() / mag};
|
||||
}
|
||||
|
||||
// add operator before the vec returns the magnitude
|
||||
PRECISION_TYPE operator+() const {
|
||||
return magnitude();
|
||||
}
|
||||
|
||||
// preforms the dot product of left * right
|
||||
static inline PRECISION_TYPE dot(const Vec4& left, const Vec4& right) {
|
||||
return left.x() * right.x()
|
||||
+ left.y() * right.y()
|
||||
+ left.z() * right.z();
|
||||
}
|
||||
|
||||
// preforms the cross product of left X right
|
||||
// since a general solution to the cross product doesn't exist in 4d
|
||||
// we are going to ignore the w.
|
||||
static inline Vec4 cross(const Vec4& left, const Vec4& right) {
|
||||
return {left.y() * right.z() - left.z() * right.y(),
|
||||
left.z() * right.x() - left.x() * right.z(),
|
||||
left.x() * right.y() - left.y() * right.x()};
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
// Utility Functions
|
||||
|
||||
// adds the two vectors left and right
|
||||
inline Vec4 operator+(const Vec4& left, const Vec4& right) {
|
||||
return {left.x() + right.x(), left.y() + right.y(), left.z() + right.z(), left.w() + right.w()};
|
||||
}
|
||||
|
||||
// subtracts the right vector from the left.
|
||||
inline Vec4 operator-(const Vec4& left, const Vec4& right) {
|
||||
return {left.x() - right.x(), left.y() - right.y(), left.z() - right.z(), left.w() - right.w()};
|
||||
}
|
||||
|
||||
// multiples the left with the right
|
||||
inline Vec4 operator*(const Vec4& left, const Vec4& right) {
|
||||
return {left.x() * right.x(), left.y() * right.y(), left.z() * right.z(), left.w() * right.w()};
|
||||
}
|
||||
|
||||
// divides each element individually
|
||||
inline Vec4 operator/(const Vec4& left, const Vec4& right) {
|
||||
return {left.x() / right.x(), left.y() / right.y(), left.z() / right.z(), left.w() / right.w()};
|
||||
}
|
||||
|
||||
// divides each element in the vector by over the constant
|
||||
inline Vec4 operator/(PRECISION_TYPE c, const Vec4& v) {
|
||||
return {c / v.x(), c / v.y(), c / v.z(), c / v.w()};
|
||||
}
|
||||
#endif
|
||||
|
||||
// none of these can be vectorized with AVX instructions
|
||||
|
||||
// useful for printing out the vector to stdout
|
||||
inline std::ostream& operator<<(std::ostream& out, const Vec4& v) {
|
||||
return out << "Vec4{" << v.x() << ", " << v.y() << ", " << v.z() << ", " << v.w() << "} ";
|
||||
}
|
||||
|
||||
// multiplies the const c with each element in the vector v
|
||||
inline Vec4 operator*(const PRECISION_TYPE c, const Vec4& v) {
|
||||
return {c * v.x(), c * v.y(), c * v.z(), c * v.w()};
|
||||
}
|
||||
|
||||
// same as above but for right sided constants
|
||||
inline Vec4 operator*(const Vec4& v, PRECISION_TYPE c) {
|
||||
return c * v;
|
||||
}
|
||||
|
||||
// divides the vector by the constant c
|
||||
inline Vec4 operator/(const Vec4& v, PRECISION_TYPE c) {
|
||||
return {v.x() / c, v.y() / c, v.z() / c, v.w() / c};
|
||||
}
|
||||
|
||||
// divides each element in the vector by over the constant
|
||||
inline Vec4 operator/(PRECISION_TYPE c, const Vec4& v) {
|
||||
return {c / v.x(), c / v.y(), c / v.z(), c / v.w()};
|
||||
}
|
||||
|
||||
class Ray {
|
||||
private:
|
||||
// the starting point for our ray
|
||||
|
@ -201,7 +339,7 @@ namespace Raytracing {
|
|||
|
||||
// not always needed, but it's good to not have to calculate the inverse inside the intersection
|
||||
// as that would be very every AABB, and that is expensive
|
||||
[[nodiscard]] Vec4 getInverseDirection() const {return inverseDirection; }
|
||||
[[nodiscard]] Vec4 getInverseDirection() const { return inverseDirection; }
|
||||
|
||||
// returns a point along the ray, extended away from start by the length.
|
||||
[[nodiscard]] inline Vec4 along(PRECISION_TYPE length) const { return start + length * direction; }
|
||||
|
|
|
@ -35,10 +35,15 @@ namespace Raytracing {
|
|||
public:
|
||||
Camera(PRECISION_TYPE fov, const Image& image): image(image),
|
||||
aspectRatio(double(image.getWidth()) / double(image.getHeight())) {
|
||||
// scale the viewport height based on the camera's FOV
|
||||
viewportHeight = (2.0 * tan(degreeeToRadian(fov) / 2));
|
||||
// with must respect the aspect ratio of the image, otherwise we'd get funky results
|
||||
viewportWidth = (aspectRatio * viewportHeight);
|
||||
// horizontal direction from the camera. used to translate the camera
|
||||
horizontalAxis = (Vec4{viewportWidth, 0, 0, 0});
|
||||
// virtual direction, also used to translate the camera
|
||||
verticalAxis = (Vec4{0, viewportHeight, 0, 0});
|
||||
// lower left of the camera's view port. used to project our vectors from image space to world space
|
||||
imageOrigin = (position - horizontalAxis / 2 - verticalAxis / 2 - Vec4(0, 0, focalLength, 0));
|
||||
|
||||
tlog << viewportHeight << "\n";
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
# Blender 3.3.1 MTL File: 'None'
|
||||
# www.blender.org
|
|
@ -0,0 +1,16 @@
|
|||
# Blender 3.3.1
|
||||
# www.blender.org
|
||||
mtllib plane.mtl
|
||||
o Plane
|
||||
v 0.000001 -8.781555 -9.817993
|
||||
v -0.000000 -8.781555 9.817993
|
||||
v 0.000000 8.781555 -9.817993
|
||||
v -0.000001 8.781555 9.817993
|
||||
vn 1.0000 -0.0000 -0.0000
|
||||
vt 0.000000 0.000000
|
||||
vt 1.000000 0.000000
|
||||
vt 0.000000 1.000000
|
||||
vt 1.000000 1.000000
|
||||
s 0
|
||||
f 3/3/1 2/2/1 1/1/1
|
||||
f 3/3/1 4/4/1 2/2/1
|
|
@ -71,10 +71,10 @@ namespace Raytracing {
|
|||
// stride here isn't clearly defined in the docs for some reason,
|
||||
// but it's just the image's width times the number of channels
|
||||
stbi_write_png(fullFile.c_str(), image.getWidth(), image.getHeight(), 3, data, image.getWidth() * 3);
|
||||
} else if (lowerExtension.ends_with("jpg")) {
|
||||
} else if (lowerExtension.ends_with("jpg") || lowerExtension.ends_with("jpeg")) {
|
||||
stbi_write_jpg(fullFile.c_str(), image.getWidth(), image.getHeight(), 3, data, 90);
|
||||
} else
|
||||
throw std::runtime_error("Invalid format! Please use ppm, png, or jpg");
|
||||
throw std::runtime_error("Invalid format! Please use bmp, png, or jpg");
|
||||
} else {
|
||||
// the TODO: here is to check if HDR is in [0,1] or if we need to transform the value.
|
||||
float data[image.getWidth() * image.getHeight() * 3];
|
||||
|
|
|
@ -33,7 +33,18 @@ int main(int argc, char** args) {
|
|||
parser.addOption("--output", "Output Directory\n"
|
||||
"\tSet the output directory for the rendered image. Defaults to the local directory.\n", "./");
|
||||
parser.addOption("--format", "Output Format\n"
|
||||
"\tSets the output format to PPM, PNG, or JPEG. ", "PNG");
|
||||
"\tSets the output format to BMP, PNG, or JPEG. \n", "PNG");
|
||||
parser.addOption("-w", "Image Width\n"
|
||||
"\tSets the width of the output image.\n", "910");
|
||||
parser.addOption("-h", "Image Height\n"
|
||||
"\tSets the height of the output image.\n", "512");
|
||||
parser.addOption("--fov", "Camera FOV\n"
|
||||
"\tSets the FOV used to render the camera.\n", "90");
|
||||
parser.addOption("--resources", "Resources Directory\n"
|
||||
"\tSets the directory where the resources are stored.\n"
|
||||
"\tThis can be relative.Must have trailing '/' \n", "../resources/");
|
||||
// disabled because don't currently have a way to parse vectors. TODO
|
||||
//parser.addOption("--position", "Camera Position\n\tSets the position used to render the scene with the camera.\n", "{0, 0, 0}");
|
||||
|
||||
// if the parser returns non-zero then it wants us to stop execution
|
||||
// likely due to a help function being called.
|
||||
|
@ -45,17 +56,19 @@ int main(int argc, char** args) {
|
|||
parser.printAllInInfo();
|
||||
|
||||
//Raytracing::Image image(445, 256);
|
||||
Raytracing::Image image(910, 512);
|
||||
Raytracing::Image image(std::stoi(parser.getOptionValue("-w")), std::stoi(parser.getOptionValue("-h")));
|
||||
|
||||
Raytracing::Camera camera(90, image);
|
||||
Raytracing::Camera camera(std::stoi(parser.getOptionValue("--fov")), image);
|
||||
//camera.setPosition({0, 0, 1});
|
||||
camera.lookAt({2,2,-2}, {0, 0, 0}, {0, 1, 0});
|
||||
camera.lookAt({6,5,6}, {0, 0, 0}, {0, 1, 0});
|
||||
|
||||
Raytracing::World world;
|
||||
|
||||
Raytracing::OBJLoader loader;
|
||||
Raytracing::ModelData spider = loader.loadModel("spider.obj");
|
||||
Raytracing::ModelData house = loader.loadModel("house.obj");
|
||||
// assumes you are running it from a subdirectory, "build" or "cmake-build-release", etc.
|
||||
Raytracing::ModelData spider = loader.loadModel(parser.getOptionValue("--resources") + "spider.obj");
|
||||
Raytracing::ModelData house = loader.loadModel(parser.getOptionValue("--resources") + "house.obj");
|
||||
Raytracing::ModelData plane = loader.loadModel(parser.getOptionValue("--resources") + "plane.obj");
|
||||
|
||||
world.addMaterial("greenDiffuse", new Raytracing::DiffuseMaterial{Raytracing::Vec4{0, 1.0, 0, 1}});
|
||||
world.addMaterial("redDiffuse", new Raytracing::DiffuseMaterial{Raytracing::Vec4{1.0, 0, 0, 1}});
|
||||
|
@ -71,10 +84,10 @@ int main(int argc, char** args) {
|
|||
world.add(new Raytracing::SphereObject({0,-100.5,-1,0}, 100, world.getMaterial("greenDiffuse")));
|
||||
//world.add(new Raytracing::TriangleObject({0,0.1,-0.5f,0}, {{-0.5, -0.5, 0.0}, {0.5, -0.5, 0.0}, {0.0, 0.5, 0}}, world.getMaterial("greenDiffuse")));
|
||||
world.add(new Raytracing::ModelObject({0, 1, 0}, spider, world.getMaterial("redDiffuse")));
|
||||
world.add(new Raytracing::ModelObject({2, 0, 0}, house, world.getMaterial("blueDiffuse")));
|
||||
world.add(new Raytracing::ModelObject({5, 5, -10}, house, world.getMaterial("blueDiffuse")));
|
||||
world.add(new Raytracing::ModelObject({5, 0, -10}, house, world.getMaterial("blueDiffuse")));
|
||||
world.add(new Raytracing::ModelObject({5, 5, 0}, house, world.getMaterial("blueDiffuse")));
|
||||
world.add(new Raytracing::ModelObject({-5, 0.5, 0}, plane, world.getMaterial("greenMetal")));
|
||||
world.add(new Raytracing::ModelObject({5, 1, 0}, house, world.getMaterial("redDiffuse")));
|
||||
world.add(new Raytracing::ModelObject({0, 0, -5}, house, world.getMaterial("blueDiffuse")));
|
||||
world.add(new Raytracing::ModelObject({0, 0, 5}, house, world.getMaterial("blueDiffuse")));
|
||||
|
||||
Raytracing::Raycaster raycaster {camera, image, world, parser};
|
||||
|
||||
|
|
|
@ -59,7 +59,7 @@ namespace Raytracing {
|
|||
// if the material scatters the ray, ie casts a new one,
|
||||
if (scatterResults.scattered) // attenuate the recursive raycast by the material's color
|
||||
return scatterResults.attenuationColor * raycast(scatterResults.newRay, depth + 1);
|
||||
tlog << "Not scattered? " << object->getMaterial();
|
||||
//tlog << "Not scattered? " << object->getMaterial() << "\n";
|
||||
return {0,0,0};
|
||||
}
|
||||
|
||||
|
|
|
@ -135,6 +135,7 @@ namespace Raytracing {
|
|||
|
||||
static HitData checkIfTriangleGotHit(const Triangle& theTriangle, const Vec4& position, const Ray& ray, PRECISION_TYPE min, PRECISION_TYPE max) {
|
||||
// Möller–Trumbore intersection algorithm
|
||||
// https://www.scratchapixel.com/lessons/3d-basic-rendering/ray-tracing-rendering-a-triangle/moller-trumbore-ray-triangle-intersection
|
||||
// https://en.wikipedia.org/wiki/M%C3%B6ller%E2%80%93Trumbore_intersection_algorithm
|
||||
Vec4 edge1, edge2, h, s, q;
|
||||
PRECISION_TYPE a, f, u, v;
|
||||
|
@ -185,22 +186,14 @@ namespace Raytracing {
|
|||
|
||||
HitData ModelObject::checkIfHit(const Ray& ray, PRECISION_TYPE min, PRECISION_TYPE max) const {
|
||||
auto hResult = HitData{false, Vec4(), Vec4(), max};
|
||||
// must check through all the triangles in the object
|
||||
// respecting depth along the way
|
||||
// but reducing the max it can reach my the last longest vector length.
|
||||
for (const Triangle& t : triangles) {
|
||||
auto cResult = checkIfTriangleGotHit(t, position, ray, min, hResult.length);
|
||||
if (cResult.hit)
|
||||
hResult = cResult;
|
||||
}
|
||||
// if you've made it to this point this will be in the parallel step version
|
||||
// I've run out of time to mess with this
|
||||
// and I hate that he made this due in the middle of exam / assignment season
|
||||
// it's really hard for me to get in there and obsess over this
|
||||
// when i got 4 other classes cram-ing as much useless bullshit into the next week and a half for no reason other than
|
||||
// "hahahahha I rambled about nonsense in class for the last few weeks let's test your knowledge with a tedious assignment!!! woooooo!!!!!"
|
||||
// this is honestly the only good 3rd year class I've taken so far
|
||||
// Only if I had more time. THINK OF THE GRAPHS I COULD'VE MADE!!!
|
||||
// I had plans (and still do) to make graphs of every little performance bottleneck
|
||||
// but it's impossible when you got all this stuff due, C++ decides it hates you and wants to segfault for dumb reasons, and the program takes 20 MINUTES TO RUN!
|
||||
// would've been able to get the GUI stuff in and fix the BVH by visualizing the bounding boxes
|
||||
/*auto hResult = HitData{false, Vec4(), Vec4(), max};
|
||||
|
||||
auto intersected = tree->rayIntersect(ray, min, max);
|
||||
|
|