Compare commits
329 Commits
master
...
linearized
Author | SHA1 | Date | |
---|---|---|---|
|
955eee5a60 | ||
|
d26722595e | ||
|
10017bb855 | ||
|
04df8bd22f | ||
|
f496532126 | ||
|
b897dc5457 | ||
|
147ae17789 | ||
|
02a9cd7559 | ||
|
cba7d170da | ||
|
66f892bc15 | ||
|
ed6e257b69 | ||
|
ec29499416 | ||
|
f39fd522ce | ||
|
a83e6155b3 | ||
|
c7cc43a399 | ||
|
a0c73056c6 | ||
|
ed16b4aab7 | ||
|
2c0d4424a2 | ||
|
5df5d5b974 | ||
|
e80a22ebb6 | ||
|
eec5ce85c1 | ||
|
f1b54a258f | ||
|
e54e59e495 | ||
|
4e29a44505 | ||
|
1288c62ce9 | ||
|
c6d4e1d916 | ||
|
b483cb2eb9 | ||
|
4df1b8e3cb | ||
|
46f163d748 | ||
|
e35899523f | ||
|
aee4d4a8ff | ||
|
cc4842a628 | ||
|
a5de8e733e | ||
|
55ba919f7e | ||
|
bbdc6be85d | ||
|
831b0ebbb6 | ||
|
2d4e590308 | ||
|
9deaf22bca | ||
|
1998e2abc9 | ||
|
965e865d92 | ||
|
4f677b427c | ||
|
9f3b11c274 | ||
|
749f8cb2dc | ||
|
46a32b8617 | ||
|
5f87600bfb | ||
|
cb3ccb3668 | ||
|
d91d5e2028 | ||
|
bab84f01c1 | ||
|
9497e99b58 | ||
|
8a40b1705f | ||
|
70aab2a58f | ||
|
13c9893a47 | ||
|
4fe9cc2bf8 | ||
|
8da25e5beb | ||
|
5ad46dd5e9 | ||
|
ebb7045753 | ||
|
c993bd8f77 | ||
|
689a5f3d1c | ||
|
124ae53f59 | ||
|
6d6f798d12 | ||
|
2a1119da79 | ||
|
e00cb787c8 | ||
|
23abffb3ee | ||
|
b43f37f0a0 | ||
|
2e75aff5af | ||
|
9964b9be34 | ||
|
e49e4c2177 | ||
|
15f91a19b9 | ||
|
05cac9c520 | ||
|
0eacb96e81 | ||
|
6b3db436dc | ||
|
df182abd06 | ||
|
db1de34bce | ||
|
66cf9ef8d6 | ||
|
91567fca78 | ||
|
fdeb783055 | ||
|
121f357d23 | ||
|
81bead5a97 | ||
|
2e472f8921 | ||
|
b744d5b440 | ||
|
ca5618bce2 | ||
|
9c92954bc0 | ||
|
acf7325553 | ||
|
7dae5a5e8c | ||
|
f306730920 | ||
|
ad24191000 | ||
|
56be22a460 | ||
|
7a95ddf6bb | ||
|
4d36c9fb97 | ||
|
6ff8f33017 | ||
|
55cc68a333 | ||
|
c2cf71e0e6 | ||
|
cec0043caf | ||
|
ed347725e6 | ||
|
b2241a671e | ||
|
d45ed9060f | ||
|
01212ba007 | ||
|
b5f7e73c4c | ||
|
4ddc21d3c9 | ||
|
3504a2d209 | ||
|
85c6132c3e | ||
|
c406bd4b62 | ||
|
caea9b7181 | ||
|
f8d9ff0919 | ||
|
71a05e5b1e | ||
|
d67b7b5b23 | ||
|
a1981ecbca | ||
|
a05095c9dd | ||
|
20f66d996f | ||
|
cc64a524fc | ||
|
b5e5289511 | ||
|
7cb146dbbb | ||
|
bd1cedcc23 | ||
|
28839b4d3a | ||
|
2790bddd11 | ||
|
030f2f3bdd | ||
|
cf4cbd92fa | ||
|
68202bdef2 | ||
|
b0b43cc2ee | ||
|
b51cc256bd | ||
|
3f90032bf0 | ||
|
1d82412576 | ||
|
4ab04faf68 | ||
|
f4529d1430 | ||
|
a6c65efcee | ||
|
b5deb6b9e7 | ||
|
da197f063f | ||
|
4805a4a3ce | ||
|
e79128a1a5 | ||
|
3268881a13 | ||
|
c899c4e67e | ||
|
41584ef993 | ||
|
24edf1aca9 | ||
|
73d5e5fd52 | ||
|
d4168fb002 | ||
|
5e44f9680e | ||
|
7e7754ca64 | ||
|
b9b7a6e7b4 | ||
|
8eb0f6719a | ||
|
9e4cc5e4f7 | ||
|
1c687f5759 | ||
|
0cb741dbc3 | ||
|
0e06ae9fd3 | ||
|
e005c97439 | ||
|
b38e24c3db | ||
|
a8ac3c064a | ||
|
3b0881f9c1 | ||
|
049819c47a | ||
|
fe0535036f | ||
|
588b499f93 | ||
|
f559eced68 | ||
|
08716abfe8 | ||
|
7a76519edb | ||
|
581e1cd111 | ||
|
965c3f96f9 | ||
|
4adc1198b8 | ||
|
b6c694b350 | ||
|
f38ced6603 | ||
|
64aeae8143 | ||
|
8b21495faa | ||
|
be1abf584f | ||
|
315d5aec04 | ||
|
ed889ebd76 | ||
|
777d33699e | ||
|
02641d7f1c | ||
|
c96d081e3d | ||
|
e1d14c1884 | ||
|
117e3715b4 | ||
|
27080179e4 | ||
|
043205455f | ||
|
4daf4c8ccf | ||
|
81234ca22a | ||
|
8317188314 | ||
|
139945614b | ||
|
f3f870c2d1 | ||
|
edb17a9e67 | ||
|
9f1a931b0b | ||
|
91de258030 | ||
|
c5abdba83e | ||
|
869e1ed415 | ||
|
59bb4a91a7 | ||
|
ad61969176 | ||
|
414da9ba7e | ||
|
150a556c22 | ||
|
00cdbe4c5e | ||
|
594f336204 | ||
|
9d39bec46f | ||
|
d58147a935 | ||
|
4881367004 | ||
|
6a05ec47dd | ||
|
6bb0974c67 | ||
|
6a82bf122c | ||
|
c63382ba29 | ||
|
215b37f15e | ||
|
fab8665424 | ||
|
b9b2f5769e | ||
|
50c08d79ec | ||
|
60ff3452ca | ||
|
65eba6a97a | ||
|
b57b559748 | ||
|
ca4ccaef10 | ||
|
6f44ea1416 | ||
|
cc6818cd65 | ||
|
2a99eb16d5 | ||
|
6af0dcc427 | ||
|
1dc99cdf39 | ||
|
79e8f777b3 | ||
|
76745a1da8 | ||
|
90630c7ab6 | ||
|
afdaa05d27 | ||
|
3621592e4c | ||
|
a49c023305 | ||
|
c6a330f35a | ||
|
bdee3a0740 | ||
|
6ef713107e | ||
|
98d0e955e8 | ||
|
6b80e179f4 | ||
|
b3c285b4c2 | ||
|
e2dd7724ac | ||
|
4335eeb00e | ||
|
8d6483877b | ||
|
99280607e1 | ||
|
d31e50cfa8 | ||
|
24c149b656 | ||
|
fe4563e1d0 | ||
|
ae18362112 | ||
|
45ccc55786 | ||
|
35012faeec | ||
|
f17a9d4374 | ||
|
cdfc6fa94a | ||
|
c6c9c83eb7 | ||
|
1af78cb6e5 | ||
|
3504e10102 | ||
|
28c2347594 | ||
|
e4734ae34a | ||
|
ef80d0124a | ||
|
79440e2edd | ||
|
96c3ea4aac | ||
|
3c2ce439e5 | ||
|
bed712f669 | ||
|
b6c8c7ed57 | ||
|
dd1705b023 | ||
|
d524787cb7 | ||
|
e5c30e464f | ||
|
6b00de67f5 | ||
|
6a593eb319 | ||
|
a5694e0e8c | ||
|
2de9c38ce7 | ||
|
7431d0d63e | ||
|
6b904894c6 | ||
|
7736e7850f | ||
|
4161ae0ec4 | ||
|
b0ed3c467f | ||
|
78de14907a | ||
|
2bf6eb667c | ||
|
8245e0782e | ||
|
7bf1d8eed4 | ||
|
9b5426a6af | ||
|
823da599f3 | ||
|
71cb8300bd | ||
|
1cc47fa4ab | ||
|
97aeb6c965 | ||
|
ed44f71b8c | ||
|
3a9a04d4d6 | ||
|
59796882e4 | ||
|
3d936df227 | ||
|
3be8d78e1a | ||
|
0105a74b5a | ||
|
c65a745603 | ||
|
86c11e339e | ||
|
fa60d52676 | ||
|
3c0deb232f | ||
|
263f59f000 | ||
|
1006f1cbc9 | ||
|
c47ed4646d | ||
|
b74e56fe7d | ||
|
3a677c31da | ||
|
788110aaf1 | ||
|
6f59b1fb59 | ||
|
7bda59920b | ||
|
4af197d74b | ||
|
15a540e3c9 | ||
|
eadc819f80 | ||
|
b12b917a44 | ||
|
faf548d3ee | ||
|
7d0cf9fca2 | ||
|
49dfdff413 | ||
|
a8b6463674 | ||
|
9576a40af6 | ||
|
8968750015 | ||
|
715301552a | ||
|
2638b43b44 | ||
|
5a92765518 | ||
|
6a8182ab8d | ||
|
c54d6cf874 | ||
|
95627d31ae | ||
|
10f51db60f | ||
|
8a9d026aa5 | ||
|
c403814cd6 | ||
|
c58e4d01b1 | ||
|
9611c9ef08 | ||
|
5533d4e4ba | ||
|
9fc515ec24 | ||
|
ca3928e232 | ||
|
39b1ee85b0 | ||
|
94b12ae614 | ||
|
6f89c406f1 | ||
|
d11a2820d6 | ||
|
d4e38b7a41 | ||
|
dbce8c229f | ||
|
c22ae2c244 | ||
|
3086f98ecd | ||
|
bcb594c4cf | ||
|
429223a08e | ||
|
abe9513aa3 | ||
|
8f64f75b67 | ||
|
29f24d6f05 | ||
|
f6b2bd776a | ||
|
6f7486b3f8 | ||
|
4dc7897f8c | ||
|
48691338ba | ||
|
0b7f8e95d3 | ||
|
a77ed38625 | ||
|
0c4184477b | ||
|
29f4cf6279 | ||
|
288d509316 | ||
|
5c776e56f0 | ||
|
5d2acc0e53 | ||
|
925eb62831 |
6
.gitignore
vendored
@ -1,5 +1,9 @@
|
||||
binaries
|
||||
build
|
||||
Makefile
|
||||
/Makefile
|
||||
CMakeLists.txt.user
|
||||
*.cbp
|
||||
*~
|
||||
*.zip
|
||||
*.db
|
||||
*.blend1
|
||||
|
BIN
Blenderfiles/SimpleWall.blend
Normal file
BIN
Blenderfiles/marbleSmooth.blend
Normal file
BIN
Blenderfiles/movableBlock.blend
Normal file
BIN
Blenderfiles/ruins_block.blend
Normal file
BIN
Blenderfiles/ruins_column.blend
Normal file
BIN
Blenderfiles/skydome.blend
Normal file
BIN
Blenderfiles/switch_inner.blend
Normal file
BIN
Blenderfiles/switch_outer.blend
Normal file
BIN
Blenderfiles/switch_outer.blend1
Normal file
BIN
Blenderfiles/torch.blend
Normal file
@ -1,5 +1,7 @@
|
||||
CMAKE_MINIMUM_REQUIRED (VERSION 2.6)
|
||||
|
||||
add_subdirectory(converter)
|
||||
|
||||
# project/binary name:
|
||||
PROJECT(MarbleRaceGroupC)
|
||||
|
||||
@ -55,19 +57,17 @@ set(dir ${CMAKE_CURRENT_SOURCE_DIR}/binaries)
|
||||
set(EXECUTABLE_OUTPUT_PATH ${dir} CACHE PATH "Build directory" FORCE)
|
||||
|
||||
# source and header files
|
||||
FILE(GLOB_RECURSE SOURCE_FILES_SHARED "../shared/*.cc")
|
||||
FILE(GLOB_RECURSE SOURCE_FILES "${CMAKE_SOURCE_DIR}/*.cc")
|
||||
FILE(GLOB SOURCE_FILES "${CMAKE_SOURCE_DIR}/*.cc")
|
||||
SET(SOURCE_FILES ${SOURCE_FILES} ${SOURCE_FILES_SHARED})
|
||||
|
||||
FILE(GLOB_RECURSE HEADER_FILES_SHARED "../shared/*.hh")
|
||||
FILE(GLOB_RECURSE HEADER_FILES "${CMAKE_SOURCE_DIR}/*.hh")
|
||||
FILE(GLOB HEADER_FILES "${CMAKE_SOURCE_DIR}/*.hh")
|
||||
SET(HEADER_FILES ${HEADER_FILES} ${HEADER_FILES_SHARED})
|
||||
|
||||
# shader files
|
||||
FILE(GLOB_RECURSE SHADER_FILES "${CMAKE_SOURCE_DIR}/Shader/*.*")
|
||||
|
||||
# Readme
|
||||
FILE(GLOB_RECURSE README_FILES "${CMAKE_SOURCE_DIR}/../README.TXT")
|
||||
FILE(GLOB_RECURSE README_FILES "${CMAKE_SOURCE_DIR}/../Readme.md")
|
||||
#
|
||||
#
|
||||
###############################################################################
|
||||
@ -106,7 +106,7 @@ ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# Linux:
|
||||
#
|
||||
IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
SET(LIBRARIES ${LIBRARIES} -lXrandr -lGL -lXi -pthread -lm -lX11 -lXxf86vm)
|
||||
SET(LIBRARIES ${LIBRARIES} -lXrandr -lGL -lXi -pthread -lm -lX11 -lXxf86vm -ldl)
|
||||
ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
#
|
||||
#
|
||||
@ -118,12 +118,33 @@ FILE(GLOB_RECURSE HEADER_FILES_BULLET ${CMAKE_SOURCE_DIR}/extern/bullet/src/*.h)
|
||||
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extern/bullet/src)
|
||||
SET(HEADER_FILES ${HEADER_FILES} ${HEADER_FILES_BULLET})
|
||||
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Windows")
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/bullet/build/lib/libBulletDynamics.a)
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/bullet/build/lib/libBulletCollision.a)
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/bullet/build/lib/libLinearMath.a)
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/bullet/build/lib/libBulletSoftBody.a)
|
||||
SET (LIBRARIES -static ${LIBRARIES} -static-libgcc -static-libstdc++)
|
||||
else()
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/bullet/build/src/BulletDynamics/libBulletDynamics.a)
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/bullet/build/src/BulletCollision/libBulletCollision.a)
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/bullet/build/src/LinearMath/libLinearMath.a)
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/bullet/build/src/BulletSoftBody/libBulletSoftBody.a)
|
||||
endif()
|
||||
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/bullet/build/src/BulletDynamics/libBulletDynamics.a)
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/bullet/build/src/BulletCollision/libBulletCollision.a)
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/bullet/build/src/LinearMath/libLinearMath.a)
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/bullet/build/src/BulletSoftBody/libBulletSoftBody.a)
|
||||
# Include Lua
|
||||
|
||||
FILE(GLOB_RECURSE HEADER_FILES_LUA ${CMAKE_SOURCE_DIR}/extern/lua/src/*.h)
|
||||
|
||||
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extern/lua/src)
|
||||
SET(HEADER_FILES ${HEADER_FILES} ${HEADER_FILES_LUA})
|
||||
|
||||
FILE(GLOB_RECURSE HEADER_FILES_LUA_BRIDGE ${CMAKE_SOURCE_DIR}/extern/luabridge/*.h)
|
||||
|
||||
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extern/luabridge)
|
||||
SET(HEADER_FILES ${HEADER_FILES} ${HEADER_FILES_LUA_BRIDGE})
|
||||
|
||||
SET (LIBRARIES ${LIBRARIES} ${CMAKE_SOURCE_DIR}/extern/lua/src/liblua.a)
|
||||
|
||||
|
||||
ADD_EXECUTABLE(${CMAKE_PROJECT_NAME} ${SOURCE_FILES} ${HEADER_FILES} ${SHADER_FILES} ${README_FILES})
|
||||
TARGET_LINK_LIBRARIES(${CMAKE_PROJECT_NAME} ${LIBRARIES})
|
||||
ADD_EXECUTABLE(MarbleRaceGroupC ${SOURCE_FILES} ${HEADER_FILES} ${SHADER_FILES} ${README_FILES})
|
||||
TARGET_LINK_LIBRARIES(MarbleRaceGroupC ${LIBRARIES} ${CMAKE_DL_LIBS})
|
||||
|
13
Dockerfile
Normal file
@ -0,0 +1,13 @@
|
||||
from ubuntu:trusty
|
||||
|
||||
run apt-get update -y
|
||||
run apt-get upgrade -y
|
||||
|
||||
run apt-get install -y build-essential
|
||||
run apt-get install -y gcc-mingw-w64
|
||||
run apt-get install -y cmake
|
||||
run apt-get install -y ninja-build
|
||||
run apt-get install -y xorg-dev
|
||||
run apt-get install -y freeglut3-dev
|
||||
run apt-get install -y zip
|
||||
run apt-get install -y libreadline6-dev
|
208354
Geometry/Bunny.ab
104285
Geometry/BunnyColors.atb
@ -1,8 +0,0 @@
|
||||
6
|
||||
-1.0 -1.0 0.0 0.0 0.0 1.0 0.0 0.0
|
||||
1.0 -1.0 0.0 0.0 0.0 1.0 1.0 0.0
|
||||
1.0 1.0 0.0 0.0 0.0 1.0 1.0 1.0
|
||||
-1.0 -1.0 0.0 0.0 0.0 1.0 0.0 0.0
|
||||
1.0 1.0 0.0 0.0 0.0 1.0 1.0 1.0
|
||||
-1.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0
|
||||
|
2069
Geometry/Sphere.obj
Before Width: | Height: | Size: 166 KiB |
3145731
Geometry/clownfishBunny.ppm
Before Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 344 KiB |
54
Levels/Geometry/SimpleWall.obj
Normal file
@ -0,0 +1,54 @@
|
||||
# Blender v2.72 (sub 0) OBJ File: 'SimpleWall.blend'
|
||||
# www.blender.org
|
||||
o Wall_Cube.001
|
||||
v 0.537791 -3.045326 3.045326
|
||||
v 0.537791 -3.045326 -3.045326
|
||||
v -0.537791 -3.045326 -3.045326
|
||||
v -0.537791 -3.045326 3.045326
|
||||
v 0.537791 3.045326 3.045326
|
||||
v 0.537791 3.045326 -3.045326
|
||||
v -0.537791 3.045326 -3.045326
|
||||
v -0.537791 3.045326 3.045326
|
||||
vt 1.002363 0.998329
|
||||
vt 1.002363 -0.001671
|
||||
vt 0.005637 -0.001671
|
||||
vt 0.394169 0.995358
|
||||
vt 0.394169 -0.004642
|
||||
vt 0.605831 -0.004642
|
||||
vt -0.003002 0.995358
|
||||
vt -0.003002 -0.004642
|
||||
vt 0.996752 -0.004642
|
||||
vt 0.605361 0.992386
|
||||
vt 0.605361 -0.007614
|
||||
vt 0.392389 -0.007614
|
||||
vt 0.001396 0.906027
|
||||
vt 0.001923 0.094175
|
||||
vt 0.998604 0.093973
|
||||
vt 1.000000 0.097080
|
||||
vt 1.000000 0.902920
|
||||
vt 0.000000 0.902920
|
||||
vt 0.005637 0.998329
|
||||
vt 0.605831 0.995358
|
||||
vt 0.996752 0.995358
|
||||
vt 0.392389 0.992386
|
||||
vt 0.998077 0.905824
|
||||
vt 0.000000 0.097080
|
||||
vn -1.000000 0.000000 0.000000
|
||||
vn 0.000000 0.000000 1.000000
|
||||
vn 1.000000 0.000000 0.000000
|
||||
vn 0.000000 0.000000 -1.000000
|
||||
vn 0.000000 1.000000 0.000000
|
||||
vn 0.000000 -1.000000 0.000000
|
||||
s off
|
||||
f 6/1/1 2/2/1 1/3/1
|
||||
f 7/4/2 3/5/2 2/6/2
|
||||
f 8/7/3 4/8/3 3/9/3
|
||||
f 5/10/4 1/11/4 4/12/4
|
||||
f 2/13/5 3/14/5 4/15/5
|
||||
f 7/16/6 6/17/6 5/18/6
|
||||
f 5/19/1 6/1/1 1/3/1
|
||||
f 6/20/2 7/4/2 2/6/2
|
||||
f 7/21/3 8/7/3 3/9/3
|
||||
f 8/22/4 5/10/4 4/12/4
|
||||
f 1/23/5 2/13/5 4/15/5
|
||||
f 8/24/6 7/16/6 5/18/6
|
739
Levels/Geometry/block.obj
Normal file
@ -0,0 +1,739 @@
|
||||
# Blender v2.72 (sub 0) OBJ File: ''
|
||||
# www.blender.org
|
||||
mtllib block.mtl
|
||||
o Block_Cube
|
||||
v 1.977493 -0.678752 -1.000000
|
||||
v 1.977493 -0.678752 -1.000000
|
||||
v -1.970033 -0.678752 -1.000001
|
||||
v 2.003582 -0.652663 -0.973911
|
||||
v 2.003582 1.295159 -0.973911
|
||||
v 2.003581 1.295159 0.973912
|
||||
v 0.003582 -0.678752 1.000000
|
||||
v -1.970034 -0.678752 0.999999
|
||||
v -1.970034 -0.678752 0.999999
|
||||
v 1.977494 1.321248 -0.999999
|
||||
v -1.970034 1.321248 -1.000000
|
||||
v -1.970034 1.321248 0.999999
|
||||
v -1.996123 1.295159 0.973910
|
||||
v -1.996123 1.295159 -0.973912
|
||||
v -1.996122 -0.652663 -0.973912
|
||||
v 1.977492 1.321248 1.000001
|
||||
v 1.977492 1.321248 1.000001
|
||||
v 0.003582 1.321248 -1.000000
|
||||
v 1.977494 1.321248 -0.999999
|
||||
v 1.977493 -0.678752 1.000000
|
||||
v 0.003582 -0.678752 -1.000000
|
||||
v -1.970033 -0.678752 -1.000001
|
||||
v -1.970034 1.321248 -1.000000
|
||||
v 1.977493 -0.678752 1.000000
|
||||
v -1.970034 1.321248 0.999999
|
||||
v 1.981206 -0.678487 -0.998011
|
||||
v 1.984843 -0.674549 -0.998943
|
||||
v 1.984843 -0.677695 -0.995797
|
||||
v 1.988331 -0.672154 -0.997642
|
||||
v 1.988331 -0.676394 -0.993402
|
||||
v 1.991598 -0.669629 -0.995858
|
||||
v 1.991598 -0.674611 -0.990877
|
||||
v 1.994578 -0.667024 -0.993628
|
||||
v 1.994578 -0.672380 -0.988272
|
||||
v 1.997210 -0.664392 -0.990996
|
||||
v 1.997210 -0.669748 -0.985640
|
||||
v 1.999440 -0.661786 -0.988016
|
||||
v 1.999440 -0.666768 -0.983034
|
||||
v 2.001224 -0.659261 -0.984749
|
||||
v 2.001224 -0.663501 -0.980509
|
||||
v 2.002525 -0.656867 -0.981261
|
||||
v 2.002525 -0.660013 -0.978115
|
||||
v 2.003316 -0.654652 -0.977624
|
||||
v 2.003316 -0.656376 -0.975900
|
||||
v 2.003316 -0.654652 0.977624
|
||||
v 2.003316 -0.656376 0.975900
|
||||
v 2.003582 -0.652663 0.973911
|
||||
v 2.002525 -0.656867 0.981261
|
||||
v 2.002525 -0.660013 0.978115
|
||||
v 2.001224 -0.659261 0.984749
|
||||
v 2.001224 -0.663501 0.980509
|
||||
v 1.999440 -0.661786 0.988016
|
||||
v 1.999440 -0.666768 0.983034
|
||||
v 1.997210 -0.669748 0.985640
|
||||
v 1.994578 -0.672380 0.988272
|
||||
v 1.997210 -0.664392 0.990996
|
||||
v 1.991598 -0.669629 0.995859
|
||||
v 1.991598 -0.674611 0.990877
|
||||
v 1.988331 -0.672154 0.997642
|
||||
v 1.988331 -0.676394 0.993402
|
||||
v 1.984843 -0.674549 0.998943
|
||||
v 1.984843 -0.677695 0.995797
|
||||
v 1.981206 -0.676763 0.999735
|
||||
v 1.981206 -0.678487 0.998011
|
||||
v 1.981206 1.319259 -0.999734
|
||||
v 1.984844 1.320191 -0.995796
|
||||
v 1.984843 1.317045 -0.998943
|
||||
v 1.988331 1.318890 -0.993402
|
||||
v 1.988331 1.314650 -0.997642
|
||||
v 1.991598 1.312125 -0.995858
|
||||
v 1.994578 1.314876 -0.988271
|
||||
v 1.994578 1.309520 -0.993627
|
||||
v 1.997210 1.306888 -0.990995
|
||||
v 1.999441 1.304282 -0.988015
|
||||
v 1.997210 1.312244 -0.985639
|
||||
v 2.001225 1.301757 -0.984748
|
||||
v 1.999441 1.309264 -0.983034
|
||||
v 2.002526 1.299363 -0.981261
|
||||
v 2.001225 1.305997 -0.980508
|
||||
v 2.003317 1.297148 -0.977623
|
||||
v 2.002526 1.302509 -0.978114
|
||||
v 2.003317 1.298872 -0.975900
|
||||
v 2.003315 1.298872 0.975901
|
||||
v 2.003315 1.297148 0.977625
|
||||
v 2.002524 1.302509 0.978115
|
||||
v 2.002524 1.299363 0.981262
|
||||
v 2.001224 1.305997 0.980510
|
||||
v 2.001224 1.301757 0.984750
|
||||
v 1.999439 1.304282 0.988017
|
||||
v 1.997209 1.312244 0.985640
|
||||
v 1.997209 1.306888 0.990996
|
||||
v 1.994577 1.314876 0.988272
|
||||
v 1.994577 1.309520 0.993628
|
||||
v 1.991597 1.312125 0.995859
|
||||
v 1.988330 1.318890 0.993403
|
||||
v 1.988330 1.314650 0.997643
|
||||
v 1.984842 1.317045 0.998944
|
||||
v 1.984842 1.320191 0.995797
|
||||
v 1.981205 1.320983 0.998011
|
||||
v 1.981205 1.319259 0.999735
|
||||
v -1.973747 -0.678487 0.998010
|
||||
v -1.977384 -0.674549 0.998943
|
||||
v -1.977384 -0.677696 0.995796
|
||||
v -1.980871 -0.676395 0.993402
|
||||
v -1.984138 -0.669629 0.995858
|
||||
v -1.984138 -0.674611 0.990876
|
||||
v -1.987118 -0.667024 0.993627
|
||||
v -1.987118 -0.672380 0.988271
|
||||
v -1.989750 -0.664392 0.990995
|
||||
v -1.989750 -0.669748 0.985639
|
||||
v -1.991981 -0.666768 0.983034
|
||||
v -1.993765 -0.659261 0.984748
|
||||
v -1.993765 -0.663501 0.980508
|
||||
v -1.995066 -0.656867 0.981261
|
||||
v -1.995066 -0.660014 0.978114
|
||||
v -1.995857 -0.654653 0.977624
|
||||
v -1.996123 -0.652663 0.973911
|
||||
v -1.995857 -0.656376 0.975900
|
||||
v -1.995857 -0.654653 -0.977625
|
||||
v -1.995857 -0.656376 -0.975901
|
||||
v -1.995065 -0.660014 -0.978115
|
||||
v -1.993765 -0.659261 -0.984750
|
||||
v -1.993765 -0.663501 -0.980510
|
||||
v -1.991981 -0.661787 -0.988017
|
||||
v -1.991981 -0.666768 -0.983035
|
||||
v -1.989750 -0.669748 -0.985640
|
||||
v -1.987118 -0.672380 -0.988273
|
||||
v -1.989750 -0.664392 -0.990997
|
||||
v -1.984138 -0.674611 -0.990878
|
||||
v -1.987118 -0.667024 -0.993629
|
||||
v -1.980871 -0.672155 -0.997643
|
||||
v -1.980871 -0.676395 -0.993403
|
||||
v -1.977383 -0.677696 -0.995798
|
||||
v -1.977383 -0.674549 -0.998944
|
||||
v -1.973746 -0.676763 -0.999735
|
||||
v -1.973746 -0.678487 -0.998012
|
||||
v -1.973747 1.319259 0.999734
|
||||
v -1.977384 1.317044 0.998942
|
||||
v -1.973747 1.320982 0.998010
|
||||
v -1.980872 1.314650 0.997642
|
||||
v -1.977384 1.320191 0.995796
|
||||
v -1.984139 1.312125 0.995858
|
||||
v -1.980872 1.318890 0.993402
|
||||
v -1.987119 1.309519 0.993627
|
||||
v -1.984139 1.317106 0.990876
|
||||
v -1.989751 1.306887 0.990995
|
||||
v -1.987119 1.314876 0.988271
|
||||
v -1.991982 1.309264 0.983034
|
||||
v -1.991982 1.304282 0.988015
|
||||
v -1.993766 1.301757 0.984748
|
||||
v -1.995066 1.299362 0.981260
|
||||
v -1.993766 1.305997 0.980508
|
||||
v -1.995857 1.297148 0.977623
|
||||
v -1.995066 1.302509 0.978114
|
||||
v -1.995857 1.298872 0.975900
|
||||
v -1.995857 1.298872 -0.975901
|
||||
v -1.995857 1.297148 -0.977625
|
||||
v -1.995066 1.302509 -0.978115
|
||||
v -1.995066 1.299362 -0.981262
|
||||
v -1.993765 1.305997 -0.980509
|
||||
v -1.993765 1.301757 -0.984749
|
||||
v -1.991981 1.304282 -0.988016
|
||||
v -1.989750 1.312244 -0.985640
|
||||
v -1.989750 1.306887 -0.990996
|
||||
v -1.987118 1.314876 -0.988272
|
||||
v -1.987118 1.309519 -0.993628
|
||||
v -1.984138 1.312125 -0.995859
|
||||
v -1.980871 1.318890 -0.993403
|
||||
v -1.980871 1.314650 -0.997643
|
||||
v -1.977384 1.317044 -0.998944
|
||||
v -1.977384 1.320191 -0.995797
|
||||
v -1.973747 1.320982 -0.998011
|
||||
v -1.973747 1.319259 -0.999735
|
||||
v 1.994578 -0.667024 0.993628
|
||||
v 1.991597 1.317107 0.990878
|
||||
v 1.991598 1.317107 -0.990876
|
||||
v 1.999439 1.309264 0.983035
|
||||
v -1.973747 -0.676763 0.999734
|
||||
v -1.980871 -0.672155 0.997642
|
||||
v -1.991981 -0.661787 0.988015
|
||||
v -1.995065 -0.656867 -0.981262
|
||||
v -1.984138 -0.669629 -0.995859
|
||||
v -1.984138 1.317106 -0.990877
|
||||
v -1.989751 1.312244 0.985639
|
||||
v -1.991981 1.309264 -0.983035
|
||||
v 0.003582 -0.678752 -1.000000
|
||||
v 0.003582 -0.678752 1.000000
|
||||
v 0.003581 1.321248 1.000000
|
||||
v 0.003581 1.321248 1.000000
|
||||
v 0.003582 1.321248 -1.000000
|
||||
v 1.981206 -0.676763 -0.999734
|
||||
v 1.981206 1.320983 -0.998010
|
||||
vt 0.839733 0.000000
|
||||
vt -0.537296 -0.000000
|
||||
vt 0.839733 0.013044
|
||||
vt 0.839733 0.986956
|
||||
vt 0.160267 0.986956
|
||||
vt 0.848833 0.000000
|
||||
vt 0.160370 0.000000
|
||||
vt 0.974265 0.996942
|
||||
vt -0.001961 0.996942
|
||||
vt -0.001961 -0.003057
|
||||
vt 1.537399 -0.000000
|
||||
vt 0.151167 0.000000
|
||||
vt 0.839733 -1.000000
|
||||
vt 0.947629 -0.000000
|
||||
vt 0.003341 -0.000000
|
||||
vt 0.003341 1.000000
|
||||
vt 0.839732 1.000000
|
||||
vt -0.537296 1.000000
|
||||
vt 0.841028 0.000133
|
||||
vt 0.842297 0.002102
|
||||
vt 0.842297 0.000528
|
||||
vt 0.848011 0.003299
|
||||
vt 0.846532 0.001179
|
||||
vt 0.847367 0.000528
|
||||
vt 0.847389 0.004562
|
||||
vt 0.845651 0.002071
|
||||
vt 0.846610 0.005864
|
||||
vt 0.844742 0.003186
|
||||
vt 0.845692 0.007180
|
||||
vt 0.843824 0.004502
|
||||
vt 0.844653 0.008483
|
||||
vt 0.842915 0.005992
|
||||
vt 0.843513 0.009746
|
||||
vt 0.842034 0.007626
|
||||
vt 0.842297 0.010943
|
||||
vt 0.841199 0.009369
|
||||
vt 0.841028 0.012050
|
||||
vt 0.840427 0.011188
|
||||
vt 0.158972 0.012050
|
||||
vt 0.159573 0.011188
|
||||
vt 0.160267 0.013044
|
||||
vt 0.157703 0.010943
|
||||
vt 0.158801 0.009369
|
||||
vt 0.156487 0.009746
|
||||
vt 0.157966 0.007626
|
||||
vt 0.155347 0.008483
|
||||
vt 0.157085 0.005992
|
||||
vt 0.156176 0.004502
|
||||
vt 0.155258 0.003186
|
||||
vt 0.154308 0.007180
|
||||
vt 0.152611 0.004562
|
||||
vt 0.154349 0.002071
|
||||
vt 0.151989 0.003299
|
||||
vt 0.153468 0.001179
|
||||
vt 0.151535 0.002102
|
||||
vt 0.152633 0.000528
|
||||
vt 0.841028 0.000995
|
||||
vt 0.841028 0.999005
|
||||
vt 0.842297 0.999472
|
||||
vt 0.842297 0.997898
|
||||
vt 0.846532 0.998821
|
||||
vt 0.848011 0.996701
|
||||
vt 0.848464 0.997898
|
||||
vt 0.847388 0.995438
|
||||
vt 0.844742 0.996814
|
||||
vt 0.846610 0.994136
|
||||
vt 0.845692 0.992820
|
||||
vt 0.844653 0.991517
|
||||
vt 0.843824 0.995498
|
||||
vt 0.843513 0.990254
|
||||
vt 0.842915 0.994008
|
||||
vt 0.842296 0.989057
|
||||
vt 0.842034 0.992374
|
||||
vt 0.841028 0.987950
|
||||
vt 0.841199 0.990631
|
||||
vt 0.840426 0.988812
|
||||
vt 0.159573 0.988812
|
||||
vt 0.158972 0.987950
|
||||
vt 0.158801 0.990631
|
||||
vt 0.157703 0.989057
|
||||
vt 0.157966 0.992374
|
||||
vt 0.156487 0.990254
|
||||
vt 0.155347 0.991517
|
||||
vt 0.156176 0.995498
|
||||
vt 0.154307 0.992820
|
||||
vt 0.155258 0.996814
|
||||
vt 0.153389 0.994136
|
||||
vt 0.152611 0.995438
|
||||
vt 0.153468 0.998821
|
||||
vt 0.151989 0.996701
|
||||
vt 0.151535 0.997898
|
||||
vt 0.841028 0.999867
|
||||
vt 0.841028 1.000132
|
||||
vt 0.841028 1.000994
|
||||
vt 0.159075 0.000995
|
||||
vt 0.157807 0.000529
|
||||
vt 0.157807 0.002102
|
||||
vt 0.153390 0.005864
|
||||
vt 0.157807 0.997899
|
||||
vt 0.157807 0.999472
|
||||
vt 0.159075 0.999868
|
||||
vt 0.159075 -0.000994
|
||||
vt 0.159075 -0.000132
|
||||
vt 0.159075 0.999005
|
||||
vt 0.160370 1.000000
|
||||
vt 0.152633 0.999472
|
||||
vt 0.154349 0.997929
|
||||
vt 0.157085 0.994008
|
||||
vt 0.846610 0.007180
|
||||
vt 0.845692 0.005864
|
||||
vt 0.845692 0.994136
|
||||
vt 0.844653 0.004562
|
||||
vt 0.844653 0.995438
|
||||
vt 0.843513 0.003299
|
||||
vt 0.843513 0.996701
|
||||
vt 0.846611 0.992820
|
||||
vt 0.153493 0.992820
|
||||
vt 0.154411 0.994136
|
||||
vt 0.154411 0.005864
|
||||
vt 0.155450 0.995439
|
||||
vt 0.155450 0.004562
|
||||
vt 0.156590 0.996702
|
||||
vt 0.156590 0.003299
|
||||
vt 0.160370 2.000000
|
||||
vt 0.159075 1.999005
|
||||
vt 0.159075 1.000994
|
||||
vt 0.153493 0.007180
|
||||
vt 0.003734 0.000000
|
||||
vt 0.003734 1.000000
|
||||
vt -0.546397 0.013044
|
||||
vt 0.848833 0.013044
|
||||
vt 1.546500 0.013044
|
||||
vt 0.151270 0.013045
|
||||
vt 0.974264 -0.003058
|
||||
vt -0.546397 -0.013044
|
||||
vt 0.848834 -0.013044
|
||||
vt -0.537296 -1.000000
|
||||
vt 0.947629 1.000000
|
||||
vt 0.151167 1.000000
|
||||
vt 0.848465 0.002102
|
||||
vt 0.847367 0.999472
|
||||
vt 0.845651 0.997929
|
||||
vt 0.159075 0.000133
|
||||
vt 0.927508 1.000000
|
||||
vt 0.927508 0.000000
|
||||
usemtl None
|
||||
s off
|
||||
f 1/1 2/1 3/2
|
||||
f 4/3 5/4 6/5
|
||||
f 7/6 8/7 9/7
|
||||
f 10/8 11/9 12/10
|
||||
f 13/5 14/4 15/3
|
||||
f 12/7 16/11 17/11
|
||||
f 18/12 19/1 10/1
|
||||
f 20/13 17/1 16/1
|
||||
f 21/12 22/2 3/2
|
||||
f 2/14 3/15 23/16
|
||||
f 11/2 10/1 19/1
|
||||
f 24/1 9/2 7/12
|
||||
f 16/17 12/18 25/18
|
||||
f 26/19 1/1 2/1
|
||||
f 27/20 28/21 26/19
|
||||
f 29/22 30/23 28/24
|
||||
f 31/25 32/26 30/23
|
||||
f 33/27 34/28 32/26
|
||||
f 35/29 36/30 34/28
|
||||
f 37/31 38/32 36/30
|
||||
f 39/33 40/34 38/32
|
||||
f 41/35 42/36 40/34
|
||||
f 42/36 41/35 43/37
|
||||
f 4/3 44/38 43/37
|
||||
f 45/39 46/40 47/41
|
||||
f 48/42 49/43 46/40
|
||||
f 50/44 51/45 49/43
|
||||
f 52/46 53/47 51/45
|
||||
f 54/48 53/47 52/46
|
||||
f 55/49 54/48 56/50
|
||||
f 57/51 58/52 55/49
|
||||
f 59/53 60/54 58/52
|
||||
f 61/55 62/56 60/54
|
||||
f 62/20 61/21 63/19
|
||||
f 64/57 63/19 20/1
|
||||
f 65/58 19/17 10/17
|
||||
f 66/59 67/60 65/58
|
||||
f 68/61 69/62 67/63
|
||||
f 70/64 69/62 68/61
|
||||
f 71/65 72/66 70/64
|
||||
f 73/67 72/66 71/65
|
||||
f 74/68 73/67 75/69
|
||||
f 76/70 74/68 77/71
|
||||
f 78/72 76/70 79/73
|
||||
f 80/74 78/72 81/75
|
||||
f 5/4 80/74 82/76
|
||||
f 83/77 84/78 6/5
|
||||
f 85/79 86/80 84/78
|
||||
f 87/81 88/82 86/80
|
||||
f 89/83 88/82 87/81
|
||||
f 90/84 91/85 89/83
|
||||
f 92/86 93/87 91/85
|
||||
f 94/88 93/87 92/86
|
||||
f 95/89 96/90 94/88
|
||||
f 97/91 96/90 95/89
|
||||
f 97/60 98/59 99/92
|
||||
f 100/93 99/94 16/17
|
||||
f 101/95 8/7 9/7
|
||||
f 102/96 103/97 101/95
|
||||
f 104/54 103/56 102/55
|
||||
f 105/51 106/52 104/54
|
||||
f 107/98 108/49 106/52
|
||||
f 109/50 110/48 108/49
|
||||
f 111/47 110/48 109/50
|
||||
f 112/44 113/45 111/47
|
||||
f 114/42 115/43 113/45
|
||||
f 115/43 114/42 116/39
|
||||
f 117/41 118/40 116/39
|
||||
f 119/37 120/38 15/3
|
||||
f 121/36 120/38 119/37
|
||||
f 122/33 123/34 121/36
|
||||
f 124/31 125/32 123/34
|
||||
f 126/30 125/32 124/31
|
||||
f 127/28 126/30 128/29
|
||||
f 129/26 127/28 130/27
|
||||
f 131/22 132/23 129/26
|
||||
f 133/24 132/23 131/22
|
||||
f 133/99 134/100 135/101
|
||||
f 136/102 135/103 3/7
|
||||
f 137/104 25/105 12/105
|
||||
f 138/99 137/104 139/101
|
||||
f 140/90 138/91 141/106
|
||||
f 142/88 140/90 143/89
|
||||
f 144/87 142/88 145/107
|
||||
f 146/85 144/87 147/86
|
||||
f 148/108 149/83 146/85
|
||||
f 150/82 149/83 148/108
|
||||
f 151/80 150/82 152/81
|
||||
f 153/78 151/80 154/79
|
||||
f 13/5 153/78 155/77
|
||||
f 156/76 157/74 14/4
|
||||
f 158/75 159/72 157/74
|
||||
f 160/73 161/70 159/72
|
||||
f 162/68 161/70 160/73
|
||||
f 163/69 164/67 162/68
|
||||
f 165/65 166/66 164/67
|
||||
f 167/64 166/66 165/65
|
||||
f 168/61 169/62 167/64
|
||||
f 170/63 169/62 168/61
|
||||
f 170/99 171/100 172/101
|
||||
f 173/103 172/102 11/7
|
||||
f 47/41 46/40 44/38
|
||||
f 46/40 49/43 42/36
|
||||
f 49/43 51/45 40/34
|
||||
f 40/34 51/45 53/47
|
||||
f 53/47 54/48 36/30
|
||||
f 54/109 55/110 34/111
|
||||
f 55/110 58/112 32/113
|
||||
f 58/112 60/114 30/115
|
||||
f 30/115 60/114 62/20
|
||||
f 28/60 62/20 64/57
|
||||
f 24/1 1/17 64/57
|
||||
f 2/1 19/17 65/58
|
||||
f 65/58 67/60 27/20
|
||||
f 67/60 69/115 29/114
|
||||
f 69/115 70/113 31/112
|
||||
f 31/112 70/113 72/111
|
||||
f 33/110 72/111 73/116
|
||||
f 35/29 73/67 74/68
|
||||
f 37/31 74/68 76/70
|
||||
f 76/70 78/72 41/35
|
||||
f 78/72 80/74 43/37
|
||||
f 80/74 5/4 4/3
|
||||
f 6/5 84/78 45/39
|
||||
f 45/39 84/78 86/80
|
||||
f 86/80 88/82 50/44
|
||||
f 88/82 89/83 52/46
|
||||
f 89/83 91/85 56/50
|
||||
f 91/116 93/111 174/110
|
||||
f 93/111 94/113 57/112
|
||||
f 57/112 94/113 96/115
|
||||
f 96/115 97/60 61/20
|
||||
f 97/60 100/58 63/57
|
||||
f 63/57 100/58 17/17
|
||||
f 10/17 16/1 99/57
|
||||
f 99/57 98/20 66/60
|
||||
f 98/20 95/114 68/115
|
||||
f 95/114 175/112 176/113
|
||||
f 175/112 92/110 71/111
|
||||
f 71/111 92/110 90/109
|
||||
f 90/84 177/108 77/71
|
||||
f 177/108 87/81 79/73
|
||||
f 87/81 85/79 81/75
|
||||
f 85/79 83/77 82/76
|
||||
f 83/77 6/5 5/4
|
||||
f 15/3 120/38 118/40
|
||||
f 120/38 121/36 115/43
|
||||
f 121/36 123/34 113/45
|
||||
f 123/34 125/32 111/47
|
||||
f 125/32 126/30 110/48
|
||||
f 126/117 127/118 108/119
|
||||
f 127/118 129/120 106/121
|
||||
f 129/120 132/122 104/123
|
||||
f 104/123 132/122 133/99
|
||||
f 133/99 136/104 101/95
|
||||
f 136/104 22/105 8/7
|
||||
f 25/124 137/125 178/126
|
||||
f 137/104 138/99 102/97
|
||||
f 138/99 140/122 179/123
|
||||
f 179/123 140/122 142/120
|
||||
f 142/120 144/118 107/119
|
||||
f 144/118 146/117 109/127
|
||||
f 109/50 146/85 149/83
|
||||
f 180/46 149/83 150/82
|
||||
f 112/44 150/82 151/80
|
||||
f 151/80 153/78 116/39
|
||||
f 153/78 13/5 117/41
|
||||
f 15/3 14/4 157/74
|
||||
f 157/74 159/72 181/35
|
||||
f 181/35 159/72 161/70
|
||||
f 161/70 162/68 124/31
|
||||
f 162/68 164/67 128/29
|
||||
f 164/117 166/118 130/119
|
||||
f 166/118 167/120 182/121
|
||||
f 167/120 169/122 131/123
|
||||
f 131/123 169/122 170/99
|
||||
f 170/99 173/104 135/95
|
||||
f 173/104 23/105 3/7
|
||||
f 11/105 172/104 139/95
|
||||
f 172/104 171/99 141/97
|
||||
f 141/97 171/99 168/122
|
||||
f 143/123 168/122 183/120
|
||||
f 183/120 165/118 147/119
|
||||
f 165/118 163/117 184/127
|
||||
f 163/69 185/71 148/108
|
||||
f 185/71 160/73 152/81
|
||||
f 152/81 160/73 158/75
|
||||
f 158/75 156/76 155/77
|
||||
f 156/76 14/4 13/5
|
||||
f 8/128 22/129 3/129
|
||||
f 186/12 1/1 21/12
|
||||
f 3/2 15/130 22/2
|
||||
f 21/12 1/1 22/2
|
||||
f 1/1 4/131 2/1
|
||||
f 22/2 1/1 3/2
|
||||
f 47/41 4/3 6/5
|
||||
f 20/11 47/132 24/11
|
||||
f 8/7 117/133 9/7
|
||||
f 9/7 20/11 24/11
|
||||
f 24/11 187/6 7/6
|
||||
f 16/134 10/8 12/10
|
||||
f 117/41 13/5 15/3
|
||||
f 16/11 6/132 17/11
|
||||
f 17/11 188/6 189/6
|
||||
f 25/7 13/133 12/7
|
||||
f 17/11 189/6 25/7
|
||||
f 17/11 25/7 12/7
|
||||
f 11/2 14/135 23/2
|
||||
f 19/1 5/136 10/1
|
||||
f 10/1 11/2 23/2
|
||||
f 23/2 190/12 18/12
|
||||
f 12/2 25/2 9/137
|
||||
f 10/1 23/2 18/12
|
||||
f 20/13 16/1 9/137
|
||||
f 10/138 19/138 2/14
|
||||
f 16/1 12/2 9/137
|
||||
f 3/2 1/1 21/12
|
||||
f 19/1 18/12 190/12
|
||||
f 2/14 23/16 10/138
|
||||
f 190/12 23/2 11/2
|
||||
f 190/12 11/2 19/1
|
||||
f 25/18 189/139 188/139
|
||||
f 188/139 17/17 16/17
|
||||
f 191/57 26/19 2/1
|
||||
f 16/17 25/18 188/139
|
||||
f 191/57 27/20 26/19
|
||||
f 27/140 29/22 28/24
|
||||
f 29/22 31/25 30/23
|
||||
f 31/25 33/27 32/26
|
||||
f 33/27 35/29 34/28
|
||||
f 35/29 37/31 36/30
|
||||
f 37/31 39/33 38/32
|
||||
f 39/33 41/35 40/34
|
||||
f 44/38 42/36 43/37
|
||||
f 45/39 48/42 46/40
|
||||
f 48/42 50/44 49/43
|
||||
f 50/44 52/46 51/45
|
||||
f 56/50 54/48 52/46
|
||||
f 174/98 55/49 56/50
|
||||
f 174/98 57/51 55/49
|
||||
f 57/51 59/53 58/52
|
||||
f 59/53 61/55 60/54
|
||||
f 64/57 62/20 63/19
|
||||
f 24/1 64/57 20/1
|
||||
f 192/92 65/58 10/17
|
||||
f 192/92 66/59 65/58
|
||||
f 66/141 68/61 67/63
|
||||
f 176/142 70/64 68/61
|
||||
f 176/142 71/65 70/64
|
||||
f 75/69 73/67 71/65
|
||||
f 77/71 74/68 75/69
|
||||
f 79/73 76/70 77/71
|
||||
f 81/75 78/72 79/73
|
||||
f 82/76 80/74 81/75
|
||||
f 83/77 85/79 84/78
|
||||
f 85/79 87/81 86/80
|
||||
f 177/108 89/83 87/81
|
||||
f 177/108 90/84 89/83
|
||||
f 90/84 92/86 91/85
|
||||
f 175/107 94/88 92/86
|
||||
f 175/107 95/89 94/88
|
||||
f 98/106 97/91 95/89
|
||||
f 100/58 97/60 99/92
|
||||
f 17/17 100/93 16/17
|
||||
f 178/143 101/95 9/7
|
||||
f 178/143 102/96 101/95
|
||||
f 179/53 104/54 102/55
|
||||
f 179/53 105/51 104/54
|
||||
f 105/51 107/98 106/52
|
||||
f 107/98 109/50 108/49
|
||||
f 180/46 111/47 109/50
|
||||
f 180/46 112/44 111/47
|
||||
f 112/44 114/42 113/45
|
||||
f 118/40 115/43 116/39
|
||||
f 181/35 121/36 119/37
|
||||
f 181/35 122/33 121/36
|
||||
f 122/33 124/31 123/34
|
||||
f 128/29 126/30 124/31
|
||||
f 130/27 127/28 128/29
|
||||
f 182/25 129/26 130/27
|
||||
f 182/25 131/22 129/26
|
||||
f 134/140 133/24 131/22
|
||||
f 136/104 133/99 135/101
|
||||
f 22/7 136/102 3/7
|
||||
f 139/101 137/104 12/105
|
||||
f 141/100 138/99 139/101
|
||||
f 143/89 140/90 141/106
|
||||
f 145/107 142/88 143/89
|
||||
f 147/86 144/87 145/107
|
||||
f 184/84 146/85 147/86
|
||||
f 184/84 148/108 146/85
|
||||
f 152/81 150/82 148/108
|
||||
f 154/79 151/80 152/81
|
||||
f 155/77 153/78 154/79
|
||||
f 156/76 158/75 157/74
|
||||
f 158/75 160/73 159/72
|
||||
f 185/71 162/68 160/73
|
||||
f 185/71 163/69 162/68
|
||||
f 163/69 165/65 164/67
|
||||
f 183/142 167/64 165/65
|
||||
f 183/142 168/61 167/64
|
||||
f 171/141 170/63 168/61
|
||||
f 173/104 170/99 172/101
|
||||
f 23/7 173/103 11/7
|
||||
f 4/3 47/41 44/38
|
||||
f 44/38 46/40 42/36
|
||||
f 42/36 49/43 40/34
|
||||
f 38/32 40/34 53/47
|
||||
f 38/32 53/47 36/30
|
||||
f 36/116 54/109 34/111
|
||||
f 34/111 55/110 32/113
|
||||
f 32/113 58/112 30/115
|
||||
f 28/60 30/115 62/20
|
||||
f 26/58 28/60 64/57
|
||||
f 64/57 1/17 26/58
|
||||
f 191/57 2/1 65/58
|
||||
f 191/57 65/58 27/20
|
||||
f 27/20 67/60 29/114
|
||||
f 29/114 69/115 31/112
|
||||
f 33/110 31/112 72/111
|
||||
f 35/109 33/110 73/116
|
||||
f 37/31 35/29 74/68
|
||||
f 39/33 37/31 76/70
|
||||
f 39/33 76/70 41/35
|
||||
f 41/35 78/72 43/37
|
||||
f 43/37 80/74 4/3
|
||||
f 47/41 6/5 45/39
|
||||
f 48/42 45/39 86/80
|
||||
f 48/42 86/80 50/44
|
||||
f 50/44 88/82 52/46
|
||||
f 52/46 89/83 56/50
|
||||
f 56/109 91/116 174/110
|
||||
f 174/110 93/111 57/112
|
||||
f 59/114 57/112 96/115
|
||||
f 59/114 96/115 61/20
|
||||
f 61/20 97/60 63/57
|
||||
f 20/1 63/57 17/17
|
||||
f 192/58 10/17 99/57
|
||||
f 192/58 99/57 66/60
|
||||
f 66/60 98/20 68/115
|
||||
f 68/115 95/114 176/113
|
||||
f 176/113 175/112 71/111
|
||||
f 75/116 71/111 90/109
|
||||
f 75/69 90/84 77/71
|
||||
f 77/71 177/108 79/73
|
||||
f 79/73 87/81 81/75
|
||||
f 81/75 85/79 82/76
|
||||
f 82/76 83/77 5/4
|
||||
f 117/41 15/3 118/40
|
||||
f 118/40 120/38 115/43
|
||||
f 115/43 121/36 113/45
|
||||
f 113/45 123/34 111/47
|
||||
f 111/47 125/32 110/48
|
||||
f 110/127 126/117 108/119
|
||||
f 108/119 127/118 106/121
|
||||
f 106/121 129/120 104/123
|
||||
f 103/97 104/123 133/99
|
||||
f 103/97 133/99 101/95
|
||||
f 101/95 136/104 8/7
|
||||
f 9/105 25/124 178/126
|
||||
f 178/95 137/104 102/97
|
||||
f 102/97 138/99 179/123
|
||||
f 105/121 179/123 142/120
|
||||
f 105/121 142/120 107/119
|
||||
f 107/119 144/118 109/127
|
||||
f 180/46 109/50 149/83
|
||||
f 112/44 180/46 150/82
|
||||
f 114/42 112/44 151/80
|
||||
f 114/42 151/80 116/39
|
||||
f 116/39 153/78 117/41
|
||||
f 119/37 15/3 157/74
|
||||
f 119/37 157/74 181/35
|
||||
f 122/33 181/35 161/70
|
||||
f 122/33 161/70 124/31
|
||||
f 124/31 162/68 128/29
|
||||
f 128/127 164/117 130/119
|
||||
f 130/119 166/118 182/121
|
||||
f 182/121 167/120 131/123
|
||||
f 134/97 131/123 170/99
|
||||
f 134/97 170/99 135/95
|
||||
f 135/95 173/104 3/7
|
||||
f 12/7 11/105 139/95
|
||||
f 139/95 172/104 141/97
|
||||
f 143/123 141/97 168/122
|
||||
f 145/121 143/123 183/120
|
||||
f 145/121 183/120 147/119
|
||||
f 147/119 165/118 184/127
|
||||
f 184/84 163/69 148/108
|
||||
f 148/108 185/71 152/81
|
||||
f 154/79 152/81 158/75
|
||||
f 154/79 158/75 155/77
|
||||
f 155/77 156/76 13/5
|
||||
f 1/144 24/145 20/145
|
||||
f 20/145 9/128 8/128
|
||||
f 3/129 1/144 20/145
|
||||
f 20/145 8/128 3/129
|
298
Levels/Geometry/column.obj
Normal file
@ -0,0 +1,298 @@
|
||||
# Blender v2.72 (sub 0) OBJ File: 'ruins_column.blend'
|
||||
# www.blender.org
|
||||
o Cylinder
|
||||
v 0.000000 -1.000000 -1.000000
|
||||
v 0.000000 1.000000 -1.000000
|
||||
v 0.195090 -1.000000 -0.980785
|
||||
v 0.195090 1.000000 -0.980785
|
||||
v 0.382683 -1.000000 -0.923880
|
||||
v 0.382683 1.000000 -0.923880
|
||||
v 0.555570 -1.000000 -0.831470
|
||||
v 0.555570 1.000000 -0.831470
|
||||
v 0.707107 -1.000000 -0.707107
|
||||
v 0.707107 1.000000 -0.707107
|
||||
v 0.831470 -1.000000 -0.555570
|
||||
v 0.831470 1.000000 -0.555570
|
||||
v 0.923880 -1.000000 -0.382683
|
||||
v 0.923880 1.000000 -0.382683
|
||||
v 0.980785 -1.000000 -0.195090
|
||||
v 0.980785 1.000000 -0.195090
|
||||
v 1.000000 -1.000000 -0.000000
|
||||
v 1.000000 1.000000 -0.000000
|
||||
v 0.980785 -1.000000 0.195090
|
||||
v 0.980785 1.000000 0.195090
|
||||
v 0.923880 -1.000000 0.382683
|
||||
v 0.923880 1.000000 0.382683
|
||||
v 0.831470 -1.000000 0.555570
|
||||
v 0.831470 1.000000 0.555570
|
||||
v 0.707107 -1.000000 0.707107
|
||||
v 0.707107 1.000000 0.707107
|
||||
v 0.555570 -1.000000 0.831470
|
||||
v 0.555570 1.000000 0.831470
|
||||
v 0.382683 -1.000000 0.923880
|
||||
v 0.382683 1.000000 0.923880
|
||||
v 0.195090 -1.000000 0.980785
|
||||
v 0.195090 1.000000 0.980785
|
||||
v -0.000000 -1.000000 1.000000
|
||||
v -0.000000 1.000000 1.000000
|
||||
v -0.195091 -1.000000 0.980785
|
||||
v -0.195091 1.000000 0.980785
|
||||
v -0.382684 -1.000000 0.923879
|
||||
v -0.382684 1.000000 0.923879
|
||||
v -0.555571 -1.000000 0.831469
|
||||
v -0.555571 1.000000 0.831469
|
||||
v -0.707107 -1.000000 0.707106
|
||||
v -0.707107 1.000000 0.707106
|
||||
v -0.831470 -1.000000 0.555570
|
||||
v -0.831470 1.000000 0.555570
|
||||
v -0.923880 -1.000000 0.382683
|
||||
v -0.923880 1.000000 0.382683
|
||||
v -0.980785 -1.000000 0.195089
|
||||
v -0.980785 1.000000 0.195089
|
||||
v -1.000000 -1.000000 -0.000001
|
||||
v -1.000000 1.000000 -0.000001
|
||||
v -0.980785 -1.000000 -0.195091
|
||||
v -0.980785 1.000000 -0.195091
|
||||
v -0.923879 -1.000000 -0.382684
|
||||
v -0.923879 1.000000 -0.382684
|
||||
v -0.831469 -1.000000 -0.555571
|
||||
v -0.831469 1.000000 -0.555571
|
||||
v -0.707106 -1.000000 -0.707108
|
||||
v -0.707106 1.000000 -0.707108
|
||||
v -0.555569 -1.000000 -0.831470
|
||||
v -0.555569 1.000000 -0.831470
|
||||
v -0.382682 -1.000000 -0.923880
|
||||
v -0.382682 1.000000 -0.923880
|
||||
v -0.195089 -1.000000 -0.980786
|
||||
v -0.195089 1.000000 -0.980786
|
||||
vt 0.445551 0.665886
|
||||
vt 0.445551 1.000293
|
||||
vt 0.404755 1.000293
|
||||
vt 0.404755 0.665886
|
||||
vt 0.364742 1.000293
|
||||
vt 0.364742 0.665886
|
||||
vt 0.327051 1.000293
|
||||
vt 0.327051 0.665886
|
||||
vt 0.293130 1.000293
|
||||
vt 0.293130 0.665886
|
||||
vt 0.264283 1.000293
|
||||
vt 0.264283 0.665886
|
||||
vt 0.264046 0.665593
|
||||
vt 0.264046 1.000000
|
||||
vt 0.230125 1.000000
|
||||
vt 0.230125 0.665593
|
||||
vt 0.192434 1.000000
|
||||
vt 0.192434 0.665593
|
||||
vt 0.152421 1.000000
|
||||
vt 0.152421 0.665593
|
||||
vt 0.111625 1.000000
|
||||
vt 0.111625 0.665593
|
||||
vt 0.071612 1.000000
|
||||
vt 0.071612 0.665593
|
||||
vt 0.033921 1.000000
|
||||
vt 0.033921 0.665593
|
||||
vt 0.000000 1.000000
|
||||
vt 0.000000 0.665593
|
||||
vt 1.172897 0.665327
|
||||
vt 1.173156 0.999734
|
||||
vt 1.139235 0.999801
|
||||
vt 1.138976 0.665395
|
||||
vt 1.101544 0.999877
|
||||
vt 1.101285 0.665470
|
||||
vt 1.061532 0.999957
|
||||
vt 1.061273 0.665550
|
||||
vt 1.020735 1.000038
|
||||
vt 1.020476 0.665632
|
||||
vt 0.980723 1.000118
|
||||
vt 0.980464 0.665712
|
||||
vt 0.943032 1.000193
|
||||
vt 0.942772 0.665787
|
||||
vt 0.909111 1.000261
|
||||
vt 0.908852 0.665855
|
||||
vt 0.880263 1.000319
|
||||
vt 0.880004 0.665913
|
||||
vt 0.846342 1.000387
|
||||
vt 0.846083 0.665980
|
||||
vt 0.808651 1.000462
|
||||
vt 0.808392 0.666056
|
||||
vt 0.768638 1.000542
|
||||
vt 0.768379 0.666136
|
||||
vt 0.727842 1.000624
|
||||
vt 0.727583 0.666217
|
||||
vt 0.687830 1.000704
|
||||
vt 0.687570 0.666297
|
||||
vt 0.650139 1.000779
|
||||
vt 0.649879 0.666372
|
||||
vt 0.616217 1.000847
|
||||
vt 0.615958 0.666440
|
||||
vt 0.587370 1.000904
|
||||
vt 0.587111 0.666498
|
||||
vt 0.586023 0.665886
|
||||
vt 0.586023 1.000293
|
||||
vt 0.557176 1.000293
|
||||
vt 0.557176 0.665886
|
||||
vt 0.523255 1.000293
|
||||
vt 0.523255 0.665886
|
||||
vt 0.186708 0.665593
|
||||
vt 0.146696 0.659199
|
||||
vt 0.109005 0.646655
|
||||
vt 0.075084 0.628445
|
||||
vt 0.046237 0.605268
|
||||
vt 0.023571 0.578014
|
||||
vt 0.007959 0.547732
|
||||
vt 0.000000 0.515584
|
||||
vt 0.000000 0.482806
|
||||
vt 0.007959 0.450658
|
||||
vt 0.023571 0.420376
|
||||
vt 0.046236 0.393122
|
||||
vt 0.075084 0.369945
|
||||
vt 0.109005 0.351735
|
||||
vt 0.146696 0.339191
|
||||
vt 0.186708 0.332797
|
||||
vt 0.227505 0.332797
|
||||
vt 0.267517 0.339191
|
||||
vt 0.305209 0.351735
|
||||
vt 0.339130 0.369945
|
||||
vt 0.367977 0.393122
|
||||
vt 0.390642 0.420376
|
||||
vt 0.406254 0.450658
|
||||
vt 0.414213 0.482806
|
||||
vt 0.414213 0.515584
|
||||
vt 0.406254 0.547731
|
||||
vt 0.390642 0.578014
|
||||
vt 0.367977 0.605268
|
||||
vt 0.339130 0.628445
|
||||
vt 0.305209 0.646655
|
||||
vt 0.267518 0.659199
|
||||
vt 0.227505 0.665593
|
||||
vt 0.485564 0.665886
|
||||
vt 0.485564 1.000293
|
||||
vt 0.000000 0.182787
|
||||
vt 0.000000 0.150010
|
||||
vt 0.007959 0.117862
|
||||
vt 0.023571 0.087579
|
||||
vt 0.046236 0.060326
|
||||
vt 0.075084 0.037148
|
||||
vt 0.109005 0.018938
|
||||
vt 0.146696 0.006395
|
||||
vt 0.186708 0.000000
|
||||
vt 0.227505 0.000000
|
||||
vt 0.267517 0.006395
|
||||
vt 0.305208 0.018938
|
||||
vt 0.339129 0.037148
|
||||
vt 0.367977 0.060326
|
||||
vt 0.390642 0.087579
|
||||
vt 0.406254 0.117862
|
||||
vt 0.414213 0.150009
|
||||
vt 0.414213 0.182787
|
||||
vt 0.406254 0.214935
|
||||
vt 0.390642 0.245217
|
||||
vt 0.367977 0.272471
|
||||
vt 0.339129 0.295648
|
||||
vt 0.305208 0.313859
|
||||
vt 0.267517 0.326402
|
||||
vt 0.146696 0.326402
|
||||
vt 0.109005 0.313858
|
||||
vt 0.075084 0.295648
|
||||
vt 0.046236 0.272471
|
||||
vt 0.023571 0.245217
|
||||
vt 0.007959 0.214935
|
||||
vn 0.000000 -0.685700 -0.727900
|
||||
vn 0.000000 0.685700 -0.727900
|
||||
vn 0.142000 0.685700 -0.713900
|
||||
vn 0.142000 -0.685700 -0.713900
|
||||
vn 0.278500 0.685700 -0.672500
|
||||
vn 0.278500 -0.685700 -0.672500
|
||||
vn 0.404400 0.685700 -0.605200
|
||||
vn 0.404400 -0.685700 -0.605200
|
||||
vn 0.514700 0.685700 -0.514700
|
||||
vn 0.514700 -0.685700 -0.514700
|
||||
vn 0.605200 0.685700 -0.404400
|
||||
vn 0.605200 -0.685700 -0.404400
|
||||
vn 0.672500 0.685700 -0.278500
|
||||
vn 0.672500 -0.685700 -0.278500
|
||||
vn 0.713900 0.685700 -0.142000
|
||||
vn 0.713900 -0.685700 -0.142000
|
||||
vn 0.727900 0.685700 0.000000
|
||||
vn 0.727900 -0.685700 0.000000
|
||||
vn 0.713900 0.685700 0.142000
|
||||
vn 0.713900 -0.685700 0.142000
|
||||
vn 0.672500 0.685700 0.278500
|
||||
vn 0.672500 -0.685700 0.278500
|
||||
vn 0.605200 0.685700 0.404400
|
||||
vn 0.605200 -0.685700 0.404400
|
||||
vn 0.514700 0.685700 0.514700
|
||||
vn 0.514700 -0.685700 0.514700
|
||||
vn 0.404400 0.685700 0.605200
|
||||
vn 0.404400 -0.685700 0.605200
|
||||
vn 0.278500 0.685700 0.672500
|
||||
vn 0.278500 -0.685700 0.672500
|
||||
vn 0.142000 0.685700 0.713900
|
||||
vn 0.142000 -0.685700 0.713900
|
||||
vn 0.000000 0.685700 0.727900
|
||||
vn 0.000000 -0.685700 0.727900
|
||||
vn -0.142000 0.685700 0.713900
|
||||
vn -0.142000 -0.685700 0.713900
|
||||
vn -0.278500 0.685700 0.672500
|
||||
vn -0.278500 -0.685700 0.672500
|
||||
vn -0.404400 0.685700 0.605200
|
||||
vn -0.404400 -0.685700 0.605200
|
||||
vn -0.514700 0.685700 0.514700
|
||||
vn -0.514700 -0.685700 0.514700
|
||||
vn -0.605200 0.685700 0.404400
|
||||
vn -0.605200 -0.685700 0.404400
|
||||
vn -0.672500 0.685700 0.278500
|
||||
vn -0.672500 -0.685700 0.278500
|
||||
vn -0.713900 0.685700 0.142000
|
||||
vn -0.713900 -0.685700 0.142000
|
||||
vn -0.727900 0.685700 0.000000
|
||||
vn -0.727900 -0.685700 0.000000
|
||||
vn -0.713900 0.685700 -0.142000
|
||||
vn -0.713900 -0.685700 -0.142000
|
||||
vn -0.672500 0.685700 -0.278500
|
||||
vn -0.672500 -0.685700 -0.278500
|
||||
vn -0.605200 0.685700 -0.404400
|
||||
vn -0.605200 -0.685700 -0.404400
|
||||
vn -0.514700 0.685700 -0.514700
|
||||
vn -0.514700 -0.685700 -0.514700
|
||||
vn -0.404400 0.685700 -0.605200
|
||||
vn -0.404400 -0.685700 -0.605200
|
||||
vn -0.278500 0.685700 -0.672500
|
||||
vn -0.278500 -0.685700 -0.672500
|
||||
vn -0.142000 0.685700 -0.713900
|
||||
vn -0.142000 -0.685700 -0.713900
|
||||
s 1
|
||||
f 1/1/1 2/2/2 4/3/3 3/4/4
|
||||
f 3/4/4 4/3/3 6/5/5 5/6/6
|
||||
f 5/6/6 6/5/5 8/7/7 7/8/8
|
||||
f 7/8/8 8/7/7 10/9/9 9/10/10
|
||||
f 9/10/10 10/9/9 12/11/11 11/12/12
|
||||
f 11/13/12 12/14/11 14/15/13 13/16/14
|
||||
f 13/16/14 14/15/13 16/17/15 15/18/16
|
||||
f 15/18/16 16/17/15 18/19/17 17/20/18
|
||||
f 17/20/18 18/19/17 20/21/19 19/22/20
|
||||
f 19/22/20 20/21/19 22/23/21 21/24/22
|
||||
f 21/24/22 22/23/21 24/25/23 23/26/24
|
||||
f 23/26/24 24/25/23 26/27/25 25/28/26
|
||||
f 25/29/26 26/30/25 28/31/27 27/32/28
|
||||
f 27/32/28 28/31/27 30/33/29 29/34/30
|
||||
f 29/34/30 30/33/29 32/35/31 31/36/32
|
||||
f 31/36/32 32/35/31 34/37/33 33/38/34
|
||||
f 33/38/34 34/37/33 36/39/35 35/40/36
|
||||
f 35/40/36 36/39/35 38/41/37 37/42/38
|
||||
f 37/42/38 38/41/37 40/43/39 39/44/40
|
||||
f 39/44/40 40/43/39 42/45/41 41/46/42
|
||||
f 41/46/42 42/45/41 44/47/43 43/48/44
|
||||
f 43/48/44 44/47/43 46/49/45 45/50/46
|
||||
f 45/50/46 46/49/45 48/51/47 47/52/48
|
||||
f 47/52/48 48/51/47 50/53/49 49/54/50
|
||||
f 49/54/50 50/53/49 52/55/51 51/56/52
|
||||
f 51/56/52 52/55/51 54/57/53 53/58/54
|
||||
f 53/58/54 54/57/53 56/59/55 55/60/56
|
||||
f 55/60/56 56/59/55 58/61/57 57/62/58
|
||||
f 57/63/58 58/64/57 60/65/59 59/66/60
|
||||
f 59/66/60 60/65/59 62/67/61 61/68/62
|
||||
f 4/69/3 2/70/2 64/71/63 62/72/61 60/73/59 58/74/57 56/75/55 54/76/53 52/77/51 50/78/49 48/79/47 46/80/45 44/81/43 42/82/41 40/83/39 38/84/37 36/85/35 34/86/33 32/87/31 30/88/29 28/89/27 26/90/25 24/91/23 22/92/21 20/93/19 18/94/17 16/95/15 14/96/13 12/97/11 10/98/9 8/99/7 6/100/5
|
||||
f 63/101/64 64/102/63 2/2/2 1/1/1
|
||||
f 61/68/62 62/67/61 64/102/63 63/101/64
|
||||
f 1/103/1 3/104/4 5/105/6 7/106/8 9/107/10 11/108/12 13/109/14 15/110/16 17/111/18 19/112/20 21/113/22 23/114/24 25/115/26 27/116/28 29/117/30 31/118/32 33/119/34 35/120/36 37/121/38 39/122/40 41/123/42 43/124/44 45/125/46 47/126/48 49/85/50 51/84/52 53/127/54 55/128/56 57/129/58 59/130/60 61/131/62 63/132/64
|
2487
Levels/Geometry/marbleSmooth.obj
Normal file
54
Levels/Geometry/movableBlock.obj
Normal file
@ -0,0 +1,54 @@
|
||||
# Blender v2.72 (sub 0) OBJ File: 'movableBlock.blend'
|
||||
# www.blender.org
|
||||
o Cube_Cube.001
|
||||
v -0.781204 -0.781204 0.781204
|
||||
v -0.781204 -0.781204 -0.781204
|
||||
v 0.781204 -0.781204 -0.781204
|
||||
v 0.781204 -0.781204 0.781204
|
||||
v -0.781204 0.781204 0.781204
|
||||
v -0.781204 0.781204 -0.781204
|
||||
v 0.781204 0.781204 -0.781204
|
||||
v 0.781204 0.781204 0.781204
|
||||
vt 0.004724 0.007107
|
||||
vt 0.995276 0.007107
|
||||
vt 0.995276 0.997658
|
||||
vt 0.008245 0.004505
|
||||
vt 0.994929 0.004505
|
||||
vt 0.994930 0.991189
|
||||
vt 0.011069 0.007349
|
||||
vt 0.992064 0.007349
|
||||
vt 0.992064 0.988345
|
||||
vt 0.001602 0.000731
|
||||
vt 0.999816 0.001904
|
||||
vt 1.000026 0.998811
|
||||
vt 0.006324 0.995789
|
||||
vt 0.006324 0.008395
|
||||
vt 0.993718 0.008394
|
||||
vt 0.005204 0.997859
|
||||
vt 0.005204 0.005051
|
||||
vt 0.998012 0.005050
|
||||
vt 0.998012 0.997858
|
||||
vt 0.004724 0.997658
|
||||
vt 0.008245 0.991189
|
||||
vt 0.011069 0.988345
|
||||
vt 0.001813 0.999704
|
||||
vt 0.993718 0.995789
|
||||
vn -1.000000 0.000000 0.000000
|
||||
vn 0.000000 0.000000 -1.000000
|
||||
vn 1.000000 0.000000 0.000000
|
||||
vn 0.000000 0.000000 1.000000
|
||||
vn 0.000000 -1.000000 0.000000
|
||||
vn 0.000000 1.000000 0.000000
|
||||
s off
|
||||
f 6/1/1 2/2/1 1/3/1
|
||||
f 7/4/2 3/5/2 2/6/2
|
||||
f 8/7/3 4/8/3 3/9/3
|
||||
f 5/10/4 1/11/4 4/12/4
|
||||
f 2/13/5 3/14/5 4/15/5
|
||||
f 7/16/6 6/17/6 5/18/6
|
||||
f 8/19/6 7/16/6 5/18/6
|
||||
f 5/20/1 6/1/1 1/3/1
|
||||
f 6/21/2 7/4/2 2/6/2
|
||||
f 7/22/3 8/7/3 3/9/3
|
||||
f 8/23/4 5/10/4 4/12/4
|
||||
f 1/24/5 2/13/5 4/15/5
|
1011
Levels/Geometry/ruins_block.obj
Normal file
388
Levels/Geometry/ruins_column.obj
Normal file
@ -0,0 +1,388 @@
|
||||
# Blender v2.72 (sub 0) OBJ File: 'ruins_column.blend'
|
||||
# www.blender.org
|
||||
o Cylinder
|
||||
v 0.000000 -1.000000 -1.000000
|
||||
v 0.000000 1.000000 -1.000000
|
||||
v 0.195090 -1.000000 -0.980785
|
||||
v 0.195090 1.000000 -0.980785
|
||||
v 0.382683 -1.000000 -0.923880
|
||||
v 0.382683 1.000000 -0.923880
|
||||
v 0.555570 -1.000000 -0.831470
|
||||
v 0.555570 1.000000 -0.831470
|
||||
v 0.707107 -1.000000 -0.707107
|
||||
v 0.707107 1.000000 -0.707107
|
||||
v 0.831470 -1.000000 -0.555570
|
||||
v 0.831470 1.000000 -0.555570
|
||||
v 0.923880 -1.000000 -0.382683
|
||||
v 0.923880 1.000000 -0.382683
|
||||
v 0.980785 -1.000000 -0.195090
|
||||
v 0.980785 1.000000 -0.195090
|
||||
v 1.000000 -1.000000 -0.000000
|
||||
v 1.000000 1.000000 -0.000000
|
||||
v 0.980785 -1.000000 0.195090
|
||||
v 0.980785 1.000000 0.195090
|
||||
v 0.923880 -1.000000 0.382683
|
||||
v 0.923880 1.000000 0.382683
|
||||
v 0.831470 -1.000000 0.555570
|
||||
v 0.831470 1.000000 0.555570
|
||||
v 0.707107 -1.000000 0.707107
|
||||
v 0.707107 1.000000 0.707107
|
||||
v 0.555570 -1.000000 0.831470
|
||||
v 0.555570 1.000000 0.831470
|
||||
v 0.382683 -1.000000 0.923880
|
||||
v 0.382683 1.000000 0.923880
|
||||
v 0.195090 -1.000000 0.980785
|
||||
v 0.195090 1.000000 0.980785
|
||||
v -0.000000 -1.000000 1.000000
|
||||
v -0.000000 1.000000 1.000000
|
||||
v -0.195091 -1.000000 0.980785
|
||||
v -0.195091 1.000000 0.980785
|
||||
v -0.382684 -1.000000 0.923879
|
||||
v -0.382684 1.000000 0.923879
|
||||
v -0.555571 -1.000000 0.831469
|
||||
v -0.555571 1.000000 0.831469
|
||||
v -0.707107 -1.000000 0.707106
|
||||
v -0.707107 1.000000 0.707106
|
||||
v -0.831470 -1.000000 0.555570
|
||||
v -0.831470 1.000000 0.555570
|
||||
v -0.923880 -1.000000 0.382683
|
||||
v -0.923880 1.000000 0.382683
|
||||
v -0.980785 -1.000000 0.195089
|
||||
v -0.980785 1.000000 0.195089
|
||||
v -1.000000 -1.000000 -0.000001
|
||||
v -1.000000 1.000000 -0.000001
|
||||
v -0.980785 -1.000000 -0.195091
|
||||
v -0.980785 1.000000 -0.195091
|
||||
v -0.923879 -1.000000 -0.382684
|
||||
v -0.923879 1.000000 -0.382684
|
||||
v -0.831469 -1.000000 -0.555571
|
||||
v -0.831469 1.000000 -0.555571
|
||||
v -0.707106 -1.000000 -0.707108
|
||||
v -0.707106 1.000000 -0.707108
|
||||
v -0.555569 -1.000000 -0.831470
|
||||
v -0.555569 1.000000 -0.831470
|
||||
v -0.382682 -1.000000 -0.923880
|
||||
v -0.382682 1.000000 -0.923880
|
||||
v -0.195089 -1.000000 -0.980786
|
||||
v -0.195089 1.000000 -0.980786
|
||||
vt 0.445551 1.000293
|
||||
vt 0.404755 1.000293
|
||||
vt 0.404755 0.665886
|
||||
vt 0.364742 1.000293
|
||||
vt 0.364742 0.665886
|
||||
vt 0.327051 1.000293
|
||||
vt 0.327051 0.665886
|
||||
vt 0.293130 1.000293
|
||||
vt 0.264283 1.000293
|
||||
vt 0.264283 0.665886
|
||||
vt 0.264046 1.000000
|
||||
vt 0.230125 1.000000
|
||||
vt 0.230125 0.665593
|
||||
vt 0.192434 1.000000
|
||||
vt 0.192434 0.665593
|
||||
vt 0.152421 1.000000
|
||||
vt 0.152421 0.665593
|
||||
vt 0.111625 1.000000
|
||||
vt 0.071612 1.000000
|
||||
vt 0.071612 0.665593
|
||||
vt 0.033921 1.000000
|
||||
vt 0.033921 0.665593
|
||||
vt 0.000000 1.000000
|
||||
vt 0.000000 0.665593
|
||||
vt 1.173156 0.999734
|
||||
vt 1.139235 0.999801
|
||||
vt 1.138976 0.665395
|
||||
vt 1.101544 0.999877
|
||||
vt 1.101285 0.665470
|
||||
vt 1.061532 0.999957
|
||||
vt 1.061273 0.665550
|
||||
vt 1.020735 1.000038
|
||||
vt 1.020476 0.665632
|
||||
vt 0.980723 1.000118
|
||||
vt 0.980464 0.665712
|
||||
vt 0.943032 1.000193
|
||||
vt 0.942772 0.665787
|
||||
vt 0.909111 1.000261
|
||||
vt 0.908852 0.665855
|
||||
vt 0.880263 1.000319
|
||||
vt 0.880004 0.665913
|
||||
vt 0.846342 1.000387
|
||||
vt 0.846083 0.665980
|
||||
vt 0.808651 1.000462
|
||||
vt 0.808392 0.666056
|
||||
vt 0.768638 1.000542
|
||||
vt 0.768379 0.666136
|
||||
vt 0.727842 1.000624
|
||||
vt 0.727583 0.666217
|
||||
vt 0.687830 1.000704
|
||||
vt 0.687570 0.666297
|
||||
vt 0.650139 1.000779
|
||||
vt 0.649879 0.666372
|
||||
vt 0.616217 1.000847
|
||||
vt 0.615958 0.666440
|
||||
vt 0.587370 1.000904
|
||||
vt 0.587111 0.666498
|
||||
vt 0.586023 1.000293
|
||||
vt 0.557176 1.000293
|
||||
vt 0.557176 0.665886
|
||||
vt 0.523255 1.000293
|
||||
vt 0.523255 0.665886
|
||||
vt 0.227505 0.665593
|
||||
vt 0.186708 0.665593
|
||||
vt 0.227505 0.332797
|
||||
vt 0.485564 1.000293
|
||||
vt 0.445551 0.665886
|
||||
vt 0.485564 0.665886
|
||||
vt 0.267517 0.006395
|
||||
vt 0.007959 0.214935
|
||||
vt 0.109005 0.018938
|
||||
vt 0.293130 0.665886
|
||||
vt 0.264046 0.665593
|
||||
vt 0.111625 0.665593
|
||||
vt 1.172897 0.665327
|
||||
vt 0.586023 0.665886
|
||||
vt 0.267518 0.659199
|
||||
vt 0.305209 0.646655
|
||||
vt 0.339130 0.628445
|
||||
vt 0.367977 0.605268
|
||||
vt 0.414213 0.515584
|
||||
vt 0.406254 0.547731
|
||||
vt 0.390642 0.578014
|
||||
vt 0.367977 0.393122
|
||||
vt 0.414213 0.482806
|
||||
vt 0.406254 0.450658
|
||||
vt 0.390642 0.420376
|
||||
vt 0.305209 0.351735
|
||||
vt 0.339130 0.369945
|
||||
vt 0.267517 0.339191
|
||||
vt 0.186708 0.332797
|
||||
vt 0.023571 0.420376
|
||||
vt 0.075084 0.369945
|
||||
vt 0.146696 0.339191
|
||||
vt 0.109005 0.351735
|
||||
vt 0.046236 0.393122
|
||||
vt 0.000000 0.482806
|
||||
vt 0.007959 0.450658
|
||||
vt 0.000000 0.515584
|
||||
vt 0.007959 0.547732
|
||||
vt 0.023571 0.578014
|
||||
vt 0.109005 0.646655
|
||||
vt 0.075084 0.628445
|
||||
vt 0.046237 0.605268
|
||||
vt 0.146696 0.659199
|
||||
vt 0.075084 0.295648
|
||||
vt 0.023571 0.245217
|
||||
vt 0.046236 0.272471
|
||||
vt 0.146696 0.326402
|
||||
vt 0.109005 0.313858
|
||||
vt 0.000000 0.182787
|
||||
vt 0.000000 0.150010
|
||||
vt 0.367977 0.272471
|
||||
vt 0.339129 0.295648
|
||||
vt 0.390642 0.245217
|
||||
vt 0.414213 0.150009
|
||||
vt 0.414213 0.182787
|
||||
vt 0.406254 0.214935
|
||||
vt 0.390642 0.087579
|
||||
vt 0.406254 0.117862
|
||||
vt 0.339129 0.037148
|
||||
vt 0.367977 0.060326
|
||||
vt 0.305208 0.018938
|
||||
vt 0.186708 0.000000
|
||||
vt 0.227505 0.000000
|
||||
vt 0.146696 0.006395
|
||||
vt 0.046236 0.060326
|
||||
vt 0.075084 0.037148
|
||||
vt 0.007959 0.117862
|
||||
vt 0.267517 0.326402
|
||||
vt 0.023571 0.087579
|
||||
vt 0.305208 0.313859
|
||||
vn 0.000000 0.685700 -0.727900
|
||||
vn 0.142000 0.685700 -0.713900
|
||||
vn 0.142000 -0.685700 -0.713900
|
||||
vn 0.278500 0.685700 -0.672500
|
||||
vn 0.278500 -0.685700 -0.672500
|
||||
vn 0.404400 0.685700 -0.605200
|
||||
vn 0.404400 -0.685700 -0.605200
|
||||
vn 0.514700 0.685700 -0.514700
|
||||
vn 0.605200 0.685700 -0.404400
|
||||
vn 0.605200 -0.685700 -0.404400
|
||||
vn 0.672500 0.685700 -0.278500
|
||||
vn 0.672500 -0.685700 -0.278500
|
||||
vn 0.713900 0.685700 -0.142000
|
||||
vn 0.713900 -0.685700 -0.142000
|
||||
vn 0.727900 0.685700 0.000000
|
||||
vn 0.727900 -0.685700 0.000000
|
||||
vn 0.713900 0.685700 0.142000
|
||||
vn 0.672500 0.685700 0.278500
|
||||
vn 0.672500 -0.685700 0.278500
|
||||
vn 0.605200 0.685700 0.404400
|
||||
vn 0.605200 -0.685700 0.404400
|
||||
vn 0.514700 0.685700 0.514700
|
||||
vn 0.514700 -0.685700 0.514700
|
||||
vn 0.404400 0.685700 0.605200
|
||||
vn 0.404400 -0.685700 0.605200
|
||||
vn 0.278500 0.685700 0.672500
|
||||
vn 0.278500 -0.685700 0.672500
|
||||
vn 0.142000 0.685700 0.713900
|
||||
vn 0.142000 -0.685700 0.713900
|
||||
vn 0.000000 0.685700 0.727900
|
||||
vn 0.000000 -0.685700 0.727900
|
||||
vn -0.142000 0.685700 0.713900
|
||||
vn -0.142000 -0.685700 0.713900
|
||||
vn -0.278500 0.685700 0.672500
|
||||
vn -0.278500 -0.685700 0.672500
|
||||
vn -0.404400 0.685700 0.605200
|
||||
vn -0.404400 -0.685700 0.605200
|
||||
vn -0.514700 0.685700 0.514700
|
||||
vn -0.514700 -0.685700 0.514700
|
||||
vn -0.605200 0.685700 0.404400
|
||||
vn -0.605200 -0.685700 0.404400
|
||||
vn -0.672500 0.685700 0.278500
|
||||
vn -0.672500 -0.685700 0.278500
|
||||
vn -0.713900 0.685700 0.142000
|
||||
vn -0.713900 -0.685700 0.142000
|
||||
vn -0.727900 0.685700 0.000000
|
||||
vn -0.727900 -0.685700 0.000000
|
||||
vn -0.713900 0.685700 -0.142000
|
||||
vn -0.713900 -0.685700 -0.142000
|
||||
vn -0.672500 0.685700 -0.278500
|
||||
vn -0.672500 -0.685700 -0.278500
|
||||
vn -0.605200 0.685700 -0.404400
|
||||
vn -0.605200 -0.685700 -0.404400
|
||||
vn -0.514700 0.685700 -0.514700
|
||||
vn -0.514700 -0.685700 -0.514700
|
||||
vn -0.404400 0.685700 -0.605200
|
||||
vn -0.404400 -0.685700 -0.605200
|
||||
vn -0.278500 0.685700 -0.672500
|
||||
vn -0.278500 -0.685700 -0.672500
|
||||
vn -0.142000 0.685700 -0.713900
|
||||
vn 0.000000 -0.685700 -0.727900
|
||||
vn -0.142000 -0.685700 -0.713900
|
||||
vn 0.514700 -0.685700 -0.514700
|
||||
vn 0.713900 -0.685700 0.142000
|
||||
s 1
|
||||
f 2/1/1 4/2/2 3/3/3
|
||||
f 4/2/2 6/4/4 5/5/5
|
||||
f 6/4/4 8/6/6 7/7/7
|
||||
f 7/7/7 8/6/6 10/8/8
|
||||
f 10/8/8 12/9/9 11/10/10
|
||||
f 12/11/9 14/12/11 13/13/12
|
||||
f 14/12/11 16/14/13 15/15/14
|
||||
f 16/14/13 18/16/15 17/17/16
|
||||
f 17/17/16 18/16/15 20/18/17
|
||||
f 20/18/17 22/19/18 21/20/19
|
||||
f 22/19/18 24/21/20 23/22/21
|
||||
f 24/21/20 26/23/22 25/24/23
|
||||
f 26/25/22 28/26/24 27/27/25
|
||||
f 28/26/24 30/28/26 29/29/27
|
||||
f 30/28/26 32/30/28 31/31/29
|
||||
f 32/30/28 34/32/30 33/33/31
|
||||
f 34/32/30 36/34/32 35/35/33
|
||||
f 36/34/32 38/36/34 37/37/35
|
||||
f 38/36/34 40/38/36 39/39/37
|
||||
f 40/38/36 42/40/38 41/41/39
|
||||
f 42/40/38 44/42/40 43/43/41
|
||||
f 44/42/40 46/44/42 45/45/43
|
||||
f 46/44/42 48/46/44 47/47/45
|
||||
f 48/46/44 50/48/46 49/49/47
|
||||
f 50/48/46 52/50/48 51/51/49
|
||||
f 52/50/48 54/52/50 53/53/51
|
||||
f 54/52/50 56/54/52 55/55/53
|
||||
f 56/54/52 58/56/54 57/57/55
|
||||
f 58/58/54 60/59/56 59/60/57
|
||||
f 60/59/56 62/61/58 61/62/59
|
||||
f 6/63/4 4/64/2 36/65/32
|
||||
f 64/66/60 2/1/1 1/67/61
|
||||
f 62/61/58 64/66/60 63/68/62
|
||||
f 21/69/19 63/70/62 13/71/12
|
||||
f 1/67/61 2/1/1 3/3/3
|
||||
f 3/3/3 4/2/2 5/5/5
|
||||
f 5/5/5 6/4/4 7/7/7
|
||||
f 9/72/63 7/7/7 10/8/8
|
||||
f 9/72/63 10/8/8 11/10/10
|
||||
f 11/73/10 12/11/9 13/13/12
|
||||
f 13/13/12 14/12/11 15/15/14
|
||||
f 15/15/14 16/14/13 17/17/16
|
||||
f 19/74/64 17/17/16 20/18/17
|
||||
f 19/74/64 20/18/17 21/20/19
|
||||
f 21/20/19 22/19/18 23/22/21
|
||||
f 23/22/21 24/21/20 25/24/23
|
||||
f 25/75/23 26/25/22 27/27/25
|
||||
f 27/27/25 28/26/24 29/29/27
|
||||
f 29/29/27 30/28/26 31/31/29
|
||||
f 31/31/29 32/30/28 33/33/31
|
||||
f 33/33/31 34/32/30 35/35/33
|
||||
f 35/35/33 36/34/32 37/37/35
|
||||
f 37/37/35 38/36/34 39/39/37
|
||||
f 39/39/37 40/38/36 41/41/39
|
||||
f 41/41/39 42/40/38 43/43/41
|
||||
f 43/43/41 44/42/40 45/45/43
|
||||
f 45/45/43 46/44/42 47/47/45
|
||||
f 47/47/45 48/46/44 49/49/47
|
||||
f 49/49/47 50/48/46 51/51/49
|
||||
f 51/51/49 52/50/48 53/53/51
|
||||
f 53/53/51 54/52/50 55/55/53
|
||||
f 55/55/53 56/54/52 57/57/55
|
||||
f 57/76/55 58/58/54 59/60/57
|
||||
f 59/60/57 60/59/56 61/62/59
|
||||
f 63/68/62 64/66/60 1/67/61
|
||||
f 8/77/6 6/63/4 10/78/8
|
||||
f 12/79/9 10/78/8 14/80/11
|
||||
f 20/81/17 18/82/15 16/83/13
|
||||
f 20/81/17 28/84/24 22/85/18
|
||||
f 24/86/20 22/85/18 26/87/22
|
||||
f 32/88/28 30/89/26 28/84/24
|
||||
f 36/65/32 34/90/30 32/88/28
|
||||
f 38/91/34 48/92/44 44/93/40
|
||||
f 40/94/36 38/91/34 42/95/38
|
||||
f 48/92/44 46/96/42 44/93/40
|
||||
f 52/97/48 50/98/46 48/92/44
|
||||
f 52/97/48 36/65/32 54/99/50
|
||||
f 56/100/52 54/99/50 58/101/54
|
||||
f 64/102/60 62/103/58 60/104/56
|
||||
f 4/64/2 2/105/1 64/102/60
|
||||
f 10/78/8 6/63/4 36/65/32
|
||||
f 38/91/34 44/93/40 42/95/38
|
||||
f 58/101/54 54/99/50 60/104/56
|
||||
f 36/65/32 32/88/28 28/84/24
|
||||
f 38/91/34 36/65/32 52/97/48
|
||||
f 22/85/18 28/84/24 26/87/22
|
||||
f 48/92/44 38/91/34 52/97/48
|
||||
f 4/64/2 64/102/60 60/104/56
|
||||
f 10/78/8 16/83/13 14/80/11
|
||||
f 36/65/32 28/84/24 20/81/17
|
||||
f 61/62/59 62/61/58 63/68/62
|
||||
f 10/78/8 20/81/17 16/83/13
|
||||
f 20/81/17 10/78/8 36/65/32
|
||||
f 54/99/50 36/65/32 60/104/56
|
||||
f 36/65/32 4/64/2 60/104/56
|
||||
f 21/69/19 49/65/47 57/106/55
|
||||
f 61/107/59 63/70/62 59/108/57
|
||||
f 53/109/51 55/110/53 57/106/55
|
||||
f 49/65/47 51/91/49 53/109/51
|
||||
f 63/70/62 1/111/61 3/112/3
|
||||
f 63/70/62 57/106/55 59/108/57
|
||||
f 41/113/39 43/114/41 39/115/37
|
||||
f 33/116/31 35/117/33 37/118/35
|
||||
f 29/119/27 31/120/29 33/116/31
|
||||
f 25/121/23 27/122/25 29/119/27
|
||||
f 21/69/19 23/123/21 25/121/23
|
||||
f 17/124/16 19/125/64 21/69/19
|
||||
f 17/124/16 21/69/19 15/126/14
|
||||
f 9/127/63 11/128/10 13/71/12
|
||||
f 13/71/12 5/129/5 9/127/63
|
||||
f 3/112/3 5/129/5 63/70/62
|
||||
f 49/65/47 53/109/51 57/106/55
|
||||
f 47/130/45 49/65/47 21/69/19
|
||||
f 5/129/5 7/131/7 9/127/63
|
||||
f 33/116/31 47/130/45 29/119/27
|
||||
f 5/129/5 13/71/12 63/70/62
|
||||
f 43/114/41 37/118/35 39/115/37
|
||||
f 37/118/35 43/114/41 47/130/45
|
||||
f 21/69/19 13/71/12 15/126/14
|
||||
f 33/116/31 37/118/35 47/130/45
|
||||
f 29/119/27 47/130/45 25/121/23
|
||||
f 43/114/41 45/132/43 47/130/45
|
||||
f 63/70/62 21/69/19 57/106/55
|
||||
f 25/121/23 47/130/45 21/69/19
|
1255
Levels/Geometry/skydome.obj
Normal file
500
Levels/Geometry/switch_inner.obj
Normal file
@ -0,0 +1,500 @@
|
||||
# Blender v2.72 (sub 0) OBJ File: 'switch_inner.blend'
|
||||
# www.blender.org
|
||||
o switch_Cube
|
||||
v 0.952094 -0.488588 -1.000000
|
||||
v 1.000000 -0.488588 -0.952094
|
||||
v 0.952094 -0.513173 -0.952094
|
||||
v 0.976015 -0.488588 -0.993600
|
||||
v 0.952094 -0.500864 -0.993600
|
||||
v 0.975003 -0.500345 -0.987383
|
||||
v 0.993600 -0.500864 -0.952093
|
||||
v 0.993600 -0.488588 -0.976015
|
||||
v 0.987383 -0.500345 -0.975003
|
||||
v 0.952094 -0.509888 -0.976015
|
||||
v 0.976015 -0.509888 -0.952093
|
||||
v 0.975003 -0.506698 -0.975003
|
||||
v 0.952094 -0.513173 0.952094
|
||||
v 1.000000 -0.488588 0.952094
|
||||
v 0.952094 -0.488588 1.000000
|
||||
v 0.976015 -0.509888 0.952094
|
||||
v 0.952094 -0.509888 0.976015
|
||||
v 0.975003 -0.506698 0.975003
|
||||
v 0.993600 -0.488588 0.976015
|
||||
v 0.993600 -0.500864 0.952094
|
||||
v 0.987383 -0.500345 0.975003
|
||||
v 0.952094 -0.500864 0.993600
|
||||
v 0.976015 -0.488588 0.993600
|
||||
v 0.975003 -0.500345 0.987383
|
||||
v -0.952094 -0.513173 0.952093
|
||||
v -0.952094 -0.488588 1.000000
|
||||
v -1.000000 -0.488588 0.952093
|
||||
v -0.952094 -0.509888 0.976015
|
||||
v -0.976016 -0.509888 0.952093
|
||||
v -0.975003 -0.506698 0.975003
|
||||
v -0.976016 -0.488588 0.993600
|
||||
v -0.952094 -0.500864 0.993600
|
||||
v -0.975003 -0.500345 0.987383
|
||||
v -0.993600 -0.500864 0.952093
|
||||
v -0.993600 -0.488588 0.976015
|
||||
v -0.987383 -0.500345 0.975003
|
||||
v -1.000000 -0.488588 -0.952094
|
||||
v -0.952093 -0.488588 -1.000000
|
||||
v -0.952093 -0.513173 -0.952094
|
||||
v -0.993600 -0.488588 -0.976016
|
||||
v -0.993600 -0.500864 -0.952094
|
||||
v -0.987383 -0.500345 -0.975003
|
||||
v -0.952093 -0.500864 -0.993600
|
||||
v -0.976015 -0.488588 -0.993600
|
||||
v -0.975003 -0.500345 -0.987383
|
||||
v -0.976015 -0.509888 -0.952094
|
||||
v -0.952093 -0.509888 -0.976016
|
||||
v -0.975003 -0.506698 -0.975003
|
||||
v 1.000000 0.488588 -0.952093
|
||||
v 0.952094 0.488588 -0.999999
|
||||
v 0.952094 0.513173 -0.952093
|
||||
v 0.993600 0.488588 -0.976015
|
||||
v 0.993600 0.500864 -0.952093
|
||||
v 0.987383 0.500345 -0.975002
|
||||
v 0.952094 0.500864 -0.993599
|
||||
v 0.976016 0.488588 -0.993599
|
||||
v 0.975003 0.500345 -0.987382
|
||||
v 0.976016 0.509888 -0.952093
|
||||
v 0.952094 0.509888 -0.976015
|
||||
v 0.975003 0.506698 -0.975002
|
||||
v 0.952093 0.513173 0.952094
|
||||
v 0.952093 0.488588 1.000001
|
||||
v 0.999999 0.488588 0.952094
|
||||
v 0.952093 0.509888 0.976016
|
||||
v 0.976015 0.509888 0.952094
|
||||
v 0.975002 0.506698 0.975004
|
||||
v 0.976015 0.488588 0.993601
|
||||
v 0.952093 0.500864 0.993601
|
||||
v 0.975002 0.500345 0.987384
|
||||
v 0.993599 0.500864 0.952094
|
||||
v 0.993599 0.488588 0.976016
|
||||
v 0.987382 0.500345 0.975004
|
||||
v -0.952094 0.513173 0.952093
|
||||
v -1.000000 0.488588 0.952093
|
||||
v -0.952094 0.488588 1.000000
|
||||
v -0.976016 0.509888 0.952093
|
||||
v -0.952094 0.509888 0.976015
|
||||
v -0.975003 0.506698 0.975003
|
||||
v -0.993600 0.488588 0.976015
|
||||
v -0.993600 0.500864 0.952093
|
||||
v -0.987383 0.500345 0.975003
|
||||
v -0.952094 0.500864 0.993600
|
||||
v -0.976016 0.488588 0.993600
|
||||
v -0.975003 0.500345 0.987383
|
||||
v -0.952094 0.488588 -1.000000
|
||||
v -1.000000 0.488588 -0.952094
|
||||
v -0.952094 0.513173 -0.952094
|
||||
v -0.976015 0.488588 -0.993600
|
||||
v -0.952093 0.500864 -0.993600
|
||||
v -0.975003 0.500345 -0.987383
|
||||
v -0.993600 0.500864 -0.952094
|
||||
v -0.993600 0.488588 -0.976015
|
||||
v -0.987383 0.500345 -0.975003
|
||||
v -0.952093 0.509888 -0.976015
|
||||
v -0.976015 0.509888 -0.952094
|
||||
v -0.975003 0.506698 -0.975003
|
||||
vt 0.856328 0.374264
|
||||
vt 0.426513 0.374264
|
||||
vt 0.426513 0.657341
|
||||
vt 0.856328 0.657341
|
||||
vt 0.654950 0.976215
|
||||
vt 0.654950 0.693138
|
||||
vt 0.853302 0.693138
|
||||
vt 0.861728 0.374264
|
||||
vt 0.861500 0.370859
|
||||
vt 0.865697 0.374264
|
||||
vt 0.864294 0.370859
|
||||
vt 0.856328 0.370708
|
||||
vt 0.865697 0.657341
|
||||
vt 0.861728 0.657341
|
||||
vt 0.861500 0.660747
|
||||
vt 0.856328 0.660897
|
||||
vt 0.856328 0.663512
|
||||
vt 0.861500 0.662587
|
||||
vt 0.864294 0.660747
|
||||
vt 0.421113 0.374264
|
||||
vt 0.421342 0.370859
|
||||
vt 0.856328 0.368094
|
||||
vt 0.861500 0.369018
|
||||
vt 0.426513 0.370708
|
||||
vt 0.426513 0.368094
|
||||
vt 0.421342 0.369018
|
||||
vt 0.417144 0.374264
|
||||
vt 0.418547 0.370859
|
||||
vt 0.426513 0.660897
|
||||
vt 0.421342 0.660747
|
||||
vt 0.421342 0.662587
|
||||
vt 0.421113 0.657341
|
||||
vt 0.417144 0.657341
|
||||
vt 0.418547 0.660747
|
||||
vt 0.426513 0.663512
|
||||
vt 0.851966 0.695368
|
||||
vt 0.659461 0.695368
|
||||
vt 0.659461 0.978445
|
||||
vt 0.853302 0.976215
|
||||
vt 0.851966 0.978445
|
||||
vn 0.000000 0.000000 -1.000000
|
||||
vn -0.000000 -0.000000 1.000000
|
||||
vn -1.000000 -0.000000 -0.000000
|
||||
vn 0.000000 1.000000 -0.000000
|
||||
vn 1.000000 -0.000000 0.000000
|
||||
vn 0.238400 -0.455800 -0.857600
|
||||
vn 0.228100 -0.470400 -0.852500
|
||||
vn 0.233100 -0.463300 -0.855000
|
||||
vn 0.648500 -0.398700 -0.648500
|
||||
vn 0.648500 -0.398800 -0.648500
|
||||
vn 0.857600 -0.455800 -0.238400
|
||||
vn 0.860000 -0.448400 -0.243600
|
||||
vn 0.855000 -0.463300 -0.233100
|
||||
vn 0.451900 -0.880600 -0.142600
|
||||
vn 0.138600 -0.980600 -0.138600
|
||||
vn 0.142500 -0.980600 -0.134600
|
||||
vn 0.142600 -0.880600 -0.451900
|
||||
vn 0.415300 -0.809300 -0.415300
|
||||
vn 0.138600 -0.980600 0.138600
|
||||
vn 0.134600 -0.980600 0.142500
|
||||
vn 0.451900 -0.880600 0.142600
|
||||
vn 0.857600 -0.455800 0.238400
|
||||
vn 0.852500 -0.470400 0.228100
|
||||
vn 0.855000 -0.463300 0.233100
|
||||
vn 0.648500 -0.398800 0.648500
|
||||
vn 0.648500 -0.398700 0.648500
|
||||
vn 0.238400 -0.455800 0.857600
|
||||
vn 0.243600 -0.448400 0.860000
|
||||
vn 0.233100 -0.463300 0.855000
|
||||
vn 0.142600 -0.880600 0.451900
|
||||
vn 0.415300 -0.809300 0.415300
|
||||
vn -0.138600 -0.980600 0.138600
|
||||
vn -0.142500 -0.980600 0.134600
|
||||
vn -0.142600 -0.880600 0.451900
|
||||
vn -0.238400 -0.455800 0.857600
|
||||
vn -0.228100 -0.470400 0.852500
|
||||
vn -0.233100 -0.463300 0.855000
|
||||
vn -0.648500 -0.398800 0.648500
|
||||
vn -0.648500 -0.398700 0.648500
|
||||
vn -0.857600 -0.455800 0.238400
|
||||
vn -0.860000 -0.448400 0.243600
|
||||
vn -0.855000 -0.463300 0.233100
|
||||
vn -0.451900 -0.880600 0.142600
|
||||
vn -0.415300 -0.809300 0.415300
|
||||
vn -0.857600 -0.455800 -0.238400
|
||||
vn -0.852500 -0.470400 -0.228100
|
||||
vn -0.855000 -0.463300 -0.233100
|
||||
vn -0.648500 -0.398700 -0.648500
|
||||
vn -0.648500 -0.398800 -0.648500
|
||||
vn -0.238400 -0.455800 -0.857600
|
||||
vn -0.243600 -0.448400 -0.860000
|
||||
vn -0.233100 -0.463300 -0.855000
|
||||
vn -0.142600 -0.880600 -0.451900
|
||||
vn -0.138600 -0.980600 -0.138600
|
||||
vn -0.134600 -0.980600 -0.142500
|
||||
vn -0.451900 -0.880600 -0.142600
|
||||
vn -0.415300 -0.809300 -0.415300
|
||||
vn 0.857600 0.455800 -0.238400
|
||||
vn 0.852500 0.470400 -0.228100
|
||||
vn 0.855000 0.463300 -0.233100
|
||||
vn 0.648500 0.398800 -0.648500
|
||||
vn 0.648500 0.398700 -0.648500
|
||||
vn 0.238400 0.455800 -0.857600
|
||||
vn 0.243500 0.448400 -0.860000
|
||||
vn 0.233100 0.463300 -0.855000
|
||||
vn 0.142600 0.880600 -0.451900
|
||||
vn 0.138600 0.980600 -0.138600
|
||||
vn 0.134600 0.980600 -0.142500
|
||||
vn 0.451900 0.880600 -0.142600
|
||||
vn 0.415300 0.809300 -0.415300
|
||||
vn 0.138600 0.980600 0.138600
|
||||
vn 0.142500 0.980600 0.134600
|
||||
vn 0.142600 0.880600 0.451900
|
||||
vn 0.238400 0.455800 0.857600
|
||||
vn 0.228100 0.470400 0.852500
|
||||
vn 0.233100 0.463300 0.855000
|
||||
vn 0.648500 0.398700 0.648500
|
||||
vn 0.648500 0.398800 0.648500
|
||||
vn 0.857600 0.455800 0.238400
|
||||
vn 0.860000 0.448400 0.243600
|
||||
vn 0.855000 0.463300 0.233100
|
||||
vn 0.451900 0.880600 0.142600
|
||||
vn 0.415300 0.809300 0.415300
|
||||
vn -0.138600 0.980600 0.138600
|
||||
vn -0.134600 0.980600 0.142500
|
||||
vn -0.451900 0.880600 0.142600
|
||||
vn -0.857600 0.455800 0.238400
|
||||
vn -0.852500 0.470400 0.228100
|
||||
vn -0.855000 0.463300 0.233100
|
||||
vn -0.648500 0.398700 0.648500
|
||||
vn -0.648500 0.398800 0.648500
|
||||
vn -0.238400 0.455800 0.857600
|
||||
vn -0.243600 0.448400 0.860000
|
||||
vn -0.233100 0.463300 0.855000
|
||||
vn -0.142600 0.880600 0.451900
|
||||
vn -0.415300 0.809300 0.415300
|
||||
vn -0.238400 0.455800 -0.857600
|
||||
vn -0.228100 0.470400 -0.852500
|
||||
vn -0.233100 0.463300 -0.855000
|
||||
vn -0.648500 0.398800 -0.648500
|
||||
vn -0.648500 0.398700 -0.648500
|
||||
vn -0.857600 0.455800 -0.238400
|
||||
vn -0.860000 0.448400 -0.243500
|
||||
vn -0.855000 0.463300 -0.233100
|
||||
vn -0.451900 0.880600 -0.142600
|
||||
vn -0.138600 0.980600 -0.138600
|
||||
vn -0.142500 0.980600 -0.134600
|
||||
vn -0.142600 0.880600 -0.451900
|
||||
vn -0.415300 0.809300 -0.415300
|
||||
vn 0.886700 -0.462300 0.000000
|
||||
vn 0.456600 -0.889700 0.000000
|
||||
vn 0.136000 -0.990700 0.000000
|
||||
vn 0.000000 -0.990700 -0.136000
|
||||
vn 0.000000 -0.889700 -0.456600
|
||||
vn 0.000000 -0.462300 -0.886700
|
||||
vn 0.258500 0.000000 -0.966000
|
||||
vn 0.258400 0.000000 -0.966000
|
||||
vn 0.707100 0.000000 -0.707100
|
||||
vn 0.966000 -0.000000 -0.258500
|
||||
vn -0.000000 -0.462300 0.886700
|
||||
vn -0.000000 -0.889700 0.456600
|
||||
vn -0.000000 -0.990700 0.136000
|
||||
vn 0.966000 0.000000 0.258500
|
||||
vn 0.707100 0.000000 0.707100
|
||||
vn 0.258400 -0.000000 0.966000
|
||||
vn -0.886700 -0.462300 -0.000000
|
||||
vn -0.456600 -0.889700 -0.000000
|
||||
vn -0.136000 -0.990700 -0.000000
|
||||
vn -0.258500 0.000000 0.966000
|
||||
vn -0.707100 -0.000000 0.707100
|
||||
vn -0.966000 -0.000000 0.258500
|
||||
vn -0.966000 -0.000000 0.258400
|
||||
vn -0.966000 -0.000000 -0.258500
|
||||
vn -0.707100 0.000000 -0.707100
|
||||
vn -0.258500 0.000000 -0.966000
|
||||
vn 0.136000 0.990700 0.000000
|
||||
vn 0.456600 0.889700 0.000000
|
||||
vn 0.886700 0.462300 0.000000
|
||||
vn 0.000000 0.462300 -0.886700
|
||||
vn 0.000000 0.889700 -0.456600
|
||||
vn 0.000000 0.990700 -0.136000
|
||||
vn -0.000000 0.990700 0.136000
|
||||
vn -0.000000 0.889700 0.456600
|
||||
vn -0.000000 0.462300 0.886700
|
||||
vn -0.136000 0.990700 -0.000000
|
||||
vn -0.456600 0.889700 -0.000000
|
||||
vn -0.886700 0.462300 -0.000000
|
||||
vn 0.000000 -1.000000 -0.000000
|
||||
vn 0.243500 -0.448400 -0.860000
|
||||
vn 0.852500 -0.470400 -0.228100
|
||||
vn 0.134600 -0.980600 -0.142500
|
||||
vn 0.142500 -0.980600 0.134600
|
||||
vn 0.860000 -0.448400 0.243600
|
||||
vn 0.228100 -0.470400 0.852500
|
||||
vn -0.134600 -0.980600 0.142500
|
||||
vn -0.243600 -0.448400 0.860000
|
||||
vn -0.852500 -0.470400 0.228100
|
||||
vn -0.860000 -0.448400 -0.243500
|
||||
vn -0.228100 -0.470400 -0.852500
|
||||
vn -0.142500 -0.980600 -0.134600
|
||||
vn 0.860000 0.448400 -0.243600
|
||||
vn 0.228100 0.470400 -0.852500
|
||||
vn 0.142500 0.980600 -0.134600
|
||||
vn 0.134600 0.980600 0.142500
|
||||
vn 0.243600 0.448400 0.860000
|
||||
vn 0.852500 0.470400 0.228100
|
||||
vn -0.142500 0.980600 0.134600
|
||||
vn -0.860000 0.448400 0.243500
|
||||
vn -0.228100 0.470400 0.852500
|
||||
vn -0.243600 0.448400 -0.860000
|
||||
vn -0.852500 0.470400 -0.228100
|
||||
vn -0.134600 0.980600 -0.142500
|
||||
s 1
|
||||
f 1/1/1 38/2/1 85/3/1
|
||||
f 62/4/2 75/3/2 26/2/2
|
||||
f 74/3/3 86/4/3 37/1/3
|
||||
f 87/5/4 73/6/4 61/7/4
|
||||
f 49/4/5 63/3/5 14/2/5
|
||||
f 1/1/6 4/8/7 6/9/8
|
||||
f 8/10/9 9/11/9 6/9/10
|
||||
f 2/1/11 7/12/12 9/9/13
|
||||
f 7/13/14 11/14/14 12/15/14
|
||||
f 3/4/15 10/16/16 12/15/15
|
||||
f 5/17/17 6/18/17 12/15/17
|
||||
f 6/18/18 9/19/18 12/15/18
|
||||
f 13/1/19 16/8/20 18/9/19
|
||||
f 20/10/21 21/11/21 18/9/21
|
||||
f 14/2/22 19/20/23 21/21/24
|
||||
f 23/8/25 24/9/25 21/11/26
|
||||
f 15/1/27 22/12/28 24/9/29
|
||||
f 22/22/30 17/12/30 18/9/30
|
||||
f 18/9/31 21/11/31 24/23/31
|
||||
f 25/2/32 28/24/33 30/21/32
|
||||
f 32/25/34 33/26/34 30/21/34
|
||||
f 26/2/35 31/20/36 33/21/37
|
||||
f 35/27/38 36/28/39 33/21/38
|
||||
f 27/2/40 34/24/41 36/21/42
|
||||
f 34/27/43 29/20/43 30/21/43
|
||||
f 30/21/44 33/26/44 36/28/44
|
||||
f 37/1/45 40/8/46 42/9/47
|
||||
f 44/20/48 45/21/48 42/28/49
|
||||
f 38/2/50 43/24/51 45/21/52
|
||||
f 47/29/53 48/30/53 45/31/53
|
||||
f 39/3/54 46/32/55 48/30/54
|
||||
f 41/33/56 42/34/56 48/30/56
|
||||
f 42/34/57 45/31/57 48/30/57
|
||||
f 49/4/58 52/14/59 54/15/60
|
||||
f 56/14/61 57/15/61 54/19/62
|
||||
f 50/4/63 55/16/64 57/15/65
|
||||
f 59/16/66 60/15/66 57/18/66
|
||||
f 51/4/67 58/14/68 60/15/67
|
||||
f 53/13/69 54/19/69 60/15/69
|
||||
f 54/19/70 57/18/70 60/15/70
|
||||
f 61/1/71 64/12/72 66/9/71
|
||||
f 64/12/73 68/22/73 69/23/73
|
||||
f 62/4/74 67/14/75 69/15/76
|
||||
f 71/13/77 72/19/78 69/15/77
|
||||
f 63/3/79 70/29/80 72/30/81
|
||||
f 65/8/82 66/9/82 72/11/82
|
||||
f 66/9/83 69/23/83 72/11/83
|
||||
f 73/2/84 76/20/85 78/21/84
|
||||
f 76/20/86 80/27/86 81/28/86
|
||||
f 74/3/87 79/32/88 81/30/89
|
||||
f 83/32/90 84/30/90 81/34/91
|
||||
f 75/3/92 82/29/93 84/30/94
|
||||
f 82/25/95 77/24/95 78/21/95
|
||||
f 78/21/96 81/28/96 84/26/96
|
||||
f 85/3/97 88/32/98 90/30/99
|
||||
f 88/32/100 92/33/101 93/34/101
|
||||
f 86/4/102 91/16/103 93/15/104
|
||||
f 91/33/105 95/32/105 96/30/105
|
||||
f 87/3/106 94/29/107 96/30/106
|
||||
f 89/35/108 90/31/108 96/30/108
|
||||
f 90/31/109 93/34/109 96/30/109
|
||||
f 2/1/110 14/2/110 20/24/110
|
||||
f 20/10/111 16/8/111 11/14/111
|
||||
f 16/8/112 13/1/112 3/4/112
|
||||
f 3/4/113 39/3/113 47/29/113
|
||||
f 47/29/114 43/35/114 5/17/114
|
||||
f 43/24/115 38/2/115 1/1/115
|
||||
f 50/4/116 56/14/117 4/8/116
|
||||
f 56/14/118 52/13/118 8/10/118
|
||||
f 8/8/119 52/14/119 49/4/119
|
||||
f 26/2/120 32/24/120 22/12/120
|
||||
f 32/25/121 28/24/121 17/12/121
|
||||
f 28/24/122 25/2/122 13/1/122
|
||||
f 63/3/123 71/32/123 19/20/123
|
||||
f 71/13/124 67/14/124 23/8/124
|
||||
f 67/14/125 62/4/125 15/1/125
|
||||
f 37/1/126 41/12/126 34/24/126
|
||||
f 41/33/127 46/32/127 29/20/127
|
||||
f 46/32/128 39/3/128 25/2/128
|
||||
f 75/3/129 83/32/129 31/20/129
|
||||
f 83/32/130 79/33/130 35/27/130
|
||||
f 79/32/131 74/3/131 27/2/132
|
||||
f 86/4/133 92/14/133 40/8/133
|
||||
f 92/33/134 88/32/134 44/20/134
|
||||
f 88/32/135 85/3/135 38/2/135
|
||||
f 51/4/136 61/1/136 65/8/136
|
||||
f 65/8/137 70/10/137 53/13/137
|
||||
f 70/29/138 63/3/138 49/4/138
|
||||
f 85/3/139 89/29/139 55/16/139
|
||||
f 89/35/140 94/29/140 59/16/140
|
||||
f 59/16/141 94/29/141 87/3/141
|
||||
f 73/2/142 77/24/142 64/12/142
|
||||
f 77/24/143 82/25/143 68/22/143
|
||||
f 68/16/144 82/29/144 75/3/144
|
||||
f 87/3/145 95/32/145 76/20/145
|
||||
f 76/20/146 95/32/146 91/33/146
|
||||
f 80/29/147 91/16/147 86/4/147
|
||||
f 13/36/148 25/37/148 39/38/148
|
||||
f 50/4/1 1/1/1 85/3/1
|
||||
f 15/1/2 62/4/2 26/2/2
|
||||
f 27/2/3 74/3/3 37/1/3
|
||||
f 51/39/4 87/5/4 61/7/4
|
||||
f 2/1/5 49/4/5 14/2/5
|
||||
f 5/12/149 1/1/6 6/9/8
|
||||
f 4/8/10 8/10/9 6/9/10
|
||||
f 8/8/150 2/1/11 9/9/13
|
||||
f 9/19/14 7/13/14 12/15/14
|
||||
f 11/14/151 3/4/15 12/15/15
|
||||
f 10/16/17 5/17/17 12/15/17
|
||||
f 17/12/152 13/1/19 18/9/19
|
||||
f 16/8/21 20/10/21 18/9/21
|
||||
f 20/24/153 14/2/22 21/21/24
|
||||
f 19/10/26 23/8/25 21/11/26
|
||||
f 23/8/154 15/1/27 24/9/29
|
||||
f 24/23/30 22/22/30 18/9/30
|
||||
f 29/20/155 25/2/32 30/21/32
|
||||
f 28/24/34 32/25/34 30/21/34
|
||||
f 32/24/156 26/2/35 33/21/37
|
||||
f 31/20/38 35/27/38 33/21/38
|
||||
f 35/20/157 27/2/40 36/21/42
|
||||
f 36/28/43 34/27/43 30/21/43
|
||||
f 41/12/158 37/1/45 42/9/47
|
||||
f 40/27/49 44/20/48 42/28/49
|
||||
f 44/20/159 38/2/50 45/21/52
|
||||
f 43/35/53 47/29/53 45/31/53
|
||||
f 47/29/160 39/3/54 48/30/54
|
||||
f 46/32/56 41/33/56 48/30/56
|
||||
f 53/16/161 49/4/58 54/15/60
|
||||
f 52/13/62 56/14/61 54/19/62
|
||||
f 56/14/162 50/4/63 57/15/65
|
||||
f 55/17/66 59/16/66 57/18/66
|
||||
f 59/16/163 51/4/67 60/15/67
|
||||
f 58/14/69 53/13/69 60/15/69
|
||||
f 65/8/164 61/1/71 66/9/71
|
||||
f 66/9/73 64/12/73 69/23/73
|
||||
f 68/16/165 62/4/74 69/15/76
|
||||
f 67/14/77 71/13/77 69/15/77
|
||||
f 71/32/166 63/3/79 72/30/81
|
||||
f 70/10/82 65/8/82 72/11/82
|
||||
f 77/24/167 73/2/84 78/21/84
|
||||
f 78/21/86 76/20/86 81/28/86
|
||||
f 80/29/168 74/3/87 81/30/89
|
||||
f 79/33/91 83/32/90 81/34/91
|
||||
f 83/32/169 75/3/92 84/30/94
|
||||
f 84/26/95 82/25/95 78/21/95
|
||||
f 89/29/170 85/3/97 90/30/99
|
||||
f 90/30/100 88/32/100 93/34/101
|
||||
f 92/14/171 86/4/102 93/15/104
|
||||
f 93/34/105 91/33/105 96/30/105
|
||||
f 95/32/172 87/3/106 96/30/106
|
||||
f 94/29/108 89/35/108 96/30/108
|
||||
f 7/12/110 2/1/110 20/24/110
|
||||
f 7/13/111 20/10/111 11/14/111
|
||||
f 11/14/112 16/8/112 3/4/112
|
||||
f 10/16/113 3/4/113 47/29/113
|
||||
f 10/16/114 47/29/114 5/17/114
|
||||
f 5/12/115 43/24/115 1/1/115
|
||||
f 1/1/116 50/4/116 4/8/116
|
||||
f 4/8/118 56/14/118 8/10/118
|
||||
f 2/1/119 8/8/119 49/4/119
|
||||
f 15/1/120 26/2/120 22/12/120
|
||||
f 22/22/121 32/25/121 17/12/121
|
||||
f 17/12/122 28/24/122 13/1/122
|
||||
f 14/2/123 63/3/123 19/20/123
|
||||
f 19/10/124 71/13/124 23/8/124
|
||||
f 23/8/125 67/14/125 15/1/125
|
||||
f 27/2/126 37/1/126 34/24/126
|
||||
f 34/27/127 41/33/127 29/20/127
|
||||
f 29/20/128 46/32/128 25/2/128
|
||||
f 26/2/129 75/3/129 31/20/129
|
||||
f 31/20/130 83/32/130 35/27/130
|
||||
f 35/20/132 79/32/131 27/2/132
|
||||
f 37/1/133 86/4/133 40/8/133
|
||||
f 40/27/134 92/33/134 44/20/134
|
||||
f 44/20/135 88/32/135 38/2/135
|
||||
f 58/14/136 51/4/136 65/8/136
|
||||
f 58/14/137 65/8/137 53/13/137
|
||||
f 53/16/138 70/29/138 49/4/138
|
||||
f 50/4/139 85/3/139 55/16/139
|
||||
f 55/17/140 89/35/140 59/16/140
|
||||
f 51/4/141 59/16/141 87/3/141
|
||||
f 61/1/142 73/2/142 64/12/142
|
||||
f 64/12/143 77/24/143 68/22/143
|
||||
f 62/4/144 68/16/144 75/3/144
|
||||
f 73/2/145 87/3/145 76/20/145
|
||||
f 80/27/146 76/20/146 91/33/146
|
||||
f 74/3/147 80/29/147 86/4/147
|
||||
f 3/40/148 13/36/148 39/38/148
|
101
Levels/Geometry/switch_outer.obj
Normal file
@ -0,0 +1,101 @@
|
||||
# Blender v2.72 (sub 0) OBJ File: 'switch_outer.blend'
|
||||
# www.blender.org
|
||||
o switch_Cube
|
||||
v 1.270169 -1.270169 -1.270169
|
||||
v 1.270169 -1.270169 1.270169
|
||||
v -1.270169 -1.270169 1.270169
|
||||
v -1.270169 -1.270169 -1.270170
|
||||
v 1.270170 1.270169 -1.270169
|
||||
v 1.270168 1.270169 1.270170
|
||||
v -1.270170 1.270169 1.270169
|
||||
v -1.270169 1.270169 -1.270169
|
||||
v 0.985712 1.270169 -0.998137
|
||||
v 0.985712 1.270169 0.965003
|
||||
v -0.940154 1.270169 0.973287
|
||||
v -0.940154 1.270170 -0.998137
|
||||
v 0.985712 -1.271890 -0.998137
|
||||
v 0.985712 -1.271890 0.965003
|
||||
v -0.940154 -1.271890 0.973287
|
||||
v -0.940154 -1.271890 -0.998137
|
||||
vt 0.222140 0.317533
|
||||
vt 0.462062 0.319398
|
||||
vt 0.461836 0.797664
|
||||
vt 0.462418 0.315542
|
||||
vt 0.462155 0.799279
|
||||
vt 0.219977 0.799745
|
||||
vt 0.460057 0.322033
|
||||
vt 0.461974 0.799281
|
||||
vt 0.219129 0.799420
|
||||
vt 0.459506 0.796589
|
||||
vt 0.220124 0.795724
|
||||
vt 0.220890 0.315480
|
||||
vt 0.461760 0.316819
|
||||
vt 0.221860 0.319521
|
||||
vt 0.222636 0.798557
|
||||
vt 0.809558 0.810889
|
||||
vt 0.781381 0.753963
|
||||
vt 0.782865 0.344970
|
||||
vt 0.553708 0.808618
|
||||
vt 0.553628 0.279374
|
||||
vt 0.588332 0.341517
|
||||
vt 0.784396 1.000000
|
||||
vt 0.784396 0.666591
|
||||
vt 1.000000 0.666591
|
||||
vt 0.002859 0.664645
|
||||
vt 0.223564 0.664868
|
||||
vt 0.223426 0.998277
|
||||
vt 1.000026 0.663788
|
||||
vt 1.000026 0.996547
|
||||
vt 0.785161 0.996547
|
||||
vt 0.220172 0.660110
|
||||
vt 0.220172 0.993518
|
||||
vt 0.000395 0.993518
|
||||
vt 0.221915 0.795798
|
||||
vt 0.220240 0.316007
|
||||
vt 0.219212 0.322172
|
||||
vt 0.460271 0.316344
|
||||
vt 0.462536 0.795855
|
||||
vt 0.590712 0.341538
|
||||
vt 0.556008 0.279395
|
||||
vt 0.809478 0.281644
|
||||
vt 0.588842 0.752236
|
||||
vt 0.779002 0.753942
|
||||
vt 0.807179 0.810867
|
||||
vt 0.002722 0.998054
|
||||
vt 1.000000 1.000000
|
||||
vt 0.785161 0.663789
|
||||
vt 0.000395 0.660110
|
||||
vn 0.000000 -1.000000 0.000000
|
||||
vn 1.000000 -0.000000 0.000000
|
||||
vn -0.000000 -0.000000 1.000000
|
||||
vn -1.000000 -0.000000 -0.000000
|
||||
vn 0.000000 0.000000 -1.000000
|
||||
vn 0.000000 1.000000 0.000000
|
||||
vn -0.004300 0.000000 -1.000000
|
||||
s off
|
||||
f 2/1/1 3/2/1 4/3/1
|
||||
f 1/4/2 5/5/2 6/6/2
|
||||
f 2/7/3 6/8/3 7/9/3
|
||||
f 7/10/4 8/11/4 4/12/4
|
||||
f 1/13/5 4/14/5 8/15/5
|
||||
f 5/16/6 9/17/6 10/18/6
|
||||
f 8/19/6 7/20/6 11/21/6
|
||||
f 12/22/3 16/23/3 13/24/3
|
||||
f 12/25/2 11/26/2 15/27/2
|
||||
f 10/28/7 14/29/7 15/30/7
|
||||
f 9/31/4 13/32/4 14/33/4
|
||||
f 1/34/1 2/1/1 4/3/1
|
||||
f 2/35/2 1/4/2 6/6/2
|
||||
f 3/36/3 2/7/3 7/9/3
|
||||
f 3/37/4 7/10/4 4/12/4
|
||||
f 5/38/5 1/13/5 8/15/5
|
||||
f 11/39/6 7/40/6 6/41/6
|
||||
f 12/42/6 9/43/6 5/44/6
|
||||
f 10/18/6 11/39/6 6/41/6
|
||||
f 6/41/6 5/16/6 10/18/6
|
||||
f 12/42/6 8/19/6 11/21/6
|
||||
f 12/42/6 5/44/6 8/19/6
|
||||
f 16/45/2 12/25/2 15/27/2
|
||||
f 9/46/3 12/22/3 13/24/3
|
||||
f 11/47/7 10/28/7 15/30/7
|
||||
f 10/48/4 9/31/4 14/33/4
|
358
Levels/Geometry/torch.obj
Normal file
@ -0,0 +1,358 @@
|
||||
# Blender v2.71 (sub 0) OBJ File: 'torch.blend'
|
||||
# www.blender.org
|
||||
o Cylinder
|
||||
v 0.000000 -1.000000 -0.087051
|
||||
v -0.000000 1.000000 -0.191513
|
||||
v 0.016983 -1.000000 -0.085379
|
||||
v 0.037362 1.000000 -0.187833
|
||||
v 0.033313 -1.000000 -0.080425
|
||||
v 0.073289 1.000000 -0.176935
|
||||
v 0.048363 -1.000000 -0.072380
|
||||
v 0.106399 1.000000 -0.159237
|
||||
v 0.061555 -1.000000 -0.061555
|
||||
v 0.135420 1.000000 -0.135420
|
||||
v 0.072380 -1.000000 -0.048363
|
||||
v 0.159237 1.000000 -0.106399
|
||||
v 0.080425 -1.000000 -0.033313
|
||||
v 0.176935 1.000000 -0.073289
|
||||
v 0.085379 -1.000000 -0.016983
|
||||
v 0.187833 1.000000 -0.037362
|
||||
v 0.087051 -1.000000 -0.000000
|
||||
v 0.191513 1.000000 0.000000
|
||||
v 0.085379 -1.000000 0.016983
|
||||
v 0.187833 1.000000 0.037362
|
||||
v 0.080425 -1.000000 0.033313
|
||||
v 0.176935 1.000000 0.073289
|
||||
v 0.072380 -1.000000 0.048363
|
||||
v 0.159237 1.000000 0.106399
|
||||
v 0.061555 -1.000000 0.061555
|
||||
v 0.135420 1.000000 0.135420
|
||||
v 0.048363 -1.000000 0.072380
|
||||
v 0.106399 1.000000 0.159237
|
||||
v 0.033313 -1.000000 0.080425
|
||||
v 0.073289 1.000000 0.176935
|
||||
v 0.016983 -1.000000 0.085379
|
||||
v 0.037362 1.000000 0.187833
|
||||
v -0.000000 -1.000000 0.087051
|
||||
v -0.000000 1.000000 0.191513
|
||||
v -0.016983 -1.000000 0.085379
|
||||
v -0.037362 1.000000 0.187833
|
||||
v -0.033313 -1.000000 0.080425
|
||||
v -0.073289 1.000000 0.176935
|
||||
v -0.048363 -1.000000 0.072380
|
||||
v -0.106399 1.000000 0.159237
|
||||
v -0.061555 -1.000000 0.061555
|
||||
v -0.135420 1.000000 0.135420
|
||||
v -0.072381 -1.000000 0.048363
|
||||
v -0.159237 1.000000 0.106399
|
||||
v -0.080425 -1.000000 0.033313
|
||||
v -0.176935 1.000000 0.073289
|
||||
v -0.085379 -1.000000 0.016983
|
||||
v -0.187833 1.000000 0.037362
|
||||
v -0.087051 -1.000000 -0.000000
|
||||
v -0.191513 1.000000 -0.000000
|
||||
v -0.085379 -1.000000 -0.016983
|
||||
v -0.187833 1.000000 -0.037362
|
||||
v -0.080425 -1.000000 -0.033313
|
||||
v -0.176935 1.000000 -0.073289
|
||||
v -0.072380 -1.000000 -0.048363
|
||||
v -0.159237 1.000000 -0.106399
|
||||
v -0.061554 -1.000000 -0.061555
|
||||
v -0.135420 1.000000 -0.135420
|
||||
v -0.048363 -1.000000 -0.072381
|
||||
v -0.106399 1.000000 -0.159237
|
||||
v -0.033313 -1.000000 -0.080425
|
||||
v -0.073289 1.000000 -0.176935
|
||||
v -0.016983 -1.000000 -0.085379
|
||||
v -0.037362 1.000000 -0.187833
|
||||
vt 0.355490 0.133897
|
||||
vt 0.388961 0.169345
|
||||
vt 0.188374 0.340465
|
||||
vt 0.418692 0.207984
|
||||
vt 0.201889 0.358028
|
||||
vt 0.444379 0.249421
|
||||
vt 0.213565 0.376862
|
||||
vt 0.465761 0.293235
|
||||
vt 0.482621 0.338980
|
||||
vt 0.230950 0.417570
|
||||
vt 0.494787 0.386190
|
||||
vt 0.236481 0.439028
|
||||
vt 0.502136 0.434385
|
||||
vt 0.239822 0.460935
|
||||
vt 0.504593 0.483075
|
||||
vt 0.502132 0.531764
|
||||
vt 0.239822 0.505197
|
||||
vt 0.494779 0.579957
|
||||
vt 0.236481 0.527103
|
||||
vt 0.482609 0.627165
|
||||
vt 0.465746 0.672906
|
||||
vt 0.223286 0.569353
|
||||
vt 0.444361 0.716715
|
||||
vt 0.213567 0.589266
|
||||
vt 0.418672 0.758148
|
||||
vt 0.388940 0.796782
|
||||
vt 0.188377 0.625660
|
||||
vt 0.355468 0.832224
|
||||
vt 0.173163 0.641770
|
||||
vt 0.318596 0.864115
|
||||
vt 0.278700 0.892129
|
||||
vt 0.138269 0.669000
|
||||
vt 0.236185 0.915982
|
||||
vt 0.118944 0.679843
|
||||
vt 0.191483 0.935431
|
||||
vt 0.098625 0.688683
|
||||
vt 0.145050 0.950278
|
||||
vt 0.077519 0.695432
|
||||
vt 0.097357 0.960373
|
||||
vt 0.055840 0.700021
|
||||
vt 0.048890 0.965612
|
||||
vt 0.033810 0.702402
|
||||
vt 0.000142 0.965943
|
||||
vt 0.011651 0.702553
|
||||
vt 0.000142 0.000142
|
||||
vt 0.048895 0.000476
|
||||
vt 0.033797 0.263708
|
||||
vt 0.097366 0.005719
|
||||
vt 0.055829 0.266091
|
||||
vt 0.145063 0.015817
|
||||
vt 0.077509 0.270681
|
||||
vt 0.191499 0.030670
|
||||
vt 0.098617 0.277432
|
||||
vt 0.236203 0.050124
|
||||
vt 0.118937 0.286274
|
||||
vt 0.278720 0.073982
|
||||
vt 0.138263 0.297119
|
||||
vt 0.514387 0.175443
|
||||
vt 0.533044 0.130402
|
||||
vt 0.990347 0.319823
|
||||
vt 0.318618 0.102002
|
||||
vt 0.173159 0.324353
|
||||
vt 0.156399 0.309855
|
||||
vt 0.704754 0.679615
|
||||
vt 0.545660 0.695284
|
||||
vt 0.689084 0.520522
|
||||
vt 0.223285 0.396777
|
||||
vt 0.240940 0.483066
|
||||
vt 0.230950 0.548561
|
||||
vt 0.201891 0.608099
|
||||
vt 0.156403 0.656266
|
||||
vt 0.011637 0.263556
|
||||
vt 0.776743 0.495124
|
||||
vt 0.727992 0.495124
|
||||
vt 0.594601 0.439872
|
||||
vt 0.680177 0.009653
|
||||
vt 0.727992 0.000142
|
||||
vt 0.776744 0.000142
|
||||
vt 0.533043 0.364864
|
||||
vt 0.514387 0.319824
|
||||
vt 0.504876 0.272009
|
||||
vt 0.504876 0.223258
|
||||
vt 0.560128 0.405399
|
||||
vt 0.560129 0.089866
|
||||
vt 0.594602 0.055394
|
||||
vt 0.869598 0.466956
|
||||
vt 0.910133 0.439871
|
||||
vt 0.971691 0.364863
|
||||
vt 0.824559 0.009653
|
||||
vt 0.869599 0.028309
|
||||
vt 0.910135 0.055395
|
||||
vt 0.944607 0.089867
|
||||
vt 0.971691 0.130402
|
||||
vt 0.990347 0.175442
|
||||
vt 0.999858 0.223257
|
||||
vt 0.999858 0.272009
|
||||
vt 0.944606 0.405398
|
||||
vt 0.824557 0.485613
|
||||
vt 0.680177 0.485613
|
||||
vt 0.635136 0.466957
|
||||
vt 0.635137 0.028309
|
||||
vt 0.529991 0.536192
|
||||
vt 0.545660 0.520522
|
||||
vt 0.564085 0.508211
|
||||
vt 0.584558 0.499731
|
||||
vt 0.606292 0.495408
|
||||
vt 0.650186 0.499730
|
||||
vt 0.670659 0.508211
|
||||
vt 0.628452 0.495407
|
||||
vt 0.704753 0.536191
|
||||
vt 0.717065 0.554616
|
||||
vt 0.729868 0.596823
|
||||
vt 0.725545 0.575089
|
||||
vt 0.725545 0.640717
|
||||
vt 0.729868 0.618983
|
||||
vt 0.717065 0.661190
|
||||
vt 0.689084 0.695284
|
||||
vt 0.670659 0.707596
|
||||
vt 0.628452 0.720399
|
||||
vt 0.606292 0.720399
|
||||
vt 0.584558 0.716076
|
||||
vt 0.564085 0.707595
|
||||
vt 0.529990 0.679615
|
||||
vt 0.517679 0.661190
|
||||
vt 0.509199 0.640717
|
||||
vt 0.504876 0.596824
|
||||
vt 0.650185 0.716076
|
||||
vt 0.509199 0.575090
|
||||
vt 0.517679 0.554617
|
||||
vt 0.504876 0.618983
|
||||
vn 0.097900 -0.051900 -0.993800
|
||||
vn 0.289900 -0.051900 -0.955700
|
||||
vn 0.470800 -0.051900 -0.880700
|
||||
vn 0.633500 -0.051900 -0.772000
|
||||
vn 0.772000 -0.051900 -0.633500
|
||||
vn 0.880700 -0.051900 -0.470800
|
||||
vn 0.955700 -0.051900 -0.289900
|
||||
vn 0.993800 -0.051900 -0.097900
|
||||
vn 0.993800 -0.051900 0.097900
|
||||
vn 0.955700 -0.051900 0.289900
|
||||
vn 0.880700 -0.051900 0.470800
|
||||
vn 0.772000 -0.051900 0.633500
|
||||
vn 0.633500 -0.051900 0.772000
|
||||
vn 0.470800 -0.051900 0.880700
|
||||
vn 0.289900 -0.051900 0.955700
|
||||
vn 0.097900 -0.051900 0.993800
|
||||
vn -0.097900 -0.051900 0.993800
|
||||
vn -0.289900 -0.051900 0.955600
|
||||
vn -0.470800 -0.051900 0.880700
|
||||
vn -0.633500 -0.051900 0.772000
|
||||
vn -0.772000 -0.051900 0.633500
|
||||
vn -0.880700 -0.051900 0.470800
|
||||
vn -0.955700 -0.051900 0.289900
|
||||
vn -0.993800 -0.051900 0.097900
|
||||
vn -0.993800 -0.051900 -0.097900
|
||||
vn -0.955600 -0.051900 -0.289900
|
||||
vn -0.880700 -0.051900 -0.470800
|
||||
vn -0.772000 -0.051900 -0.633500
|
||||
vn -0.633500 -0.051900 -0.772000
|
||||
vn -0.470800 -0.051900 -0.880700
|
||||
vn 0.000000 1.000000 0.000000
|
||||
vn -0.097900 -0.051900 -0.993800
|
||||
vn -0.289900 -0.051900 -0.955700
|
||||
vn 0.000000 -1.000000 0.000000
|
||||
vn -0.955700 -0.051900 -0.289900
|
||||
vn 0.000000 -1.000000 -0.000100
|
||||
s off
|
||||
f 2/1/1 4/2/1 3/3/1
|
||||
f 4/2/2 6/4/2 5/5/2
|
||||
f 6/4/3 8/6/3 7/7/3
|
||||
f 7/7/4 8/6/4 10/8/4
|
||||
f 10/8/5 12/9/5 11/10/5
|
||||
f 12/9/6 14/11/6 13/12/6
|
||||
f 14/11/7 16/13/7 15/14/7
|
||||
f 15/14/8 16/13/8 18/15/8
|
||||
f 18/15/9 20/16/9 19/17/9
|
||||
f 19/17/10 20/16/10 22/18/10
|
||||
f 21/19/11 22/18/11 24/20/11
|
||||
f 24/20/12 26/21/12 25/22/12
|
||||
f 26/21/13 28/23/13 27/24/13
|
||||
f 27/24/14 28/23/14 30/25/14
|
||||
f 30/25/15 32/26/15 31/27/15
|
||||
f 32/26/16 34/28/16 33/29/16
|
||||
f 33/29/17 34/28/17 36/30/17
|
||||
f 36/30/18 38/31/18 37/32/18
|
||||
f 38/31/19 40/33/19 39/34/19
|
||||
f 40/33/20 42/35/20 41/36/20
|
||||
f 42/35/21 44/37/21 43/38/21
|
||||
f 44/37/22 46/39/22 45/40/22
|
||||
f 46/39/23 48/41/23 47/42/23
|
||||
f 48/41/24 50/43/24 49/44/24
|
||||
f 50/45/25 52/46/25 51/47/25
|
||||
f 52/46/26 54/48/26 53/49/26
|
||||
f 54/48/27 56/50/27 55/51/27
|
||||
f 56/50/28 58/52/28 57/53/28
|
||||
f 58/52/29 60/54/29 59/55/29
|
||||
f 60/54/30 62/56/30 61/57/30
|
||||
f 54/58/31 52/59/31 22/60/31
|
||||
f 64/61/32 2/1/32 1/62/32
|
||||
f 62/56/33 64/61/33 63/63/33
|
||||
f 31/64/34 47/65/34 15/66/34
|
||||
f 1/62/1 2/1/1 3/3/1
|
||||
f 3/3/2 4/2/2 5/5/2
|
||||
f 5/5/3 6/4/3 7/7/3
|
||||
f 9/67/4 7/7/4 10/8/4
|
||||
f 9/67/5 10/8/5 11/10/5
|
||||
f 11/10/6 12/9/6 13/12/6
|
||||
f 13/12/7 14/11/7 15/14/7
|
||||
f 17/68/8 15/14/8 18/15/8
|
||||
f 17/68/9 18/15/9 19/17/9
|
||||
f 21/19/10 19/17/10 22/18/10
|
||||
f 23/69/11 21/19/11 24/20/11
|
||||
f 23/69/12 24/20/12 25/22/12
|
||||
f 25/22/13 26/21/13 27/24/13
|
||||
f 29/70/14 27/24/14 30/25/14
|
||||
f 29/70/15 30/25/15 31/27/15
|
||||
f 31/27/16 32/26/16 33/29/16
|
||||
f 35/71/17 33/29/17 36/30/17
|
||||
f 35/71/18 36/30/18 37/32/18
|
||||
f 37/32/19 38/31/19 39/34/19
|
||||
f 39/34/20 40/33/20 41/36/20
|
||||
f 41/36/21 42/35/21 43/38/21
|
||||
f 43/38/22 44/37/22 45/40/22
|
||||
f 45/40/23 46/39/23 47/42/23
|
||||
f 47/42/24 48/41/24 49/44/24
|
||||
f 49/72/25 50/45/25 51/47/25
|
||||
f 51/47/35 52/46/35 53/49/35
|
||||
f 53/49/27 54/48/27 55/51/27
|
||||
f 55/51/28 56/50/28 57/53/28
|
||||
f 57/53/29 58/52/29 59/55/29
|
||||
f 59/55/30 60/54/30 61/57/30
|
||||
f 10/73/31 8/74/31 2/75/31
|
||||
f 44/76/31 42/77/31 40/78/31
|
||||
f 62/79/31 60/80/31 58/81/31
|
||||
f 56/82/31 22/60/31 64/83/31
|
||||
f 50/84/31 48/85/31 52/59/31
|
||||
f 2/75/31 14/86/31 10/73/31
|
||||
f 16/87/31 22/60/31 20/88/31
|
||||
f 38/89/31 44/76/31 40/78/31
|
||||
f 38/89/31 36/90/31 34/91/31
|
||||
f 34/91/31 32/92/31 30/93/31
|
||||
f 30/93/31 28/94/31 26/95/31
|
||||
f 26/95/31 24/96/31 22/60/31
|
||||
f 18/97/31 16/87/31 20/88/31
|
||||
f 14/86/31 22/60/31 16/87/31
|
||||
f 14/86/31 12/98/31 10/73/31
|
||||
f 6/99/31 4/100/31 8/74/31
|
||||
f 22/60/31 38/89/31 34/91/31
|
||||
f 56/82/31 54/58/31 22/60/31
|
||||
f 46/101/31 44/76/31 48/85/31
|
||||
f 44/76/31 38/89/31 48/85/31
|
||||
f 30/93/31 22/60/31 34/91/31
|
||||
f 30/93/31 26/95/31 22/60/31
|
||||
f 52/59/31 48/85/31 38/89/31
|
||||
f 56/82/31 64/83/31 58/81/31
|
||||
f 64/83/31 62/79/31 58/81/31
|
||||
f 61/57/33 62/56/33 63/63/33
|
||||
f 52/59/31 38/89/31 22/60/31
|
||||
f 8/74/31 4/100/31 2/75/31
|
||||
f 63/63/32 64/61/32 1/62/32
|
||||
f 2/75/31 22/60/31 14/86/31
|
||||
f 22/60/31 2/75/31 64/83/31
|
||||
f 63/102/34 1/103/34 3/104/34
|
||||
f 3/104/34 5/105/34 7/106/34
|
||||
f 11/107/34 13/108/34 9/109/34
|
||||
f 15/66/34 7/106/34 13/108/34
|
||||
f 15/66/34 17/110/34 19/111/34
|
||||
f 23/112/34 15/66/34 21/113/34
|
||||
f 27/114/34 31/64/34 25/115/34
|
||||
f 27/114/36 29/116/36 31/64/36
|
||||
f 31/64/34 33/117/34 35/118/34
|
||||
f 39/119/34 41/120/34 43/121/34
|
||||
f 43/121/34 45/122/34 47/65/34
|
||||
f 47/65/34 49/123/34 51/124/34
|
||||
f 53/125/34 57/126/34 63/102/34
|
||||
f 35/118/34 37/127/34 31/64/34
|
||||
f 59/128/34 61/129/34 63/102/34
|
||||
f 63/102/34 3/104/34 7/106/34
|
||||
f 13/108/34 7/106/34 9/109/34
|
||||
f 31/64/34 23/112/34 25/115/34
|
||||
f 37/127/34 39/119/34 43/121/34
|
||||
f 37/127/34 47/65/34 31/64/34
|
||||
f 47/65/34 37/127/34 43/121/34
|
||||
f 53/125/34 55/130/34 57/126/34
|
||||
f 15/66/34 19/111/34 21/113/34
|
||||
f 63/102/34 7/106/34 15/66/34
|
||||
f 15/66/34 23/112/34 31/64/34
|
||||
f 47/65/34 51/124/34 53/125/34
|
||||
f 53/125/34 63/102/34 15/66/34
|
||||
f 57/126/34 59/128/34 63/102/34
|
||||
f 47/65/34 53/125/34 15/66/34
|
BIN
Levels/ObjectSetups/BackupLevel0.png
Normal file
After Width: | Height: | Size: 158 B |
BIN
Levels/ObjectSetups/BackupLevel1.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
Levels/ObjectSetups/BackupLevel1.xcf
Normal file
0
Levels/ObjectSetups/BackupLevel1.xml
Normal file
266
Levels/ObjectSetups/Compositions.xml
Normal file
@ -0,0 +1,266 @@
|
||||
<!-- Marble -->
|
||||
<composition>
|
||||
<typeID>20</typeID>
|
||||
<ignoreHeightmap>false</ignoreHeightmap>
|
||||
<object>
|
||||
<modelPath>marbleSmooth.obj</modelPath>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>0.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.0</scale>
|
||||
<mass>8.0</mass>
|
||||
</object>
|
||||
</composition>
|
||||
|
||||
<!-- Block -->
|
||||
<composition>
|
||||
<typeID>40</typeID>
|
||||
<ignoreHeightmap>false</ignoreHeightmap>
|
||||
<object>
|
||||
<modelPath>block.obj</modelPath>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>1.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.5</scale>
|
||||
<mass>25.0</mass>
|
||||
</object>
|
||||
</composition>
|
||||
|
||||
<!-- Column -->
|
||||
<composition>
|
||||
<typeID>60</typeID>
|
||||
<ignoreHeightmap>false</ignoreHeightmap>
|
||||
<object>
|
||||
<modelPath>column.obj</modelPath>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>0.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.0</scale>
|
||||
<mass>0.0</mass>
|
||||
</object>
|
||||
</composition>
|
||||
|
||||
<!-- Torch with Lightsource -->
|
||||
<composition>
|
||||
<typeID>80</typeID>
|
||||
<ignoreHeightmap>false</ignoreHeightmap>
|
||||
<object>
|
||||
<modelPath>torch.obj</modelPath>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>0.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.0</scale>
|
||||
<mass>0.0</mass>
|
||||
</object>
|
||||
<light>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>3</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<rColour>1.0</rColour>
|
||||
<gColour>1.0</gColour>
|
||||
<bColour>1.0</bColour>
|
||||
<intensity>4.0</intensity>
|
||||
</light>
|
||||
</composition>
|
||||
|
||||
<!-- Lightsource -->
|
||||
<composition>
|
||||
<typeID>85</typeID>
|
||||
<ignoreHeightmap>false</ignoreHeightmap>
|
||||
<light>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>1.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<rColour>1.0</rColour>
|
||||
<gColour>1.0</gColour>
|
||||
<bColour>1.0</bColour>
|
||||
<intensity>4.0</intensity>
|
||||
</light>
|
||||
</composition>
|
||||
|
||||
<!-- Block on 2 Pillars -->
|
||||
<composition>
|
||||
<typeID>100</typeID>
|
||||
<ignoreHeightmap>false</ignoreHeightmap>
|
||||
<object>
|
||||
<modelPath>column.obj</modelPath>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>0.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.5</scale>
|
||||
<mass>0.0</mass>
|
||||
</object>
|
||||
<object>
|
||||
<modelPath>column.obj</modelPath>
|
||||
<xOffset>2.0</xOffset>
|
||||
<yOffset>0.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.5</scale>
|
||||
<mass>0.0</mass>
|
||||
</object>
|
||||
<object>
|
||||
<modelPath>block.obj</modelPath>
|
||||
<xOffset>1.0</xOffset>
|
||||
<yOffset>3.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.5</scale>
|
||||
<mass>0.0</mass>
|
||||
</object>
|
||||
</composition>
|
||||
|
||||
<!-- Switch -->
|
||||
<composition>
|
||||
<typeID>120</typeID>
|
||||
<ignoreHeightmap>false</ignoreHeightmap>
|
||||
<object>
|
||||
<modelPath>switch_inner.obj</modelPath>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>0.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.0</scale>
|
||||
<mass>1.0</mass>
|
||||
</object>
|
||||
<object>
|
||||
<modelPath>switch_outer.obj</modelPath>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>0.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.0</scale>
|
||||
<mass>0.0</mass>
|
||||
</object>
|
||||
</composition>
|
||||
|
||||
<!-- Bridge Block -->
|
||||
<composition>
|
||||
<typeID>140</typeID>
|
||||
<ignoreHeightmap>true</ignoreHeightmap>
|
||||
<object>
|
||||
<modelPath>block.obj</modelPath>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>20.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.5</scale>
|
||||
<mass>0.0</mass>
|
||||
</object>
|
||||
</composition>
|
||||
|
||||
<!-- Bridge Block on Pillar-->
|
||||
<composition>
|
||||
<typeID>160</typeID>
|
||||
<ignoreHeightmap>true</ignoreHeightmap>
|
||||
<object>
|
||||
<modelPath>block.obj</modelPath>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>20.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.5</scale>
|
||||
<mass>0.0</mass>
|
||||
</object>
|
||||
<object>
|
||||
<modelPath>column.obj</modelPath>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>18.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.5</scale>
|
||||
<mass>0.0</mass>
|
||||
</object>
|
||||
<object>
|
||||
<modelPath>column.obj</modelPath>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>15.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.5</scale>
|
||||
<mass>0.0</mass>
|
||||
</object>
|
||||
<object>
|
||||
<modelPath>column.obj</modelPath>
|
||||
<xOffset>0.0</xOffset>
|
||||
<yOffset>12.0</yOffset>
|
||||
<zOffset>0.0</zOffset>
|
||||
<scale>1.5</scale>
|
||||
<mass>0.0</mass>
|
||||
</object>
|
||||
</composition>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<objectData>
|
||||
<modelPath>marbleSmooth.obj</modelPath>
|
||||
<texturePath>Marbletexture.png</texturePath>
|
||||
<ambientFactor>0.1</ambientFactor>
|
||||
<diffuseFactor>0.5</diffuseFactor>
|
||||
<specularFactor>0.5</specularFactor>
|
||||
<shininess>3.0</shininess>
|
||||
<physicType>Player</physicType>
|
||||
<radius>1.5</radius>
|
||||
<dampningL>0.2 </dampningL>
|
||||
<dampningA>0.7</dampningA>
|
||||
</objectData>
|
||||
|
||||
<objectData>
|
||||
<modelPath>block.obj</modelPath>
|
||||
<texturePath>blockTexture_small.png</texturePath>
|
||||
<ambientFactor>0.1</ambientFactor>
|
||||
<diffuseFactor>0.6</diffuseFactor>
|
||||
<specularFactor>0.4</specularFactor>
|
||||
<shininess>2.0</shininess>
|
||||
<physicType>Box</physicType>
|
||||
<width>5.0</width>
|
||||
<height>3</height>
|
||||
<length>1.8</length>
|
||||
<dampningL>0.8</dampningL>
|
||||
<dampningA>0.9</dampningA>
|
||||
</objectData>
|
||||
|
||||
<objectData>
|
||||
<modelPath>column.obj</modelPath>
|
||||
<texturePath>columnTexture2.png</texturePath>
|
||||
<ambientFactor>0.1</ambientFactor>
|
||||
<diffuseFactor>0.6</diffuseFactor>
|
||||
<specularFactor>0.4</specularFactor>
|
||||
<shininess>2.0</shininess>
|
||||
<physicType>TriangleMesh</physicType>
|
||||
<dampningL>1.0</dampningL>
|
||||
<dampningA>1.0</dampningA>
|
||||
</objectData>
|
||||
|
||||
<objectData>
|
||||
<modelPath>torch.obj</modelPath>
|
||||
<texturePath>torchTexture.png</texturePath>
|
||||
<ambientFactor>0.1</ambientFactor>
|
||||
<diffuseFactor>0.3</diffuseFactor>
|
||||
<specularFactor>0.7</specularFactor>
|
||||
<shininess>10.0</shininess>
|
||||
<physicType>TriangleMesh</physicType>
|
||||
<dampningL>1.0</dampningL>
|
||||
<dampningA>1.0</dampningA>
|
||||
</objectData>
|
||||
|
||||
<objectData>
|
||||
<modelPath>switch_inner.obj</modelPath>
|
||||
<texturePath>switchTextureInner.png</texturePath>
|
||||
<ambientFactor>0.1</ambientFactor>
|
||||
<diffuseFactor>0.6</diffuseFactor>
|
||||
<specularFactor>0.4</specularFactor>
|
||||
<shininess>2.0</shininess>
|
||||
<physicType>Box</physicType>
|
||||
<width>0.5</width>
|
||||
<height>0.5</height>
|
||||
<length>0.5</length>
|
||||
<dampningL>1.0</dampningL>
|
||||
<dampningA>1.0</dampningA>
|
||||
</objectData>
|
||||
|
||||
<objectData>
|
||||
<modelPath>switch_outer.obj</modelPath>
|
||||
<texturePath>switchTextureOuter.png</texturePath>
|
||||
<ambientFactor>0.1</ambientFactor>
|
||||
<diffuseFactor>0.6</diffuseFactor>
|
||||
<specularFactor>0.4</specularFactor>
|
||||
<shininess>2.0</shininess>
|
||||
<physicType>TriangleMesh</physicType>
|
||||
<dampningL>1.0</dampningL>
|
||||
<dampningA>1.0</dampningA>
|
||||
</objectData>
|
BIN
Levels/ObjectSetups/Level0.png
Normal file
After Width: | Height: | Size: 104 B |
BIN
Levels/ObjectSetups/Level0.xcf
Normal file
67
Levels/ObjectSetups/Level0.xml
Normal file
@ -0,0 +1,67 @@
|
||||
<composition>
|
||||
<scale>1.0</scale>
|
||||
<xRot>0.0</xRot>
|
||||
<yRot>0.0</yRot>
|
||||
<zRot>0.0</zRot>
|
||||
<manualPos>false</manualPos>
|
||||
<xPos>-0.500000</xPos>
|
||||
<yOffset>0.0</yOffset>
|
||||
<zPos>1.500000</zPos>
|
||||
<idGreen>1</idGreen>
|
||||
<idBlue>5</idBlue>
|
||||
<typeID>99</typeID>
|
||||
</composition>
|
||||
|
||||
<composition>
|
||||
<scale>1.0</scale>
|
||||
<xRot>0.0</xRot>
|
||||
<yRot>0.0</yRot>
|
||||
<zRot>0.0</zRot>
|
||||
<manualPos>false</manualPos>
|
||||
<xPos>-2.500000</xPos>
|
||||
<yOffset>0.0</yOffset>
|
||||
<zPos>-1.500000</zPos>
|
||||
<idGreen>1</idGreen>
|
||||
<idBlue>3</idBlue>
|
||||
<typeID>99</typeID>
|
||||
</composition>
|
||||
|
||||
<ambientLight>
|
||||
<rColour>1.0</rColour>
|
||||
<gColour>1.0</gColour>
|
||||
<bColour>1.0</bColour>
|
||||
</ambientLight>
|
||||
|
||||
<fogColour>
|
||||
<rColour>0.10</rColour>
|
||||
<gColour>0.14</gColour>
|
||||
<bColour>0.14</bColour>
|
||||
<alpha>1.0</alpha>
|
||||
</fogColour>
|
||||
|
||||
<directionalLight>
|
||||
<xOffset>-1.0</xOffset>
|
||||
<yOffset>1.5</yOffset>
|
||||
<zOffset>1.0</zOffset>
|
||||
<rColour>1.0</rColour>
|
||||
<gColour>1.0</gColour>
|
||||
<bColour>0.9</bColour>
|
||||
<intensity>0.2</intensity>
|
||||
</directionalLight>
|
||||
|
||||
<skydome>
|
||||
<texture>skydome.png</texture>
|
||||
</skydome>
|
||||
|
||||
<trigger>
|
||||
<name>-</name>
|
||||
<xPosition>0.0</xPosition>
|
||||
<yPosition>0.0</yPosition>
|
||||
<zPosition>0.0</zPosition>
|
||||
<distance>1.0</distance>
|
||||
<isBiggerThan>false</isBiggerThan>
|
||||
<idGreen>0</idGreen>
|
||||
<idBlue>0</idBlue>
|
||||
<objectNum>1</objectNum>
|
||||
<functionPointer>-</functionPointer>
|
||||
</trigger>
|
BIN
Levels/ObjectSetups/Level1.png
Normal file
After Width: | Height: | Size: 684 B |
BIN
Levels/ObjectSetups/Level1.xcf
Normal file
1974
Levels/ObjectSetups/Level1.xml
Normal file
Before Width: | Height: | Size: 9.8 MiB After Width: | Height: | Size: 9.5 MiB |
BIN
Levels/Textures/SimpleWallTexture.png
Normal file
After Width: | Height: | Size: 3.5 MiB |
BIN
Levels/Textures/blockTexture_small.png
Normal file
After Width: | Height: | Size: 1.6 MiB |
BIN
Levels/Textures/columnTexture2.png
Normal file
After Width: | Height: | Size: 721 KiB |
BIN
Levels/Textures/columnTexture_small.png
Normal file
After Width: | Height: | Size: 1.3 MiB |
BIN
Levels/Textures/movableBlockTexture.png
Normal file
After Width: | Height: | Size: 3.1 MiB |
BIN
Levels/Textures/seamlessTerrain.png
Normal file
After Width: | Height: | Size: 1.6 MiB |
BIN
Levels/Textures/skydome.png
Normal file
After Width: | Height: | Size: 650 KiB |
BIN
Levels/Textures/switchTextureInner.png
Normal file
After Width: | Height: | Size: 2.5 MiB |
BIN
Levels/Textures/switchTextureOuter.png
Normal file
After Width: | Height: | Size: 2.8 MiB |
BIN
Levels/Textures/torchTexture.png
Normal file
After Width: | Height: | Size: 100 KiB |
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
BIN
Levels/heightmapLvl02.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
Levels/heightmapLvl1.png
Normal file
After Width: | Height: | Size: 48 KiB |
BIN
Levels/heightmapLvl1.xcf
Normal file
16
Levels/scripts/Template.lua
Normal file
@ -0,0 +1,16 @@
|
||||
if(triggeredSCRIPTNAME == nil) then
|
||||
triggeredSCRIPTNAME = false
|
||||
end
|
||||
function trigger(objectToChange)
|
||||
if(triggeredSCRIPTNAME == false) then
|
||||
if(not level) then
|
||||
print("No level found in Lua!")
|
||||
return
|
||||
end
|
||||
|
||||
--enter the scripts code here and replace all occurences of SCRIPTNAME with the name of the script.
|
||||
|
||||
triggeredSCRIPTNAME = true
|
||||
print("SCRIPTNAME")
|
||||
end
|
||||
end
|
14
Levels/scripts/deleteObject.lua
Normal file
@ -0,0 +1,14 @@
|
||||
if(triggeredDeleteObject == nil) then
|
||||
triggeredDeleteObject = false
|
||||
end
|
||||
function trigger(objectToChange)
|
||||
if(triggeredDeleteObject == false) then
|
||||
if(not level) then
|
||||
print("No level found in Lua!")
|
||||
return
|
||||
end
|
||||
level:deleteObject(objectToChange)
|
||||
triggeredDeleteObject = true
|
||||
print("deleteObject")
|
||||
end
|
||||
end
|
16
Levels/scripts/deleteRandomObject.lua
Normal file
@ -0,0 +1,16 @@
|
||||
if(triggeredDeleteRandomObject == nil) then
|
||||
triggeredDeleteRandomObject = false
|
||||
end
|
||||
function trigger(objectToChange)
|
||||
if(triggeredDeleteRandomObject == false) then
|
||||
if(not level) then
|
||||
print("No level found in Lua!")
|
||||
return
|
||||
end
|
||||
a = level:getObjectCount()
|
||||
rand = math.random(0, a - 1)
|
||||
level:deleteObject(rand)
|
||||
triggeredDeleteRandomObject = true
|
||||
print("deleteRandomObject")
|
||||
end
|
||||
end
|
28
Levels/scripts/openDoor1.lua
Normal file
@ -0,0 +1,28 @@
|
||||
if(triggeredOpenDoor1 == nil) then
|
||||
triggeredOpenDoor1 = false
|
||||
end
|
||||
function trigger(objectToChange)
|
||||
if(triggeredOpenDoor1 == false) then
|
||||
if(not level) then
|
||||
print("No level found in Lua!")
|
||||
return
|
||||
end
|
||||
|
||||
if(not openDoorCounter) then
|
||||
openDoorCounter = 0
|
||||
end
|
||||
openDoorCounter = openDoorCounter + 1
|
||||
if (openDoorCounter == 3) then
|
||||
local strength = 1
|
||||
local xPos = 0
|
||||
local yPos = 0
|
||||
local zPos = 0
|
||||
level:moveObject(objectToChange, strength, xPos, yPos, zPos)
|
||||
print("Opening the door")
|
||||
end
|
||||
triggeredOpenDoor1undo = false
|
||||
|
||||
triggeredOpenDoor1 = true
|
||||
print("openDoor1")
|
||||
end
|
||||
end
|
19
Levels/scripts/openDoor1undo.lua
Normal file
@ -0,0 +1,19 @@
|
||||
if(triggeredOpenDoor1undo == nil) then
|
||||
triggeredOpenDoor1undo = false
|
||||
end
|
||||
function trigger(objectToChange)
|
||||
if(triggeredOpenDoor1undo == false) then
|
||||
if(not level) then
|
||||
print("No level found in Lua!")
|
||||
return
|
||||
end
|
||||
|
||||
if(triggeredOpenDoor1) then
|
||||
openDoorCounter = openDoorCounter - 1
|
||||
triggeredOpenDoor1 = false
|
||||
end
|
||||
|
||||
triggeredOpenDoor1undo = true
|
||||
print("openDoor1undo")
|
||||
end
|
||||
end
|
28
Levels/scripts/openDoor2.lua
Normal file
@ -0,0 +1,28 @@
|
||||
if(triggeredOpenDoor2 == nil) then
|
||||
triggeredOpenDoor2 = false
|
||||
end
|
||||
function trigger(objectToChange)
|
||||
if(triggeredOpenDoor2 == false) then
|
||||
if(not level) then
|
||||
print("No level found in Lua!")
|
||||
return
|
||||
end
|
||||
|
||||
if(not openDoorCounter) then
|
||||
openDoorCounter = 0
|
||||
end
|
||||
openDoorCounter = openDoorCounter + 1
|
||||
if (openDoorCounter == 3) then
|
||||
local strength = 1
|
||||
local xPos = 0
|
||||
local yPos = 0
|
||||
local zPos = 0
|
||||
level:moveObject(objectToChange, strength, xPos, yPos, zPos)
|
||||
print("Opening the door")
|
||||
end
|
||||
triggeredOpenDoor2undo = false
|
||||
|
||||
triggeredOpenDoor2 = true
|
||||
print("openDoor2")
|
||||
end
|
||||
end
|
19
Levels/scripts/openDoor2undo.lua
Normal file
@ -0,0 +1,19 @@
|
||||
if(triggeredOpenDoor2undo == nil) then
|
||||
triggeredOpenDoor2undo = false
|
||||
end
|
||||
function trigger(objectToChange)
|
||||
if(triggeredOpenDoor2undo == false) then
|
||||
if(not level) then
|
||||
print("No level found in Lua!")
|
||||
return
|
||||
end
|
||||
|
||||
if(triggeredOpenDoor2) then
|
||||
openDoorCounter = openDoorCounter - 1
|
||||
triggeredOpenDoor2 = false
|
||||
end
|
||||
|
||||
triggeredOpenDoor2undo = true
|
||||
print("openDoor2undo")
|
||||
end
|
||||
end
|
28
Levels/scripts/openDoor3.lua
Normal file
@ -0,0 +1,28 @@
|
||||
if(triggeredOpenDoor3 == nil) then
|
||||
triggeredOpenDoor3 = false
|
||||
end
|
||||
function trigger(objectToChange)
|
||||
if(triggeredOpenDoor3 == false) then
|
||||
if(not level) then
|
||||
print("No level found in Lua!")
|
||||
return
|
||||
end
|
||||
|
||||
if(not openDoorCounter) then
|
||||
openDoorCounter = 0
|
||||
end
|
||||
openDoorCounter = openDoorCounter + 1
|
||||
if (openDoorCounter == 3) then
|
||||
local strength = 1
|
||||
local xPos = 0
|
||||
local yPos = 0
|
||||
local zPos = 0
|
||||
level:moveObject(objectToChange, strength, xPos, yPos, zPos)
|
||||
print("Opening the door")
|
||||
end
|
||||
triggeredOpenDoor3undo = false
|
||||
|
||||
triggeredOpenDoor3 = true
|
||||
print("openDoor3")
|
||||
end
|
||||
end
|
19
Levels/scripts/openDoor3undo.lua
Normal file
@ -0,0 +1,19 @@
|
||||
if(triggeredOpenDoor3undo == nil) then
|
||||
triggeredOpenDoor3undo = false
|
||||
end
|
||||
function trigger(objectToChange)
|
||||
if(triggeredOpenDoor3undo == false) then
|
||||
if(not level) then
|
||||
print("No level found in Lua!")
|
||||
return
|
||||
end
|
||||
|
||||
if(triggeredOpenDoor3) then
|
||||
openDoorCounter = openDoorCounter - 1
|
||||
triggeredOpenDoor3 = false
|
||||
end
|
||||
|
||||
triggeredOpenDoor3undo = true
|
||||
print("openDoor3undo")
|
||||
end
|
||||
end
|
7
Shader/depth.fsh
Normal file
@ -0,0 +1,7 @@
|
||||
#version 150
|
||||
|
||||
out float fragmentDepth;
|
||||
|
||||
void main() {
|
||||
fragmentDepth = gl_FragCoord.z;
|
||||
}
|
11
Shader/depth.vsh
Normal file
@ -0,0 +1,11 @@
|
||||
#version 150
|
||||
|
||||
in vec3 aPosition;
|
||||
in vec3 aNormal;
|
||||
in vec3 aTexcoord;
|
||||
|
||||
uniform mat4 modelViewProjectionMatrix;
|
||||
|
||||
void main() {
|
||||
gl_Position = modelViewProjectionMatrix * vec4(aPosition, 1.0);
|
||||
}
|
121
Shader/phong.fsh
@ -3,10 +3,17 @@
|
||||
in vec3 vNormal;
|
||||
in vec2 vTexCoord;
|
||||
in vec4 fragPosition;
|
||||
in vec4 shadowCoord_near;
|
||||
in vec4 shadowCoord_middle;
|
||||
in vec4 shadowCoord_far;
|
||||
|
||||
out vec4 oColor;
|
||||
|
||||
uniform sampler2D uTexture;
|
||||
uniform sampler2DShadow shadowMap_near;
|
||||
uniform sampler2DShadow shadowMap_middle;
|
||||
uniform sampler2DShadow shadowMap_far;
|
||||
uniform samplerCubeShadow shadowMap_cube;
|
||||
uniform vec3 ambientColor;
|
||||
uniform float ambientFactor;
|
||||
uniform float diffuseFactor;
|
||||
@ -14,30 +21,124 @@ uniform float specularFactor;
|
||||
uniform vec3 camera;
|
||||
uniform float shininess;
|
||||
uniform int lightCount;
|
||||
uniform vec3 lightSources[128];
|
||||
uniform vec3 lightColors[128];
|
||||
uniform float lightIntensities[128];
|
||||
uniform vec3 directionalLightVector;
|
||||
uniform vec3 directionalColor;
|
||||
uniform float directionalIntensity;
|
||||
uniform vec3 lightSources[32];
|
||||
uniform vec3 lightColors[32];
|
||||
uniform float lightIntensities[32];
|
||||
uniform float farPlane;
|
||||
uniform vec4 fogColor;
|
||||
uniform vec3 cameraCenter;
|
||||
|
||||
vec2 poissonDisk[16] = vec2[](
|
||||
vec2( -0.94201624, -0.39906216 ),
|
||||
vec2( 0.94558609, -0.76890725 ),
|
||||
vec2( -0.094184101, -0.92938870 ),
|
||||
vec2( 0.34495938, 0.29387760 ),
|
||||
vec2( -0.91588581, 0.45771432 ),
|
||||
vec2( -0.81544232, -0.87912464 ),
|
||||
vec2( -0.38277543, 0.27676845 ),
|
||||
vec2( 0.97484398, 0.75648379 ),
|
||||
vec2( 0.44323325, -0.97511554 ),
|
||||
vec2( 0.53742981, -0.47373420 ),
|
||||
vec2( -0.26496911, -0.41893023 ),
|
||||
vec2( 0.79197514, 0.19090188 ),
|
||||
vec2( -0.24188840, 0.99706507 ),
|
||||
vec2( -0.81409955, 0.91437590 ),
|
||||
vec2( 0.19984126, 0.78641367 ),
|
||||
vec2( 0.14383161, -0.14100790 )
|
||||
);
|
||||
|
||||
float sampleDirectionalShadow(sampler2DShadow shadowMap, vec4 shadowCoord) {
|
||||
float nearPlane = 0.1;
|
||||
float visibility = 1.0;
|
||||
float bias = 0.001*tan(acos(clamp(dot(vNormal, -directionalLightVector), 0.0, 1.0)));
|
||||
bias = clamp(bias, 0.0, 0.01);
|
||||
/*for (int i=0; i<4; i++) {
|
||||
visibility -= directionalIntensity/16*(1.0-texture(shadowMap, vec3(shadowCoord.xy + poissonDisk[i]/700.0, (2.0 * nearPlane)/(farPlane+ nearPlane - shadowCoord.z * (farPlane - nearPlane))- bias)));
|
||||
}
|
||||
if (visibility == 1.0-(directionalIntensity/16)*4)
|
||||
{
|
||||
visibility = 1.0-directionalIntensity;
|
||||
}
|
||||
else if (visibility != 1.0) {
|
||||
for (int i=0; i<12; i++) {
|
||||
visibility -= directionalIntensity/16*(1.0-texture(shadowMap, vec3(shadowCoord.xy + poissonDisk[i]/700.0, (2.0 * nearPlane)/(farPlane+ nearPlane - shadowCoord.z * (farPlane - nearPlane))- bias)));
|
||||
}
|
||||
}*/
|
||||
visibility = texture(shadowMap, vec3(shadowCoord.xy, (shadowCoord.z - bias)/shadowCoord.w));
|
||||
return (2.0 * nearPlane) / (farPlane + nearPlane - visibility * (farPlane - nearPlane));
|
||||
}
|
||||
|
||||
float samplePointShadow(samplerCubeShadow shadowMap, vec3 lightDirection) {
|
||||
float bias = 0.005;
|
||||
return texture(shadowMap, vec4(lightDirection.xyz , length(lightDirection) - bias));
|
||||
}
|
||||
|
||||
float distanceToBorder(vec2 vector) {
|
||||
float xDistance = min(vector.x, 1.0-vector.x);
|
||||
float yDistance = min(vector.y, 1.0-vector.y);
|
||||
return min(xDistance, yDistance);
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
vec3 ambientColor = ambientFactor * ambientColor;
|
||||
vec3 diffuseColor = vec3(0.0, 0.0, 0.0);
|
||||
vec3 specularColor = vec3(0.0, 0.0, 0.0);
|
||||
|
||||
|
||||
// direction lighting
|
||||
if(length(directionalLightVector)>0.0f) {
|
||||
vec3 directionalVector = normalize(directionalLightVector);
|
||||
diffuseColor += clamp(dot(normalize(vNormal), directionalVector)
|
||||
*diffuseFactor*directionalIntensity*directionalColor, 0.0, 1.0);
|
||||
vec3 cameraVector = normalize(camera - vec3(fragPosition));
|
||||
specularColor += clamp(pow((dot((cameraVector+directionalVector),normalize(vNormal))/(length(cameraVector+directionalVector)*length(normalize(vNormal)))),shininess), 0.0, 1.0)
|
||||
*specularFactor*directionalIntensity*directionalColor;
|
||||
}
|
||||
|
||||
// point lights
|
||||
float visibility = 1.0;
|
||||
for(int i = 0; i<lightCount; i++) {
|
||||
float distance = distance(lightSources[i], vec3(fragPosition));
|
||||
vec3 lightDirection = vec3(fragPosition) - lightSources[i];
|
||||
float distance = length(lightDirection);
|
||||
// only take lights into account with meaningful contribution
|
||||
if (distance > 0.001f) {
|
||||
vec3 lightVector = normalize(lightSources[i]-vec3(fragPosition));
|
||||
float intensity = (lightIntensities[i])/(distance);
|
||||
diffuseColor += dot(normalize(vNormal), lightVector)
|
||||
*diffuseFactor*intensity*lightColors[i];
|
||||
float intensity = clamp(exp(-(1/lightIntensities[i])*distance), 0.0, 1.0);
|
||||
diffuseColor += clamp(dot(normalize(vNormal), lightVector)
|
||||
*diffuseFactor*intensity*lightColors[i], 0.0, 1.0);
|
||||
vec3 cameraVector = normalize(camera - vec3(fragPosition));
|
||||
specularColor += clamp(pow((dot((cameraVector+lightVector),normalize(vNormal))/(length(cameraVector+lightVector)*length(normalize(vNormal)))),shininess), 0.0, 1.0)
|
||||
*specularFactor*intensity*lightColors[i];
|
||||
visibility = samplePointShadow(shadowMap_cube, lightDirection);
|
||||
}
|
||||
}
|
||||
vec3 finalColor = specularColor + diffuseColor + ambientColor;
|
||||
|
||||
vec3 texture = texture(uTexture, vTexCoord).rgb;
|
||||
oColor = vec4(finalColor*texture, 1.0 );
|
||||
// shadows
|
||||
if (distanceToBorder(shadowCoord_middle.xy) <= 0.5 && distanceToBorder(shadowCoord_middle.xy) > 0.0) {
|
||||
if (distanceToBorder(shadowCoord_near.xy) <= 0.5 && distanceToBorder(shadowCoord_near.xy) > 0.0) {
|
||||
visibility *= sampleDirectionalShadow(shadowMap_near, shadowCoord_near);
|
||||
}
|
||||
else {
|
||||
visibility *= sampleDirectionalShadow(shadowMap_middle, shadowCoord_middle);
|
||||
}
|
||||
}
|
||||
else {
|
||||
visibility *= sampleDirectionalShadow(shadowMap_far, shadowCoord_far);
|
||||
}
|
||||
|
||||
specularColor *= visibility;
|
||||
diffuseColor *= visibility;
|
||||
|
||||
vec3 finalColor = specularColor + diffuseColor + ambientColor;
|
||||
float distanceCameraCenter = distance(cameraCenter, vec3(fragPosition));
|
||||
float fogFactor = clamp((1.0 - ((farPlane - 35.0) -distanceCameraCenter)/30.0), 0.0, 1.0);
|
||||
fogFactor *= clamp((1.0-((fragPosition.y-8.0)/30.0)), 0.0, 1.0);
|
||||
|
||||
vec4 texture = texture(uTexture, vTexCoord).rgba;
|
||||
oColor = vec4(finalColor, 1.0f)*texture;
|
||||
oColor = mix(oColor, fogColor, fogFactor);
|
||||
}
|
||||
|
@ -1,8 +1,8 @@
|
||||
#version 150
|
||||
|
||||
uniform mat4 modelMatrix;
|
||||
uniform mat4 viewMatrix;
|
||||
uniform mat4 projectionMatrix;
|
||||
uniform mat4 modelViewProjectionMatrix;
|
||||
uniform mat4 shadowMVPs[5];
|
||||
|
||||
in vec3 aPosition;
|
||||
in vec3 aNormal;
|
||||
@ -11,11 +11,17 @@ in vec2 aTexCoord;
|
||||
out vec3 vNormal;
|
||||
out vec2 vTexCoord;
|
||||
out vec4 fragPosition;
|
||||
out vec4 shadowCoord_near;
|
||||
out vec4 shadowCoord_middle;
|
||||
out vec4 shadowCoord_far;
|
||||
|
||||
void main()
|
||||
{
|
||||
fragPosition = modelMatrix * vec4(aPosition, 1.0);
|
||||
vNormal = inverse(transpose(mat3(modelMatrix))) * aNormal;
|
||||
vTexCoord = aTexCoord;
|
||||
gl_Position = projectionMatrix * viewMatrix * modelMatrix * vec4(aPosition, 1.0);
|
||||
shadowCoord_near = shadowMVPs[0] * vec4(aPosition, 1.0);
|
||||
shadowCoord_middle = shadowMVPs[1] * vec4(aPosition, 1.0);
|
||||
shadowCoord_far = shadowMVPs[2] * vec4(aPosition, 1.0);
|
||||
gl_Position = modelViewProjectionMatrix * vec4(aPosition, 1.0);
|
||||
}
|
||||
|
73
application.cc
Normal file
@ -0,0 +1,73 @@
|
||||
#include "application.hh"
|
||||
|
||||
|
||||
Application::Application() {
|
||||
graphics = Graphics(glm::uvec2(1024, 786), 0.1f, 150.0f);
|
||||
}
|
||||
|
||||
void Application::init()
|
||||
{
|
||||
// init random generator
|
||||
std::srand(std::time(NULL));
|
||||
// choose Level TODO: Choose this in a menu
|
||||
this->level = Level("1");
|
||||
// Don't change this!
|
||||
ignoredMouseUpdates = 0;
|
||||
cameraLock = true;
|
||||
// set Skybox size
|
||||
level.setSkydomeSize((graphics.getFarPlane())-31.0f);
|
||||
|
||||
// define where shaders and textures can be found:
|
||||
ACGL::Base::Settings::the()->setResourcePath("../");
|
||||
ACGL::Base::Settings::the()->setShaderPath("Shader/");
|
||||
ACGL::Base::Settings::the()->setTexturePath("Levels/Textures/");
|
||||
ACGL::Base::Settings::the()->setGeometryPath("Levels/Geometry/");
|
||||
|
||||
// load Level
|
||||
level.load();
|
||||
|
||||
graphics.init(&level);
|
||||
|
||||
// just in case: check for errors
|
||||
openGLCriticalError();
|
||||
}
|
||||
|
||||
Graphics* Application::getGraphics() {
|
||||
return &graphics;
|
||||
}
|
||||
|
||||
Level* Application::getLevel() {
|
||||
return &level;
|
||||
}
|
||||
|
||||
void Application::setFocused(bool focused) {
|
||||
this->focused = focused;
|
||||
}
|
||||
|
||||
bool Application::isFocused() {
|
||||
return focused;
|
||||
}
|
||||
|
||||
void Application::setCameraLock(bool locked) {
|
||||
// Prevent camera jumping huge distances
|
||||
if (!locked) {
|
||||
ignoreNextMouseUpdate();
|
||||
}
|
||||
cameraLock = locked;
|
||||
}
|
||||
|
||||
void Application::ignoreNextMouseUpdate() {
|
||||
ignoredMouseUpdates++;
|
||||
}
|
||||
|
||||
void Application::ignoredOneMouseUpdate() {
|
||||
ignoredMouseUpdates--;
|
||||
}
|
||||
|
||||
int Application::getIgnoredMouseUpdates() {
|
||||
return ignoredMouseUpdates;
|
||||
}
|
||||
|
||||
bool Application::isLocked() {
|
||||
return cameraLock;
|
||||
}
|
29
application.hh
Normal file
@ -0,0 +1,29 @@
|
||||
#ifndef APPLICATION_HH_INCLUDED
|
||||
#define APPLICATION_HH_INCLUDED
|
||||
|
||||
#include "physics.hh"
|
||||
#include "graphics.hh"
|
||||
#include "level.hh"
|
||||
|
||||
class Application {
|
||||
public:
|
||||
Application();
|
||||
Graphics* getGraphics();
|
||||
Level* getLevel();
|
||||
void init();
|
||||
void setFocused(bool focused);
|
||||
bool isFocused();
|
||||
void setCameraLock(bool locked);
|
||||
bool isLocked();
|
||||
void ignoreNextMouseUpdate();
|
||||
int getIgnoredMouseUpdates();
|
||||
void ignoredOneMouseUpdate();
|
||||
private:
|
||||
int ignoredMouseUpdates;
|
||||
bool focused;
|
||||
bool cameraLock;
|
||||
Graphics graphics;
|
||||
Level level;
|
||||
};
|
||||
|
||||
#endif
|
39
build.sh
@ -8,16 +8,41 @@ then
|
||||
exit
|
||||
fi
|
||||
|
||||
cmake="cmake"
|
||||
|
||||
if [[ $1 == "windows" ]]
|
||||
then
|
||||
cmake="cmake -DCMAKE_SYSTEM_NAME='Windows' -DCMAKE_FIND_ROOT_PATH='/usr/bin:/usr/x86_64-w64-mingw32' -DCMAKE_CXX_COMPILER='x86_64-w64-mingw32-g++' -DCMAKE_C_COMPILER='x86_64-w64-mingw32-gcc'"
|
||||
fi
|
||||
|
||||
currentDir=$(pwd)
|
||||
threads=$(($(nproc)+1))
|
||||
|
||||
#building lua
|
||||
|
||||
cd extern/lua/
|
||||
if [[ $1 == "windows" ]]
|
||||
then
|
||||
make mingw
|
||||
else
|
||||
make linux
|
||||
fi
|
||||
cd $currentDir
|
||||
|
||||
|
||||
#building bullet
|
||||
|
||||
cd extern/bullet/
|
||||
mkdir -p build
|
||||
cd build
|
||||
cmake ..
|
||||
make -j$threads
|
||||
if hash ninja 2>/dev/null
|
||||
then
|
||||
$cmake -DBUILD_DEMOS=0 -DBUILD_EXTRAS=0 -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=0 -GNinja ..
|
||||
ninja
|
||||
else
|
||||
$cmake -DBUILD_DEMOS=0 -DBUILD_EXTRAS=0 -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=0 ..
|
||||
make -j$threads
|
||||
fi
|
||||
|
||||
cd $currentDir
|
||||
|
||||
@ -25,5 +50,11 @@ cd $currentDir
|
||||
|
||||
mkdir -p build
|
||||
cd build
|
||||
cmake ..
|
||||
make -j$threads
|
||||
if hash ninja 2>/dev/null
|
||||
then
|
||||
$cmake -DGLFW_BUILD_EXAMPLES=0 -DGLFW_BUILD_TESTS=0 -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=0 -GNinja ..
|
||||
ninja
|
||||
else
|
||||
$cmake -DGLFW_BUILD_EXAMPLES=0 -DGLFW_BUILD_TESTS=0 -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=0 ..
|
||||
make -j$threads
|
||||
fi
|
||||
|
31
circle.yml
Normal file
@ -0,0 +1,31 @@
|
||||
general:
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
|
||||
machine:
|
||||
services:
|
||||
- docker
|
||||
|
||||
dependencies:
|
||||
override:
|
||||
# Set up dropbox_uploader
|
||||
- curl "https://raw.githubusercontent.com/andreafabrizi/Dropbox-Uploader/master/dropbox_uploader.sh" -o dropbox_uploader.sh
|
||||
- chmod +x dropbox_uploader.sh
|
||||
- echo $db_uploader > ~/.dropbox_uploader
|
||||
|
||||
database:
|
||||
override:
|
||||
|
||||
test:
|
||||
override:
|
||||
- docker run -v ~/swp:/swp/swp -w=/swp/swp -u=$(id -u) faerbit/swp ./package.sh linux
|
||||
- docker run -v ~/swp:/swp/swp -w=/swp/swp -u=$(id -u) faerbit/swp ./package.sh windows
|
||||
- cp MarbleGame_Windows.zip MarbleGame_Linux.zip $CIRCLE_ARTIFACTS
|
||||
|
||||
deployment:
|
||||
master:
|
||||
branch: master
|
||||
commands:
|
||||
- ./dropbox_uploader.sh -p upload MarbleGame_Windows.zip /
|
||||
- ./dropbox_uploader.sh -p upload MarbleGame_Linux.zip /
|
44
converter/CMakeLists.txt
Normal file
@ -0,0 +1,44 @@
|
||||
CMAKE_MINIMUM_REQUIRED (VERSION 2.6)
|
||||
|
||||
PROJECT(Converter)
|
||||
|
||||
###############################################################################
|
||||
#
|
||||
# Compiler settings, can be simpler if only one compiler should be used.
|
||||
#
|
||||
|
||||
#Enable c++11
|
||||
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
|
||||
#on clang we need to find out the version to set stdlib if needed
|
||||
# if clang version is less than 3.3 ( XCode 5.0) you need to set the stdlib
|
||||
#SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
|
||||
MESSAGE("Clangversion ${CLANG_VERSION_STRING}")
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
|
||||
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
|
||||
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel")
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
|
||||
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
|
||||
# using Visual Studio C++
|
||||
endif()
|
||||
|
||||
# enable warnings
|
||||
IF(MSVC)
|
||||
# for msvc also set multiple processors
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP /W3")
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /MP /W3")
|
||||
ELSE(MSVC)
|
||||
ADD_DEFINITIONS(-Wall)
|
||||
ENDIF(MSVC)
|
||||
ADD_DEFINITIONS(-DNO_SPACE_NAVIGATOR_SUPPORT)
|
||||
|
||||
#
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
FILE(GLOB_RECURSE SOURCE_FILES_CONV "${CMAKE_SOURCE_DIR}/converter/*.cc")
|
||||
SET(SOURCE_FILES_CONV ${SOURCE_FILES_CONV})
|
||||
|
||||
FILE(GLOB_RECURSE HEADER_FILES_CONV "${CMAKE_SOURCE_DIR}/converter/*.hh")
|
||||
SET(HEADER_FILES_CONV ${HEADER_FILES})
|
||||
ADD_EXECUTABLE(converter ${SOURCE_FILES_CONV} ${HEADER_FILES_CONV})
|
305
converter/converter.cc
Normal file
@ -0,0 +1,305 @@
|
||||
#include "converter.hh"
|
||||
#include <fstream>
|
||||
#include <string>
|
||||
#include <sys/stat.h>
|
||||
#include <iostream>
|
||||
|
||||
using namespace tinyxml2;
|
||||
|
||||
Converter::Converter(std::string level){
|
||||
xmlFile = "../Levels/ObjectSetups/Level" + level + ".xml";
|
||||
|
||||
//Load Compositions
|
||||
const char* charCompositions = "../Levels/ObjectSetups/Compositions.xml";
|
||||
compositions->LoadFile(charCompositions);
|
||||
if (compositions->ErrorID()!=0){
|
||||
printf("Could not open Compositions!\n");
|
||||
}
|
||||
|
||||
//Create a backup of the current Level png file, if no backup exists
|
||||
std::string pngFile = "../Levels/ObjectSetups/Level" + level + ".png";
|
||||
std::string backupPNG = "../Levels/ObjectSetups/BackupLevel" + level + ".png";
|
||||
struct stat buf;
|
||||
if(stat(backupPNG.c_str(), &buf) != 0){
|
||||
std::ifstream src(pngFile, std::ios::binary);
|
||||
std::ofstream dst(backupPNG, std::ios::binary);
|
||||
dst << src.rdbuf();
|
||||
}
|
||||
|
||||
//Create a backup of the current Level xml file
|
||||
std::string backupXML = "../Levels/ObjectSetups/BackupLevel" + level + ".xml";
|
||||
std::ifstream src(xmlFile, std::ios::binary);
|
||||
std::ofstream dst(backupXML, std::ios::binary);
|
||||
|
||||
|
||||
//Load the Level xml file
|
||||
nextID.push_back(1);
|
||||
nextID.push_back(1);
|
||||
const char* charXmlFile = xmlFile.c_str();
|
||||
doc->LoadFile(charXmlFile);
|
||||
if (doc->ErrorID()!=0){
|
||||
printf("Could not open xml, creating new xml.\n");
|
||||
//Create all global Lightingparameters with Dummy-Values
|
||||
std::vector<XMLElement*> lightAttributes;
|
||||
lightAttributes.push_back(doc->NewElement("xOffset"));
|
||||
lightAttributes.push_back(doc->NewElement("yOffset"));
|
||||
lightAttributes.push_back(doc->NewElement("zOffset"));
|
||||
lightAttributes.push_back(doc->NewElement("rColour"));
|
||||
lightAttributes.push_back(doc->NewElement("gColour"));
|
||||
lightAttributes.push_back(doc->NewElement("bColour"));
|
||||
lightAttributes.push_back(doc->NewElement("intensity"));
|
||||
XMLElement* rColourAmbient = doc->NewElement("rColour");
|
||||
XMLElement* gColourAmbient = doc->NewElement("gColour");
|
||||
XMLElement* bColourAmbient = doc->NewElement("bColour");
|
||||
XMLElement* rColourFog = doc->NewElement("rColour");
|
||||
XMLElement* gColourFog = doc->NewElement("gColour");
|
||||
XMLElement* bColourFog = doc->NewElement("bColour");
|
||||
XMLElement* alphaFog = doc->NewElement("alpha");
|
||||
|
||||
lightAttributes[0]->SetText("-1.0");
|
||||
lightAttributes[1]->SetText("1.5");
|
||||
lightAttributes[2]->SetText("1.0");
|
||||
lightAttributes[3]->SetText("1.0");
|
||||
lightAttributes[4]->SetText("1.0");
|
||||
lightAttributes[5]->SetText("0.9");
|
||||
lightAttributes[6]->SetText("0.2");
|
||||
rColourAmbient->SetText("1.0");
|
||||
gColourAmbient->SetText("1.0");
|
||||
bColourAmbient->SetText("1.0");
|
||||
rColourFog->SetText("0.10");
|
||||
gColourFog->SetText("0.14");
|
||||
bColourFog->SetText("0.14");
|
||||
alphaFog->SetText("1.0");
|
||||
|
||||
XMLElement* ambientLight = doc->NewElement("ambientLight");
|
||||
XMLElement* fogColour = doc->NewElement("fogColour");
|
||||
XMLElement* directionalLight = doc->NewElement("directionalLight");
|
||||
|
||||
ambientLight->InsertEndChild(rColourAmbient);
|
||||
ambientLight->InsertEndChild(gColourAmbient);
|
||||
ambientLight->InsertEndChild(bColourAmbient);
|
||||
fogColour->InsertEndChild(rColourFog);
|
||||
fogColour->InsertEndChild(gColourFog);
|
||||
fogColour->InsertEndChild(bColourFog);
|
||||
fogColour->InsertEndChild(alphaFog);
|
||||
for(int i=0;i<7;i++){
|
||||
directionalLight->InsertEndChild(lightAttributes[i]);
|
||||
}
|
||||
doc->InsertEndChild(ambientLight);
|
||||
doc->InsertEndChild(fogColour);
|
||||
doc->InsertEndChild(directionalLight);
|
||||
|
||||
//Create global skydome Element
|
||||
XMLElement* skydome = doc->NewElement("skydome");
|
||||
XMLElement* skydomeTexture = doc->NewElement("texture");
|
||||
skydomeTexture->SetText("skydome.png");
|
||||
skydome->InsertEndChild(skydomeTexture);
|
||||
doc->InsertEndChild(skydome);
|
||||
|
||||
//Create global physics parameters
|
||||
XMLElement* physics = doc->NewElement("physics");
|
||||
XMLElement* playerFriction = doc->NewElement("friction");
|
||||
XMLElement* playerStrength = doc->NewElement("strength");
|
||||
playerFriction->SetText("0.9");
|
||||
playerStrength->SetText("100.0");
|
||||
physics->InsertEndChild(playerFriction);
|
||||
physics->InsertEndChild(playerStrength);
|
||||
doc->InsertEndChild(physics);
|
||||
|
||||
//create positionConstraint Dummy
|
||||
XMLElement* positionConstraint = doc->NewElement("positionConstraint");
|
||||
XMLElement* positionConstraintObjectNum = doc->NewElement("objectNum");
|
||||
XMLElement* positionConstraintXPos = doc->NewElement("xPosition");
|
||||
XMLElement* positionConstraintYPos = doc->NewElement("yPosition");
|
||||
XMLElement* positionConstraintZPos = doc->NewElement("zPosition");
|
||||
XMLElement* positionConstraintStrength = doc->NewElement("strength");
|
||||
positionConstraintObjectNum->SetText("0");
|
||||
positionConstraintXPos->SetText("0.0");
|
||||
positionConstraintYPos->SetText("0.0");
|
||||
positionConstraintZPos->SetText("0.0");
|
||||
positionConstraintStrength->SetText("100.0");
|
||||
positionConstraint->InsertEndChild(positionConstraintObjectNum);
|
||||
positionConstraint->InsertEndChild(positionConstraintXPos);
|
||||
positionConstraint->InsertEndChild(positionConstraintYPos);
|
||||
positionConstraint->InsertEndChild(positionConstraintZPos);
|
||||
positionConstraint->InsertEndChild(positionConstraintStrength);
|
||||
doc->InsertEndChild(positionConstraint);
|
||||
}else{
|
||||
dst << src.rdbuf();
|
||||
XMLElement* thisComposition = doc->FirstChildElement("composition");
|
||||
int idGreen, idBlue;
|
||||
for(; thisComposition; thisComposition=thisComposition->NextSiblingElement("composition")){
|
||||
errorCheck(thisComposition->FirstChildElement("idGreen")->QueryIntText(&idGreen));
|
||||
errorCheck(thisComposition->FirstChildElement("idBlue")->QueryIntText(&idBlue));
|
||||
if(idGreen > nextID[0] || (idGreen == nextID[0] && idBlue > nextID[1])){
|
||||
nextID[0] = idGreen;
|
||||
nextID[1] = idBlue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Converter::Converter(){
|
||||
}
|
||||
|
||||
Converter::~Converter(){
|
||||
}
|
||||
|
||||
std::vector<int> Converter::newComposition(int type, float posX, float posZ){
|
||||
XMLElement* newComposition = doc->NewElement("composition");
|
||||
doc->InsertFirstChild(newComposition);
|
||||
|
||||
XMLElement* typeID = doc->NewElement("typeID");
|
||||
XMLElement* idBlue = doc->NewElement("idBlue");
|
||||
XMLElement* idGreen = doc->NewElement("idGreen");
|
||||
XMLElement* zPos = doc->NewElement("zPos");
|
||||
XMLElement* yOffset = doc->NewElement("yOffset");
|
||||
XMLElement* xPos = doc->NewElement("xPos");
|
||||
XMLElement* manualPos = doc->NewElement("manualPos");
|
||||
XMLElement* zRot = doc->NewElement("zRot");
|
||||
XMLElement* yRot = doc->NewElement("yRot");
|
||||
XMLElement* xRot = doc->NewElement("xRot");
|
||||
XMLElement* scale = doc->NewElement("scale");
|
||||
|
||||
typeID->SetText(std::to_string(type).c_str());
|
||||
idBlue->SetText(std::to_string(nextID[1]).c_str());
|
||||
idGreen->SetText(std::to_string(nextID[0]).c_str());
|
||||
zPos->SetText(std::to_string(posZ).c_str());
|
||||
yOffset->SetText("0.0");
|
||||
xPos->SetText(std::to_string(posX).c_str());
|
||||
manualPos->SetText("false");
|
||||
zRot->SetText("0.0");
|
||||
yRot->SetText("0.0");
|
||||
xRot->SetText("0.0");
|
||||
scale->SetText("1.0");
|
||||
|
||||
newComposition->InsertFirstChild(typeID);
|
||||
newComposition->InsertFirstChild(idBlue);
|
||||
newComposition->InsertFirstChild(idGreen);
|
||||
newComposition->InsertFirstChild(zPos);
|
||||
newComposition->InsertFirstChild(yOffset);
|
||||
newComposition->InsertFirstChild(xPos);
|
||||
newComposition->InsertFirstChild(manualPos);
|
||||
newComposition->InsertFirstChild(zRot);
|
||||
newComposition->InsertFirstChild(yRot);
|
||||
newComposition->InsertFirstChild(xRot);
|
||||
newComposition->InsertFirstChild(scale);
|
||||
|
||||
//Create a Dummy-trigger
|
||||
XMLElement* trigger = doc->NewElement("trigger");
|
||||
newComposition->InsertEndChild(trigger);
|
||||
XMLElement* name = doc->NewElement("name");
|
||||
XMLElement* xPosition = doc->NewElement("xPosition");
|
||||
XMLElement* yPosition = doc->NewElement("yPosition");
|
||||
XMLElement* zPosition = doc->NewElement("zPosition");
|
||||
XMLElement* targetIdGreen = doc->NewElement("targetIdGreen");
|
||||
XMLElement* targetIdBlue = doc->NewElement("targetIdBlue");
|
||||
XMLElement* distance = doc->NewElement("distance");
|
||||
XMLElement* isBiggerThan = doc->NewElement("isBiggerThan");
|
||||
XMLElement* objectNum = doc->NewElement("objectNum");
|
||||
XMLElement* luaScript = doc->NewElement("luaScript");
|
||||
XMLElement* toChangeIdGreen = doc->NewElement("toChangeIdGreen");
|
||||
XMLElement* toChangeIdBlue = doc->NewElement("toChangeIdBlue");
|
||||
XMLElement* toChangeObjNum = doc->NewElement("toChangeObjNum");
|
||||
|
||||
name->SetText("-");
|
||||
xPosition->SetText("0");
|
||||
yPosition->SetText("0");
|
||||
zPosition->SetText("0");
|
||||
targetIdGreen->SetText("-");
|
||||
targetIdBlue->SetText("-");
|
||||
distance->SetText("1.0");
|
||||
isBiggerThan->SetText("false");
|
||||
objectNum->SetText("0");
|
||||
luaScript->SetText("-");
|
||||
toChangeIdGreen->SetText("0");
|
||||
toChangeIdBlue->SetText("0");
|
||||
toChangeObjNum->SetText("0");
|
||||
|
||||
trigger->InsertEndChild(name);
|
||||
trigger->InsertEndChild(xPosition);
|
||||
trigger->InsertEndChild(yPosition);
|
||||
trigger->InsertEndChild(zPosition);
|
||||
trigger->InsertEndChild(targetIdGreen);
|
||||
trigger->InsertEndChild(targetIdBlue);
|
||||
trigger->InsertEndChild(distance);
|
||||
trigger->InsertEndChild(isBiggerThan);
|
||||
trigger->InsertEndChild(objectNum);
|
||||
trigger->InsertEndChild(luaScript);
|
||||
trigger->InsertEndChild(toChangeIdGreen);
|
||||
trigger->InsertEndChild(toChangeIdBlue);
|
||||
trigger->InsertEndChild(toChangeObjNum);
|
||||
|
||||
std::vector<int> ret = nextID;
|
||||
nextID[1] += 1;
|
||||
if (nextID[1] == 255){
|
||||
nextID[1] = 0;
|
||||
nextID[0] +=1;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
void Converter::updateComposition(int idG, int idB, float posX, float posZ){
|
||||
XMLElement* thisComposition = doc->FirstChildElement("composition");
|
||||
int idGreen = 0, idBlue = 0;
|
||||
bool compositionExists = false;
|
||||
for(; thisComposition; thisComposition=thisComposition->NextSiblingElement("composition")){
|
||||
errorCheck(thisComposition->FirstChildElement("idGreen")->QueryIntText(&idGreen));
|
||||
errorCheck(thisComposition->FirstChildElement("idBlue")->QueryIntText(&idBlue));
|
||||
if(idGreen == idG && idBlue == idB){
|
||||
bool manualPos;
|
||||
errorCheck(thisComposition->FirstChildElement("manualPos")->QueryBoolText(&manualPos));
|
||||
if(!manualPos){
|
||||
thisComposition->FirstChildElement("xPos")->SetText(std::to_string(posX).c_str());
|
||||
thisComposition->FirstChildElement("zPos")->SetText(std::to_string(posZ).c_str());
|
||||
}
|
||||
compositionExists = true;
|
||||
}
|
||||
}
|
||||
if(!compositionExists){
|
||||
std::cout << "A composition has an ID in the png, but does'nt exist in the xml." << std::endl;
|
||||
exit(-1);
|
||||
}
|
||||
}
|
||||
|
||||
void Converter::deleteComposition(int idG, int idB){
|
||||
XMLElement* thisComposition = doc->FirstChildElement("composition");
|
||||
int idGreen, idBlue;
|
||||
for(; thisComposition; thisComposition=thisComposition->NextSiblingElement("composition")){
|
||||
errorCheck(thisComposition->FirstChildElement("idGreen")->QueryIntText(&idGreen));
|
||||
errorCheck(thisComposition->FirstChildElement("idBlue")->QueryIntText(&idBlue));
|
||||
if(idGreen == idG && idBlue == idB){
|
||||
doc->DeleteChild(thisComposition);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Converter::save(){
|
||||
const char* charXmlFile = xmlFile.c_str();
|
||||
doc->SaveFile(charXmlFile);
|
||||
}
|
||||
|
||||
std::vector<int> Converter::getNextID(){
|
||||
return nextID;
|
||||
}
|
||||
|
||||
void Converter::errorCheck(XMLError error){
|
||||
if (error) {
|
||||
printf("XMLError: ");
|
||||
if (error == XML_WRONG_ATTRIBUTE_TYPE) {
|
||||
printf("Wrong attribute type.\n");
|
||||
}
|
||||
else if (error == XML_NO_ATTRIBUTE) {
|
||||
printf("No attribute.\n");
|
||||
}
|
||||
else if (error == XML_CAN_NOT_CONVERT_TEXT) {
|
||||
printf("Can not convert text.\n");
|
||||
}
|
||||
else if (error == XML_NO_TEXT_NODE) {
|
||||
printf("No text.\n");
|
||||
}
|
||||
else {
|
||||
printf("Unknown error.\n");
|
||||
}
|
||||
}
|
||||
}
|
28
converter/converter.hh
Normal file
@ -0,0 +1,28 @@
|
||||
#ifndef CONVERTER_INCLUDED
|
||||
#define CONVERTER_INCLUDED
|
||||
|
||||
#include <vector>
|
||||
#include <string>
|
||||
#include "tinyxml2.hh"
|
||||
|
||||
using namespace tinyxml2;
|
||||
class Converter {
|
||||
public:
|
||||
Converter(std::string level);
|
||||
Converter();
|
||||
~Converter();
|
||||
void updateComposition(int idG, int idB, float posX, float posZ); //updates the position of a composition
|
||||
std::vector<int> newComposition(int type, float posX, float posZ);//creates a new composition and returns its ID
|
||||
void deleteComposition(int idG, int idB);
|
||||
void save(); //writes the xml to file
|
||||
std::vector<int> getNextID(); //returns the next unused ID
|
||||
|
||||
private:
|
||||
void errorCheck(XMLError error);
|
||||
std::vector<int> nextID;
|
||||
std::string xmlFile;
|
||||
XMLDocument* doc = new XMLDocument();
|
||||
XMLDocument* compositions = new XMLDocument();
|
||||
};
|
||||
|
||||
#endif
|
6096
converter/lodepng.cc
Normal file
1702
converter/lodepng.hh
Normal file
68
converter/main.cc
Normal file
@ -0,0 +1,68 @@
|
||||
#include "lodepng.hh"
|
||||
#include <string>
|
||||
#include "converter.hh"
|
||||
#include <vector>
|
||||
#include <iostream>
|
||||
|
||||
int main( int argc, char *argv[] ){
|
||||
if (argc <= 1){
|
||||
std::cout << "Converter needs the level (1,2,...) as input." << std::endl;
|
||||
exit(-1);
|
||||
}
|
||||
std::string levelString = argv[1];
|
||||
Converter conv = Converter(levelString);
|
||||
bool idFound[256][256];
|
||||
for (int i=0; i<256; i++){
|
||||
for (int j=0; j<256; j++){
|
||||
idFound[i][j] = false;
|
||||
}
|
||||
}
|
||||
|
||||
//read the setup png
|
||||
std::string filePath = "../Levels/ObjectSetups/Level" + levelString + ".png";
|
||||
std::vector<unsigned char> image; //the raw pixels
|
||||
unsigned int width, height;
|
||||
unsigned error = lodepng::decode(image, width, height, filePath);
|
||||
if (error) {
|
||||
std::cout << "decoder error " << error << ": " << lodepng_error_text(error) << std::endl;
|
||||
}
|
||||
|
||||
//iterate over all pixels of the image
|
||||
for(unsigned int rowNum = 0; rowNum < height; rowNum++){
|
||||
for(unsigned int columnNum = 0; columnNum < width; columnNum++){
|
||||
unsigned int pixel = (rowNum*width+columnNum)*4;
|
||||
//if there is a composition here, adjust the xml and image
|
||||
if(image[pixel]!=0 && image[pixel]!=255){
|
||||
if((image[pixel+1]==0 && image[pixel+2]==0) || (image[pixel+1]==255 && image[pixel+2]==255)){
|
||||
std::vector<int> temp;
|
||||
temp = conv.newComposition(image[pixel], 0.5+rowNum-0.5*height, 0.5+columnNum-0.5*width);
|
||||
idFound[temp[0]][temp[1]] = true;
|
||||
image[pixel+1] = temp[0];
|
||||
image[pixel+2] = temp[1];
|
||||
}else{
|
||||
conv.updateComposition(image[pixel+1], image[pixel+2], 0.5+rowNum-0.5*height, 0.5+columnNum-0.5*width);
|
||||
idFound[image[pixel+1]][image[pixel+2]] = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//write ids back to the setup png
|
||||
error = lodepng::encode(filePath, image, width, height);
|
||||
if(error) {
|
||||
std::cout << "encoder error " << error << ": "<< lodepng_error_text(error) << std::endl;
|
||||
}
|
||||
|
||||
//delete compositions that were not in the png anymore
|
||||
for (int i=1; i<=conv.getNextID()[1]; i++){
|
||||
for (int j=1; j<256; j++){
|
||||
if (! idFound[i][j]){
|
||||
conv.deleteComposition(i,j);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//save the xml
|
||||
conv.save();
|
||||
}
|
||||
|
2258
converter/tinyxml2.cc
Executable file
2091
converter/tinyxml2.hh
Executable file
0
extern/acgl/include/ACGL/OpenGL/Objects/VertexArrayObject.hh
vendored
Executable file → Normal file
@ -13,7 +13,7 @@
|
||||
|
||||
#ifdef _WIN32
|
||||
#include "MemoryMappedFile.hh"
|
||||
#include <Windows.h>
|
||||
#include <windows.h>
|
||||
class MemoryMappedFileWinImpl
|
||||
{
|
||||
|
||||
@ -50,4 +50,4 @@ private:
|
||||
HANDLE mFileHandle;
|
||||
HANDLE mFileMappingHandle;
|
||||
};
|
||||
#endif
|
||||
#endif
|
||||
|
@ -13,6 +13,8 @@ subject to the following restrictions:
|
||||
3. This notice may not be removed or altered from any source distribution.
|
||||
*/
|
||||
|
||||
#pragma GCC diagnostic ignored "-Wint-to-pointer-cast"
|
||||
|
||||
#include "btCompoundShape.h"
|
||||
#include "btCollisionShape.h"
|
||||
#include "BulletCollision/BroadphaseCollision/btDbvt.h"
|
||||
|
2
extern/glfw/.gitignore
vendored
@ -21,7 +21,7 @@ cmake_uninstall.cmake
|
||||
docs/Doxyfile
|
||||
docs/html
|
||||
docs/warnings.txt
|
||||
src/config.h
|
||||
src/glfw_config.h
|
||||
src/glfw3.pc
|
||||
src/glfwConfig.cmake
|
||||
src/glfwConfigVersion.cmake
|
||||
|
76
extern/glfw/CMakeLists.txt
vendored
@ -4,15 +4,16 @@ cmake_minimum_required(VERSION 2.8)
|
||||
|
||||
set(GLFW_VERSION_MAJOR "3")
|
||||
set(GLFW_VERSION_MINOR "0")
|
||||
set(GLFW_VERSION_PATCH "2")
|
||||
set(GLFW_VERSION_PATCH "4")
|
||||
set(GLFW_VERSION_EXTRA "")
|
||||
set(GLFW_VERSION "${GLFW_VERSION_MAJOR}.${GLFW_VERSION_MINOR}")
|
||||
set(GLFW_VERSION_FULL "${GLFW_VERSION}.${GLFW_VERSION_PATCH}${GLFW_VERSION_EXTRA}")
|
||||
set(LIB_SUFFIX "" CACHE STRING "Takes an empty string or 64. Directory where lib will be installed: lib or lib64")
|
||||
|
||||
option(BUILD_SHARED_LIBS "Build shared libraries" OFF)
|
||||
option(GLFW_BUILD_EXAMPLES "Build the GLFW example programs" OFF)
|
||||
option(GLFW_BUILD_TESTS "Build the GLFW test programs" OFF)
|
||||
option(GLFW_BUILD_EXAMPLES "Build the GLFW example programs" ON)
|
||||
option(GLFW_BUILD_TESTS "Build the GLFW test programs" ON)
|
||||
option(GLFW_BUILD_DOCS "Build the GLFW documentation" ON)
|
||||
option(GLFW_INSTALL "Generate installation target" ON)
|
||||
option(GLFW_DOCUMENT_INTERNALS "Include internals in documentation" OFF)
|
||||
|
||||
@ -73,11 +74,13 @@ endif()
|
||||
|
||||
find_package(Threads REQUIRED)
|
||||
|
||||
set(DOXYGEN_SKIP_DOT TRUE)
|
||||
find_package(Doxygen)
|
||||
if (GLFW_BUILD_DOCS)
|
||||
set(DOXYGEN_SKIP_DOT TRUE)
|
||||
find_package(Doxygen)
|
||||
|
||||
if (GLFW_DOCUMENT_INTERNALS)
|
||||
set(GLFW_INTERNAL_DOCS "${GLFW_SOURCE_DIR}/src/internal.h ${GLFW_SOURCE_DIR}/docs/internal.dox")
|
||||
if (GLFW_DOCUMENT_INTERNALS)
|
||||
set(GLFW_INTERNAL_DOCS "${GLFW_SOURCE_DIR}/src/internal.h ${GLFW_SOURCE_DIR}/docs/internal.dox")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
#--------------------------------------------------------------------
|
||||
@ -163,6 +166,13 @@ if (_GLFW_WIN32)
|
||||
if (GLFW_USE_OPTIMUS_HPG)
|
||||
set(_GLFW_USE_OPTIMUS_HPG 1)
|
||||
endif()
|
||||
|
||||
# HACK: When building on MinGW, WINVER and UNICODE need to be defined before
|
||||
# the inclusion of stddef.h (by glfw3.h), which is itself included before
|
||||
# win32_platform.h. We define them here until a saner solution can be found
|
||||
# NOTE: MinGW-w64 and Visual C++ do /not/ need this hack.
|
||||
add_definitions(-DUNICODE)
|
||||
add_definitions(-DWINVER=0x0501)
|
||||
endif()
|
||||
|
||||
#--------------------------------------------------------------------
|
||||
@ -204,7 +214,13 @@ if (_GLFW_X11)
|
||||
endif()
|
||||
|
||||
list(APPEND glfw_INCLUDE_DIRS ${X11_Xinput_INCLUDE_PATH})
|
||||
list(APPEND glfw_LIBRARIES ${X11_Xinput_LIB})
|
||||
|
||||
if (X11_Xinput_LIB)
|
||||
list(APPEND glfw_LIBRARIES ${X11_Xinput_LIB})
|
||||
else()
|
||||
# Backwards compatibility (bug in CMake 2.8.7)
|
||||
list(APPEND glfw_LIBRARIES Xi)
|
||||
endif()
|
||||
set(GLFW_PKG_DEPS "${GLFW_PKG_DEPS} xi")
|
||||
|
||||
# Check for Xf86VidMode (fallback gamma control)
|
||||
@ -269,23 +285,15 @@ if (_GLFW_GLX)
|
||||
|
||||
# Check for dlopen support as a fallback
|
||||
|
||||
find_library(DL_LIBRARY dl)
|
||||
mark_as_advanced(DL_LIBRARY)
|
||||
if (DL_LIBRARY)
|
||||
set(CMAKE_REQUIRED_LIBRARIES ${DL_LIBRARY})
|
||||
else()
|
||||
set(CMAKE_REQUIRED_LIBRARIES "")
|
||||
endif()
|
||||
|
||||
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_DL_LIBS})
|
||||
check_function_exists(dlopen _GLFW_HAS_DLOPEN)
|
||||
|
||||
if (NOT _GLFW_HAS_DLOPEN)
|
||||
message(FATAL_ERROR "No entry point retrieval mechanism found")
|
||||
endif()
|
||||
|
||||
if (DL_LIBRARY)
|
||||
list(APPEND glfw_LIBRARIES ${DL_LIBRARY})
|
||||
set(GLFW_PKG_LIBS "${GLFW_PKG_LIBS} -ldl")
|
||||
if (CMAKE_DL_LIBS)
|
||||
list(APPEND glfw_LIBRARIES ${CMAKE_DL_LIBS})
|
||||
set(GLFW_PKG_LIBS "${GLFW_PKG_LIBS} -l${CMAKE_DL_LIBS}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@ -343,13 +351,15 @@ if (_GLFW_COCOA AND _GLFW_NSGL)
|
||||
find_library(COCOA_FRAMEWORK Cocoa)
|
||||
find_library(IOKIT_FRAMEWORK IOKit)
|
||||
find_library(CORE_FOUNDATION_FRAMEWORK CoreFoundation)
|
||||
find_library(CORE_VIDEO_FRAMEWORK CoreVideo)
|
||||
list(APPEND glfw_LIBRARIES ${COCOA_FRAMEWORK}
|
||||
${OPENGL_gl_LIBRARY}
|
||||
${IOKIT_FRAMEWORK}
|
||||
${CORE_FOUNDATION_FRAMEWORK})
|
||||
${CORE_FOUNDATION_FRAMEWORK}
|
||||
${CORE_VIDEO_FRAMEWORK})
|
||||
|
||||
set(GLFW_PKG_DEPS "")
|
||||
set(GLFW_PKG_LIBS "-framework Cocoa -framework OpenGL -framework IOKit -framework CoreFoundation")
|
||||
set(GLFW_PKG_LIBS "-framework Cocoa -framework OpenGL -framework IOKit -framework CoreFoundation -framework CoreVideo")
|
||||
endif()
|
||||
|
||||
#--------------------------------------------------------------------
|
||||
@ -373,8 +383,8 @@ endif()
|
||||
configure_file(${GLFW_SOURCE_DIR}/docs/Doxyfile.in
|
||||
${GLFW_BINARY_DIR}/docs/Doxyfile @ONLY)
|
||||
|
||||
configure_file(${GLFW_SOURCE_DIR}/src/config.h.in
|
||||
${GLFW_BINARY_DIR}/src/config.h @ONLY)
|
||||
configure_file(${GLFW_SOURCE_DIR}/src/glfw_config.h.in
|
||||
${GLFW_BINARY_DIR}/src/glfw_config.h @ONLY)
|
||||
|
||||
configure_file(${GLFW_SOURCE_DIR}/src/glfwConfig.cmake.in
|
||||
${GLFW_BINARY_DIR}/src/glfwConfig.cmake @ONLY)
|
||||
@ -392,17 +402,17 @@ endif()
|
||||
#--------------------------------------------------------------------
|
||||
add_subdirectory(src)
|
||||
|
||||
#if (GLFW_BUILD_EXAMPLES)
|
||||
# add_subdirectory(examples)
|
||||
#endif()
|
||||
if (GLFW_BUILD_EXAMPLES)
|
||||
add_subdirectory(examples)
|
||||
endif()
|
||||
|
||||
#if (GLFW_BUILD_TESTS)
|
||||
# add_subdirectory(tests)
|
||||
#endif()
|
||||
if (GLFW_BUILD_TESTS)
|
||||
add_subdirectory(tests)
|
||||
endif()
|
||||
|
||||
#if (DOXYGEN_FOUND)
|
||||
# add_subdirectory(docs)
|
||||
#endif()
|
||||
if (DOXYGEN_FOUND AND GLFW_BUILD_DOCS)
|
||||
add_subdirectory(docs)
|
||||
endif()
|
||||
|
||||
#--------------------------------------------------------------------
|
||||
# Install files other than the library
|
||||
|
277
extern/glfw/README.md
vendored
@ -6,9 +6,9 @@ GLFW is a free, Open Source, portable library for OpenGL and OpenGL ES
|
||||
application development. It provides a simple, platform-independent API for
|
||||
creating windows and contexts, reading input, handling events, etc.
|
||||
|
||||
Version 3.0.2 adds support for OpenGL 4 on and precise scrolling deltas on OS
|
||||
X and fixes for a number of bugs that together affect all supported platforms.
|
||||
As this is a patch release, there are no API changes.
|
||||
Version 3.0.4 adds better support for custom build environments and fixes for
|
||||
a large number of bugs that together affect all supported platforms. As this is
|
||||
a patch release, there are no API changes.
|
||||
|
||||
If you are new to GLFW, you may find the
|
||||
[introductory tutorial](http://www.glfw.org/docs/latest/quick.html) for GLFW
|
||||
@ -19,221 +19,69 @@ the GLFW 3 API.
|
||||
|
||||
## Compiling GLFW
|
||||
|
||||
### Dependencies
|
||||
|
||||
To compile GLFW and the accompanying example programs, you will need **CMake**,
|
||||
which will generate the project files or makefiles for your particular
|
||||
development environment. If you are on a Unix-like system such as Linux or
|
||||
FreeBSD or have a package system like Fink, MacPorts, Cygwin or Homebrew, you
|
||||
can simply install its CMake package. If not, you can get installers for
|
||||
Windows and OS X from the [CMake website](http://www.cmake.org/).
|
||||
|
||||
Additional dependencies are listed below.
|
||||
|
||||
|
||||
#### Visual C++ on Windows
|
||||
|
||||
The Microsoft Platform SDK that is installed along with Visual C++ contains all
|
||||
the necessary headers, link libraries and tools except for CMake.
|
||||
|
||||
|
||||
#### MinGW or MinGW-w64 on Windows
|
||||
|
||||
These packages contain all the necessary headers, link libraries and tools
|
||||
except for CMake.
|
||||
|
||||
|
||||
#### MinGW or MinGW-w64 cross-compilation
|
||||
|
||||
Both Cygwin and many Linux distributions have MinGW or MinGW-w64 packages. For
|
||||
example, Cygwin has the `mingw64-i686-gcc` and `mingw64-x86_64-gcc` packages
|
||||
for 32- and 64-bit version of MinGW-w64, while Debian GNU/Linux and derivatives
|
||||
like Ubuntu have the `mingw-w64` package for both.
|
||||
|
||||
GLFW has CMake toolchain files in the `CMake/` directory that allow for easy
|
||||
cross-compilation of Windows binaries. To use these files you need to add a
|
||||
special parameter when generating the project files or makefiles:
|
||||
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE=<toolchain-file> .
|
||||
|
||||
The exact toolchain file to use depends on the prefix used by the MinGW or
|
||||
MinGW-w64 binaries on your system. You can usually see this in the /usr
|
||||
directory. For example, both the Debian/Ubuntu and Cygwin MinGW-w64 packages
|
||||
have `/usr/x86_64-w64-mingw32` for the 64-bit compilers, so the correct
|
||||
invocation would be:
|
||||
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE=CMake/x86_64-w64-mingw32.cmake .
|
||||
|
||||
For more details see the article
|
||||
[CMake Cross Compiling](http://www.paraview.org/Wiki/CMake_Cross_Compiling) on
|
||||
the CMake wiki.
|
||||
|
||||
|
||||
#### Xcode on OS X
|
||||
|
||||
Xcode contains all necessary tools except for CMake. The necessary headers and
|
||||
libraries are included in the core OS frameworks. Xcode can be downloaded from
|
||||
the Mac App Store.
|
||||
|
||||
|
||||
#### Unix-like systems with X11
|
||||
|
||||
To compile GLFW for X11, you need to have the X11 and OpenGL header packages
|
||||
installed, as well as the basic development tools like GCC and make. For
|
||||
example, on Ubuntu and other distributions based on Debian GNU/Linux, you need
|
||||
to install the `xorg-dev` and `libglu1-mesa-dev` packages. The former pulls in
|
||||
all X.org header packages and the latter pulls in the Mesa OpenGL and GLU
|
||||
packages. Note that using header files and libraries from Mesa during
|
||||
compilation *will not* tie your binaries to the Mesa implementation of OpenGL.
|
||||
|
||||
|
||||
### Generating with CMake
|
||||
|
||||
Once you have all necessary dependencies, it is time to generate the project
|
||||
files or makefiles for your development environment. CMake needs to know two
|
||||
paths for this: the path to the source directory and the target path for the
|
||||
generated files and compiled binaries. If these are the same, it is called an
|
||||
in-tree build, otherwise it is called an out-of-tree build.
|
||||
|
||||
One of several advantages of out-of-tree builds is that you can generate files
|
||||
and compile for different development environments using a single source tree.
|
||||
|
||||
|
||||
#### Using CMake from the command-line
|
||||
|
||||
To make an in-tree build, enter the root directory of the GLFW source tree and
|
||||
run CMake. The current directory is used as target path, while the path
|
||||
provided as an argument is used to find the source tree.
|
||||
|
||||
cd <glfw-root-dir>
|
||||
cmake .
|
||||
|
||||
To make an out-of-tree build, make another directory, enter it and run CMake
|
||||
with the (relative or absolute) path to the root of the source tree as an
|
||||
argument.
|
||||
|
||||
cd <glfw-root-dir>
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
|
||||
|
||||
#### Using the CMake GUI
|
||||
|
||||
If you are using the GUI version, choose the root of the GLFW source tree as
|
||||
source location and the same directory or another, empty directory as the
|
||||
destination for binaries. Choose *Configure*, change any options you wish to,
|
||||
*Configure* again to let the changes take effect and then *Generate*.
|
||||
|
||||
|
||||
### CMake options
|
||||
|
||||
The CMake files for GLFW provide a number of options, although not all are
|
||||
available on all supported platforms. Some of these are de facto standards
|
||||
among CMake users and so have no `GLFW_` prefix.
|
||||
|
||||
If you are using the GUI version of CMake, these are listed and can be changed
|
||||
from there. If you are using the command-line version, use the `ccmake` tool.
|
||||
Some package systems like Ubuntu and other distributions based on Debian
|
||||
GNU/Linux have this tool in a separate `cmake-curses-gui` package.
|
||||
|
||||
|
||||
#### Shared options
|
||||
|
||||
`BUILD_SHARED_LIBS` determines whether GLFW is built as a static
|
||||
library or as a DLL / shared library / dynamic library.
|
||||
|
||||
`LIB_SUFFIX` affects where the GLFW shared /dynamic library is
|
||||
installed. If it is empty, it is installed to `$PREFIX/lib`. If it is set to
|
||||
`64`, it is installed to `$PREFIX/lib64`.
|
||||
|
||||
`GLFW_BUILD_EXAMPLES` determines whether the GLFW examples are built
|
||||
along with the library.
|
||||
|
||||
`GLFW_BUILD_TESTS` determines whether the GLFW test programs are
|
||||
built along with the library.
|
||||
|
||||
|
||||
#### OS X specific options
|
||||
|
||||
`GLFW_USE_CHDIR` determines whether `glfwInit` changes the current
|
||||
directory of bundled applications to the `Contents/Resources` directory.
|
||||
|
||||
`GLFW_USE_MENUBAR` determines whether the first call to
|
||||
`glfwCreateWindow` sets up a minimal menu bar.
|
||||
|
||||
`GLFW_BUILD_UNIVERSAL` determines whether to build Universal Binaries.
|
||||
|
||||
|
||||
#### Windows specific options
|
||||
|
||||
`USE_MSVC_RUNTIME_LIBRARY_DLL` determines whether to use the DLL version or the
|
||||
static library version of the Visual C++ runtime library.
|
||||
|
||||
`GLFW_USE_DWM_SWAP_INTERVAL` determines whether the swap interval is set even
|
||||
when DWM compositing is enabled. This can lead to severe jitter and is not
|
||||
usually recommended.
|
||||
|
||||
`GLFW_USE_OPTIMUS_HPG` determines whether to export the `NvOptimusEnablement`
|
||||
symbol, which forces the use of the high-performance GPU on nVidia Optimus
|
||||
systems.
|
||||
|
||||
|
||||
#### EGL specific options
|
||||
|
||||
`GLFW_USE_EGL` determines whether to use EGL instead of the platform-specific
|
||||
context creation API. Note that EGL is not yet provided on all supported
|
||||
platforms.
|
||||
|
||||
`GLFW_CLIENT_LIBRARY` determines which client API library to use. If set to
|
||||
`opengl` the OpenGL library is used, if set to `glesv1` for the OpenGL ES 1.x
|
||||
library is used, or if set to `glesv2` the OpenGL ES 2.0 library is used. The
|
||||
selected library and its header files must be present on the system for this to
|
||||
work.
|
||||
|
||||
|
||||
## Installing GLFW
|
||||
|
||||
A rudimentary installation target is provided for all supported platforms via
|
||||
CMake.
|
||||
See the [Compiling GLFW](http://www.glfw.org/docs/latest/compile.html) guide in
|
||||
the GLFW documentation.
|
||||
|
||||
|
||||
## Using GLFW
|
||||
|
||||
See the [GLFW documentation](http://www.glfw.org/docs/latest/).
|
||||
See the
|
||||
[Building programs that use GLFW](http://www.glfw.org/docs/latest/build.html)
|
||||
guide in the GLFW documentation.
|
||||
|
||||
|
||||
## Changelog
|
||||
|
||||
- Allowed character callback to be triggered regardless of modifier keys
|
||||
- Bugfix: The `-Wall` flag was not used with Clang and other GCC compatibles
|
||||
- Bugfix: The default for `GLFW_ALPHA_BITS` was set to zero
|
||||
- Bugfix: `glfwInit` would segfault if monitor enumeration failed and no error
|
||||
callback was set
|
||||
- [Win32] Added `_GLFW_USE_DWM_SWAP_INTERVAL` for forcing the swap interval
|
||||
to be set even when DWM compositing is enabled
|
||||
- [Win32] Added support for forcing the use of the high-performance GPU
|
||||
on nVidia Optimus systems
|
||||
- [Win32] Bugfix: The clipboard string was not freed on terminate
|
||||
- [Win32] Bugfix: Entry points for OpenGL 1.0 and 1.1 functions were not
|
||||
returned by `glfwGetProcAddress`
|
||||
- [Win32] Bugfix: The `user32` and `dwmapi` module handles were not freed on
|
||||
library termination
|
||||
- [Cocoa] Added support for precise scrolling deltas on OS X 10.7 and later
|
||||
- [Cocoa] Enabled explicit creation of OpenGL 3.x and 4.x contexts as supported
|
||||
by OS X 10.9
|
||||
- [Cocoa] Bugfix: The clipboard string was not freed on terminate
|
||||
- [Cocoa] Bugfix: Selectors were used that are not declared by the 10.6 SDK
|
||||
- [Cocoa] Bugfix: The position set by `glfwSetWindowPos` was incorrect
|
||||
- [X11] Bugfix: Override-redirect windows were resized to the desired instead
|
||||
of the actual resolution of the selected video mode
|
||||
- [X11] Bugfix: Screensaver override for full screen windows had a possible
|
||||
race condition
|
||||
- [X11] Bugfix: The reported window position did not account for the size of
|
||||
the window frame on some WMs
|
||||
- [X11] Bugfix: The original video mode of a monitor was overwritten by calls
|
||||
to `glfwSetWindowSize`
|
||||
- [X11] Bugfix: Key release events for `GLFW_KEY_KP_5` were discarded.
|
||||
- Added the `GLFW_BUILD_DOCS` CMake option for controlling whether the
|
||||
documentation is built
|
||||
- Added the `_GLFW_USE_CONFIG_H` configuration macro for controlling whether to
|
||||
include the configuration header
|
||||
- Moved version number macro to `internal.h` for easier manual compilation
|
||||
- Renamed configuration header to `glfw_config.h` to avoid conflicts
|
||||
- Bugfix: The `glfw3.pc` file did not respect the `LIB_SUFFIX` CMake option
|
||||
- Bugfix: The `joysticks` test would segfault if a controller had no axes
|
||||
- [Win32] Allowed swap interval to be explicitly set to zero on DWM systems
|
||||
- [Win32] Bugfix: Removed joystick axis value negation left over from GLFW 2
|
||||
- [Win32] Bugfix: Restoring windows using the Win+D hot key did not trigger the
|
||||
focus callback
|
||||
- [Win32] Bugfix: The disabled cursor mode clip rectangle was updated for
|
||||
unfocused windows
|
||||
- [Win32] Bugfix: Cursor was not properly re-centered over odd-sized windows
|
||||
- [Win32] Bugfix: Negative window positions were reported incorrectly
|
||||
- [Win32] Bugfix: The iconify callback was not triggered when switching away
|
||||
from a full screen window using Alt+Tab
|
||||
- [Win32] Bugfix: Resizing a window with `glfwSetWindowSize` gave it focus
|
||||
- [Cocoa] Added dependency on CoreVideo framework for refresh rate retrieval
|
||||
- [Cocoa] Enabled Lion full screen for resizable windowed mode windows
|
||||
- [Cocoa] Moved to Cocoa API for application transformation and activation
|
||||
- [Cocoa] Bugfix: The `GLFW_KEY_GRAVE_ACCENT` key was reported as
|
||||
`GLFW_KEY_WORLD_1` and vice versa
|
||||
- [Cocoa] Bugfix: The `GLFW_KEY_F13` key was reported as
|
||||
`GLFW_KEY_PRINT_SCREEN`
|
||||
- [Cocoa] Bugfix: Implicit conversion from `NSUInteger` to int caused warnings
|
||||
with Xcode 5
|
||||
- [Cocoa] Bugfix: Use of undeclared selectors with `@selector` caused warnings
|
||||
with Xcode 5
|
||||
- [Cocoa] Bugfix: The cursor remained visible if moved onto client area after
|
||||
having been set to hidden outside it
|
||||
- [Cocoa] Bugfix: The refresh rate was zero for all modes of certain monitors
|
||||
- [Cocoa] Bugfix: The `install_name` field of the dynamic library was not set
|
||||
- [Cocoa] Bugfix: Full screen windows were never reported as having focus
|
||||
- [Cocoa] Bugfix: A superfluous I/O flag test prevented video modes from being
|
||||
listed for Thunderbolt monitor
|
||||
- [Cocoa] Bugfix: Retrieving the name of some external displays caused segfault
|
||||
- [Cocoa] Bugfix: The 10.9 SDK defines `GLintptrARB` and `GLsizeiptrARB`
|
||||
differently from the Khronos `glext.h`
|
||||
- [Cocoa] Bugfix: Creating hidden windows would steal application focus
|
||||
- [Cocoa] Bugfix: Controllers were reported as having zero buttons and axes
|
||||
- [Cocoa] Bugfix: Removed joystick axis value negation left over from GLFW 2
|
||||
- [X11] Added setting of the `WM_CLASS` property to the initial window title
|
||||
- [X11] Added support for `_NET_WM_BYPASS_COMPOSITOR`
|
||||
- [X11] Bugfix: Removed joystick axis value negation left over from GLFW 2
|
||||
- [X11] Bugfix: The position of hidden windows was ignored by Metacity
|
||||
and Compiz
|
||||
- [X11] Bugfix: The `pthread.h` header was not included by the GLX platform
|
||||
header.
|
||||
|
||||
|
||||
## Contact
|
||||
@ -272,12 +120,14 @@ skills.
|
||||
- Doug Binks
|
||||
- blanco
|
||||
- Lambert Clara
|
||||
- Andrew Corrigan
|
||||
- Noel Cower
|
||||
- Jarrod Davis
|
||||
- Olivier Delannoy
|
||||
- Paul R. Deppe
|
||||
- Jonathan Dummer
|
||||
- Ralph Eastwood
|
||||
- Michael Fogleman
|
||||
- Gerald Franz
|
||||
- GeO4d
|
||||
- Marcus Geelnard
|
||||
@ -302,13 +152,18 @@ skills.
|
||||
- Marcel Metz
|
||||
- Kenneth Miller
|
||||
- Bruce Mitchener
|
||||
- Jack Moffitt
|
||||
- Jeff Molofee
|
||||
- Jon Morton
|
||||
- Pierre Moulon
|
||||
- Julian Møller
|
||||
- Kamil Nowakowski
|
||||
- Ozzy
|
||||
- Andri Pálsson
|
||||
- Peoro
|
||||
- Braden Pellett
|
||||
- Arturo J. Pérez
|
||||
- Pieroman
|
||||
- Jorge Rodriguez
|
||||
- Ed Ropple
|
||||
- Riku Salminen
|
||||
@ -316,6 +171,7 @@ skills.
|
||||
- Matt Sealey
|
||||
- SephiRok
|
||||
- Steve Sexton
|
||||
- Systemcluster
|
||||
- Dmitri Shuralyov
|
||||
- Daniel Skorupski
|
||||
- Bradley Smith
|
||||
@ -326,6 +182,7 @@ skills.
|
||||
- TTK-Bandit
|
||||
- Sergey Tikhomirov
|
||||
- Samuli Tuomola
|
||||
- urraka
|
||||
- Jari Vetoniemi
|
||||
- Simon Voordouw
|
||||
- Torsten Walluhn
|
||||
|
877
extern/glfw/deps/GL/glext.h
vendored
4
extern/glfw/deps/GL/glxext.h
vendored
@ -33,10 +33,10 @@ extern "C" {
|
||||
** used to make the header, and the header can be found at
|
||||
** http://www.opengl.org/registry/
|
||||
**
|
||||
** Khronos $Revision$ on $Date$
|
||||
** Khronos $Revision: 23649 $ on $Date: 2013-10-23 00:21:49 -0700 (Wed, 23 Oct 2013) $
|
||||
*/
|
||||
|
||||
#define GLX_GLXEXT_VERSION 20130710
|
||||
#define GLX_GLXEXT_VERSION 20131008
|
||||
|
||||
/* Generated C header for:
|
||||
* API: glx
|
||||
|
12
extern/glfw/deps/GL/wglext.h
vendored
@ -33,7 +33,7 @@ extern "C" {
|
||||
** used to make the header, and the header can be found at
|
||||
** http://www.opengl.org/registry/
|
||||
**
|
||||
** Khronos $Revision$ on $Date$
|
||||
** Khronos $Revision: 23649 $ on $Date: 2013-10-23 00:21:49 -0700 (Wed, 23 Oct 2013) $
|
||||
*/
|
||||
|
||||
#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
|
||||
@ -41,7 +41,7 @@ extern "C" {
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
#define WGL_WGLEXT_VERSION 20130710
|
||||
#define WGL_WGLEXT_VERSION 20130916
|
||||
|
||||
/* Generated C header for:
|
||||
* API: wgl
|
||||
@ -645,6 +645,14 @@ BOOL WINAPI wglCopyImageSubDataNV (HGLRC hSrcRC, GLuint srcName, GLenum srcTarge
|
||||
#endif
|
||||
#endif /* WGL_NV_copy_image */
|
||||
|
||||
#ifndef WGL_NV_delay_before_swap
|
||||
#define WGL_NV_delay_before_swap 1
|
||||
typedef BOOL (WINAPI * PFNWGLDELAYBEFORESWAPNVPROC) (HDC hDC, GLfloat seconds);
|
||||
#ifdef WGL_WGLEXT_PROTOTYPES
|
||||
BOOL WINAPI wglDelayBeforeSwapNV (HDC hDC, GLfloat seconds);
|
||||
#endif
|
||||
#endif /* WGL_NV_delay_before_swap */
|
||||
|
||||
#ifndef WGL_NV_float_buffer
|
||||
#define WGL_NV_float_buffer 1
|
||||
#define WGL_FLOAT_COMPONENTS_NV 0x20B0
|
||||
|
10
extern/glfw/docs/CMakeLists.txt
vendored
@ -1,5 +1,5 @@
|
||||
|
||||
add_custom_target(docs ALL ${DOXYGEN_EXECUTABLE}
|
||||
WORKING_DIRECTORY ${GLFW_BINARY_DIR}/docs
|
||||
COMMENT "Generating HTML documentation" VERBATIM)
|
||||
|
||||
|
||||
add_custom_target(docs ALL ${DOXYGEN_EXECUTABLE}
|
||||
WORKING_DIRECTORY ${GLFW_BINARY_DIR}/docs
|
||||
COMMENT "Generating HTML documentation" VERBATIM)
|
||||
|
||||
|
7
extern/glfw/docs/Doxyfile.in
vendored
@ -659,6 +659,7 @@ INPUT = @GLFW_INTERNAL_DOCS@ \
|
||||
@GLFW_SOURCE_DIR@/docs/news.dox \
|
||||
@GLFW_SOURCE_DIR@/docs/quick.dox \
|
||||
@GLFW_SOURCE_DIR@/docs/moving.dox \
|
||||
@GLFW_SOURCE_DIR@/docs/compile.dox \
|
||||
@GLFW_SOURCE_DIR@/docs/build.dox \
|
||||
@GLFW_SOURCE_DIR@/docs/context.dox \
|
||||
@GLFW_SOURCE_DIR@/docs/monitor.dox \
|
||||
@ -899,13 +900,13 @@ HTML_FILE_EXTENSION = .html
|
||||
# have to redo this when upgrading to a newer version of doxygen or when
|
||||
# changing the value of configuration settings such as GENERATE_TREEVIEW!
|
||||
|
||||
HTML_HEADER =
|
||||
HTML_HEADER = @GLFW_SOURCE_DIR@/docs/header.html
|
||||
|
||||
# The HTML_FOOTER tag can be used to specify a personal HTML footer for
|
||||
# each generated HTML page. If it is left blank doxygen will generate a
|
||||
# standard footer.
|
||||
|
||||
HTML_FOOTER =
|
||||
HTML_FOOTER = @GLFW_SOURCE_DIR@/docs/footer.html
|
||||
|
||||
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
|
||||
# style sheet that is used by each HTML page. It can be used to
|
||||
@ -924,7 +925,7 @@ HTML_STYLESHEET =
|
||||
# robust against future updates. Doxygen will copy the style sheet file to
|
||||
# the output directory.
|
||||
|
||||
HTML_EXTRA_STYLESHEET =
|
||||
HTML_EXTRA_STYLESHEET = @GLFW_SOURCE_DIR@/docs/extra.css
|
||||
|
||||
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
|
||||
# other source files which should be copied to the HTML output directory. Note
|
||||
|
22
extern/glfw/docs/build.dox
vendored
@ -1,11 +1,13 @@
|
||||
/*!
|
||||
|
||||
@page build Building programs using GLFW
|
||||
@page build Building programs that use GLFW
|
||||
|
||||
@tableofcontents
|
||||
|
||||
This is about compiling and linking programs that use GLFW. For information on
|
||||
how to *write* such programs, start with the [introductory tutorial](@ref quick).
|
||||
how to write such programs, start with the [introductory tutorial](@ref quick).
|
||||
For information on how to compile the GLFW library itself, see the @ref compile
|
||||
guide.
|
||||
|
||||
|
||||
@section build_include Including the GLFW header file
|
||||
@ -48,7 +50,9 @@ header that the GLFW header includes and GLEW will work as expected.
|
||||
@subsection build_macros GLFW header option macros
|
||||
|
||||
These macros may be defined before the inclusion of the GLFW header and affect
|
||||
how that header behaves.
|
||||
the behavior of the header. Note that GLFW does not provide any of the OpenGL
|
||||
or OpenGL ES headers mentioned below. These are provided by your development
|
||||
environment or your OpenGL or OpenGL ES SDK.
|
||||
|
||||
`GLFW_INCLUDE_GLCOREARB` makes the header include the modern `GL/glcorearb.h`
|
||||
header (`OpenGL/gl3.h` on OS X) instead of the regular OpenGL header.
|
||||
@ -81,8 +85,10 @@ The static version of the GLFW library is named `glfw3`. When using this
|
||||
version, it is also necessary to link with some libraries that GLFW uses.
|
||||
|
||||
When linking a program under Windows that uses the static version of GLFW, you
|
||||
must link with `opengl32`. If you are using GLU, you must also link with
|
||||
`glu32`.
|
||||
must link with `opengl32`. On some versions of MinGW, you must also explicitly
|
||||
link with `gdi32`, while other versions of MinGW include it in the set of
|
||||
default libraries along with other dependencies like `user32` and `kernel32`.
|
||||
If you are using GLU, you must also link with `glu32`.
|
||||
|
||||
The link library for the GLFW DLL is named `glfw3dll`. When compiling a program
|
||||
that uses the DLL version of GLFW, you need to define the `GLFW_DLL` macro
|
||||
@ -158,7 +164,7 @@ If you are using the static library version of GLFW, use the
|
||||
@subsection build_link_pkgconfig With pkg-config on OS X or other Unix
|
||||
|
||||
GLFW supports [pkg-config](http://www.freedesktop.org/wiki/Software/pkg-config/),
|
||||
and `glfw3.pc` file is generated when the GLFW library is built and installed
|
||||
and the `glfw3.pc` file is generated when the GLFW library is built and installed
|
||||
along with it.
|
||||
|
||||
A typical compile and link command-line when using the static may look like this:
|
||||
@ -189,7 +195,7 @@ If you are using the dynamic library version of GLFW, simply add it to the
|
||||
project dependencies.
|
||||
|
||||
If you are using the static library version of GLFW, add it and the Cocoa,
|
||||
OpenGL and IOKit frameworks to the project as dependencies.
|
||||
OpenGL, IOKit and CoreVideo frameworks to the project as dependencies.
|
||||
|
||||
|
||||
@subsection build_link_osx With command-line on OS X
|
||||
@ -198,7 +204,7 @@ If you do not wish to use pkg-config, you need to add the required frameworks
|
||||
and libraries to your command-line using the `-l` and `-framework` switches,
|
||||
i.e.:
|
||||
|
||||
cc -o myprog myprog.c -lglfw -framework Cocoa -framework OpenGL -framework IOKit
|
||||
cc -o myprog myprog.c -lglfw -framework Cocoa -framework OpenGL -framework IOKit -framework CoreVideo
|
||||
|
||||
Note that you do not add the `.framework` extension to a framework when adding
|
||||
it from the command-line.
|
||||
|
16
extern/glfw/docs/compat.dox
vendored
@ -123,15 +123,15 @@ version 2.1.
|
||||
|
||||
Because of this, on OS X 10.7 and later, the `GLFW_CONTEXT_VERSION_MAJOR` and
|
||||
`GLFW_CONTEXT_VERSION_MINOR` hints will cause @ref glfwCreateWindow to fail if
|
||||
given version 3.0 or 3.1, the `GLFW_OPENGL_FORWARD_COMPAT` is required for
|
||||
creating contexts for OpenGL 3.2 and later, the `GLFW_OPENGL_DEBUG_CONTEXT` hint
|
||||
is ignored and setting the `GLFW_OPENGL_PROFILE` hint to anything except
|
||||
`GLFW_OPENGL_CORE_PROFILE` will cause @ref glfwCreateWindow to fail.
|
||||
given version 3.0 or 3.1, the `GLFW_OPENGL_FORWARD_COMPAT` hint must be set to
|
||||
non-zero and the `GLFW_OPENGL_PROFILE` hint must be set to
|
||||
`GLFW_OPENGL_CORE_PROFILE` when creating OpenGL 3.2 and later contexts and the
|
||||
`GLFW_OPENGL_DEBUG_CONTEXT` hint is ignored.
|
||||
|
||||
Also, on Mac OS X 10.6 and below, the `GLFW_CONTEXT_VERSION_MAJOR` and
|
||||
`GLFW_CONTEXT_VERSION_MINOR` hints will fail if given a version above 2.1, the
|
||||
`GLFW_OPENGL_DEBUG_CONTEXT` hint will have no effect, and setting the
|
||||
`GLFW_OPENGL_PROFILE` or `GLFW_OPENGL_FORWARD_COMPAT` hints to a non-zero value
|
||||
will cause @ref glfwCreateWindow to fail.
|
||||
`GLFW_CONTEXT_VERSION_MINOR` hints will fail if given a version above 2.1,
|
||||
setting the `GLFW_OPENGL_PROFILE` or `GLFW_OPENGL_FORWARD_COMPAT` hints to
|
||||
a non-default value will cause @ref glfwCreateWindow to fail and the
|
||||
`GLFW_OPENGL_DEBUG_CONTEXT` hint is ignored.
|
||||
|
||||
*/
|
||||
|
261
extern/glfw/docs/compile.dox
vendored
Normal file
@ -0,0 +1,261 @@
|
||||
/*!
|
||||
|
||||
@page compile Compiling GLFW
|
||||
|
||||
@tableofcontents
|
||||
|
||||
This is about compiling the GLFW library itself. For information on how to
|
||||
build programs that use GLFW, see the @ref build guide.
|
||||
|
||||
|
||||
@section compile_deps Dependencies
|
||||
|
||||
To compile GLFW and the accompanying example programs, you will need **CMake**,
|
||||
which will generate the project files or makefiles for your particular
|
||||
development environment. If you are on a Unix-like system such as Linux or
|
||||
FreeBSD or have a package system like Fink, MacPorts, Cygwin or Homebrew, you
|
||||
can simply install its CMake package. If not, you can get installers for
|
||||
Windows and OS X from the [CMake website](http://www.cmake.org/).
|
||||
|
||||
Additional dependencies are listed below.
|
||||
|
||||
If you wish to compile GLFW without CMake, see @ref compile_manual.
|
||||
|
||||
|
||||
@subsection compile_deps_msvc Dependencies using Visual C++ on Windows
|
||||
|
||||
The Microsoft Platform SDK that is installed along with Visual C++ contains all
|
||||
the necessary headers, link libraries and tools except for CMake.
|
||||
|
||||
|
||||
@subsection compile_deps_mingw Dependencies with MinGW or MinGW-w64 on Windows
|
||||
|
||||
Both the MinGW and the MinGW-w64 packages contain all the necessary headers,
|
||||
link libraries and tools except for CMake.
|
||||
|
||||
|
||||
@subsection compile_deps_mingw_cross Dependencies using MinGW or MinGW-w64 cross-compilation
|
||||
|
||||
Both Cygwin and many Linux distributions have MinGW or MinGW-w64 packages. For
|
||||
example, Cygwin has the `mingw64-i686-gcc` and `mingw64-x86_64-gcc` packages
|
||||
for 32- and 64-bit version of MinGW-w64, while Debian GNU/Linux and derivatives
|
||||
like Ubuntu have the `mingw-w64` package for both.
|
||||
|
||||
GLFW has CMake toolchain files in the `CMake/` directory that allow for easy
|
||||
cross-compilation of Windows binaries. To use these files you need to add a
|
||||
special parameter when generating the project files or makefiles:
|
||||
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE=<toolchain-file> .
|
||||
|
||||
The exact toolchain file to use depends on the prefix used by the MinGW or
|
||||
MinGW-w64 binaries on your system. You can usually see this in the /usr
|
||||
directory. For example, both the Debian/Ubuntu and Cygwin MinGW-w64 packages
|
||||
have `/usr/x86_64-w64-mingw32` for the 64-bit compilers, so the correct
|
||||
invocation would be:
|
||||
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE=CMake/x86_64-w64-mingw32.cmake .
|
||||
|
||||
For more details see the article
|
||||
[CMake Cross Compiling](http://www.paraview.org/Wiki/CMake_Cross_Compiling) on
|
||||
the CMake wiki.
|
||||
|
||||
|
||||
@subsection compile_deps_xcode Dependencies using Xcode on OS X
|
||||
|
||||
Xcode contains all necessary tools except for CMake. The necessary headers and
|
||||
libraries are included in the core OS frameworks. Xcode can be downloaded from
|
||||
the Mac App Store or from the ADC Member Center.
|
||||
|
||||
|
||||
@subsection compile_deps_x11 Dependencies using Linux and X11
|
||||
|
||||
To compile GLFW for X11, you need to have the X11 and OpenGL header packages
|
||||
installed, as well as the basic development tools like GCC and make. For
|
||||
example, on Ubuntu and other distributions based on Debian GNU/Linux, you need
|
||||
to install the `xorg-dev` and `libglu1-mesa-dev` packages. The former pulls in
|
||||
all X.org header packages and the latter pulls in the Mesa OpenGL and GLU
|
||||
packages. GLFW itself doesn't need or use GLU, but some of the examples do.
|
||||
Note that using header files and libraries from Mesa during compilation *will
|
||||
not* tie your binaries to the Mesa implementation of OpenGL.
|
||||
|
||||
|
||||
@section compile_cmake Generating files with CMake
|
||||
|
||||
Once you have all necessary dependencies it is time to generate the project
|
||||
files or makefiles for your development environment. CMake needs to know two
|
||||
paths for this: the path to the *root* directory of the GLFW source tree (i.e.
|
||||
*not* the `src` subdirectory) and the target path for the generated files and
|
||||
compiled binaries. If these are the same, it is called an in-tree build,
|
||||
otherwise it is called an out-of-tree build.
|
||||
|
||||
One of several advantages of out-of-tree builds is that you can generate files
|
||||
and compile for different development environments using a single source tree.
|
||||
|
||||
|
||||
@subsection compile_cmake_cli Generating files with the CMake command-line tool
|
||||
|
||||
To make an in-tree build, enter the *root* directory of the GLFW source tree
|
||||
(i.e. *not* the `src` subdirectory) and run CMake. The current directory is
|
||||
used as target path, while the path provided as an argument is used to find the
|
||||
source tree.
|
||||
|
||||
cd <glfw-root-dir>
|
||||
cmake .
|
||||
|
||||
To make an out-of-tree build, make another directory, enter it and run CMake
|
||||
with the (relative or absolute) path to the root of the source tree as an
|
||||
argument.
|
||||
|
||||
cd <glfw-root-dir>
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
|
||||
|
||||
@subsection compile_cmake_gui Generating files with the CMake GUI
|
||||
|
||||
If you are using the GUI version, choose the root of the GLFW source tree as
|
||||
source location and the same directory or another, empty directory as the
|
||||
destination for binaries. Choose *Configure*, change any options you wish to,
|
||||
*Configure* again to let the changes take effect and then *Generate*.
|
||||
|
||||
|
||||
@section compile_options CMake options
|
||||
|
||||
The CMake files for GLFW provide a number of options, although not all are
|
||||
available on all supported platforms. Some of these are de facto standards
|
||||
among CMake users and so have no `GLFW_` prefix.
|
||||
|
||||
If you are using the GUI version of CMake, these are listed and can be changed
|
||||
from there. If you are using the command-line version, use the `ccmake` tool.
|
||||
Some package systems like Ubuntu and other distributions based on Debian
|
||||
GNU/Linux have this tool in a separate `cmake-curses-gui` package.
|
||||
|
||||
|
||||
@subsection compile_options_shared Shared CMake options
|
||||
|
||||
`BUILD_SHARED_LIBS` determines whether GLFW is built as a static
|
||||
library or as a DLL / shared library / dynamic library.
|
||||
|
||||
`LIB_SUFFIX` affects where the GLFW shared /dynamic library is installed. If it
|
||||
is empty, it is installed to `${CMAKE_INSTALL_PREFIX}/lib`. If it is set to
|
||||
`64`, it is installed to `${CMAKE_INSTALL_PREFIX}/lib64`.
|
||||
|
||||
`GLFW_CLIENT_LIBRARY` determines which client API library to use. If set to
|
||||
`opengl` the OpenGL library is used, if set to `glesv1` for the OpenGL ES 1.x
|
||||
library is used, or if set to `glesv2` the OpenGL ES 2.0 library is used. The
|
||||
selected library and its header files must be present on the system for this to
|
||||
work.
|
||||
|
||||
`GLFW_BUILD_EXAMPLES` determines whether the GLFW examples are built
|
||||
along with the library.
|
||||
|
||||
`GLFW_BUILD_TESTS` determines whether the GLFW test programs are
|
||||
built along with the library.
|
||||
|
||||
`GLFW_BUILD_DOCS` determines whether the GLFW documentation is built along with
|
||||
the library.
|
||||
|
||||
|
||||
@subsection compile_options_osx OS X specific CMake options
|
||||
|
||||
`GLFW_USE_CHDIR` determines whether `glfwInit` changes the current
|
||||
directory of bundled applications to the `Contents/Resources` directory.
|
||||
|
||||
`GLFW_USE_MENUBAR` determines whether the first call to
|
||||
`glfwCreateWindow` sets up a minimal menu bar.
|
||||
|
||||
`GLFW_BUILD_UNIVERSAL` determines whether to build Universal Binaries.
|
||||
|
||||
|
||||
@subsection compile_options_win32 Windows specific CMake options
|
||||
|
||||
`USE_MSVC_RUNTIME_LIBRARY_DLL` determines whether to use the DLL version or the
|
||||
static library version of the Visual C++ runtime library. If set to `ON`, the
|
||||
DLL version of the Visual C++ library is used. It is recommended to set this to
|
||||
`ON`, as this keeps the executable smaller and benefits from security and bug
|
||||
fix updates of the Visual C++ runtime.
|
||||
|
||||
`GLFW_USE_DWM_SWAP_INTERVAL` determines whether the swap interval is set even
|
||||
when DWM compositing is enabled. If this is `ON`, the swap interval is set even
|
||||
if DWM is enabled. It is recommended to set this to `OFF`, as doing otherwise
|
||||
can lead to severe jitter.
|
||||
|
||||
`GLFW_USE_OPTIMUS_HPG` determines whether to export the `NvOptimusEnablement`
|
||||
symbol, which forces the use of the high-performance GPU on nVidia Optimus
|
||||
systems.
|
||||
|
||||
|
||||
@subsection compile_options_egl EGL specific CMake options
|
||||
|
||||
`GLFW_USE_EGL` determines whether to use EGL instead of the platform-specific
|
||||
context creation API. Note that EGL is not yet provided on all supported
|
||||
platforms.
|
||||
|
||||
|
||||
@section compile_manual Compiling GLFW manually
|
||||
|
||||
If you wish to compile GLFW without its CMake build environment then you will
|
||||
have to do at least some of the platform detection yourself. GLFW needs
|
||||
a number of configuration macros to be defined in order to know what it's being
|
||||
compiled for and has many optional, platform-specific ones for various features.
|
||||
|
||||
When building with CMake, the `glfw_config.h` configuration header is generated
|
||||
based on the current platform and CMake options. The GLFW CMake environment
|
||||
defines `_GLFW_USE_CONFIG_H`, which causes this header to be included by
|
||||
`internal.h`. Without this macro, GLFW will expect the necessary configuration
|
||||
macros to be defined on the command-line.
|
||||
|
||||
Three macros *must* be defined when compiling GLFW: one for selecting the window
|
||||
creation API, one selecting the context creation API and one client library.
|
||||
Exactly one of each kind must be defined for GLFW to compile and link.
|
||||
|
||||
The window creation API is used to create windows, handle input, monitors, gamma
|
||||
ramps and clipboard. The options are:
|
||||
|
||||
- `_GLFW_COCOA` to use the Cocoa frameworks
|
||||
- `_GLFW_WIN32` to use the Win32 API
|
||||
- `_GLFW_X11` to use the X Window System
|
||||
|
||||
The context creation API is used to enumerate pixel formats / framebuffer
|
||||
configurations and to create contexts. The options are:
|
||||
|
||||
- `_GLFW_NSGL` to use the Cocoa OpenGL framework
|
||||
- `_GLFW_WGL` to use the Win32 WGL API
|
||||
- `_GLFW_GLX` to use the X11 GLX API
|
||||
- `_GLFW_EGL` to use the EGL API (experimental)
|
||||
|
||||
The client library is the one providing the OpenGL or OpenGL ES API, which is
|
||||
used by GLFW to probe the created context. This is not the same thing as the
|
||||
client API, as many desktop OpenGL client libraries now expose the OpenGL ES API
|
||||
through extensions. The options are:
|
||||
|
||||
- `_GLFW_USE_OPENGL` for the desktop OpenGL (opengl32.dll, libGL.so or
|
||||
OpenGL.framework)
|
||||
- `_GLFW_USE_GLESV1` for OpenGL ES 1.x (experimental)
|
||||
- `_GLFW_USE_GLESV2` for OpenGL ES 2.x (experimental)
|
||||
|
||||
Note that `_GLFW_USE_GLESV1` and `_GLFW_USE_GLESV2` may only be used with EGL,
|
||||
as the other context creation APIs do not interface with OpenGL ES client
|
||||
libraries.
|
||||
|
||||
If you are building GLFW as a shared library / dynamic library / DLL then you
|
||||
must also define `_GLFW_BUILD_DLL`. Otherwise, you may not define it.
|
||||
|
||||
If you are using the X11 window creation API then you *must* also select an entry
|
||||
point retrieval mechanism.
|
||||
|
||||
- `_GLFW_HAS_GLXGETPROCADDRESS` to use `glXGetProcAddress` (recommended)
|
||||
- `_GLFW_HAS_GLXGETPROCADDRESSARB` to use `glXGetProcAddressARB` (legacy)
|
||||
- `_GLFW_HAS_GLXGETPROCADDRESSEXT` to use `glXGetProcAddressEXT` (legacy)
|
||||
- `_GLFW_HAS_DLOPEN` to do manual retrieval with `dlopen` (fallback)
|
||||
|
||||
If you are using the Cocoa window creation API, the following options are
|
||||
available:
|
||||
|
||||
- `_GLFW_USE_CHDIR` to `chdir` to the `Resources` subdirectory of the
|
||||
application bundle during @ref glfwInit (recommended)
|
||||
- `_GLFW_USE_MENUBAR` to create and populate the menu bar when the first window
|
||||
is created (recommended)
|
||||
|
||||
*/
|
9
extern/glfw/docs/context.dox
vendored
@ -24,6 +24,15 @@ what kind of context is created. See
|
||||
[context related hints](@ref window_hints_ctx) in the window handling guide.
|
||||
|
||||
|
||||
@section context_sharing Context object sharing
|
||||
|
||||
When creating a window and context with @ref glfwCreateWindow, you can specify
|
||||
another window whose context the new one should share its objects with. OpenGL
|
||||
object sharing is implemented by the operating system and graphics driver and is
|
||||
described in the OpenGL documentation. On platforms where it is possible to
|
||||
choose which types of objects are shared, GLFW requests that all are shared.
|
||||
|
||||
|
||||
@section context_current Current context
|
||||
|
||||
Before you can use the OpenGL or OpenGL ES APIs, you need to have a current
|
||||
|
312
extern/glfw/docs/extra.css
vendored
Normal file
@ -0,0 +1,312 @@
|
||||
html {
|
||||
background-color:hsl(0,0%,95%);
|
||||
}
|
||||
|
||||
.glfwheader {
|
||||
font-size:16px;
|
||||
height:64px;
|
||||
max-width:920px;
|
||||
margin:0em auto;
|
||||
}
|
||||
|
||||
.glfwheader a#glfwhome {
|
||||
line-height:64px;
|
||||
padding-right:48px;
|
||||
float:left;
|
||||
color:hsl(0,0%,40%);
|
||||
font-size:2.5em;
|
||||
background-image:url("http://www.glfw.org/css/arrow.png");
|
||||
background-position:right top;
|
||||
background-repeat:no-repeat;
|
||||
}
|
||||
|
||||
.glfwnavbar {
|
||||
list-style-type:none;
|
||||
margin-top:0px;
|
||||
float:right;
|
||||
}
|
||||
|
||||
.glfwnavbar li {
|
||||
float:left;
|
||||
}
|
||||
|
||||
.glfwnavbar a,.glfwnavbar a:visited {
|
||||
line-height:64px;
|
||||
margin-left:2em;
|
||||
display:block;
|
||||
color:hsl(0,0%,40%);
|
||||
}
|
||||
|
||||
.glfwheader a#glfwhome,.glfwnavbar a,.glfwnavbar a:visited {
|
||||
transition:all 0.35s ease 0s;
|
||||
}
|
||||
|
||||
#titlearea,address.footer {
|
||||
color:hsl(0,0%,40%);
|
||||
background-color:hsl(0,0%,95%);
|
||||
border-bottom:none;
|
||||
}
|
||||
|
||||
address.footer {
|
||||
text-align:center;
|
||||
padding:2em;
|
||||
}
|
||||
|
||||
div#top {
|
||||
background-color:hsl(0,0%,40%);
|
||||
}
|
||||
|
||||
div#navrow1,div#navrow2,div#navrow3,div#navrow4 {
|
||||
background-color:hsl(0,0%,40%);
|
||||
background-image:none;
|
||||
max-width:920px;
|
||||
margin:0em auto;
|
||||
}
|
||||
|
||||
ul.tablist {
|
||||
min-width:700px;
|
||||
}
|
||||
|
||||
.tablist a,.tablist a:hover,.tablist li,.tablist li.current a {
|
||||
background-image:none;
|
||||
text-shadow:none;
|
||||
}
|
||||
|
||||
.tablist a,.tablist a:visited {
|
||||
color:hsl(0,0%,95%);
|
||||
text-shadow:none;
|
||||
}
|
||||
|
||||
.tablist li.current a {
|
||||
background:linear-gradient(to bottom,hsl(34,100%,60%) 0%,hsl(24,100%,50%) 100%);
|
||||
box-shadow:inset 0px 0px 32px hsl(24,100%,50%);
|
||||
text-shadow:0px -1px 1px hsl(24,100%,35%);
|
||||
color:hsl(0,0%,100%);
|
||||
}
|
||||
|
||||
div.contents {
|
||||
min-height:590px;
|
||||
}
|
||||
|
||||
div.contents,div.header {
|
||||
max-width:920px;
|
||||
margin:0em auto;
|
||||
padding:0em 2em 2em 2em;
|
||||
background-color:hsl(0,0%,100%);
|
||||
}
|
||||
|
||||
div.header {
|
||||
background-image:none;
|
||||
border-bottom:none;
|
||||
}
|
||||
|
||||
table.doxtable th,dl.reflist dt,div.levels {
|
||||
background:linear-gradient(to bottom,hsl(34,100%,60%) 0%,hsl(24,100%,50%) 100%);
|
||||
box-shadow:inset 0px 0px 32px hsl(24,100%,50%);
|
||||
text-shadow:0px -1px 1px hsl(24,100%,35%);
|
||||
color:hsl(0,0%,100%);
|
||||
}
|
||||
|
||||
dl.reflist dt a.el,div.levels span {
|
||||
color:hsl(24,100%,50%);
|
||||
padding:0.2em;
|
||||
border-radius:4px;
|
||||
background-color:hsl(24,100%,90%);
|
||||
text-shadow:none;
|
||||
}
|
||||
|
||||
div.memproto,div.qindex,div.ah {
|
||||
background:linear-gradient(to bottom,hsl(34,0%,95%) 0%,hsl(24,0%,90%) 100%);
|
||||
box-shadow:inset 0px 0px 32px hsl(24,0%,90%);
|
||||
text-shadow:0px 1px 1px hsl(24,0%,100%);
|
||||
color:hsl(0,0%,10%);
|
||||
}
|
||||
|
||||
div.memproto a {
|
||||
color:hsl(24,100%,50%);
|
||||
}
|
||||
|
||||
div.memproto td.paramname {
|
||||
text-shadow:0px 1px 1px hsl(24,0%,100%);
|
||||
}
|
||||
|
||||
div.memproto,div.qindex,div.ah {
|
||||
border:2px solid hsl(24,0%,90%);
|
||||
border-radius:4px;
|
||||
}
|
||||
|
||||
div.memdoc {
|
||||
background:none;
|
||||
box-shadow:none;
|
||||
border:none;
|
||||
}
|
||||
|
||||
td.paramname {
|
||||
color:hsl(24,100%,25%);
|
||||
}
|
||||
|
||||
dl.reflist dt {
|
||||
border:2px solid hsl(24,100%,50%);
|
||||
border-top-left-radius:4px;
|
||||
border-top-right-radius:4px;
|
||||
border-bottom:none;
|
||||
}
|
||||
|
||||
dl.reflist dd {
|
||||
border:2px solid hsl(24,100%,50%);
|
||||
border-bottom-right-radius:4px;
|
||||
border-bottom-left-radius:4px;
|
||||
border-top:none;
|
||||
background:none;
|
||||
box-shadow:none;
|
||||
}
|
||||
|
||||
table.doxtable {
|
||||
border-collapse:inherit;
|
||||
border-spacing:0px;
|
||||
border:2px solid hsl(24,100%,50%);
|
||||
border-radius:4px;
|
||||
}
|
||||
|
||||
table.doxtable td,table.doxtable th {
|
||||
border:none;
|
||||
}
|
||||
|
||||
tr.even,.directory tr.even,table.doxtable tr:nth-child(even) {
|
||||
background-color:hsl(0,0%,95%);
|
||||
}
|
||||
|
||||
body {
|
||||
color:hsl(0,0%,30%);
|
||||
}
|
||||
|
||||
h1,h2,h2.groupheader,h3,div.toc h3,h4,h5,h6,strong,em {
|
||||
color:hsl(0,0%,10%);
|
||||
border-bottom:none;
|
||||
}
|
||||
|
||||
a,a:hover,a:visited,a:visited:hover,a.el,a.el:visited,.glfwheader a#glfwhome:hover,.tablist a:hover {
|
||||
color:hsl(24,100%,50%);
|
||||
text-decoration:none;
|
||||
}
|
||||
|
||||
.mdescLeft,.mdescRight,.memItemLeft,.memItemRight {
|
||||
background-color:hsl(0,0%,95%);
|
||||
}
|
||||
|
||||
div.directory {
|
||||
border-collapse:inherit;
|
||||
border-spacing:0px;
|
||||
border:2px solid hsl(24,100%,50%);
|
||||
border-radius:4px;
|
||||
}
|
||||
|
||||
.directory .levels span {
|
||||
color:hsl(24,100%,50%);
|
||||
padding:0.1em 0.5em;
|
||||
margin:auto 0.25em;
|
||||
border-radius:2px;
|
||||
background-color:hsl(24,100%,90%);
|
||||
text-shadow:none;
|
||||
}
|
||||
|
||||
td.memSeparator {
|
||||
height:2px;
|
||||
border:0px;
|
||||
background:linear-gradient(to right,hsl(0,0%,95%) 0%,hsl(0,0%,85%) 50%,hsl(0,0%,95%) 100%);
|
||||
}
|
||||
|
||||
dl.note,dl.pre,dl.post,dl.invariant {
|
||||
background:linear-gradient(to bottom,hsl(103,80%,90%) 0%,hsl(103,80%,85%) 100%);
|
||||
box-shadow:inset 0px 0px 32px hsl(103,40%,80%);
|
||||
color:hsl(103,80%,10%);
|
||||
border:2px solid hsl(103,40%,75%);
|
||||
}
|
||||
|
||||
dl.warning,dl.attention {
|
||||
background:linear-gradient(to bottom,hsl(34,80%,90%) 0%,hsl(34,80%,85%) 100%);
|
||||
box-shadow:inset 0px 0px 32px hsl(34,40%,80%);
|
||||
color:hsl(34,80%,10%);
|
||||
border:2px solid hsl(34,40%,75%);
|
||||
}
|
||||
|
||||
dl.deprecated,dl.bug {
|
||||
background:linear-gradient(to bottom,hsl(333,80%,90%) 0%,hsl(333,80%,85%) 100%);
|
||||
box-shadow:inset 0px 0px 32px hsl(333,40%,80%);
|
||||
color:hsl(333,80%,10%);
|
||||
border:2px solid hsl(333,40%,75%);
|
||||
}
|
||||
|
||||
dl.todo,dl.test {
|
||||
background:linear-gradient(to bottom,hsl(200,80%,90%) 0%,hsl(200,80%,85%) 100%);
|
||||
box-shadow:inset 0px 0px 32px hsl(200,40%,80%);
|
||||
color:hsl(200,80%,10%);
|
||||
border:2px solid hsl(200,40%,75%);
|
||||
}
|
||||
|
||||
dl.note,dl.pre,dl.post,dl.invariant,dl.warning,dl.attention,dl.deprecated,dl.bug,dl.todo,dl.test {
|
||||
border-radius:4px;
|
||||
padding:1em;
|
||||
text-shadow:0px 1px 1px hsl(0,0%,100%);
|
||||
}
|
||||
|
||||
div.toc {
|
||||
background:linear-gradient(to bottom,hsl(34,0%,95%) 0%,hsl(24,0%,90%) 100%);
|
||||
box-shadow:inset 0px 0px 32px hsl(24,0%,90%);
|
||||
text-shadow:0px 1px 1px hsl(24,0%,100%);
|
||||
color:hsl(0,0%,10%);
|
||||
border:2px solid hsl(24,0%,90%);
|
||||
border-radius:4px;
|
||||
float:none;
|
||||
width:auto;
|
||||
}
|
||||
|
||||
div.toc h3 {
|
||||
font-size:1.17em;
|
||||
}
|
||||
|
||||
div.toc ul {
|
||||
padding-left:1.5em;
|
||||
}
|
||||
|
||||
div.toc li {
|
||||
background:none;
|
||||
font-size:1em;
|
||||
padding-left:0em;
|
||||
list-style-type:disc;
|
||||
}
|
||||
|
||||
div.ah {
|
||||
background-image:none;
|
||||
}
|
||||
|
||||
div.fragment,pre.fragment {
|
||||
background-color:hsl(0,0%,20%);
|
||||
border-radius:4px;
|
||||
border-width:0px;
|
||||
padding:0.5em 2em;
|
||||
overflow:auto;
|
||||
border-left:4px solid hsl(0,0%,80%);
|
||||
}
|
||||
|
||||
div.line,pre.fragment {
|
||||
color:hsl(60,30%,96%);
|
||||
}
|
||||
|
||||
a.code,a.code:visited,span.preprocessor,span.comment {
|
||||
color:hsl(80,76%,53%);
|
||||
}
|
||||
|
||||
span.keyword,span.keywordtype,span.keywordflow {
|
||||
color:hsl(190,81%,67%);
|
||||
}
|
||||
|
||||
span.stringliteral {
|
||||
color:hsl(54,70%,68%);
|
||||
}
|
||||
|
||||
code {
|
||||
background-color:hsl(0,0%,95%);
|
||||
padding:0.1em;
|
||||
border-radius: 4px;
|
||||
}
|
7
extern/glfw/docs/footer.html
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
<address class="footer">
|
||||
<p>
|
||||
Last update on $date for $projectname $projectnumber
|
||||
</p>
|
||||
</address>
|
||||
</body>
|
||||
</html>
|