Entrega final para teoría, este incluye mejoras y añadidos como:
- Animación por funciones
- Avatar con bone-rigging
- Audio
What's Changed
- Bone Rigging animation by @Azrielx86 in #12
- 3rd person camera added by @Azrielx86 in #14
- animación 90% by @EnriqueAranda in #13
- animción canicas 100% acabadas by @EnriqueAranda in #15
- Terminado primitiva por codigo by @EnriqueAranda in #16
New Contributors
- @EnriqueAranda made their first contribution in #13
Full Changelog: 1.0...2.0
Notas 2025
Warning
Esta versión se compiló con glm-1.0.1
y assimp-5.2.5-r1
, al intentar usar versiones más actuales el modelo que utiliza bone rigging se carga incorrectamente. Igualmente, para compilarlo en Linux sin vcpkg, es necesario agregar algunas líneas en el CMakeLists.txt
diff --git a/CMakeLists.txt b/CMakeLists.txt
index ea695c9..ff7080b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -6,7 +6,8 @@ if (MSVC)
message(STATUS "Usando MSVC en Visual Studio")
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
message(STATUS "Usando Clang")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wconversion -Wdouble-promotion -Wno-sign-conversion -Wno-unknown-pragmas -fsanitize=address -fsanitize-trap")
+ add_link_options(-Wall -Wextra -Wconversion -Wdouble-promotion -Wno-sign-conversion -Wno-unknown-pragmas -fsanitize=address -fsanitize-trap)
if (CMAKE_BUILD_TYPE STREQUAL "Debug")
message(WARNING "Compilando la versión debug.")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 -DDEBUG")
@@ -42,16 +43,23 @@ if (assimp_FOUND)
endif ()
find_package(OpenAL CONFIG REQUIRED)
-find_package(FreeALUT CONFIG REQUIRED)
if (OpenAL_FOUND)
message(STATUS "OpenAL Found")
endif ()
-find_package(Stb REQUIRED)
-if (Stb_FOUND)
- message(STATUS "STB Found")
+if (vcpkg)
+ find_package(FreeALUT CONFIG REQUIRED)
+ find_package(Stb REQUIRED)
+ if (Stb_FOUND)
+ message(STATUS "STB Found")
+ endif ()
+else ()
+ include_directories("/usr/include/stb")
+ include_directories("/usr/include/AL")
+ add_link_options(-lalut -lopenal)
endif ()
+
find_package(Boost REQUIRED)
if (Boost_FOUND)
message(STATUS "Boost found")
@@ -166,9 +174,13 @@ file(COPY assets/Audios DESTINATION ${CMAKE_BINARY_DIR}/assets)
target_include_directories(ProyectoFinal_CGeIHC PRIVATE ${Stb_INCLUDE_DIR})
target_link_libraries(ProyectoFinal_CGeIHC PRIVATE GLEW::GLEW)
target_link_libraries(ProyectoFinal_CGeIHC PRIVATE glfw)
+target_link_libraries(ProyectoFinal_CGeIHC PRIVATE OpenGL)
target_link_libraries(ProyectoFinal_CGeIHC PRIVATE assimp::assimp)
target_link_libraries(ProyectoFinal_CGeIHC PRIVATE OpenAL::OpenAL)
target_link_libraries(ProyectoFinal_CGeIHC PRIVATE glm::glm)
target_link_libraries(ProyectoFinal_CGeIHC PRIVATE nlohmann_json::nlohmann_json)
target_link_libraries(ProyectoFinal_CGeIHC PRIVATE Boost::boost)
-target_link_libraries(ProyectoFinal_CGeIHC PRIVATE FreeALUT::alut)
\ No newline at end of file
+
+if (vcpkg)
+ target_link_libraries(ProyectoFinal_CGeIHC PRIVATE FreeALUT::alut)
+endif ()
\ No newline at end of file
Note
Como este es un proyecto de un semestre anterior, no se corregirán los errores encontrados tiempo después en algún commit, pero se deja como documentación aquí por si a alguien le sirve :P
Bugs conocidos
- En Linux, la textura del avatar no se carga correctamente.