mirror of https://github.com/bjornbytes/lovr.git
Add support for HRTF under emscripten;
This commit is contained in:
parent
00726fe89e
commit
a2a90f5c85
|
@ -21,6 +21,31 @@ elseif(UNIX)
|
|||
find_package(PkgConfig REQUIRED)
|
||||
endif()
|
||||
|
||||
# PhysicsFS
|
||||
set(PHYSFS_BUILD_STATIC OFF CACHE BOOL "")
|
||||
set(PHYSFS_ARCHIVE_7Z OFF CACHE BOOL "")
|
||||
set(PHYSFS_ARCHIVE_GRP OFF CACHE BOOL "")
|
||||
set(PHYSFS_ARCHIVE_WAD OFF CACHE BOOL "")
|
||||
set(PHYSFS_ARCHIVE_HOG OFF CACHE BOOL "")
|
||||
set(PHYSFS_ARCHIVE_MVL OFF CACHE BOOL "")
|
||||
set(PHYSFS_ARCHIVE_QPAK OFF CACHE BOOL "")
|
||||
set(PHYSFS_BUILD_TEST OFF CACHE BOOL "")
|
||||
set(PHYSFS_BUILD_WX_TEST FALSE CACHE BOOL "")
|
||||
if(EMSCRIPTEN)
|
||||
option(PHYSFS_ARCHIVE_ZIP OFF)
|
||||
add_subdirectory(deps/physfs physfs)
|
||||
include_directories(deps/physfs/src)
|
||||
set(LOVR_PHYSFS physfs)
|
||||
elseif(WIN32)
|
||||
add_subdirectory(deps/physfs physfs)
|
||||
include_directories(deps/physfs/src)
|
||||
set(LOVR_PHYSFS physfs)
|
||||
else()
|
||||
find_package(PhysFS REQUIRED)
|
||||
include_directories(${PHYSFS_INCLUDE_DIR})
|
||||
set(LOVR_PHYSFS ${PHYSFS_LIBRARY})
|
||||
endif()
|
||||
|
||||
# Assimp
|
||||
set(ASSIMP_BUILD_ASSIMP_TOOLS OFF CACHE BOOL "")
|
||||
set(ASSIMP_BUILD_TESTS OFF CACHE BOOL "")
|
||||
|
@ -145,11 +170,13 @@ endif()
|
|||
set(ALSOFT_UTILS OFF CACHE BOOL "")
|
||||
set(ALSOFT_EXAMPLES OFF CACHE BOOL "")
|
||||
set(ALSOFT_TESTS OFF CACHE BOOL "")
|
||||
if (WIN32)
|
||||
if(EMSCRIPTEN)
|
||||
include_directories(deps/openal-soft/include)
|
||||
elseif(WIN32)
|
||||
add_subdirectory(deps/openal-soft openal)
|
||||
include_directories(deps/openal-soft/include)
|
||||
set(LOVR_OPENAL OpenAL32)
|
||||
elseif(NOT EMSCRIPTEN)
|
||||
else()
|
||||
pkg_search_module(OPENAL openal-soft)
|
||||
if (NOT OPENAL_FOUND)
|
||||
pkg_search_module(OPENAL openal)
|
||||
|
@ -185,31 +212,6 @@ if(NOT EMSCRIPTEN)
|
|||
set(LOVR_OPENVR openvr_api)
|
||||
endif()
|
||||
|
||||
# PhysicsFS
|
||||
set(PHYSFS_BUILD_STATIC OFF CACHE BOOL "")
|
||||
set(PHYSFS_ARCHIVE_7Z OFF CACHE BOOL "")
|
||||
set(PHYSFS_ARCHIVE_GRP OFF CACHE BOOL "")
|
||||
set(PHYSFS_ARCHIVE_WAD OFF CACHE BOOL "")
|
||||
set(PHYSFS_ARCHIVE_HOG OFF CACHE BOOL "")
|
||||
set(PHYSFS_ARCHIVE_MVL OFF CACHE BOOL "")
|
||||
set(PHYSFS_ARCHIVE_QPAK OFF CACHE BOOL "")
|
||||
set(PHYSFS_BUILD_TEST OFF CACHE BOOL "")
|
||||
set(PHYSFS_BUILD_WX_TEST FALSE CACHE BOOL "")
|
||||
if(EMSCRIPTEN)
|
||||
option(PHYSFS_ARCHIVE_ZIP OFF)
|
||||
add_subdirectory(deps/physfs physfs)
|
||||
include_directories(deps/physfs/src)
|
||||
set(LOVR_PHYSFS physfs)
|
||||
elseif(WIN32)
|
||||
add_subdirectory(deps/physfs physfs)
|
||||
include_directories(deps/physfs/src)
|
||||
set(LOVR_PHYSFS physfs)
|
||||
else()
|
||||
find_package(PhysFS REQUIRED)
|
||||
include_directories(${PHYSFS_INCLUDE_DIR})
|
||||
set(LOVR_PHYSFS ${PHYSFS_LIBRARY})
|
||||
endif()
|
||||
|
||||
# LÖVR
|
||||
set(LOVR_SRC
|
||||
src/api/audio.c
|
||||
|
|
|
@ -15,7 +15,6 @@ void lovrAudioInit() {
|
|||
lovrThrow("Unable to create OpenAL context");
|
||||
}
|
||||
|
||||
#ifndef EMSCRIPTEN
|
||||
static LPALCRESETDEVICESOFT alcResetDeviceSOFT;
|
||||
alcResetDeviceSOFT = (LPALCRESETDEVICESOFT) alcGetProcAddress(device, "alcResetDeviceSOFT");
|
||||
state.isSpatialized = alcIsExtensionPresent(device, "ALC_SOFT_HRTF");
|
||||
|
@ -24,7 +23,6 @@ void lovrAudioInit() {
|
|||
ALCint attrs[3] = { ALC_HRTF_SOFT, ALC_TRUE, 0 };
|
||||
alcResetDeviceSOFT(device, attrs);
|
||||
}
|
||||
#endif
|
||||
|
||||
state.device = device;
|
||||
state.context = context;
|
||||
|
|
|
@ -2,9 +2,7 @@
|
|||
#include "lib/vec/vec.h"
|
||||
#include <AL/al.h>
|
||||
#include <AL/alc.h>
|
||||
#ifndef EMSCRIPTEN
|
||||
#include <AL/alext.h>
|
||||
#endif
|
||||
|
||||
#pragma once
|
||||
|
||||
|
|
Loading…
Reference in New Issue