Skip to content

Commit 8887bb3

Browse files
committed
first commit
0 parents  commit 8887bb3

File tree

254 files changed

+349266
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

254 files changed

+349266
-0
lines changed

.gitignore

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/build/*
2+
*.pdb
3+
4+
unity_project/build/*
5+
unity_project/Library/*
6+
unity_project/Temp/*
7+
unity_project/UWP/*
8+
unity_project/Logs/*
9+
unity_project/obj/*
10+
unity_project/UserSettings/*
11+
unity_project/*.vs
12+
unity_project/.vsconfig
13+
unity_project/*.csproj
14+
unity_project/*.sln

CMakeLists.txt

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
# Copyright 2023 Visual Computing Group, Ulm University
2+
# Author: Jan Eric Haßler
3+
4+
cmake_minimum_required(VERSION 3.26)
5+
set(CMAKE_C_STANDARD 17)
6+
set(CMAKE_C_STANDARD_REQUIRED True)
7+
project(shared_texture)
8+
9+
# LIBRARY
10+
add_library(shared_texture
11+
SHARED
12+
src/share.c
13+
src/share.h
14+
src/unity.c
15+
src/unity.h
16+
src/vk_funcs.h
17+
src/vk_utils.h
18+
)
19+
set_property(TARGET shared_texture PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>DLL")
20+
21+
set_source_files_properties(
22+
src/share.h
23+
src/unity.c
24+
src/unity.h
25+
src/vk_funcs.h
26+
src/vk_utils.h
27+
PROPERTIES HEADER_FILE_ONLY TRUE
28+
)
29+
target_include_directories(shared_texture PRIVATE include)
30+
target_link_libraries(shared_texture opengl32.lib)
31+
32+
# DEMO
33+
option(COMPILE_DEMO "compile the demo application." ON)
34+
if(COMPILE_DEMO)
35+
add_executable(shared_texture_demo
36+
demo/main.c
37+
demo/gl_funcs.h
38+
demo/opengl.c
39+
demo/vulkan.c
40+
demo/sdl.c
41+
src/share.h
42+
src/vk_funcs.h
43+
src/vk_utils.h
44+
)
45+
set_property(TARGET shared_texture_demo PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
46+
47+
set_source_files_properties(
48+
src/share.h
49+
src/vk_funcs.h
50+
src/vk_utils.h
51+
src/gl_funcs.h
52+
demo/opengl.c
53+
demo/vulkan.c
54+
demo/sdl.c
55+
PROPERTIES HEADER_FILE_ONLY TRUE
56+
)
57+
target_include_directories(shared_texture_demo PRIVATE include)
58+
target_include_directories(shared_texture_demo PRIVATE src)
59+
target_link_libraries(shared_texture_demo opengl32.lib)
60+
target_link_libraries(shared_texture_demo shared_texture)
61+
62+
include(external/SDL2/cmake/sdl2-config.cmake)
63+
add_custom_command(TARGET shared_texture_demo POST_BUILD
64+
COMMAND ${CMAKE_COMMAND} -E copy_if_different
65+
"${SDL2_LIBDIR}/SDL2.dll"
66+
$<TARGET_FILE_DIR:shared_texture_demo>)
67+
target_include_directories(shared_texture_demo PRIVATE ${SDL2_INCLUDE_DIRS})
68+
target_link_directories(shared_texture_demo PRIVATE ${SDL2_LIBDIR})
69+
target_link_libraries(shared_texture_demo Shell32.lib ${SDL2_LIBRARIES})
70+
endif()

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Share a texture between OpenGL and Vulkan

0 commit comments

Comments
 (0)