├── .gitignore ├── LICENSE ├── LightPropagationVolumes.pro ├── Makefile ├── README.md ├── bin ├── LightPropagationVolumes.exe ├── LightPropagationVolumes_SDL_No_Gui.exe ├── SDL2.dll ├── SDL2_image.dll ├── glew32.dll ├── libjpeg-9.dll ├── libpng16-16.dll ├── mingw_4.8.1 │ └── glew32.dll ├── msvc │ ├── SDL2.dll │ ├── SDL2_image.dll │ ├── glew32.dll │ ├── libjpeg-9.dll │ ├── libpng16-16.dll │ └── zlib1.dll └── zlib1.dll ├── data ├── maps │ ├── 00HADR07.BMP │ ├── 00KOB01.BMP │ ├── 0BDREVO.BMP │ ├── 0BZLATO2.BMP │ ├── 0HBAR.BMP │ ├── 0HBAR1.BMP │ ├── 0HBAR2.BMP │ ├── 0HBAR3.BMP │ ├── 0HCE.BMP │ ├── 0HCE1.bmp │ ├── 0HCE2.BMP │ ├── 0HCEDUL.BMP │ ├── 0HDREVO1.BMP │ ├── 0HDVER1.BMP │ ├── 0HDVER2.BMP │ ├── 0HDVER3.BMP │ ├── 0HDVERE.BMP │ ├── 0HEX.BMP │ ├── 0HEX1.BMP │ ├── 0HKOB2.BMP │ ├── 0HKUCH1.BMP │ ├── 0HKUPEL.BMP │ ├── 0HOBR0.BMP │ ├── 0HOBR1.BMP │ ├── 0HOBR10.BMP │ ├── 0HOBR11.BMP │ ├── 0HOBR12.BMP │ ├── 0HOBR13.BMP │ ├── 0HOBR14.BMP │ ├── 0HOBR15.BMP │ ├── 0HOBR16.BMP │ ├── 0HOBR17.BMP │ ├── 0HOBR18.BMP │ ├── 0HOBR2.BMP │ ├── 0HOBR3.BMP │ ├── 0HOBR5.BMP │ ├── 0HOBR6.BMP │ ├── 0HOBR7.BMP │ ├── 0HOJEB.BMP │ ├── 0HOKAP.BMP │ ├── 0HPARA.BMP │ ├── 0HPODL3.BMP │ ├── 0HPODL4.BMP │ ├── 0HPODLA.BMP │ ├── 0HPODLA2.BMP │ ├── 0HPOVR01.BMP │ ├── 0HPOVR01_ddn.bmp │ ├── 0HPOVR02.BMP │ ├── 0HPOVR02_ddn.bmp │ ├── 0HPOVR03.BMP │ ├── 0HPOVR04.bmp │ ├── 0HPOVR04_ddn.bmp │ ├── 0HPOVR05.BMP │ ├── 0HRANT3.BMP │ ├── 0HRANTL.BMP │ ├── 0HS02.BMP │ ├── 0HSEDL.BMP │ ├── 0HSLOUP.BMP │ ├── 0HST1.BMP │ ├── 0HST2.BMP │ ├── 0HSTROP.BMP │ ├── 0HSTROP2.BMP │ ├── 0HTRACO.BMP │ ├── 0HVETR.BMP │ ├── 0HWC.BMP │ ├── 0HZED1.BMP │ ├── 0HZED2.BMP │ ├── 0HZED3.bmp │ ├── 0HZED5.BMP │ ├── 0QKOUP.BMP │ ├── 0QSCHOD2.BMP │ ├── 0QSCHOD3.BMP │ ├── 0RPK.BMP │ ├── 0VKANCL2.BMP │ ├── 0VOCH2.BMP │ ├── 0WOKB.BMP │ ├── 0YPRUH.BMP │ ├── 0hhajz.bmp │ ├── 0kr02.bmp │ ├── 0lkulna1.bmp │ ├── 0v1stre.bmp │ ├── 0vplot.bmp │ ├── 0wokb+.bmp │ ├── 11.bmp │ ├── 11_ddn.bmp │ ├── 11_spec.bmp │ ├── 1silnice.bmp │ ├── 2flare1.bmp │ ├── 2flare2.bmp │ ├── 2flare3.bmp │ ├── 2flare4.bmp │ ├── 2flare5.bmp │ ├── 2flare6.bmp │ ├── 2mzalu1.bmp │ ├── 2sun1+.bmp │ ├── 2sun1.bmp │ ├── 2sun2.bmp │ ├── 2tree23.bmp │ ├── 2tree23_ddn.bmp │ ├── 2tree23_spec.bmp │ ├── 4black.bmp │ ├── 9prkna1.bmp │ ├── @HQZALUZ.BMP │ ├── @vrat02.bmp │ ├── SKY 3 1.BMP │ ├── SKY 3 2.BMP │ ├── SKY 3 3.BMP │ ├── SKY 3 4.BMP │ ├── SKY 3 5.BMP │ ├── ^PDCHDV2.BMP │ ├── ^chdnk01.bmp │ ├── ^chdnk01_ddn.bmp │ ├── ^chdnk02.bmp │ ├── ^chdnk02_ddn.bmp │ ├── ^kr6x602.bmp │ ├── ^kr6x602_ddn.bmp │ ├── ^krstr02.bmp │ ├── ^krstr02_ddn.bmp │ ├── ^kura02.bmp │ ├── ^kura02_ddn.bmp │ ├── ^kura02_spec.bmp │ ├── ^obrub01.bmp │ ├── ^sl_4m02.bmp │ ├── ^sl_4m02_ddn.bmp │ ├── ^sl_6m02.bmp │ ├── ^sl_6m02_ddn.bmp │ ├── boz_uv.bmp │ ├── boz_uv_ddn.bmp │ ├── boz_uv_spec.bmp │ ├── bunny00.bmp │ ├── bunny00_ddn.bmp │ ├── bunny00_spec.bmp │ ├── gray.bmp │ ├── pdzka13.bmp │ ├── prkna01.bmp │ ├── prkna02.bmp │ ├── red.bmp │ ├── red_ddn.bmp │ ├── red_spec.bmp │ ├── schod02a.bmp │ ├── schod02b.bmp │ ├── sibenik_kamen.bmp │ ├── sibenik_kamen_ddn.bmp │ ├── sibenik_kamen_spec.bmp │ ├── sibenik_kamen_stup.bmp │ ├── sibenik_kamen_stup_ddn.bmp │ ├── sibenik_kamen_stup_spec.bmp │ ├── sibenik_mramor6x6.bmp │ ├── sibenik_mramor6x6_ddn.bmp │ ├── sibenik_mramor6x6_spec.bmp │ ├── sponza_arch.bmp │ ├── sponza_arch_ddn.bmp │ ├── sponza_arch_spec.bmp │ ├── sponza_background.bmp │ ├── sponza_background_ddn.bmp │ ├── sponza_bricks_a.bmp │ ├── sponza_bricks_a_ddn.bmp │ ├── sponza_bricks_a_spec.bmp │ ├── sponza_ceiling_a.bmp │ ├── sponza_ceiling_a_spec.bmp │ ├── sponza_chain.bmp │ ├── sponza_chain_ddn.bmp │ ├── sponza_column_a.bmp │ ├── sponza_column_a_ddn.bmp │ ├── sponza_column_a_spec.bmp │ ├── sponza_column_b.bmp │ ├── sponza_column_b_ddn.bmp │ ├── sponza_column_b_spec.bmp │ ├── sponza_column_c.bmp │ ├── sponza_column_c_ddn.bmp │ ├── sponza_column_c_spec.bmp │ ├── sponza_curtain.bmp │ ├── sponza_curtain_blue.bmp │ ├── sponza_curtain_green.bmp │ ├── sponza_details.bmp │ ├── sponza_details_ddn.bmp │ ├── sponza_details_spec.bmp │ ├── sponza_fabric.bmp │ ├── sponza_fabric_blue.bmp │ ├── sponza_fabric_green.bmp │ ├── sponza_fabric_spec.bmp │ ├── sponza_flagpole.bmp │ ├── sponza_flagpole_ddn.bmp │ ├── sponza_flagpole_spec.bmp │ ├── sponza_floor_a.bmp │ ├── sponza_floor_a_ddn.bmp │ ├── sponza_floor_a_spec.bmp │ ├── sponza_lion.bmp │ ├── sponza_lion_ddn.bmp │ ├── sponza_roof.bmp │ ├── sponza_thorn.bmp │ ├── sponza_thorn_ddn.bmp │ ├── sponza_thorn_spec.bmp │ ├── sponza_vase.bmp │ ├── sponza_vase_ddn.bmp │ ├── sponza_vase_hanging.bmp │ ├── sponza_vase_hanging_ddn.bmp │ ├── sponza_vase_hanging_spec.bmp │ ├── sponza_vase_plant.bmp │ ├── sponza_vase_plant_spec.bmp │ ├── sponza_vase_round.bmp │ ├── sponza_vase_round_ddn.bmp │ ├── sponza_vase_round_spec.bmp │ ├── strech10.bmp │ └── white.bmp ├── models │ ├── bunny00.4ds │ ├── cube00.4ds │ ├── denjasno2.4ds │ ├── motel.4ds │ ├── scene.4ds │ ├── sibenik.4ds │ ├── sphere00.4ds │ ├── sphere01.4ds │ ├── sponza.4ds │ ├── test00.4ds │ ├── tree00.4ds │ ├── white_box.4ds │ └── white_interier.4ds └── shaders │ ├── basic.fs │ ├── basic.vs │ ├── color.fs │ ├── color.vs │ ├── depth.fs │ ├── depth.vs │ ├── geometry.fs │ ├── geometry.vs │ ├── illumination.fs │ ├── illumination.vs │ ├── lpvClear.cs │ ├── lpvClear.fs │ ├── lpvClear.gs │ ├── lpvClear.vs │ ├── lpvInjection.cs │ ├── lpvInjection.fs │ ├── lpvInjection.gs │ ├── lpvInjection.vs │ ├── lpvInjection_uint.cs │ ├── lpvPropagation.cs │ ├── lpvPropagation.fs │ ├── lpvPropagation.gs │ ├── lpvPropagation.vs │ ├── lpvPropagation_uint.cs │ └── sunRays.fs ├── include ├── GL │ ├── glew.h │ ├── glxew.h │ └── wglew.h ├── SDL2 │ ├── SDL.h │ ├── SDL_assert.h │ ├── SDL_atomic.h │ ├── SDL_audio.h │ ├── SDL_bits.h │ ├── SDL_blendmode.h │ ├── SDL_clipboard.h │ ├── SDL_config.h │ ├── SDL_cpuinfo.h │ ├── SDL_endian.h │ ├── SDL_error.h │ ├── SDL_events.h │ ├── SDL_filesystem.h │ ├── SDL_gamecontroller.h │ ├── SDL_gesture.h │ ├── SDL_haptic.h │ ├── SDL_hints.h │ ├── SDL_image.h │ ├── SDL_joystick.h │ ├── SDL_keyboard.h │ ├── SDL_keycode.h │ ├── SDL_loadso.h │ ├── SDL_log.h │ ├── SDL_main.h │ ├── SDL_messagebox.h │ ├── SDL_mouse.h │ ├── SDL_mutex.h │ ├── SDL_name.h │ ├── SDL_opengl.h │ ├── SDL_opengles.h │ ├── SDL_opengles2.h │ ├── SDL_pixels.h │ ├── SDL_platform.h │ ├── SDL_power.h │ ├── SDL_quit.h │ ├── SDL_rect.h │ ├── SDL_render.h │ ├── SDL_revision.h │ ├── SDL_rwops.h │ ├── SDL_scancode.h │ ├── SDL_shape.h │ ├── SDL_stdinc.h │ ├── SDL_surface.h │ ├── SDL_system.h │ ├── SDL_syswm.h │ ├── SDL_test.h │ ├── SDL_test_assert.h │ ├── SDL_test_common.h │ ├── SDL_test_compare.h │ ├── SDL_test_crc32.h │ ├── SDL_test_font.h │ ├── SDL_test_fuzzer.h │ ├── SDL_test_harness.h │ ├── SDL_test_images.h │ ├── SDL_test_log.h │ ├── SDL_test_md5.h │ ├── SDL_test_random.h │ ├── SDL_thread.h │ ├── SDL_timer.h │ ├── SDL_touch.h │ ├── SDL_types.h │ ├── SDL_version.h │ ├── SDL_video.h │ ├── begin_code.h │ └── close_code.h └── glm │ ├── common.hpp │ ├── detail │ ├── _features.hpp │ ├── _fixes.hpp │ ├── _noise.hpp │ ├── _swizzle.hpp │ ├── _swizzle_func.hpp │ ├── _vectorize.hpp │ ├── dummy.cpp │ ├── func_common.hpp │ ├── func_common.inl │ ├── func_exponential.hpp │ ├── func_exponential.inl │ ├── func_geometric.hpp │ ├── func_geometric.inl │ ├── func_integer.hpp │ ├── func_integer.inl │ ├── func_matrix.hpp │ ├── func_matrix.inl │ ├── func_packing.hpp │ ├── func_packing.inl │ ├── func_trigonometric.hpp │ ├── func_trigonometric.inl │ ├── func_vector_relational.hpp │ ├── func_vector_relational.inl │ ├── glm.cpp │ ├── intrinsic_common.hpp │ ├── intrinsic_common.inl │ ├── intrinsic_exponential.hpp │ ├── intrinsic_exponential.inl │ ├── intrinsic_geometric.hpp │ ├── intrinsic_geometric.inl │ ├── intrinsic_integer.hpp │ ├── intrinsic_integer.inl │ ├── intrinsic_matrix.hpp │ ├── intrinsic_matrix.inl │ ├── intrinsic_trigonometric.hpp │ ├── intrinsic_trigonometric.inl │ ├── intrinsic_vector_relational.hpp │ ├── intrinsic_vector_relational.inl │ ├── precision.hpp │ ├── setup.hpp │ ├── type_float.hpp │ ├── type_gentype.hpp │ ├── type_gentype.inl │ ├── type_half.hpp │ ├── type_half.inl │ ├── type_int.hpp │ ├── type_mat.hpp │ ├── type_mat.inl │ ├── type_mat2x2.hpp │ ├── type_mat2x2.inl │ ├── type_mat2x3.hpp │ ├── type_mat2x3.inl │ ├── type_mat2x4.hpp │ ├── type_mat2x4.inl │ ├── type_mat3x2.hpp │ ├── type_mat3x2.inl │ ├── type_mat3x3.hpp │ ├── type_mat3x3.inl │ ├── type_mat3x4.hpp │ ├── type_mat3x4.inl │ ├── type_mat4x2.hpp │ ├── type_mat4x2.inl │ ├── type_mat4x3.hpp │ ├── type_mat4x3.inl │ ├── type_mat4x4.hpp │ ├── type_mat4x4.inl │ ├── type_vec.hpp │ ├── type_vec.inl │ ├── type_vec1.hpp │ ├── type_vec1.inl │ ├── type_vec2.hpp │ ├── type_vec2.inl │ ├── type_vec3.hpp │ ├── type_vec3.inl │ ├── type_vec4.hpp │ ├── type_vec4.inl │ ├── type_vec4_avx.inl │ ├── type_vec4_avx2.inl │ └── type_vec4_sse2.inl │ ├── exponential.hpp │ ├── ext.hpp │ ├── fwd.hpp │ ├── geometric.hpp │ ├── glm.hpp │ ├── gtc │ ├── bitfield.hpp │ ├── bitfield.inl │ ├── color_space.hpp │ ├── color_space.inl │ ├── constants.hpp │ ├── constants.inl │ ├── epsilon.hpp │ ├── epsilon.inl │ ├── integer.hpp │ ├── integer.inl │ ├── matrix_access.hpp │ ├── matrix_access.inl │ ├── matrix_integer.hpp │ ├── matrix_inverse.hpp │ ├── matrix_inverse.inl │ ├── matrix_transform.hpp │ ├── matrix_transform.inl │ ├── noise.hpp │ ├── noise.inl │ ├── packing.hpp │ ├── packing.inl │ ├── quaternion.hpp │ ├── quaternion.inl │ ├── random.hpp │ ├── random.inl │ ├── reciprocal.hpp │ ├── reciprocal.inl │ ├── round.hpp │ ├── round.inl │ ├── type_precision.hpp │ ├── type_precision.inl │ ├── type_ptr.hpp │ ├── type_ptr.inl │ ├── ulp.hpp │ ├── ulp.inl │ ├── vec1.hpp │ └── vec1.inl │ ├── gtx │ ├── associated_min_max.hpp │ ├── associated_min_max.inl │ ├── bit.hpp │ ├── bit.inl │ ├── closest_point.hpp │ ├── closest_point.inl │ ├── color_space.hpp │ ├── color_space.inl │ ├── color_space_YCoCg.hpp │ ├── color_space_YCoCg.inl │ ├── common.hpp │ ├── common.inl │ ├── compatibility.hpp │ ├── compatibility.inl │ ├── component_wise.hpp │ ├── component_wise.inl │ ├── dual_quaternion.hpp │ ├── dual_quaternion.inl │ ├── euler_angles.hpp │ ├── euler_angles.inl │ ├── extend.hpp │ ├── extend.inl │ ├── extented_min_max.hpp │ ├── extented_min_max.inl │ ├── fast_exponential.hpp │ ├── fast_exponential.inl │ ├── fast_square_root.hpp │ ├── fast_square_root.inl │ ├── fast_trigonometry.hpp │ ├── fast_trigonometry.inl │ ├── gradient_paint.hpp │ ├── gradient_paint.inl │ ├── handed_coordinate_space.hpp │ ├── handed_coordinate_space.inl │ ├── hash.hpp │ ├── hash.inl │ ├── integer.hpp │ ├── integer.inl │ ├── intersect.hpp │ ├── intersect.inl │ ├── io.hpp │ ├── io.inl │ ├── log_base.hpp │ ├── log_base.inl │ ├── matrix_cross_product.hpp │ ├── matrix_cross_product.inl │ ├── matrix_decompose.hpp │ ├── matrix_decompose.inl │ ├── matrix_interpolation.hpp │ ├── matrix_interpolation.inl │ ├── matrix_major_storage.hpp │ ├── matrix_major_storage.inl │ ├── matrix_operation.hpp │ ├── matrix_operation.inl │ ├── matrix_query.hpp │ ├── matrix_query.inl │ ├── matrix_transform_2d.hpp │ ├── matrix_transform_2d.inl │ ├── mixed_product.hpp │ ├── mixed_product.inl │ ├── norm.hpp │ ├── norm.inl │ ├── normal.hpp │ ├── normal.inl │ ├── normalize_dot.hpp │ ├── normalize_dot.inl │ ├── number_precision.hpp │ ├── number_precision.inl │ ├── optimum_pow.hpp │ ├── optimum_pow.inl │ ├── orthonormalize.hpp │ ├── orthonormalize.inl │ ├── perpendicular.hpp │ ├── perpendicular.inl │ ├── polar_coordinates.hpp │ ├── polar_coordinates.inl │ ├── projection.hpp │ ├── projection.inl │ ├── quaternion.hpp │ ├── quaternion.inl │ ├── range.hpp │ ├── raw_data.hpp │ ├── raw_data.inl │ ├── rotate_normalized_axis.hpp │ ├── rotate_normalized_axis.inl │ ├── rotate_vector.hpp │ ├── rotate_vector.inl │ ├── scalar_multiplication.hpp │ ├── scalar_relational.hpp │ ├── scalar_relational.inl │ ├── simd_mat4.hpp │ ├── simd_mat4.inl │ ├── simd_quat.hpp │ ├── simd_quat.inl │ ├── simd_vec4.hpp │ ├── simd_vec4.inl │ ├── spline.hpp │ ├── spline.inl │ ├── std_based_type.hpp │ ├── std_based_type.inl │ ├── string_cast.hpp │ ├── string_cast.inl │ ├── transform.hpp │ ├── transform.inl │ ├── transform2.hpp │ ├── transform2.inl │ ├── type_aligned.hpp │ ├── type_aligned.inl │ ├── vector_angle.hpp │ ├── vector_angle.inl │ ├── vector_query.hpp │ ├── vector_query.inl │ ├── wrap.hpp │ └── wrap.inl │ ├── integer.hpp │ ├── mat2x2.hpp │ ├── mat2x3.hpp │ ├── mat2x4.hpp │ ├── mat3x2.hpp │ ├── mat3x3.hpp │ ├── mat3x4.hpp │ ├── mat4x2.hpp │ ├── mat4x3.hpp │ ├── mat4x4.hpp │ ├── matrix.hpp │ ├── packing.hpp │ ├── trigonometric.hpp │ ├── vec2.hpp │ ├── vec3.hpp │ ├── vec4.hpp │ └── vector_relational.hpp ├── lib ├── libSDL2.a ├── libSDL2.dll.a ├── libSDL2_image.a ├── libSDL2_image.dll.a ├── libglew32.a ├── libglew32.dll.a ├── mingw_4.8.1 │ ├── libglew32.a │ └── libglew32.dll.a └── msvc │ ├── SDL2.lib │ ├── SDL2_image.lib │ ├── SDL2main.lib │ ├── SDL2test.lib │ ├── glew32.lib │ └── glew32s.lib ├── sln ├── LightPropagationVolumes.sln ├── LightPropagationVolumes.vcxproj └── LightPropagationVolumes.vcxproj.filters ├── src ├── camera.h ├── context.h ├── culling.h ├── engine.cpp ├── engine.h ├── exceptions.h ├── filesystem.cpp ├── filesystem.h ├── framebuffers.cpp ├── framebuffers.h ├── headers │ ├── cameraTypes.h │ ├── cullingTypes.h │ ├── engineTypes.h │ ├── exceptionTypes.h │ ├── fileTypes.h │ ├── mapTypes.h │ ├── math.h │ ├── modelTypes.h │ ├── openGLTypes.h │ ├── rendererTypes.h │ ├── sceneTypes.h │ ├── shaderTypes.h │ ├── stringTypes.h │ └── types.h ├── main.cpp ├── maps.cpp ├── maps.h ├── matrix.h ├── models.cpp ├── models.h ├── openGL.cpp ├── openGL.h ├── pickColor.h ├── renderer.cpp ├── renderer.h ├── scenes.cpp ├── scenes.h ├── shaders.cpp ├── shaders.h ├── string.h ├── vector.h ├── window.cpp └── window.h ├── tools └── glcorearb │ ├── .vs │ └── glcorearb │ │ └── v14 │ │ └── .suo │ ├── gl_out.txt │ ├── gl_out_comp.txt │ ├── glc.h │ ├── glcorearb.exe │ ├── glcorearb.sln │ ├── glcorearb.vcxproj │ ├── glcorearb.vcxproj.filters │ ├── glh.h │ └── src │ ├── gl.h │ ├── gl.txt │ ├── gl_10_11_all.txt │ ├── glcorearb.cpp │ ├── glcorearb.h │ ├── glext.h │ └── out.h └── ui └── mainWindow.ui /.gitignore: -------------------------------------------------------------------------------- 1 | obj/*.o 2 | build/Makefile* 3 | build/*.cpp 4 | build/*.h 5 | build/*.o 6 | build/*/*.cpp 7 | build/*/*.h 8 | build/*/*.o 9 | sln/.vs 10 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | CC = g++ 2 | CCVER = -std=c++0x 3 | TARGETNAME = LightPropagationVolumes 4 | ENVIRONMENT = -D ENV_SDL 5 | 6 | ifeq ($(OS), Windows_NT) 7 | CCFLAGS = 8 | LDFLAGS = -static-libgcc -static-libstdc++ -mwindows -Wl,-Bstatic -lstdc++ -lpthread -Wl,-Bdynamic 9 | LIBS = -lopengl32 -lSDL2 -lSDL2_image 10 | RM = del /S 11 | RUN = 12 | else 13 | CCFLAGS = 14 | LDFLAGS = 15 | LIBS = -lGL -lX11 -lSDL2 -lSDL2_image 16 | RM = rm -f 17 | RUN = ./ 18 | endif 19 | 20 | CFLAGS = -pedantic -Wall -Wextra -Wdouble-promotion -Wunreachable-code -O3 $(CCVER) $(CCFLAGS) $(ENVIRONMENT) -c 21 | 22 | SRC = main.cpp engine.cpp window.cpp scenes.cpp models.cpp renderer.cpp shaders.cpp framebuffers.cpp maps.cpp openGL.cpp filesystem.cpp 23 | OBJ = $(SRC:.cpp=.o) 24 | SOURCES = $(addprefix src/, $(SRC)) 25 | OBJECTS = $(addprefix obj/, $(OBJ)) 26 | TARGET = bin/$(TARGETNAME).exe 27 | 28 | all: $(SOURCES) $(TARGET) 29 | 30 | $(TARGET): $(OBJECTS) 31 | $(CC) $^ -o $@ $(LDFLAGS) $(LIBS) 32 | 33 | obj/%.o: src/%.cpp 34 | $(CC) $(CFLAGS) $< -o $@ 35 | 36 | clean: 37 | $(RM) *.o stdout.txt stderr.txt 38 | 39 | run: 40 | $(RUN)$(TARGET) 41 | 42 | make-run: $(SOURCES) $(TARGET) 43 | $(RUN)$(TARGET) -------------------------------------------------------------------------------- /bin/LightPropagationVolumes.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/LightPropagationVolumes.exe -------------------------------------------------------------------------------- /bin/LightPropagationVolumes_SDL_No_Gui.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/LightPropagationVolumes_SDL_No_Gui.exe -------------------------------------------------------------------------------- /bin/SDL2.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/SDL2.dll -------------------------------------------------------------------------------- /bin/SDL2_image.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/SDL2_image.dll -------------------------------------------------------------------------------- /bin/glew32.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/glew32.dll -------------------------------------------------------------------------------- /bin/libjpeg-9.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/libjpeg-9.dll -------------------------------------------------------------------------------- /bin/libpng16-16.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/libpng16-16.dll -------------------------------------------------------------------------------- /bin/mingw_4.8.1/glew32.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/mingw_4.8.1/glew32.dll -------------------------------------------------------------------------------- /bin/msvc/SDL2.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/msvc/SDL2.dll -------------------------------------------------------------------------------- /bin/msvc/SDL2_image.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/msvc/SDL2_image.dll -------------------------------------------------------------------------------- /bin/msvc/glew32.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/msvc/glew32.dll -------------------------------------------------------------------------------- /bin/msvc/libjpeg-9.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/msvc/libjpeg-9.dll -------------------------------------------------------------------------------- /bin/msvc/libpng16-16.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/msvc/libpng16-16.dll -------------------------------------------------------------------------------- /bin/msvc/zlib1.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/msvc/zlib1.dll -------------------------------------------------------------------------------- /bin/zlib1.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/bin/zlib1.dll -------------------------------------------------------------------------------- /data/maps/00HADR07.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/00HADR07.BMP -------------------------------------------------------------------------------- /data/maps/00KOB01.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/00KOB01.BMP -------------------------------------------------------------------------------- /data/maps/0BDREVO.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0BDREVO.BMP -------------------------------------------------------------------------------- /data/maps/0BZLATO2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0BZLATO2.BMP -------------------------------------------------------------------------------- /data/maps/0HBAR.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HBAR.BMP -------------------------------------------------------------------------------- /data/maps/0HBAR1.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HBAR1.BMP -------------------------------------------------------------------------------- /data/maps/0HBAR2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HBAR2.BMP -------------------------------------------------------------------------------- /data/maps/0HBAR3.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HBAR3.BMP -------------------------------------------------------------------------------- /data/maps/0HCE.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HCE.BMP -------------------------------------------------------------------------------- /data/maps/0HCE1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HCE1.bmp -------------------------------------------------------------------------------- /data/maps/0HCE2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HCE2.BMP -------------------------------------------------------------------------------- /data/maps/0HCEDUL.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HCEDUL.BMP -------------------------------------------------------------------------------- /data/maps/0HDREVO1.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HDREVO1.BMP -------------------------------------------------------------------------------- /data/maps/0HDVER1.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HDVER1.BMP -------------------------------------------------------------------------------- /data/maps/0HDVER2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HDVER2.BMP -------------------------------------------------------------------------------- /data/maps/0HDVER3.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HDVER3.BMP -------------------------------------------------------------------------------- /data/maps/0HDVERE.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HDVERE.BMP -------------------------------------------------------------------------------- /data/maps/0HEX.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HEX.BMP -------------------------------------------------------------------------------- /data/maps/0HEX1.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HEX1.BMP -------------------------------------------------------------------------------- /data/maps/0HKOB2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HKOB2.BMP -------------------------------------------------------------------------------- /data/maps/0HKUCH1.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HKUCH1.BMP -------------------------------------------------------------------------------- /data/maps/0HKUPEL.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HKUPEL.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR0.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR0.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR1.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR1.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR10.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR10.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR11.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR11.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR12.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR12.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR13.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR13.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR14.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR14.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR15.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR15.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR16.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR16.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR17.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR17.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR18.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR18.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR2.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR3.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR3.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR5.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR5.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR6.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR6.BMP -------------------------------------------------------------------------------- /data/maps/0HOBR7.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOBR7.BMP -------------------------------------------------------------------------------- /data/maps/0HOJEB.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOJEB.BMP -------------------------------------------------------------------------------- /data/maps/0HOKAP.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HOKAP.BMP -------------------------------------------------------------------------------- /data/maps/0HPARA.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPARA.BMP -------------------------------------------------------------------------------- /data/maps/0HPODL3.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPODL3.BMP -------------------------------------------------------------------------------- /data/maps/0HPODL4.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPODL4.BMP -------------------------------------------------------------------------------- /data/maps/0HPODLA.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPODLA.BMP -------------------------------------------------------------------------------- /data/maps/0HPODLA2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPODLA2.BMP -------------------------------------------------------------------------------- /data/maps/0HPOVR01.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPOVR01.BMP -------------------------------------------------------------------------------- /data/maps/0HPOVR01_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPOVR01_ddn.bmp -------------------------------------------------------------------------------- /data/maps/0HPOVR02.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPOVR02.BMP -------------------------------------------------------------------------------- /data/maps/0HPOVR02_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPOVR02_ddn.bmp -------------------------------------------------------------------------------- /data/maps/0HPOVR03.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPOVR03.BMP -------------------------------------------------------------------------------- /data/maps/0HPOVR04.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPOVR04.bmp -------------------------------------------------------------------------------- /data/maps/0HPOVR04_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPOVR04_ddn.bmp -------------------------------------------------------------------------------- /data/maps/0HPOVR05.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HPOVR05.BMP -------------------------------------------------------------------------------- /data/maps/0HRANT3.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HRANT3.BMP -------------------------------------------------------------------------------- /data/maps/0HRANTL.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HRANTL.BMP -------------------------------------------------------------------------------- /data/maps/0HS02.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HS02.BMP -------------------------------------------------------------------------------- /data/maps/0HSEDL.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HSEDL.BMP -------------------------------------------------------------------------------- /data/maps/0HSLOUP.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HSLOUP.BMP -------------------------------------------------------------------------------- /data/maps/0HST1.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HST1.BMP -------------------------------------------------------------------------------- /data/maps/0HST2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HST2.BMP -------------------------------------------------------------------------------- /data/maps/0HSTROP.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HSTROP.BMP -------------------------------------------------------------------------------- /data/maps/0HSTROP2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HSTROP2.BMP -------------------------------------------------------------------------------- /data/maps/0HTRACO.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HTRACO.BMP -------------------------------------------------------------------------------- /data/maps/0HVETR.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HVETR.BMP -------------------------------------------------------------------------------- /data/maps/0HWC.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HWC.BMP -------------------------------------------------------------------------------- /data/maps/0HZED1.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HZED1.BMP -------------------------------------------------------------------------------- /data/maps/0HZED2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HZED2.BMP -------------------------------------------------------------------------------- /data/maps/0HZED3.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HZED3.bmp -------------------------------------------------------------------------------- /data/maps/0HZED5.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0HZED5.BMP -------------------------------------------------------------------------------- /data/maps/0QKOUP.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0QKOUP.BMP -------------------------------------------------------------------------------- /data/maps/0QSCHOD2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0QSCHOD2.BMP -------------------------------------------------------------------------------- /data/maps/0QSCHOD3.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0QSCHOD3.BMP -------------------------------------------------------------------------------- /data/maps/0RPK.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0RPK.BMP -------------------------------------------------------------------------------- /data/maps/0VKANCL2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0VKANCL2.BMP -------------------------------------------------------------------------------- /data/maps/0VOCH2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0VOCH2.BMP -------------------------------------------------------------------------------- /data/maps/0WOKB.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0WOKB.BMP -------------------------------------------------------------------------------- /data/maps/0YPRUH.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0YPRUH.BMP -------------------------------------------------------------------------------- /data/maps/0hhajz.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0hhajz.bmp -------------------------------------------------------------------------------- /data/maps/0kr02.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0kr02.bmp -------------------------------------------------------------------------------- /data/maps/0lkulna1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0lkulna1.bmp -------------------------------------------------------------------------------- /data/maps/0v1stre.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0v1stre.bmp -------------------------------------------------------------------------------- /data/maps/0vplot.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0vplot.bmp -------------------------------------------------------------------------------- /data/maps/0wokb+.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/0wokb+.bmp -------------------------------------------------------------------------------- /data/maps/11.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/11.bmp -------------------------------------------------------------------------------- /data/maps/11_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/11_ddn.bmp -------------------------------------------------------------------------------- /data/maps/11_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/11_spec.bmp -------------------------------------------------------------------------------- /data/maps/1silnice.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/1silnice.bmp -------------------------------------------------------------------------------- /data/maps/2flare1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/2flare1.bmp -------------------------------------------------------------------------------- /data/maps/2flare3.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/2flare3.bmp -------------------------------------------------------------------------------- /data/maps/2flare4.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/2flare4.bmp -------------------------------------------------------------------------------- /data/maps/2flare5.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/2flare5.bmp -------------------------------------------------------------------------------- /data/maps/2flare6.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/2flare6.bmp -------------------------------------------------------------------------------- /data/maps/2mzalu1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/2mzalu1.bmp -------------------------------------------------------------------------------- /data/maps/2sun1+.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/2sun1+.bmp -------------------------------------------------------------------------------- /data/maps/2sun1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/2sun1.bmp -------------------------------------------------------------------------------- /data/maps/2sun2.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/2sun2.bmp -------------------------------------------------------------------------------- /data/maps/2tree23.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/2tree23.bmp -------------------------------------------------------------------------------- /data/maps/2tree23_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/2tree23_ddn.bmp -------------------------------------------------------------------------------- /data/maps/2tree23_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/2tree23_spec.bmp -------------------------------------------------------------------------------- /data/maps/4black.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/4black.bmp -------------------------------------------------------------------------------- /data/maps/9prkna1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/9prkna1.bmp -------------------------------------------------------------------------------- /data/maps/@HQZALUZ.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/@HQZALUZ.BMP -------------------------------------------------------------------------------- /data/maps/@vrat02.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/@vrat02.bmp -------------------------------------------------------------------------------- /data/maps/SKY 3 1.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/SKY 3 1.BMP -------------------------------------------------------------------------------- /data/maps/SKY 3 2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/SKY 3 2.BMP -------------------------------------------------------------------------------- /data/maps/SKY 3 3.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/SKY 3 3.BMP -------------------------------------------------------------------------------- /data/maps/SKY 3 4.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/SKY 3 4.BMP -------------------------------------------------------------------------------- /data/maps/SKY 3 5.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/SKY 3 5.BMP -------------------------------------------------------------------------------- /data/maps/^PDCHDV2.BMP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^PDCHDV2.BMP -------------------------------------------------------------------------------- /data/maps/^chdnk01.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^chdnk01.bmp -------------------------------------------------------------------------------- /data/maps/^chdnk01_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^chdnk01_ddn.bmp -------------------------------------------------------------------------------- /data/maps/^chdnk02.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^chdnk02.bmp -------------------------------------------------------------------------------- /data/maps/^chdnk02_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^chdnk02_ddn.bmp -------------------------------------------------------------------------------- /data/maps/^kr6x602.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^kr6x602.bmp -------------------------------------------------------------------------------- /data/maps/^kr6x602_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^kr6x602_ddn.bmp -------------------------------------------------------------------------------- /data/maps/^krstr02.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^krstr02.bmp -------------------------------------------------------------------------------- /data/maps/^krstr02_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^krstr02_ddn.bmp -------------------------------------------------------------------------------- /data/maps/^kura02.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^kura02.bmp -------------------------------------------------------------------------------- /data/maps/^kura02_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^kura02_ddn.bmp -------------------------------------------------------------------------------- /data/maps/^kura02_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^kura02_spec.bmp -------------------------------------------------------------------------------- /data/maps/^obrub01.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^obrub01.bmp -------------------------------------------------------------------------------- /data/maps/^sl_4m02.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^sl_4m02.bmp -------------------------------------------------------------------------------- /data/maps/^sl_4m02_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^sl_4m02_ddn.bmp -------------------------------------------------------------------------------- /data/maps/^sl_6m02.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^sl_6m02.bmp -------------------------------------------------------------------------------- /data/maps/^sl_6m02_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/^sl_6m02_ddn.bmp -------------------------------------------------------------------------------- /data/maps/boz_uv.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/boz_uv.bmp -------------------------------------------------------------------------------- /data/maps/boz_uv_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/boz_uv_ddn.bmp -------------------------------------------------------------------------------- /data/maps/boz_uv_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/boz_uv_spec.bmp -------------------------------------------------------------------------------- /data/maps/bunny00.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/bunny00.bmp -------------------------------------------------------------------------------- /data/maps/bunny00_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/bunny00_ddn.bmp -------------------------------------------------------------------------------- /data/maps/bunny00_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/bunny00_spec.bmp -------------------------------------------------------------------------------- /data/maps/gray.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/gray.bmp -------------------------------------------------------------------------------- /data/maps/pdzka13.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/pdzka13.bmp -------------------------------------------------------------------------------- /data/maps/prkna01.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/prkna01.bmp -------------------------------------------------------------------------------- /data/maps/prkna02.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/prkna02.bmp -------------------------------------------------------------------------------- /data/maps/red.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/red.bmp -------------------------------------------------------------------------------- /data/maps/red_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/red_ddn.bmp -------------------------------------------------------------------------------- /data/maps/red_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/red_spec.bmp -------------------------------------------------------------------------------- /data/maps/schod02a.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/schod02a.bmp -------------------------------------------------------------------------------- /data/maps/schod02b.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/schod02b.bmp -------------------------------------------------------------------------------- /data/maps/sibenik_kamen.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sibenik_kamen.bmp -------------------------------------------------------------------------------- /data/maps/sibenik_kamen_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sibenik_kamen_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sibenik_kamen_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sibenik_kamen_spec.bmp -------------------------------------------------------------------------------- /data/maps/sibenik_kamen_stup.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sibenik_kamen_stup.bmp -------------------------------------------------------------------------------- /data/maps/sibenik_kamen_stup_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sibenik_kamen_stup_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sibenik_kamen_stup_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sibenik_kamen_stup_spec.bmp -------------------------------------------------------------------------------- /data/maps/sibenik_mramor6x6.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sibenik_mramor6x6.bmp -------------------------------------------------------------------------------- /data/maps/sibenik_mramor6x6_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sibenik_mramor6x6_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sibenik_mramor6x6_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sibenik_mramor6x6_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_arch.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_arch.bmp -------------------------------------------------------------------------------- /data/maps/sponza_arch_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_arch_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_arch_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_arch_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_background.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_background.bmp -------------------------------------------------------------------------------- /data/maps/sponza_background_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_background_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_bricks_a.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_bricks_a.bmp -------------------------------------------------------------------------------- /data/maps/sponza_bricks_a_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_bricks_a_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_bricks_a_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_bricks_a_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_ceiling_a.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_ceiling_a.bmp -------------------------------------------------------------------------------- /data/maps/sponza_ceiling_a_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_ceiling_a_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_chain.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_chain.bmp -------------------------------------------------------------------------------- /data/maps/sponza_chain_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_chain_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_column_a.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_column_a.bmp -------------------------------------------------------------------------------- /data/maps/sponza_column_a_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_column_a_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_column_a_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_column_a_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_column_b.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_column_b.bmp -------------------------------------------------------------------------------- /data/maps/sponza_column_b_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_column_b_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_column_b_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_column_b_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_column_c.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_column_c.bmp -------------------------------------------------------------------------------- /data/maps/sponza_column_c_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_column_c_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_column_c_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_column_c_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_curtain.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_curtain.bmp -------------------------------------------------------------------------------- /data/maps/sponza_curtain_blue.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_curtain_blue.bmp -------------------------------------------------------------------------------- /data/maps/sponza_curtain_green.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_curtain_green.bmp -------------------------------------------------------------------------------- /data/maps/sponza_details.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_details.bmp -------------------------------------------------------------------------------- /data/maps/sponza_details_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_details_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_details_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_details_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_fabric.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_fabric.bmp -------------------------------------------------------------------------------- /data/maps/sponza_fabric_blue.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_fabric_blue.bmp -------------------------------------------------------------------------------- /data/maps/sponza_fabric_green.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_fabric_green.bmp -------------------------------------------------------------------------------- /data/maps/sponza_fabric_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_fabric_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_flagpole.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_flagpole.bmp -------------------------------------------------------------------------------- /data/maps/sponza_flagpole_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_flagpole_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_flagpole_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_flagpole_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_floor_a.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_floor_a.bmp -------------------------------------------------------------------------------- /data/maps/sponza_floor_a_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_floor_a_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_floor_a_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_floor_a_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_lion.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_lion.bmp -------------------------------------------------------------------------------- /data/maps/sponza_lion_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_lion_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_roof.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_roof.bmp -------------------------------------------------------------------------------- /data/maps/sponza_thorn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_thorn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_thorn_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_thorn_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_thorn_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_thorn_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_vase.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_vase.bmp -------------------------------------------------------------------------------- /data/maps/sponza_vase_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_vase_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_vase_hanging.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_vase_hanging.bmp -------------------------------------------------------------------------------- /data/maps/sponza_vase_hanging_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_vase_hanging_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_vase_hanging_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_vase_hanging_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_vase_plant.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_vase_plant.bmp -------------------------------------------------------------------------------- /data/maps/sponza_vase_plant_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_vase_plant_spec.bmp -------------------------------------------------------------------------------- /data/maps/sponza_vase_round.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_vase_round.bmp -------------------------------------------------------------------------------- /data/maps/sponza_vase_round_ddn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_vase_round_ddn.bmp -------------------------------------------------------------------------------- /data/maps/sponza_vase_round_spec.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/sponza_vase_round_spec.bmp -------------------------------------------------------------------------------- /data/maps/strech10.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/strech10.bmp -------------------------------------------------------------------------------- /data/maps/white.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/maps/white.bmp -------------------------------------------------------------------------------- /data/models/bunny00.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/bunny00.4ds -------------------------------------------------------------------------------- /data/models/cube00.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/cube00.4ds -------------------------------------------------------------------------------- /data/models/denjasno2.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/denjasno2.4ds -------------------------------------------------------------------------------- /data/models/motel.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/motel.4ds -------------------------------------------------------------------------------- /data/models/scene.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/scene.4ds -------------------------------------------------------------------------------- /data/models/sibenik.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/sibenik.4ds -------------------------------------------------------------------------------- /data/models/sphere00.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/sphere00.4ds -------------------------------------------------------------------------------- /data/models/sphere01.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/sphere01.4ds -------------------------------------------------------------------------------- /data/models/sponza.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/sponza.4ds -------------------------------------------------------------------------------- /data/models/test00.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/test00.4ds -------------------------------------------------------------------------------- /data/models/tree00.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/tree00.4ds -------------------------------------------------------------------------------- /data/models/white_box.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/white_box.4ds -------------------------------------------------------------------------------- /data/models/white_interier.4ds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/data/models/white_interier.4ds -------------------------------------------------------------------------------- /data/shaders/basic.fs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | in vec2 texCoord; 5 | in vec4 color; 6 | 7 | #if defined(DIF_2D_ARRAY) 8 | uniform sampler2DArray difTex; 9 | #elif defined(DIF_3D) 10 | uniform sampler3D difTex; 11 | #else 12 | uniform sampler2D difTex; 13 | #endif 14 | #ifdef ALP_TEX 15 | uniform sampler2D alpTex; 16 | #endif 17 | 18 | #if defined(DIF_2D_ARRAY) || defined(DIF_3D) || defined(ALP_TEX) 19 | uniform float opacity; 20 | #endif 21 | 22 | out vec4 glFragColor; 23 | 24 | void main() 25 | { 26 | #ifndef ALP_TEX 27 | float alpha = 1.0; 28 | #else 29 | vec3 fragAlp = texture(alpTex, texCoord).rgb; 30 | float alpha = color.a * (fragAlp.r + fragAlp.g + fragAlp.b) * 0.3333333334 * opacity; 31 | 32 | if(alpha == 0.0) 33 | discard; 34 | #endif 35 | 36 | #if defined(DIF_2D_ARRAY) || defined(DIF_3D) 37 | vec3 t = vec3(texCoord, opacity); 38 | #else 39 | vec2 t = texCoord; 40 | #endif 41 | 42 | glFragColor = vec4(texture(difTex, t).rgb * color.rgb, alpha); 43 | } 44 | -------------------------------------------------------------------------------- /data/shaders/basic.vs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | in vec3 _vertexPosition; 5 | in vec2 _vertexTexCoord; 6 | in vec4 _vertexColor; 7 | 8 | uniform mat4 mvp; 9 | 10 | out vec2 texCoord; 11 | out vec4 color; 12 | 13 | void main() 14 | { 15 | texCoord = _vertexTexCoord; 16 | color = _vertexColor; 17 | gl_Position = mvp * vec4(_vertexPosition, 1.0); 18 | } 19 | -------------------------------------------------------------------------------- /data/shaders/color.fs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | #ifdef DIF_TEX 5 | in vec2 texCoord; 6 | 7 | uniform sampler2D difTex; 8 | #endif 9 | 10 | uniform vec3 lightAmb; 11 | 12 | out vec4 glFragColor; 13 | 14 | void main() 15 | { 16 | #ifdef DIF_TEX 17 | if(texture(difTex, texCoord).a < 0.8) 18 | discard; 19 | #endif 20 | 21 | glFragColor = vec4(lightAmb, 1.0); 22 | } 23 | -------------------------------------------------------------------------------- /data/shaders/color.vs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | in vec3 _vertexPosition; 5 | #ifdef DIF_TEX 6 | in vec2 _vertexTexCoord; 7 | #endif 8 | 9 | uniform mat4 mvp; 10 | 11 | #ifdef DIF_TEX 12 | out vec2 texCoord; 13 | #endif 14 | 15 | void main() 16 | { 17 | #ifdef DIF_TEX 18 | texCoord = _vertexTexCoord; 19 | #endif 20 | 21 | gl_Position = mvp * vec4(_vertexPosition, 1.0); 22 | } 23 | -------------------------------------------------------------------------------- /data/shaders/depth.fs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | #ifdef DIF_TEX 5 | in vec2 texCoord; 6 | 7 | uniform sampler2D difTex; 8 | #endif 9 | 10 | out float glFragColor0; 11 | out float glFragColor1; 12 | 13 | void main() 14 | { 15 | #ifdef DIF_TEX 16 | if(texture(difTex, texCoord).a < 0.8) 17 | discard; 18 | #endif 19 | 20 | glFragColor0 = gl_FragCoord.z; 21 | glFragColor1 = gl_FragCoord.z; 22 | } 23 | -------------------------------------------------------------------------------- /data/shaders/depth.vs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | #define SHADOW_CASCADES_COUNT 5 | 6 | in vec3 _vertexPosition; 7 | #ifdef DIF_TEX 8 | in vec2 _vertexTexCoord; 9 | #endif 10 | 11 | #ifndef CASCADE 12 | uniform mat4 mvp; 13 | 14 | #ifdef DIF_TEX 15 | out vec2 texCoord; 16 | #endif 17 | #else 18 | uniform mat4 mvp[SHADOW_CASCADES_COUNT]; 19 | 20 | uniform vec4 tiles; 21 | uniform int tileInstances[SHADOW_CASCADES_COUNT]; 22 | 23 | #ifdef DIF_TEX 24 | out vec2 texCoord; 25 | #endif 26 | #endif 27 | 28 | void main() 29 | { 30 | #ifdef DIF_TEX 31 | texCoord = _vertexTexCoord; 32 | #endif 33 | 34 | #ifndef CASCADE 35 | gl_Position = mvp * vec4(_vertexPosition, 1.0); 36 | #else 37 | int ti = tileInstances[gl_InstanceID]; 38 | vec2 tileMin = vec2(float(ti % int(tiles.x)), float(ti / int(tiles.x))) * tiles.zw * 2.0 - 1.0; 39 | vec2 tileMax = tileMin + tiles.zw * 2.0; 40 | vec4 p = mvp[ti] * vec4(_vertexPosition, 1.0); 41 | 42 | gl_ClipDistance[0] = dot(vec4(1.0, 0.0, 0.0, -tileMin.x), p); 43 | gl_ClipDistance[1] = dot(vec4(-1.0, 0.0, 0.0, tileMax.x), p); 44 | gl_ClipDistance[2] = dot(vec4(0.0, -1.0, 0.0, -tileMin.y), p); 45 | gl_ClipDistance[3] = dot(vec4(0.0, 1.0, 0.0, tileMax.y), p); 46 | 47 | gl_Position = p; 48 | #endif 49 | } 50 | -------------------------------------------------------------------------------- /data/shaders/geometry.fs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | in vec3 positionWorld; 5 | in vec3 normal; 6 | in vec2 texCoord; 7 | in vec4 color; 8 | in mat3 mtbnti; 9 | 10 | //uniform vec3 cam; 11 | 12 | uniform sampler2D difTex; 13 | uniform sampler2D norTex; 14 | 15 | uniform int type; 16 | 17 | /*uniform vec3 lightPos; 18 | uniform vec2 lightRange; 19 | uniform vec3 lightColor;*/ 20 | 21 | out vec4 glFragColor0; 22 | out vec4 glFragColor1Pos; 23 | out vec4 glFragColor2Normal; 24 | //out float glFragColor3Depth; 25 | 26 | void main() 27 | { 28 | vec4 fragDif = texture(difTex, texCoord); 29 | 30 | if(((type & 0x20000000) != 0) && (fragDif.a < 0.8)) 31 | discard; 32 | 33 | vec3 fragNor = texture(norTex, texCoord).rgb; 34 | vec3 normalDir; 35 | 36 | if((fragNor.r == 0.0) && (fragNor.g == 0.0) && (fragNor.b == 0.0)) 37 | normalDir = normalize(normal); 38 | else 39 | normalDir = normalize(mtbnti * normalize(fragNor * 2.0 - 1.0)); 40 | 41 | //vec3 viewDir = normalize(cam - positionWorld); 42 | /*vec3 lightDir = lightPos - positionWorld; 43 | 44 | float lightDist = clamp((length(lightDir) - lightRange.x) / (lightRange.y - lightRange.x) * -1.0 + 1.0, 0.0, 1.0); 45 | lightDir = normalize(lightDir); 46 | float lightDot = max(0.0, dot(normalDir, lightDir)); 47 | 48 | vec3 colorDif = lightColor * lightDot * lightDist;*/ 49 | 50 | glFragColor0 = vec4(fragDif.rgb * color.rgb/* * colorDif*/, ((type & 0x00200000) != 0) ? 1.0 : 0.0); 51 | glFragColor1Pos = vec4(positionWorld, 1.0); 52 | glFragColor2Normal = vec4(normalDir, 1.0); //vec4(mtbnt * normalize(texture(norTex, texCoord).rgb), 1.0); 53 | //glFragColor3Depth = gl_FragCoord.z; 54 | } 55 | -------------------------------------------------------------------------------- /data/shaders/geometry.vs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | #define LPV_SUN_SKY_SPEC_CASCADES_COUNT 5 | 6 | in vec3 _vertexPosition; 7 | in vec3 _vertexNormal; 8 | in vec3 _vertexNormalTangent; 9 | in vec3 _vertexNormalBitangent; 10 | in vec2 _vertexTexCoord; 11 | in vec4 _vertexColor; 12 | 13 | uniform mat4 mw; 14 | uniform mat3 mwnit; 15 | 16 | #ifndef CASCADE 17 | uniform mat4 mvp; 18 | #else 19 | uniform mat4 mvp[LPV_SUN_SKY_SPEC_CASCADES_COUNT]; 20 | 21 | uniform vec4 tiles; 22 | uniform int tileInstances[LPV_SUN_SKY_SPEC_CASCADES_COUNT]; 23 | #endif 24 | 25 | out vec3 positionWorld; 26 | out vec3 normal; 27 | out vec2 texCoord; 28 | out vec4 color; 29 | out mat3 mtbnti; 30 | 31 | mat3 inv(mat3 m) 32 | { 33 | float a00 = m[0][0], a01 = m[0][1], a02 = m[0][2]; 34 | float a10 = m[1][0], a11 = m[1][1], a12 = m[1][2]; 35 | float a20 = m[2][0], a21 = m[2][1], a22 = m[2][2]; 36 | 37 | float b01 = a22 * a11 - a12 * a21; 38 | float b11 = -a22 * a10 + a12 * a20; 39 | float b21 = a21 * a10 - a11 * a20; 40 | 41 | float det = a00 * b01 + a01 * b11 + a02 * b21; 42 | 43 | return mat3(b01, (-a22 * a01 + a02 * a21), (a12 * a01 - a02 * a11), 44 | b11, (a22 * a00 - a02 * a20), (-a12 * a00 + a02 * a10), 45 | b21, (-a21 * a00 + a01 * a20), (a11 * a00 - a01 * a10)) / det; 46 | } 47 | 48 | void main() 49 | { 50 | positionWorld = vec4(mw * vec4(_vertexPosition, 1.0)).xyz; 51 | normal = mwnit * _vertexNormal; 52 | texCoord = _vertexTexCoord; 53 | color = _vertexColor; 54 | mtbnti = inv(transpose(mat3(normalize(mwnit * _vertexNormalTangent), normalize(mwnit * _vertexNormalBitangent), normalize(mwnit * _vertexNormal)))); 55 | 56 | #ifndef CASCADE 57 | gl_Position = mvp * vec4(_vertexPosition, 1.0); 58 | #else 59 | int ti = tileInstances[gl_InstanceID]; 60 | vec2 tileMin = vec2(float(ti % int(tiles.x)), float(ti / int(tiles.x))) * tiles.zw * 2.0 - 1.0; 61 | vec2 tileMax = tileMin + tiles.zw * 2.0; 62 | vec4 p = mvp[ti] * vec4(_vertexPosition, 1.0); 63 | 64 | gl_ClipDistance[0] = dot(vec4(1.0, 0.0, 0.0, -tileMin.x), p); 65 | gl_ClipDistance[1] = dot(vec4(-1.0, 0.0, 0.0, tileMax.x), p); 66 | gl_ClipDistance[2] = dot(vec4(0.0, -1.0, 0.0, -tileMin.y), p); 67 | gl_ClipDistance[3] = dot(vec4(0.0, 1.0, 0.0, tileMax.y), p); 68 | 69 | gl_Position = p; 70 | #endif 71 | } 72 | -------------------------------------------------------------------------------- /data/shaders/illumination.vs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | #define SHADOW_CASCADES_COUNT 5 | 6 | in vec3 _vertexPosition; 7 | in vec3 _vertexNormal; 8 | #ifdef NOR_TEX 9 | in vec3 _vertexNormalTangent; 10 | in vec3 _vertexNormalBitangent; 11 | #endif 12 | in vec2 _vertexTexCoord; 13 | in vec4 _vertexColor; 14 | 15 | uniform mat4 mw; 16 | uniform mat3 mwnit; 17 | uniform mat4 mvp; 18 | #ifdef SHAD_TEX 19 | uniform mat4 mvpsb[SHADOW_CASCADES_COUNT]; 20 | #endif 21 | 22 | out vec3 positionWorld; 23 | #ifndef NOR_TEX 24 | out vec3 normal; 25 | #endif 26 | out vec2 texCoord; 27 | out vec4 color; 28 | #ifdef SHAD_TEX 29 | out vec4 shadowCoord[SHADOW_CASCADES_COUNT]; 30 | #endif 31 | #ifdef NOR_TEX 32 | out mat3 mtbnti; 33 | #endif 34 | 35 | #ifdef NOR_TEX 36 | mat3 inv(mat3 m) 37 | { 38 | float a00 = m[0][0], a01 = m[0][1], a02 = m[0][2]; 39 | float a10 = m[1][0], a11 = m[1][1], a12 = m[1][2]; 40 | float a20 = m[2][0], a21 = m[2][1], a22 = m[2][2]; 41 | 42 | float b01 = a22 * a11 - a12 * a21; 43 | float b11 = -a22 * a10 + a12 * a20; 44 | float b21 = a21 * a10 - a11 * a20; 45 | 46 | float det = a00 * b01 + a01 * b11 + a02 * b21; 47 | 48 | return mat3(b01, (-a22 * a01 + a02 * a21), (a12 * a01 - a02 * a11), 49 | b11, (a22 * a00 - a02 * a20), (-a12 * a00 + a02 * a10), 50 | b21, (-a21 * a00 + a01 * a20), (a11 * a00 - a01 * a10)) / det; 51 | } 52 | #endif 53 | 54 | void main() 55 | { 56 | positionWorld = vec4(mw * vec4(_vertexPosition, 1.0)).xyz; 57 | #ifndef NOR_TEX 58 | normal = mwnit * _vertexNormal; 59 | #endif 60 | texCoord = _vertexTexCoord; 61 | color = _vertexColor; 62 | #ifdef SHAD_TEX 63 | for(int i = 0; i < SHADOW_CASCADES_COUNT; i++) 64 | shadowCoord[i] = mvpsb[i] * vec4(_vertexPosition, 1.0); 65 | #endif 66 | #ifdef NOR_TEX 67 | mtbnti = inv(transpose(mat3(normalize(mwnit * _vertexNormalTangent), normalize(mwnit * _vertexNormalBitangent), normalize(mwnit * _vertexNormal)))); 68 | #endif 69 | gl_Position = mvp * vec4(_vertexPosition, 1.0); 70 | } 71 | -------------------------------------------------------------------------------- /data/shaders/lpvClear.cs: -------------------------------------------------------------------------------- 1 | #version 430 2 | precision highp float; 3 | 4 | #define LPV_CASCADES_COUNT 5 | #define LPV_SH_COEFFS_COUNT 4 6 | #define LPV_SAMPLE_SIZE 12 7 | #define LPV_GV_SAMPLE_SIZE 8 8 | 9 | layout(local_size_x = LOCAL_SIZE_X, local_size_y = LOCAL_SIZE_Y, local_size_z = LOCAL_SIZE_Z) in; 10 | 11 | uniform layout(rgba32f) writeonly image3D lpvAccumTexR; 12 | uniform layout(rgba32f) writeonly image3D lpvAccumTexG; 13 | uniform layout(rgba32f) writeonly image3D lpvAccumTexB; 14 | uniform layout(r32i) writeonly iimage3D lpv0Tex; 15 | uniform layout(r32i) writeonly iimage3D lpv1Tex; 16 | uniform layout(r32i) writeonly iimage3D lpvAccumTex; 17 | uniform layout(r32i) writeonly iimage3D lpvNormalAccumTex; 18 | uniform layout(r32i) writeonly iimage3D gvTex; 19 | 20 | uniform vec3 lpvTexSize; 21 | 22 | void main() 23 | { 24 | uint x = gl_GlobalInvocationID.x % uint(lpvTexSize.y); 25 | uint y = gl_GlobalInvocationID.y % uint(lpvTexSize.y); 26 | uint z = gl_GlobalInvocationID.y / uint(lpvTexSize.y); 27 | uint cascade = gl_GlobalInvocationID.x / uint(lpvTexSize.y); 28 | 29 | if((cascade < LPV_CASCADES_COUNT) && (z < uint(lpvTexSize.z))) 30 | { 31 | uint texX = cascade * uint(lpvTexSize.y) + x; 32 | uint lpvGlobTexX = texX * LPV_SAMPLE_SIZE; 33 | uint lobeGlobTexX = texX * LPV_SH_COEFFS_COUNT * 2; 34 | uint gvGlobTexX = texX * LPV_SH_COEFFS_COUNT; 35 | 36 | imageStore(lpvAccumTexR, ivec3(texX, y, z), vec4(0.0)); 37 | imageStore(lpvAccumTexG, ivec3(texX, y, z), vec4(0.0)); 38 | imageStore(lpvAccumTexB, ivec3(texX, y, z), vec4(0.0)); 39 | 40 | for(int i = 0; i < LPV_SAMPLE_SIZE; i++) 41 | { 42 | imageStore(lpv0Tex, ivec3(lpvGlobTexX + i, y, z), ivec4(0, 0, 0, 0)); 43 | imageStore(lpv1Tex, ivec3(lpvGlobTexX + i, y, z), ivec4(0, 0, 0, 0)); 44 | imageStore(lpvAccumTex, ivec3(lpvGlobTexX + i, y, z), ivec4(0, 0, 0, 0)); 45 | } 46 | 47 | for(int i = 0; i < (LPV_SH_COEFFS_COUNT * 2); i++) 48 | imageStore(lpvNormalAccumTex, ivec3(lobeGlobTexX + i, y, z), ivec4(0, 0, 0, 0)); 49 | 50 | for(int i = 0; i < LPV_SH_COEFFS_COUNT; i++) 51 | imageStore(gvTex, ivec3(gvGlobTexX + i, y, z), ivec4(0, 0, 0, 0)); 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /data/shaders/lpvClear.fs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | #ifndef LPV_GV 5 | #ifndef LPV_LOBE 6 | out vec4 glFragColor0LpvR; 7 | out vec4 glFragColor1LpvG; 8 | out vec4 glFragColor2LpvB; 9 | out vec4 glFragColor3LpvAccumR; 10 | out vec4 glFragColor4LpvAccumG; 11 | out vec4 glFragColor5LpvAccumB; 12 | out vec4 glFragColor6LpvNormal; 13 | #else 14 | out vec4 glFragColor0LpvNormal; 15 | #endif 16 | #else 17 | out vec4 glFragColor0Gv; 18 | #endif 19 | 20 | void main() 21 | { 22 | #ifndef LPV_GV 23 | #ifndef LPV_LOBE 24 | glFragColor0LpvR = vec4(0.0); 25 | glFragColor1LpvG = vec4(0.0); 26 | glFragColor2LpvB = vec4(0.0); 27 | glFragColor3LpvAccumR = vec4(0.0); 28 | glFragColor4LpvAccumG = vec4(0.0); 29 | glFragColor5LpvAccumB = vec4(0.0); 30 | glFragColor6LpvNormal = vec4(0.0); 31 | #else 32 | glFragColor0LpvNormal = vec4(0.0); 33 | #endif 34 | #else 35 | glFragColor0Gv = vec4(0.0); 36 | #endif 37 | } 38 | -------------------------------------------------------------------------------- /data/shaders/lpvClear.gs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | layout(points) in; 5 | layout(triangle_strip, max_vertices = 4) out; 6 | 7 | flat in int vertexID[]; 8 | 9 | void main() 10 | { 11 | gl_Layer = vertexID[0]; 12 | gl_Position = vec4(-1.0, 1.0, 0.0, 1.0) + gl_in[0].gl_Position; EmitVertex(); 13 | gl_Position = vec4( 1.0, 1.0, 0.0, 1.0); EmitVertex(); 14 | gl_Position = vec4(-1.0, -1.0, 0.0, 1.0); EmitVertex(); 15 | gl_Position = vec4( 1.0, -1.0, 0.0, 1.0); EmitVertex(); 16 | 17 | EndPrimitive(); 18 | } 19 | -------------------------------------------------------------------------------- /data/shaders/lpvClear.vs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | in float _vertexPosition; 5 | 6 | flat out int vertexID; 7 | 8 | void main() 9 | { 10 | vertexID = gl_VertexID; 11 | gl_Position = vec4(_vertexPosition); 12 | } 13 | -------------------------------------------------------------------------------- /data/shaders/lpvInjection.vs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | in float _vertexPosition; 5 | 6 | flat out int vertexID; 7 | 8 | void main() 9 | { 10 | vertexID = gl_VertexID; 11 | gl_Position = vec4(_vertexPosition); 12 | } 13 | -------------------------------------------------------------------------------- /data/shaders/lpvPropagation.gs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | layout(points) in; 5 | #if defined(LPV_GATHERING) || defined(LPV_SKY) || defined(LPV_LOBE) 6 | layout(triangle_strip, max_vertices = 4) out; 7 | #else 8 | layout(points, max_vertices = 7) out; 9 | #endif 10 | 11 | flat in int vertexID[]; 12 | 13 | #if !defined(LPV_GATHERING) && !defined(LPV_SKY) && !defined(LPV_LOBE) 14 | uniform vec3 lpvTexSize; 15 | uniform vec4 lpvParams; 16 | #endif 17 | 18 | #if defined(LPV_GATHERING) || defined(LPV_SKY) || defined(LPV_LOBE) 19 | out float texPos; 20 | #else 21 | out vec3 texPos; 22 | out vec3 dir; 23 | #endif 24 | 25 | void main() 26 | { 27 | #if defined(LPV_GATHERING) || defined(LPV_SKY) || defined(LPV_LOBE) 28 | texPos = vertexID[0]; 29 | gl_Layer = vertexID[0]; 30 | gl_Position = vec4(-1.0, 1.0, 0.0, 1.0) + gl_in[0].gl_Position; EmitVertex(); 31 | gl_Position = vec4( 1.0, 1.0, 0.0, 1.0); EmitVertex(); 32 | gl_Position = vec4(-1.0, -1.0, 0.0, 1.0); EmitVertex(); 33 | gl_Position = vec4( 1.0, -1.0, 0.0, 1.0); EmitVertex(); 34 | #else 35 | int v = vertexID[0] + (int(lpvParams.x) * 65536); 36 | int x = v % int(lpvTexSize.x); 37 | int y = (v / int(lpvTexSize.x)) % int(lpvTexSize.y); 38 | int z = (v / int(lpvTexSize.x)) / int(lpvTexSize.y); 39 | 40 | vec3 dirs[6]; 41 | dirs[0] = vec3(0.0, 0.0, -1.0); dirs[1] = vec3(0.0, 0.0, 1.0); 42 | dirs[2] = vec3(0.0, -1.0, 0.0); dirs[3] = vec3(0.0, 1.0, 0.0); 43 | dirs[4] = vec3(-1.0, 0.0, 0.0); dirs[5] = vec3(1.0, 0.0, 0.0); 44 | 45 | texPos = vec3(float(x), float(y), float(z)); 46 | 47 | for(int cell = 0; cell < 6; cell++) 48 | { 49 | dir = dirs[cell]; 50 | gl_Layer = z + int(dirs[cell].z); 51 | gl_Position = vec4((float(x) + dirs[cell].x) / lpvTexSize.x * 2.0 - 1.0, (float(y) + dirs[cell].y) / lpvTexSize.y * 2.0 - 1.0, 0.0, 1.0) + gl_in[0].gl_Position; 52 | EmitVertex(); 53 | } 54 | 55 | // accum pass 56 | dir = vec3(0.0, 0.0, 0.0); 57 | gl_Layer = z; 58 | gl_Position = vec4(float(x) / lpvTexSize.x * 2.0 - 1.0, float(y) / lpvTexSize.y * 2.0 - 1.0, 0.0, 1.0) + gl_in[0].gl_Position; 59 | EmitVertex(); 60 | #endif 61 | 62 | EndPrimitive(); 63 | } 64 | -------------------------------------------------------------------------------- /data/shaders/lpvPropagation.vs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | in float _vertexPosition; 5 | 6 | flat out int vertexID; 7 | 8 | void main() 9 | { 10 | vertexID = gl_VertexID; 11 | gl_Position = vec4(_vertexPosition); 12 | } 13 | -------------------------------------------------------------------------------- /data/shaders/sunRays.fs: -------------------------------------------------------------------------------- 1 | #version 150 2 | precision lowp float; 3 | 4 | in vec2 texCoord; 5 | 6 | uniform sampler2D difTex; 7 | 8 | uniform vec3 lightAmb; 9 | 10 | out vec4 glFragColor; 11 | 12 | void main() 13 | { 14 | vec2 lightDir = (texCoord - lightAmb.xy); 15 | vec2 coord = texCoord; 16 | vec2 offset = lightDir / 50.0 * 0.95; 17 | vec3 color = vec3(0.0, 0.0, 0.0); 18 | 19 | for(int i = 0; i < 50; i++) 20 | { 21 | coord -= offset; 22 | color += texture(difTex, coord).rgb / 50.0; 23 | } 24 | 25 | glFragColor = vec4(color * max(0.0, lightAmb.z), 1.0); 26 | } 27 | -------------------------------------------------------------------------------- /include/SDL2/SDL_blendmode.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_blendmode.h 24 | * 25 | * Header file declaring the SDL_BlendMode enumeration 26 | */ 27 | 28 | #ifndef _SDL_blendmode_h 29 | #define _SDL_blendmode_h 30 | 31 | #include "begin_code.h" 32 | /* Set up for C function definitions, even when using C++ */ 33 | #ifdef __cplusplus 34 | extern "C" { 35 | #endif 36 | 37 | /** 38 | * \brief The blend mode used in SDL_RenderCopy() and drawing operations. 39 | */ 40 | typedef enum 41 | { 42 | SDL_BLENDMODE_NONE = 0x00000000, /**< no blending 43 | dstRGBA = srcRGBA */ 44 | SDL_BLENDMODE_BLEND = 0x00000001, /**< alpha blending 45 | dstRGB = (srcRGB * srcA) + (dstRGB * (1-srcA)) 46 | dstA = srcA + (dstA * (1-srcA)) */ 47 | SDL_BLENDMODE_ADD = 0x00000002, /**< additive blending 48 | dstRGB = (srcRGB * srcA) + dstRGB 49 | dstA = dstA */ 50 | SDL_BLENDMODE_MOD = 0x00000004 /**< color modulate 51 | dstRGB = srcRGB * dstRGB 52 | dstA = dstA */ 53 | } SDL_BlendMode; 54 | 55 | /* Ends C function definitions when using C++ */ 56 | #ifdef __cplusplus 57 | } 58 | #endif 59 | #include "close_code.h" 60 | 61 | #endif /* _SDL_video_h */ 62 | 63 | /* vi: set ts=4 sw=4 expandtab: */ 64 | -------------------------------------------------------------------------------- /include/SDL2/SDL_clipboard.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_clipboard.h 24 | * 25 | * Include file for SDL clipboard handling 26 | */ 27 | 28 | #ifndef _SDL_clipboard_h 29 | #define _SDL_clipboard_h 30 | 31 | #include "SDL_stdinc.h" 32 | 33 | #include "begin_code.h" 34 | /* Set up for C function definitions, even when using C++ */ 35 | #ifdef __cplusplus 36 | extern "C" { 37 | #endif 38 | 39 | /* Function prototypes */ 40 | 41 | /** 42 | * \brief Put UTF-8 text into the clipboard 43 | * 44 | * \sa SDL_GetClipboardText() 45 | */ 46 | extern DECLSPEC int SDLCALL SDL_SetClipboardText(const char *text); 47 | 48 | /** 49 | * \brief Get UTF-8 text from the clipboard, which must be freed with SDL_free() 50 | * 51 | * \sa SDL_SetClipboardText() 52 | */ 53 | extern DECLSPEC char * SDLCALL SDL_GetClipboardText(void); 54 | 55 | /** 56 | * \brief Returns a flag indicating whether the clipboard exists and contains a text string that is non-empty 57 | * 58 | * \sa SDL_GetClipboardText() 59 | */ 60 | extern DECLSPEC SDL_bool SDLCALL SDL_HasClipboardText(void); 61 | 62 | 63 | /* Ends C function definitions when using C++ */ 64 | #ifdef __cplusplus 65 | } 66 | #endif 67 | #include "close_code.h" 68 | 69 | #endif /* _SDL_clipboard_h */ 70 | 71 | /* vi: set ts=4 sw=4 expandtab: */ 72 | -------------------------------------------------------------------------------- /include/SDL2/SDL_error.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_error.h 24 | * 25 | * Simple error message routines for SDL. 26 | */ 27 | 28 | #ifndef _SDL_error_h 29 | #define _SDL_error_h 30 | 31 | #include "SDL_stdinc.h" 32 | 33 | #include "begin_code.h" 34 | /* Set up for C function definitions, even when using C++ */ 35 | #ifdef __cplusplus 36 | extern "C" { 37 | #endif 38 | 39 | /* Public functions */ 40 | /* SDL_SetError() unconditionally returns -1. */ 41 | extern DECLSPEC int SDLCALL SDL_SetError(const char *fmt, ...); 42 | extern DECLSPEC const char *SDLCALL SDL_GetError(void); 43 | extern DECLSPEC void SDLCALL SDL_ClearError(void); 44 | 45 | /** 46 | * \name Internal error functions 47 | * 48 | * \internal 49 | * Private error reporting function - used internally. 50 | */ 51 | /* @{ */ 52 | #define SDL_OutOfMemory() SDL_Error(SDL_ENOMEM) 53 | #define SDL_Unsupported() SDL_Error(SDL_UNSUPPORTED) 54 | #define SDL_InvalidParamError(param) SDL_SetError("Parameter '%s' is invalid", (param)) 55 | typedef enum 56 | { 57 | SDL_ENOMEM, 58 | SDL_EFREAD, 59 | SDL_EFWRITE, 60 | SDL_EFSEEK, 61 | SDL_UNSUPPORTED, 62 | SDL_LASTERROR 63 | } SDL_errorcode; 64 | /* SDL_Error() unconditionally returns -1. */ 65 | extern DECLSPEC int SDLCALL SDL_Error(SDL_errorcode code); 66 | /* @} *//* Internal error functions */ 67 | 68 | /* Ends C function definitions when using C++ */ 69 | #ifdef __cplusplus 70 | } 71 | #endif 72 | #include "close_code.h" 73 | 74 | #endif /* _SDL_error_h */ 75 | 76 | /* vi: set ts=4 sw=4 expandtab: */ 77 | -------------------------------------------------------------------------------- /include/SDL2/SDL_gesture.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_gesture.h 24 | * 25 | * Include file for SDL gesture event handling. 26 | */ 27 | 28 | #ifndef _SDL_gesture_h 29 | #define _SDL_gesture_h 30 | 31 | #include "SDL_stdinc.h" 32 | #include "SDL_error.h" 33 | #include "SDL_video.h" 34 | 35 | #include "SDL_touch.h" 36 | 37 | 38 | #include "begin_code.h" 39 | /* Set up for C function definitions, even when using C++ */ 40 | #ifdef __cplusplus 41 | extern "C" { 42 | #endif 43 | 44 | typedef Sint64 SDL_GestureID; 45 | 46 | /* Function prototypes */ 47 | 48 | /** 49 | * \brief Begin Recording a gesture on the specified touch, or all touches (-1) 50 | * 51 | * 52 | */ 53 | extern DECLSPEC int SDLCALL SDL_RecordGesture(SDL_TouchID touchId); 54 | 55 | 56 | /** 57 | * \brief Save all currently loaded Dollar Gesture templates 58 | * 59 | * 60 | */ 61 | extern DECLSPEC int SDLCALL SDL_SaveAllDollarTemplates(SDL_RWops *dst); 62 | 63 | /** 64 | * \brief Save a currently loaded Dollar Gesture template 65 | * 66 | * 67 | */ 68 | extern DECLSPEC int SDLCALL SDL_SaveDollarTemplate(SDL_GestureID gestureId,SDL_RWops *dst); 69 | 70 | 71 | /** 72 | * \brief Load Dollar Gesture templates from a file 73 | * 74 | * 75 | */ 76 | extern DECLSPEC int SDLCALL SDL_LoadDollarTemplates(SDL_TouchID touchId, SDL_RWops *src); 77 | 78 | 79 | /* Ends C function definitions when using C++ */ 80 | #ifdef __cplusplus 81 | } 82 | #endif 83 | #include "close_code.h" 84 | 85 | #endif /* _SDL_gesture_h */ 86 | 87 | /* vi: set ts=4 sw=4 expandtab: */ 88 | -------------------------------------------------------------------------------- /include/SDL2/SDL_name.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | #ifndef _SDLname_h_ 23 | #define _SDLname_h_ 24 | 25 | #if defined(__STDC__) || defined(__cplusplus) 26 | #define NeedFunctionPrototypes 1 27 | #endif 28 | 29 | #define SDL_NAME(X) SDL_##X 30 | 31 | #endif /* _SDLname_h_ */ 32 | 33 | /* vi: set ts=4 sw=4 expandtab: */ 34 | -------------------------------------------------------------------------------- /include/SDL2/SDL_opengles.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_opengles.h 24 | * 25 | * This is a simple file to encapsulate the OpenGL ES 1.X API headers. 26 | */ 27 | 28 | #ifdef __IPHONEOS__ 29 | #include 30 | #include 31 | #else 32 | #include 33 | #include 34 | #endif 35 | 36 | #ifndef APIENTRY 37 | #define APIENTRY 38 | #endif 39 | -------------------------------------------------------------------------------- /include/SDL2/SDL_quit.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_quit.h 24 | * 25 | * Include file for SDL quit event handling. 26 | */ 27 | 28 | #ifndef _SDL_quit_h 29 | #define _SDL_quit_h 30 | 31 | #include "SDL_stdinc.h" 32 | #include "SDL_error.h" 33 | 34 | /** 35 | * \file SDL_quit.h 36 | * 37 | * An ::SDL_QUIT event is generated when the user tries to close the application 38 | * window. If it is ignored or filtered out, the window will remain open. 39 | * If it is not ignored or filtered, it is queued normally and the window 40 | * is allowed to close. When the window is closed, screen updates will 41 | * complete, but have no effect. 42 | * 43 | * SDL_Init() installs signal handlers for SIGINT (keyboard interrupt) 44 | * and SIGTERM (system termination request), if handlers do not already 45 | * exist, that generate ::SDL_QUIT events as well. There is no way 46 | * to determine the cause of an ::SDL_QUIT event, but setting a signal 47 | * handler in your application will override the default generation of 48 | * quit events for that signal. 49 | * 50 | * \sa SDL_Quit() 51 | */ 52 | 53 | /* There are no functions directly affecting the quit event */ 54 | 55 | #define SDL_QuitRequested() \ 56 | (SDL_PumpEvents(), (SDL_PeepEvents(NULL,0,SDL_PEEKEVENT,SDL_QUIT,SDL_QUIT) > 0)) 57 | 58 | #endif /* _SDL_quit_h */ 59 | -------------------------------------------------------------------------------- /include/SDL2/SDL_revision.h: -------------------------------------------------------------------------------- 1 | #define SDL_REVISION "hg-8628:b558f99d48f0" 2 | #define SDL_REVISION_NUMBER 8628 3 | -------------------------------------------------------------------------------- /include/SDL2/SDL_test.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_test.h 24 | * 25 | * Include file for SDL test framework. 26 | * 27 | * This code is a part of the SDL2_test library, not the main SDL library. 28 | */ 29 | 30 | #ifndef _SDL_test_h 31 | #define _SDL_test_h 32 | 33 | #include "SDL.h" 34 | #include "SDL_test_common.h" 35 | #include "SDL_test_font.h" 36 | #include "SDL_test_random.h" 37 | #include "SDL_test_fuzzer.h" 38 | #include "SDL_test_crc32.h" 39 | #include "SDL_test_md5.h" 40 | #include "SDL_test_log.h" 41 | #include "SDL_test_assert.h" 42 | #include "SDL_test_harness.h" 43 | #include "SDL_test_images.h" 44 | #include "SDL_test_compare.h" 45 | 46 | #include "begin_code.h" 47 | /* Set up for C function definitions, even when using C++ */ 48 | #ifdef __cplusplus 49 | extern "C" { 50 | #endif 51 | 52 | /* Global definitions */ 53 | 54 | /* 55 | * Note: Maximum size of SDLTest log message is less than SDLs limit 56 | * to ensure we can fit additional information such as the timestamp. 57 | */ 58 | #define SDLTEST_MAX_LOGMESSAGE_LENGTH 3584 59 | 60 | /* Ends C function definitions when using C++ */ 61 | #ifdef __cplusplus 62 | } 63 | #endif 64 | #include "close_code.h" 65 | 66 | #endif /* _SDL_test_h */ 67 | 68 | /* vi: set ts=4 sw=4 expandtab: */ 69 | -------------------------------------------------------------------------------- /include/SDL2/SDL_test_compare.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_test_compare.h 24 | * 25 | * Include file for SDL test framework. 26 | * 27 | * This code is a part of the SDL2_test library, not the main SDL library. 28 | */ 29 | 30 | /* 31 | 32 | Defines comparison functions (i.e. for surfaces). 33 | 34 | */ 35 | 36 | #ifndef _SDL_test_compare_h 37 | #define _SDL_test_compare_h 38 | 39 | #include "SDL.h" 40 | 41 | #include "SDL_test_images.h" 42 | 43 | #include "begin_code.h" 44 | /* Set up for C function definitions, even when using C++ */ 45 | #ifdef __cplusplus 46 | extern "C" { 47 | #endif 48 | 49 | /** 50 | * \brief Compares a surface and with reference image data for equality 51 | * 52 | * \param surface Surface used in comparison 53 | * \param referenceSurface Test Surface used in comparison 54 | * \param allowable_error Allowable difference (squared) in blending accuracy. 55 | * 56 | * \returns 0 if comparison succeeded, >0 (=number of pixels where comparison failed) if comparison failed, -1 if any of the surfaces were NULL, -2 if the surface sizes differ. 57 | */ 58 | int SDLTest_CompareSurfaces(SDL_Surface *surface, SDL_Surface *referenceSurface, int allowable_error); 59 | 60 | 61 | /* Ends C function definitions when using C++ */ 62 | #ifdef __cplusplus 63 | } 64 | #endif 65 | #include "close_code.h" 66 | 67 | #endif /* _SDL_test_compare_h */ 68 | 69 | /* vi: set ts=4 sw=4 expandtab: */ 70 | -------------------------------------------------------------------------------- /include/SDL2/SDL_test_images.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_test_images.h 24 | * 25 | * Include file for SDL test framework. 26 | * 27 | * This code is a part of the SDL2_test library, not the main SDL library. 28 | */ 29 | 30 | /* 31 | 32 | Defines some images for tests. 33 | 34 | */ 35 | 36 | #ifndef _SDL_test_images_h 37 | #define _SDL_test_images_h 38 | 39 | #include "SDL.h" 40 | 41 | #include "begin_code.h" 42 | /* Set up for C function definitions, even when using C++ */ 43 | #ifdef __cplusplus 44 | extern "C" { 45 | #endif 46 | 47 | /** 48 | *Type for test images. 49 | */ 50 | typedef struct SDLTest_SurfaceImage_s { 51 | int width; 52 | int height; 53 | unsigned int bytes_per_pixel; /* 3:RGB, 4:RGBA */ 54 | const char *pixel_data; 55 | } SDLTest_SurfaceImage_t; 56 | 57 | /* Test images */ 58 | SDL_Surface *SDLTest_ImageBlit(); 59 | SDL_Surface *SDLTest_ImageBlitColor(); 60 | SDL_Surface *SDLTest_ImageBlitAlpha(); 61 | SDL_Surface *SDLTest_ImageBlitBlendAdd(); 62 | SDL_Surface *SDLTest_ImageBlitBlend(); 63 | SDL_Surface *SDLTest_ImageBlitBlendMod(); 64 | SDL_Surface *SDLTest_ImageBlitBlendNone(); 65 | SDL_Surface *SDLTest_ImageBlitBlendAll(); 66 | SDL_Surface *SDLTest_ImageFace(); 67 | SDL_Surface *SDLTest_ImagePrimitives(); 68 | SDL_Surface *SDLTest_ImagePrimitivesBlend(); 69 | 70 | /* Ends C function definitions when using C++ */ 71 | #ifdef __cplusplus 72 | } 73 | #endif 74 | #include "close_code.h" 75 | 76 | #endif /* _SDL_test_images_h */ 77 | 78 | /* vi: set ts=4 sw=4 expandtab: */ 79 | -------------------------------------------------------------------------------- /include/SDL2/SDL_test_log.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_test_log.h 24 | * 25 | * Include file for SDL test framework. 26 | * 27 | * This code is a part of the SDL2_test library, not the main SDL library. 28 | */ 29 | 30 | /* 31 | * 32 | * Wrapper to log in the TEST category 33 | * 34 | */ 35 | 36 | #ifndef _SDL_test_log_h 37 | #define _SDL_test_log_h 38 | 39 | #include "begin_code.h" 40 | /* Set up for C function definitions, even when using C++ */ 41 | #ifdef __cplusplus 42 | extern "C" { 43 | #endif 44 | 45 | /** 46 | * \brief Prints given message with a timestamp in the TEST category and INFO priority. 47 | * 48 | * \param fmt Message to be logged 49 | */ 50 | void SDLTest_Log(const char *fmt, ...); 51 | 52 | /** 53 | * \brief Prints given message with a timestamp in the TEST category and the ERROR priority. 54 | * 55 | * \param fmt Message to be logged 56 | */ 57 | void SDLTest_LogError(const char *fmt, ...); 58 | 59 | /* Ends C function definitions when using C++ */ 60 | #ifdef __cplusplus 61 | } 62 | #endif 63 | #include "close_code.h" 64 | 65 | #endif /* _SDL_test_log_h */ 66 | 67 | /* vi: set ts=4 sw=4 expandtab: */ 68 | -------------------------------------------------------------------------------- /include/SDL2/SDL_types.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_types.h 24 | * 25 | * \deprecated 26 | */ 27 | 28 | /* DEPRECATED */ 29 | #include "SDL_stdinc.h" 30 | -------------------------------------------------------------------------------- /include/SDL2/close_code.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2014 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file close_code.h 24 | * 25 | * This file reverses the effects of begin_code.h and should be included 26 | * after you finish any function and structure declarations in your headers 27 | */ 28 | 29 | #undef _begin_code_h 30 | 31 | /* Reset structure packing at previous byte alignment */ 32 | #if defined(_MSC_VER) || defined(__MWERKS__) || defined(__WATCOMC__) || defined(__BORLANDC__) 33 | #ifdef __BORLANDC__ 34 | #pragma nopackwarning 35 | #endif 36 | #pragma pack(pop) 37 | #endif /* Compiler needs structure packing set */ 38 | -------------------------------------------------------------------------------- /include/glm/common.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/common.hpp 29 | /// @date 2013-12-24 / 2013-12-24 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | #include "detail/func_common.hpp" 36 | -------------------------------------------------------------------------------- /include/glm/detail/_fixes.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/detail/_fixes.hpp 29 | /// @date 2011-02-21 / 2011-11-22 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #include 34 | 35 | //! Workaround for compatibility with other libraries 36 | #ifdef max 37 | #undef max 38 | #endif 39 | 40 | //! Workaround for compatibility with other libraries 41 | #ifdef min 42 | #undef min 43 | #endif 44 | 45 | //! Workaround for Android 46 | #ifdef isnan 47 | #undef isnan 48 | #endif 49 | 50 | //! Workaround for Android 51 | #ifdef isinf 52 | #undef isinf 53 | #endif 54 | 55 | //! Workaround for Chrone Native Client 56 | #ifdef log2 57 | #undef log2 58 | #endif 59 | 60 | -------------------------------------------------------------------------------- /include/glm/detail/intrinsic_exponential.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | /// THE SOFTWARE. 22 | /// 23 | /// @ref core 24 | /// @file glm/detail/intrinsic_exponential.inl 25 | /// @date 2011-06-15 / 2011-06-15 26 | /// @author Christophe Riccio 27 | /////////////////////////////////////////////////////////////////////////////////// 28 | -------------------------------------------------------------------------------- /include/glm/detail/intrinsic_integer.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2012 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | /// THE SOFTWARE. 22 | /// 23 | /// @ref core 24 | /// @file glm/detail/intrinsic_integer.hpp 25 | /// @date 2009-05-11 / 2011-06-15 26 | /// @author Christophe Riccio 27 | /////////////////////////////////////////////////////////////////////////////////// 28 | 29 | #pragma once 30 | 31 | #include "glm/glm.hpp" 32 | 33 | #if(!(GLM_ARCH & GLM_ARCH_SSE2)) 34 | # error "SSE2 instructions not supported or enabled" 35 | #else 36 | 37 | namespace glm{ 38 | namespace detail 39 | { 40 | __m128i _mm_bit_interleave_si128(__m128i x); 41 | __m128i _mm_bit_interleave_si128(__m128i x, __m128i y); 42 | 43 | }//namespace detail 44 | }//namespace glm 45 | 46 | #include "intrinsic_integer.inl" 47 | 48 | #endif//GLM_ARCH 49 | -------------------------------------------------------------------------------- /include/glm/detail/intrinsic_trigonometric.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | /// THE SOFTWARE. 22 | /// 23 | /// @ref core 24 | /// @file glm/detail/intrinsic_trigonometric.hpp 25 | /// @date 2009-06-09 / 2011-06-15 26 | /// @author Christophe Riccio 27 | /////////////////////////////////////////////////////////////////////////////////// 28 | 29 | #pragma once 30 | 31 | #include "setup.hpp" 32 | 33 | #if(!(GLM_ARCH & GLM_ARCH_SSE2)) 34 | # error "SSE2 instructions not supported or enabled" 35 | #else 36 | 37 | namespace glm{ 38 | namespace detail 39 | { 40 | 41 | }//namespace detail 42 | }//namespace glm 43 | 44 | #include "intrinsic_trigonometric.inl" 45 | 46 | #endif//GLM_ARCH 47 | -------------------------------------------------------------------------------- /include/glm/detail/intrinsic_trigonometric.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | /// THE SOFTWARE. 22 | /// 23 | /// @ref core 24 | /// @file glm/detail/intrinsic_trigonometric.inl 25 | /// @date 2011-06-15 / 2011-06-15 26 | /// @author Christophe Riccio 27 | /////////////////////////////////////////////////////////////////////////////////// 28 | -------------------------------------------------------------------------------- /include/glm/detail/intrinsic_vector_relational.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | /// THE SOFTWARE. 22 | /// 23 | /// @ref core 24 | /// @file glm/detail/intrinsic_vector_relational.hpp 25 | /// @date 2009-06-09 / 2011-06-15 26 | /// @author Christophe Riccio 27 | /////////////////////////////////////////////////////////////////////////////////// 28 | 29 | #pragma once 30 | 31 | #include "setup.hpp" 32 | 33 | #if(!(GLM_ARCH & GLM_ARCH_SSE2)) 34 | # error "SSE2 instructions not supported or enabled" 35 | #else 36 | 37 | namespace glm{ 38 | namespace detail 39 | { 40 | 41 | }//namespace detail 42 | }//namespace glm 43 | 44 | #include "intrinsic_vector_relational.inl" 45 | 46 | #endif//GLM_ARCH 47 | -------------------------------------------------------------------------------- /include/glm/detail/precision.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/detail/precision.hpp 29 | /// @date 2013-04-01 / 2013-04-01 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | namespace glm 36 | { 37 | enum precision 38 | { 39 | highp, 40 | mediump, 41 | lowp, 42 | simd, 43 | defaultp = highp 44 | }; 45 | }//namespace glm 46 | -------------------------------------------------------------------------------- /include/glm/detail/type_half.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/detail/type_half.hpp 29 | /// @date 2008-08-17 / 2011-09-20 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | #include "setup.hpp" 36 | 37 | namespace glm{ 38 | namespace detail 39 | { 40 | typedef short hdata; 41 | 42 | GLM_FUNC_DECL float toFloat32(hdata value); 43 | GLM_FUNC_DECL hdata toFloat16(float const & value); 44 | 45 | }//namespace detail 46 | }//namespace glm 47 | 48 | #include "type_half.inl" 49 | -------------------------------------------------------------------------------- /include/glm/detail/type_mat.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/detail/type_mat.inl 29 | /// @date 2011-06-15 / 2011-06-15 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | -------------------------------------------------------------------------------- /include/glm/detail/type_vec.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/detail/type_vec.inl 29 | /// @date 2011-06-15 / 2011-06-15 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | -------------------------------------------------------------------------------- /include/glm/detail/type_vec4_avx.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/detail/type_tvec4_avx.inl 29 | /// @date 2014-12-01 / 2014-12-01 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm{ 34 | namespace detail 35 | { 36 | 37 | }//namespace detail 38 | 39 | 40 | 41 | }//namespace glm 42 | -------------------------------------------------------------------------------- /include/glm/detail/type_vec4_avx2.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/detail/type_tvec4_avx2.inl 29 | /// @date 2014-12-01 / 2014-12-01 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm{ 34 | namespace detail 35 | { 36 | 37 | }//namespace detail 38 | 39 | 40 | 41 | }//namespace glm 42 | -------------------------------------------------------------------------------- /include/glm/exponential.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/exponential.hpp 29 | /// @date 2013-12-24 / 2013-12-24 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | #include "detail/func_exponential.hpp" 36 | -------------------------------------------------------------------------------- /include/glm/geometric.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/geometric.hpp 29 | /// @date 2013-12-24 / 2013-12-24 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | #include "detail/func_geometric.hpp" 36 | -------------------------------------------------------------------------------- /include/glm/gtc/type_precision.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtc_swizzle 28 | /// @file glm/gtc/swizzle.inl 29 | /// @date 2009-06-14 / 2011-06-15 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | 36 | } 37 | -------------------------------------------------------------------------------- /include/glm/gtc/vec1.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtc_vec1 28 | /// @file glm/gtc/vec1.inl 29 | /// @date 2013-03-16 / 2013-03-16 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | -------------------------------------------------------------------------------- /include/glm/gtx/handed_coordinate_space.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_handed_coordinate_space 28 | /// @file glm/gtx/handed_coordinate_space.inl 29 | /// @date 2005-12-21 / 2009-02-19 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | template 36 | GLM_FUNC_QUALIFIER bool rightHanded 37 | ( 38 | tvec3 const & tangent, 39 | tvec3 const & binormal, 40 | tvec3 const & normal 41 | ) 42 | { 43 | return dot(cross(normal, tangent), binormal) > T(0); 44 | } 45 | 46 | template 47 | GLM_FUNC_QUALIFIER bool leftHanded 48 | ( 49 | tvec3 const & tangent, 50 | tvec3 const & binormal, 51 | tvec3 const & normal 52 | ) 53 | { 54 | return dot(cross(normal, tangent), binormal) < T(0); 55 | } 56 | }//namespace glm 57 | -------------------------------------------------------------------------------- /include/glm/gtx/log_base.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_log_base 28 | /// @file glm/gtx/log_base.inl 29 | /// @date 2008-10-24 / 2014-11-25 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | template 36 | GLM_FUNC_QUALIFIER genType log(genType const & x, genType const & base) 37 | { 38 | assert(x != genType(0)); 39 | return glm::log(x) / glm::log(base); 40 | } 41 | 42 | template class vecType> 43 | GLM_FUNC_QUALIFIER vecType log(vecType const & x, vecType const & base) 44 | { 45 | return glm::log(x) / glm::log(base); 46 | } 47 | }//namespace glm 48 | -------------------------------------------------------------------------------- /include/glm/gtx/mixed_product.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_mixed_product 28 | /// @file glm/gtx/mixed_product.inl 29 | /// @date 2007-04-03 / 2008-09-17 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | template 36 | GLM_FUNC_QUALIFIER T mixedProduct 37 | ( 38 | tvec3 const & v1, 39 | tvec3 const & v2, 40 | tvec3 const & v3 41 | ) 42 | { 43 | return dot(cross(v1, v2), v3); 44 | } 45 | }//namespace glm 46 | -------------------------------------------------------------------------------- /include/glm/gtx/normal.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_normal 28 | /// @file glm/gtx/normal.inl 29 | /// @date 2005-12-21 / 2011-06-07 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | template 36 | GLM_FUNC_QUALIFIER tvec3 triangleNormal 37 | ( 38 | tvec3 const & p1, 39 | tvec3 const & p2, 40 | tvec3 const & p3 41 | ) 42 | { 43 | return normalize(cross(p1 - p2, p1 - p3)); 44 | } 45 | }//namespace glm 46 | -------------------------------------------------------------------------------- /include/glm/gtx/normalize_dot.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_normalize_dot 28 | /// @file glm/gtx/normalize_dot.inl 29 | /// @date 2007-09-28 / 2008-10-07 30 | /// @author Christophe Riccio 31 | ////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | template class vecType> 36 | GLM_FUNC_QUALIFIER T normalizeDot(vecType const & x, vecType const & y) 37 | { 38 | return glm::dot(x, y) * glm::inversesqrt(glm::dot(x, x) * glm::dot(y, y)); 39 | } 40 | 41 | template class vecType> 42 | GLM_FUNC_QUALIFIER T fastNormalizeDot(vecType const & x, vecType const & y) 43 | { 44 | return glm::dot(x, y) * glm::fastInverseSqrt(glm::dot(x, x) * glm::dot(y, y)); 45 | } 46 | }//namespace glm 47 | -------------------------------------------------------------------------------- /include/glm/gtx/number_precision.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_number_precision 28 | /// @file glm/gtx/number_precision.inl 29 | /// @date 2007-05-10 / 2011-06-07 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | 36 | } 37 | -------------------------------------------------------------------------------- /include/glm/gtx/optimum_pow.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_optimum_pow 28 | /// @file glm/gtx/optimum_pow.inl 29 | /// @date 2005-12-21 / 2011-06-07 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | template 36 | GLM_FUNC_QUALIFIER genType pow2(genType const & x) 37 | { 38 | return x * x; 39 | } 40 | 41 | template 42 | GLM_FUNC_QUALIFIER genType pow3(genType const & x) 43 | { 44 | return x * x * x; 45 | } 46 | 47 | template 48 | GLM_FUNC_QUALIFIER genType pow4(genType const & x) 49 | { 50 | return (x * x) * (x * x); 51 | } 52 | }//namespace glm 53 | -------------------------------------------------------------------------------- /include/glm/gtx/orthonormalize.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_orthonormalize 28 | /// @file glm/gtx/orthonormalize.inl 29 | /// @date 2005-12-21 / 2011-06-07 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | template 36 | GLM_FUNC_QUALIFIER tmat3x3 orthonormalize(tmat3x3 const & m) 37 | { 38 | tmat3x3 r = m; 39 | 40 | r[0] = normalize(r[0]); 41 | 42 | T d0 = dot(r[0], r[1]); 43 | r[1] -= r[0] * d0; 44 | r[1] = normalize(r[1]); 45 | 46 | T d1 = dot(r[1], r[2]); 47 | d0 = dot(r[0], r[2]); 48 | r[2] -= r[0] * d0 + r[1] * d1; 49 | r[2] = normalize(r[2]); 50 | 51 | return r; 52 | } 53 | 54 | template 55 | GLM_FUNC_QUALIFIER tvec3 orthonormalize(tvec3 const & x, tvec3 const & y) 56 | { 57 | return normalize(x - y * dot(y, x)); 58 | } 59 | }//namespace glm 60 | -------------------------------------------------------------------------------- /include/glm/gtx/perpendicular.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_perpendicular 28 | /// @file glm/gtx/perpendicular.inl 29 | /// @date 2005-12-21 / 2011-06-07 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | template 36 | GLM_FUNC_QUALIFIER vecType perp 37 | ( 38 | vecType const & x, 39 | vecType const & Normal 40 | ) 41 | { 42 | return x - proj(x, Normal); 43 | } 44 | }//namespace glm 45 | -------------------------------------------------------------------------------- /include/glm/gtx/projection.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_projection 28 | /// @file glm/gtx/projection.inl 29 | /// @date 2005-12-21 / 2011-06-07 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | template 36 | GLM_FUNC_QUALIFIER vecType proj(vecType const & x, vecType const & Normal) 37 | { 38 | return glm::dot(x, Normal) / glm::dot(Normal, Normal) * Normal; 39 | } 40 | }//namespace glm 41 | -------------------------------------------------------------------------------- /include/glm/gtx/raw_data.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_raw_data 28 | /// @file glm/gtx/raw_data.inl 29 | /// @date 2008-11-19 / 2011-06-07 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | -------------------------------------------------------------------------------- /include/glm/gtx/scalar_relational.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2012 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_scalar_relational 28 | /// @file glm/gtx/scalar_relational.hpp 29 | /// @date 2013-02-04 / 2013-02-04 30 | /// @author Christophe Riccio 31 | /// 32 | /// @see core (dependence) 33 | /// 34 | /// @defgroup gtx_scalar_relational GLM_GTX_scalar_relational 35 | /// @ingroup gtx 36 | /// 37 | /// @brief Extend a position from a source to a position at a defined length. 38 | /// 39 | /// need to be included to use these functionalities. 40 | /////////////////////////////////////////////////////////////////////////////////// 41 | 42 | #pragma once 43 | 44 | // Dependency: 45 | #include "../glm.hpp" 46 | 47 | #if(defined(GLM_MESSAGES) && !defined(GLM_EXT_INCLUDED)) 48 | # pragma message("GLM: GLM_GTX_extend extension included") 49 | #endif 50 | 51 | namespace glm 52 | { 53 | /// @addtogroup gtx_scalar_relational 54 | /// @{ 55 | 56 | 57 | 58 | /// @} 59 | }//namespace glm 60 | 61 | #include "scalar_relational.inl" 62 | -------------------------------------------------------------------------------- /include/glm/gtx/std_based_type.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_std_based_type 28 | /// @file glm/gtx/std_based_type.inl 29 | /// @date 2008-06-08 / 2011-06-07 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | 36 | } 37 | -------------------------------------------------------------------------------- /include/glm/gtx/transform.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtx_transform 28 | /// @file glm/gtx/transform.inl 29 | /// @date 2005-12-21 / 2011-06-07 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | template 36 | GLM_FUNC_QUALIFIER tmat4x4 translate( 37 | tvec3 const & v) 38 | { 39 | return translate( 40 | tmat4x4(1.0f), v); 41 | } 42 | 43 | template 44 | GLM_FUNC_QUALIFIER tmat4x4 rotate( 45 | T angle, 46 | tvec3 const & v) 47 | { 48 | return rotate( 49 | tmat4x4(1), angle, v); 50 | } 51 | 52 | template 53 | GLM_FUNC_QUALIFIER tmat4x4 scale( 54 | tvec3 const & v) 55 | { 56 | return scale( 57 | tmat4x4(1.0f), v); 58 | } 59 | 60 | }//namespace glm 61 | -------------------------------------------------------------------------------- /include/glm/gtx/type_aligned.inl: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref gtc_type_aligned 28 | /// @file glm/gtc/type_aligned.inl 29 | /// @date 2014-11-23 / 2014-11-23 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | namespace glm 34 | { 35 | 36 | } 37 | -------------------------------------------------------------------------------- /include/glm/integer.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/integer.hpp 29 | /// @date 2013-12-24 / 2013-12-24 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | #include "detail/func_integer.hpp" 36 | -------------------------------------------------------------------------------- /include/glm/matrix.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/matrix.hpp 29 | /// @date 2013-12-24 / 2013-12-24 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | #include "detail/func_matrix.hpp" 36 | -------------------------------------------------------------------------------- /include/glm/packing.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/packing.hpp 29 | /// @date 2013-12-24 / 2013-12-24 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | #include "detail/func_packing.hpp" 36 | -------------------------------------------------------------------------------- /include/glm/trigonometric.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/trigonometric.hpp 29 | /// @date 2013-12-24 / 2013-12-24 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | #include "detail/func_trigonometric.hpp" 36 | -------------------------------------------------------------------------------- /include/glm/vec2.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/vec2.hpp 29 | /// @date 2013-12-24 / 2013-12-24 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | #include "detail/type_vec2.hpp" 36 | -------------------------------------------------------------------------------- /include/glm/vec3.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/vec3.hpp 29 | /// @date 2013-12-24 / 2013-12-24 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | #include "detail/type_vec3.hpp" 36 | -------------------------------------------------------------------------------- /include/glm/vec4.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/vec4.hpp 29 | /// @date 2013-12-24 / 2013-12-24 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | #include "detail/type_vec4.hpp" 36 | -------------------------------------------------------------------------------- /include/glm/vector_relational.hpp: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////////// 2 | /// OpenGL Mathematics (glm.g-truc.net) 3 | /// 4 | /// Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) 5 | /// Permission is hereby granted, free of charge, to any person obtaining a copy 6 | /// of this software and associated documentation files (the "Software"), to deal 7 | /// in the Software without restriction, including without limitation the rights 8 | /// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | /// copies of the Software, and to permit persons to whom the Software is 10 | /// furnished to do so, subject to the following conditions: 11 | /// 12 | /// The above copyright notice and this permission notice shall be included in 13 | /// all copies or substantial portions of the Software. 14 | /// 15 | /// Restrictions: 16 | /// By making use of the Software for military purposes, you choose to make 17 | /// a Bunny unhappy. 18 | /// 19 | /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | /// THE SOFTWARE. 26 | /// 27 | /// @ref core 28 | /// @file glm/vector_relational.hpp 29 | /// @date 2013-12-24 / 2013-12-24 30 | /// @author Christophe Riccio 31 | /////////////////////////////////////////////////////////////////////////////////// 32 | 33 | #pragma once 34 | 35 | #include "detail/func_vector_relational.hpp" 36 | -------------------------------------------------------------------------------- /lib/libSDL2.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/libSDL2.a -------------------------------------------------------------------------------- /lib/libSDL2.dll.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/libSDL2.dll.a -------------------------------------------------------------------------------- /lib/libSDL2_image.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/libSDL2_image.a -------------------------------------------------------------------------------- /lib/libSDL2_image.dll.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/libSDL2_image.dll.a -------------------------------------------------------------------------------- /lib/libglew32.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/libglew32.a -------------------------------------------------------------------------------- /lib/libglew32.dll.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/libglew32.dll.a -------------------------------------------------------------------------------- /lib/mingw_4.8.1/libglew32.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/mingw_4.8.1/libglew32.a -------------------------------------------------------------------------------- /lib/mingw_4.8.1/libglew32.dll.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/mingw_4.8.1/libglew32.dll.a -------------------------------------------------------------------------------- /lib/msvc/SDL2.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/msvc/SDL2.lib -------------------------------------------------------------------------------- /lib/msvc/SDL2_image.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/msvc/SDL2_image.lib -------------------------------------------------------------------------------- /lib/msvc/SDL2main.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/msvc/SDL2main.lib -------------------------------------------------------------------------------- /lib/msvc/SDL2test.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/msvc/SDL2test.lib -------------------------------------------------------------------------------- /lib/msvc/glew32.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/msvc/glew32.lib -------------------------------------------------------------------------------- /lib/msvc/glew32s.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/lib/msvc/glew32s.lib -------------------------------------------------------------------------------- /sln/LightPropagationVolumes.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 15 4 | VisualStudioVersion = 15.0.26430.13 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LightPropagationVolumes", "LightPropagationVolumes.vcxproj", "{07C1131B-89B3-4C26-B8BA-F602FC350C57}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Release|x86 = Release|x86 11 | EndGlobalSection 12 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 13 | {07C1131B-89B3-4C26-B8BA-F602FC350C57}.Release|x86.ActiveCfg = Release|Win32 14 | {07C1131B-89B3-4C26-B8BA-F602FC350C57}.Release|x86.Build.0 = Release|Win32 15 | EndGlobalSection 16 | GlobalSection(SolutionProperties) = preSolution 17 | HideSolutionNode = FALSE 18 | EndGlobalSection 19 | EndGlobal 20 | -------------------------------------------------------------------------------- /src/exceptions.h: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------- 2 | #ifndef EXCEPTIONS_H 3 | #define EXCEPTIONS_H 4 | 5 | #include 6 | #include 7 | 8 | #include "context.h" 9 | #include "headers/exceptionTypes.h" 10 | 11 | //----------------------------------------------------------------------------- 12 | class CException : std::runtime_error, public CEngineBase 13 | { 14 | private: 15 | SException exception; 16 | std::string msg; 17 | 18 | public: 19 | CException(CContext *context, const SException &exception) throw(); 20 | 21 | virtual inline const char *what() const 22 | #ifndef _MSC_VER 23 | noexcept(true) 24 | #endif 25 | { return msg.c_str(); } 26 | }; 27 | //----------------------------------------------------------------------------- 28 | class CExceptions : public CEngineBase 29 | { 30 | private: 31 | // 32 | 33 | public: 34 | inline CExceptions() : CEngineBase() {} 35 | inline CExceptions(CContext *context) : CEngineBase(context) {} 36 | inline ~CExceptions() {} 37 | 38 | inline void throwException(const SException &exception) { /*debug*/ context->error(CStr("%s: %s (%s), File: %s, Code: %d", context->engineGetClassName(exception.sender).c_str(), exception.text.c_str(), exception.description.c_str(), exception.file.c_str(), exception.code)); /*throw CException(context, exception);*/ } 39 | }; 40 | //----------------------------------------------------------------------------- 41 | inline CException::CException(CContext *context, const SException &exception) throw() : std::runtime_error(std::string()), CEngineBase(context), exception(exception) 42 | { 43 | msg = CStr("%s: %s (%s), File: %s, Code: %d", context->engineGetClassName(exception.sender).c_str(), exception.text.c_str(), exception.description.c_str(), exception.file.c_str(), exception.code); 44 | } 45 | //----------------------------------------------------------------------------- 46 | #endif // EXCEPTIONS_H 47 | -------------------------------------------------------------------------------- /src/filesystem.h: -------------------------------------------------------------------------------- 1 | //--------------------------------------------------------------------------- 2 | #ifndef FILESYSTEM_H 3 | #define FILESYSTEM_H 4 | 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | #include "exceptions.h" 11 | #include "headers/fileTypes.h" 12 | 13 | //--------------------------------------------------------------------------- 14 | class CFile : public CEngineBase 15 | { 16 | private: 17 | SFile file; 18 | 19 | public: 20 | CFile(); 21 | CFile(CContext *context, const SFile &file); 22 | ~CFile(); 23 | 24 | void read(void *dest, uint32 bytes); 25 | void write(const void *src, uint32 bytes); 26 | uint32 tell(); 27 | void seek(int32 pos, NFile::ESeek way); 28 | uint32 size(); 29 | void close(); 30 | 31 | inline const SFile *getFile() const { return &file; } 32 | }; 33 | //--------------------------------------------------------------------------- 34 | class CFilesystem : public CEngineBase 35 | { 36 | private: 37 | std::list files; 38 | std::map searchPathes; 39 | 40 | public: 41 | CFilesystem(); 42 | CFilesystem(CContext *context); 43 | ~CFilesystem(); 44 | 45 | CFile *open(const SFile &file); 46 | 47 | inline void addSearchPath(const std::string &path) { searchPathes[path] = path; } 48 | inline uint32 removeSearchPath(const std::string &path) { return searchPathes.erase(path); } 49 | inline void clearSearchPathes() { searchPathes.clear(); } 50 | 51 | inline uint32 getFilesCount() const { return files.size(); } 52 | inline CFile *getFile(uint32 id) { if(id > files.size()) return NULL; auto it = files.begin(); std::advance(it, id); return &(*it); } 53 | std::vector getSearchPathes() const; 54 | 55 | std::string getStringList() const; 56 | }; 57 | //--------------------------------------------------------------------------- 58 | #endif // FILESYSTEM_H 59 | -------------------------------------------------------------------------------- /src/headers/cameraTypes.h: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------- 2 | #ifndef CAMERATYPES_H 3 | #define CAMERATYPES_H 4 | 5 | #include 6 | 7 | #include "math.h" 8 | 9 | //------------------------------------------------------------------------------ 10 | namespace NCamera 11 | { 12 | static const float CLIP_NEAR = 0.1f; 13 | static const float CLIP_FAR = 1000.0f; 14 | static const float CLIP_BACKDROP_NEAR = 10.0f; 15 | static const float CLIP_BACKDROP_FAR = 10000.0f; 16 | static const float FOV = 60.0f; 17 | 18 | static const float SCALE_X = -1.0f; 19 | static const float SCALE_Y = 1.0f; 20 | static const float SCALE_Z = 1.0f; 21 | 22 | static const float ORTHO_FBO_SCALE_X = 1.0f; 23 | static const float ORTHO_FBO_SCALE_Y = 1.0f; 24 | static const float ORTHO_FBO_SCALE_Z = -1.0f; 25 | 26 | static const float MOVEMENT_SPEED = 1.0f; 27 | static const float SENSITIVITY_SPEED = 1.0f; 28 | 29 | enum EProjection 30 | { 31 | PROJ_PERSPECTIVE = 0, 32 | PROJ_ORTOGRAPHIC 33 | }; 34 | } 35 | //----------------------------------------------------------------------------- 36 | struct SCamera 37 | { 38 | glm::vec4 position; 39 | glm::vec4 rotation; 40 | glm::vec3 scale; 41 | 42 | float width; 43 | float height; 44 | 45 | NCamera::EProjection projType; 46 | 47 | float clipNear; 48 | float clipFar; 49 | float clipLeft; 50 | float clipRight; 51 | float clipTop; 52 | float clipBottom; 53 | 54 | float fov; 55 | 56 | glm::mat4 projection; 57 | glm::mat4 view; 58 | glm::mat4 viewProjection; 59 | glm::mat4 modelView; 60 | 61 | SCamera() : 62 | position(0.0, 0.0, 0.0, NCamera::MOVEMENT_SPEED), 63 | rotation(0.0, 0.0, 0.0, NCamera::SENSITIVITY_SPEED), 64 | scale(NCamera::SCALE_X, NCamera::SCALE_Y, NCamera::SCALE_Z), 65 | width(1.0), 66 | height(1.0), 67 | projType(NCamera::PROJ_PERSPECTIVE), 68 | clipNear(NCamera::CLIP_NEAR), 69 | clipFar(NCamera::CLIP_FAR), 70 | clipLeft(0.0f), 71 | clipRight(0.0f), 72 | clipTop(0.0f), 73 | clipBottom(0.0f), 74 | fov(NCamera::FOV) {} 75 | }; 76 | //----------------------------------------------------------------------------- 77 | #endif // CAMERATYPES_H 78 | -------------------------------------------------------------------------------- /src/headers/cullingTypes.h: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------- 2 | #ifndef CULLINGTYPES_H 3 | #define CULLINGTYPES_H 4 | 5 | #include "types.h" 6 | 7 | //----------------------------------------------------------------------------- 8 | namespace NCulling 9 | { 10 | static const uint8 FRUSTUM_PLANES = 6; 11 | static const uint8 FRUSTUM_PLANE_CORNERS = 4; 12 | } 13 | //----------------------------------------------------------------------------- 14 | struct SFrustum 15 | { 16 | float frustum[NCulling::FRUSTUM_PLANES][NCulling::FRUSTUM_PLANE_CORNERS]; 17 | 18 | inline SFrustum() 19 | { 20 | memset(&frustum, 0, sizeof(float) * NCulling::FRUSTUM_PLANES * NCulling::FRUSTUM_PLANE_CORNERS); 21 | } 22 | }; 23 | //----------------------------------------------------------------------------- 24 | #endif // CULLINGTYPES_H 25 | -------------------------------------------------------------------------------- /src/headers/exceptionTypes.h: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------- 2 | #ifndef EXCEPTIONTYPES_H 3 | #define EXCEPTIONTYPES_H 4 | 5 | #include 6 | 7 | #include "types.h" 8 | 9 | //----------------------------------------------------------------------------- 10 | namespace NException 11 | { 12 | // 13 | } 14 | //----------------------------------------------------------------------------- 15 | struct SException 16 | { 17 | const CEngineBase *sender; 18 | const std::string text; 19 | const std::string description; 20 | const std::string file; 21 | uint32 code; 22 | 23 | inline SException() : sender(NULL), code(0) {} 24 | inline SException(const CEngineBase *sender, const std::string &text, const std::string &description = std::string(), const std::string &file = std::string(), uint32 code = 0) : sender(sender), text(text), description(description), file(file), code(code) {} 25 | }; 26 | //----------------------------------------------------------------------------- 27 | #endif // EXCEPTIONTYPES_H 28 | -------------------------------------------------------------------------------- /src/headers/fileTypes.h: -------------------------------------------------------------------------------- 1 | //--------------------------------------------------------------------------- 2 | #ifndef FILETYPES_H 3 | #define FILETYPES_H 4 | 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | #include "types.h" 11 | 12 | //--------------------------------------------------------------------------- 13 | namespace NFile 14 | { 15 | static const uint8 SIGNATURE_LENGTH = 3; 16 | static const uint8 SIGNATURE_LENGTH_LONG = 4; 17 | 18 | static const uint32 SEARCH_PATHES_COUNT = 5; 19 | 20 | static const char STR_DATA_MAPS[] = "maps/"; 21 | static const char STR_DATA_MODELS[] = "models/"; 22 | static const char STR_DATA_SHADERS[] = "shaders/"; 23 | static const char STR_DATA_SETTINGS[] = "settings.ini"; 24 | 25 | static const char STR_ERROR_UNABLE_OPEN[] = "Unable to open file: \"%s\""; 26 | static const char STR_ERROR_READ_BEYOND[] = "Read beyond end of file"; 27 | 28 | static const char STR_FILES_LIST[] = "%ud, %s"; 29 | 30 | static const char *const STR_SEARCH_PATHES[] = { "", "bin/", "data/", "../bin/", "../data/" }; 31 | 32 | enum EMode 33 | { 34 | MODE_INACITVE = 0, 35 | MODE_READ, 36 | MODE_WRITE, 37 | MODE_CLOSE 38 | }; 39 | 40 | enum ESeek 41 | { 42 | FSEEK_BEG = 0, 43 | FSEEK_CUR, 44 | FSEEK_END 45 | }; 46 | } 47 | //--------------------------------------------------------------------------- 48 | struct SFile 49 | { 50 | NFile::EMode mode; 51 | int32 id; 52 | std::string prefix; 53 | std::string path; 54 | std::ifstream *in; 55 | std::ofstream *out; 56 | bool quiet; 57 | 58 | inline SFile() : mode(NFile::MODE_INACITVE), id(-1), in(NULL), out(NULL), quiet(false) {} 59 | inline SFile(const std::string &path, NFile::EMode mode = NFile::MODE_READ) : mode(mode), id(-1), path(path), in(NULL), out(NULL), quiet(false) {} 60 | inline SFile(const std::string &path, bool quiet, NFile::EMode mode = NFile::MODE_READ) : mode(mode), id(-1), path(path), in(NULL), out(NULL), quiet(quiet) {} 61 | }; 62 | //--------------------------------------------------------------------------- 63 | #endif // FILETYPES_H -------------------------------------------------------------------------------- /src/headers/rendererTypes.h: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | #ifndef RENDERERTYPES_H 3 | #define RENDERERTYPES_H 4 | 5 | #include "shaderTypes.h" 6 | 7 | //------------------------------------------------------------------------------ 8 | namespace NRenderer 9 | { 10 | enum EMode 11 | { 12 | MODE_STANDARD = 0, 13 | MODE_BACKDROP, 14 | MODE_PICK, 15 | MODE_SUN_RAYS, 16 | MODE_SUN_RAYS_BACKDROP, 17 | MODE_DEPTH, 18 | MODE_DEPTH_CASCADE, 19 | MODE_GEOMETRY, 20 | MODE_GEOMETRY_CASCADE, 21 | MODE_LPV_CLEAR_GEOMETRY, 22 | MODE_LPV_INJECTION_GEOMETRY, 23 | MODE_LPV_PROPAGATION_GATHERING_GEOMETRY, 24 | MODE_LPV_PROPAGATION_SCATTERING_GEOMETRY, 25 | MODE_SSLPV_CLEAR_GEOMETRY, 26 | MODE_SSLPV_INJECTION_GEOMETRY, 27 | MODE_SSLPV_PROPAGATION_GATHERING_GEOMETRY, 28 | MODE_SSLPV_PROPAGATION_SCATTERING_GEOMETRY, 29 | MODE_LPV_CLEAR_COMPUTE, 30 | MODE_LPV_INJECTION_COMPUTE, 31 | MODE_LPV_PROPAGATION_GATHERING_COMPUTE, 32 | MODE_LPV_PROPAGATION_SCATTERING_COMPUTE, 33 | MODE_SSLPV_CLEAR_COMPUTE, 34 | MODE_SSLPV_INJECTION_COMPUTE, 35 | MODE_SSLPV_PROPAGATION_GATHERING_COMPUTE, 36 | MODE_SSLPV_PROPAGATION_SCATTERING_COMPUTE 37 | }; 38 | } 39 | //------------------------------------------------------------------------------ 40 | struct SRenderMesh 41 | { 42 | GLuint vboVertices; 43 | GLuint vboIndices; 44 | GLuint instances; 45 | uint32 faceStart; 46 | uint32 facesCount; 47 | const SShaderState *technique; 48 | const SMaterial *material; 49 | 50 | inline SRenderMesh() : vboVertices(0), vboIndices(0), instances(0), faceStart(0), facesCount(0), technique(NULL), material(NULL) {} 51 | inline SRenderMesh(GLuint vboVertices, GLuint vboIndices, GLuint instances, uint32 faceStart, uint32 facesCount, const SShaderState *technique, const SMaterial *material = NULL) : vboVertices(vboVertices), vboIndices(vboIndices), instances(instances), faceStart(faceStart), facesCount(facesCount), technique(technique), material(material) {} 52 | }; 53 | //------------------------------------------------------------------------------ 54 | struct SRenderer 55 | { 56 | NRenderer::EMode mode; 57 | 58 | inline SRenderer() : mode(NRenderer::MODE_STANDARD) {} 59 | }; 60 | //------------------------------------------------------------------------------ 61 | #endif // RENDERERTYPES_H 62 | -------------------------------------------------------------------------------- /src/headers/stringTypes.h: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | #ifndef STRINGTYPES_H 3 | #define STRINGTYPES_H 4 | 5 | #include "types.h" 6 | 7 | //------------------------------------------------------------------------------ 8 | namespace NStr 9 | { 10 | static const uint32 MAX_PATH_LEN = 100; 11 | 12 | static const char C_FORMAT_SIGN = '%'; 13 | static const char C_FORMAT_EXCEPT = '\\'; 14 | 15 | static const char C_FORMAT_CHARACTER = 'c'; 16 | static const char C_FORMAT_BYTE = 'b'; 17 | static const char C_FORMAT_SHORT = 'h'; 18 | static const char C_FORMAT_INT = 'i'; 19 | static const char C_FORMAT_INTEGER = 'd'; 20 | static const char C_FORMAT_LONG = 'l'; 21 | static const char C_FORMAT_HEX_INT = 'x'; 22 | static const char C_FORMAT_HEX_LONG = 'y'; 23 | static const char C_FORMAT_DOUBLE_FLOAT = 'f'; 24 | static const char C_FORMAT_POINTER = 'p'; 25 | static const char C_FORMAT_STRING = 's'; 26 | static const char C_FORMAT_UNSIGNED = 'u'; 27 | 28 | static const char STR_HEX_PREFIX[] = "0x"; 29 | static const char STR_PATH_SEPARATORS[] = "/\\"; 30 | static const char STR_EXTENSION_SEPARATOR[] = "."; 31 | 32 | static const char STR_UNIX_EXE_PATH[] = "/proc/%ud/exe"; 33 | 34 | static const char STR_TYPE_SIZES[] = 35 | " bool %d\n" 36 | " char %d\n" 37 | "unsigned char %d\n" 38 | " short %d\n" 39 | "unsigned short %d\n" 40 | " int %d\n" 41 | "unsigned int %d\n" 42 | " long %d\n" 43 | "unsigned long %d\n" 44 | " long long %d\n" 45 | "unsigned long long %d\n" 46 | " float %d\n" 47 | " void %d\n" 48 | " int8_t %d\n" 49 | " uint8_t %d\n" 50 | " int16_t %d\n" 51 | " uint16_t %d\n" 52 | " int32_t %d\n" 53 | " uint32_t %d\n" 54 | " int64_t %d\n" 55 | " uint64_t %d\n"; 56 | } 57 | //------------------------------------------------------------------------------ 58 | #endif //STRINGTYPES_H -------------------------------------------------------------------------------- /src/headers/types.h: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------- 2 | #ifndef TYPES_H 3 | #define TYPES_H 4 | 5 | #include 6 | 7 | //----------------------------------------------------------------------------- 8 | #define UNUSED(X) ((void) (X)) 9 | 10 | typedef char int8; 11 | typedef unsigned char uint8; 12 | typedef unsigned char uchar; 13 | typedef short int16; 14 | typedef unsigned short uint16; 15 | typedef unsigned short ushort; 16 | typedef int int32; 17 | typedef unsigned int uint32; 18 | typedef unsigned int uint; 19 | typedef unsigned long ulong; 20 | typedef long long int64; 21 | typedef long long llong; 22 | typedef unsigned long long uint64; 23 | typedef unsigned long long ullong; 24 | //----------------------------------------------------------------------------- 25 | #endif // TYPES_H 26 | -------------------------------------------------------------------------------- /src/main.cpp: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | #include "engine.h" 3 | 4 | #undef main 5 | //------------------------------------------------------------------------------ 6 | int main(int argc, char *argv[]) 7 | { 8 | #ifdef ENV_QT 9 | QApplication a(argc, argv); 10 | #endif 11 | 12 | CEngine e(argc, argv); 13 | #ifdef ENV_QT 14 | e.show(); 15 | #endif 16 | 17 | try 18 | { 19 | return 20 | #if defined(ENV_QT) 21 | a 22 | #elif defined(ENV_SDL) 23 | e 24 | #endif 25 | .exec(); 26 | } 27 | catch(std::runtime_error &re) 28 | { 29 | e.showMessage("Critical Exception", re.what()); 30 | } 31 | 32 | return 0; 33 | } 34 | //------------------------------------------------------------------------------ 35 | -------------------------------------------------------------------------------- /src/matrix.h: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | #ifndef MATRIX_H 3 | #define MATRIX_H 4 | 5 | #include "vector.h" 6 | 7 | //------------------------------------------------------------------------------ 8 | class CMat4 9 | { 10 | private: 11 | // 12 | 13 | public: 14 | inline CMat4() {} 15 | inline ~CMat4() {} 16 | }; 17 | //------------------------------------------------------------------------------ 18 | #endif // MATRIX_H 19 | -------------------------------------------------------------------------------- /src/pickColor.h: -------------------------------------------------------------------------------- 1 | //--------------------------------------------------------------------------- 2 | #ifndef PICKCOLOR_H 3 | #define PICKCOLOR_H 4 | 5 | #include "framebuffers.h" 6 | 7 | //--------------------------------------------------------------------------- 8 | class CPickColor : public CEngineBase 9 | { 10 | private: 11 | NMap::EPickColorInc inc; 12 | SColor color; 13 | 14 | public: 15 | inline CPickColor() : CEngineBase() {} 16 | inline CPickColor(CContext *context, NMap::EPickColorInc inc = NMap::PICK_INC_1) : CEngineBase(context), inc(inc) { restart(); } 17 | inline ~CPickColor() {} 18 | 19 | inline void setInc(NMap::EPickColorInc inc) { this->inc = inc; } 20 | inline void setColor(const SColor &color) { this->color = color; } 21 | inline void restart() { uint8 i = static_cast(inc); color = SColor(i, i, i); } 22 | 23 | inline const SColor *getColor() const { return &color; } 24 | const SColor &getNextColor(); 25 | inline NMap::EPickColorInc getInc() const { return inc; } 26 | }; 27 | //--------------------------------------------------------------------------- 28 | inline const SColor &CPickColor::getNextColor() 29 | { 30 | uint8 i = static_cast(inc); 31 | color.b += i; 32 | 33 | if(color.b >= (255 - i)) 34 | { 35 | color.b = i; 36 | color.g += i; 37 | } 38 | 39 | if(color.g >= (255 - i)) 40 | { 41 | color.g = i; 42 | color.r += i; 43 | } 44 | 45 | if(color.r >= (255 - i)) 46 | { 47 | color.r = 0; 48 | color.g = 0; 49 | color.b = 0; 50 | } 51 | 52 | return color; 53 | } 54 | //--------------------------------------------------------------------------- 55 | #endif // PICKCOLOR_H 56 | -------------------------------------------------------------------------------- /src/renderer.h: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | #ifndef RENDERER_H 3 | #define RENDERER_H 4 | 5 | #include "shaders.h" 6 | 7 | //------------------------------------------------------------------------------ 8 | class CRenderer : public CEngineBase 9 | { 10 | private: 11 | SRenderer renderer; 12 | 13 | std::vector > meshes; 14 | 15 | public: 16 | CRenderer(); 17 | CRenderer(CContext *context); 18 | ~CRenderer(); 19 | 20 | void addMesh(const SRenderMesh &mesh); 21 | void dispatch() const; 22 | void clearGroups(); 23 | 24 | inline void setMode(NRenderer::EMode mode = NRenderer::MODE_STANDARD) { renderer.mode = mode; } 25 | 26 | const SRenderer *getRenderer() const { return &renderer; } 27 | }; 28 | //------------------------------------------------------------------------------ 29 | #endif // RENDERER_H 30 | -------------------------------------------------------------------------------- /src/vector.h: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | #ifndef VECTOR_H 3 | #define VECTOR_H 4 | 5 | #include "string.h" 6 | #include "headers/math.h" 7 | 8 | //------------------------------------------------------------------------------ 9 | class CVec4 10 | { 11 | private: 12 | // 13 | 14 | public: 15 | inline CVec4() {} 16 | inline ~CVec4() {} 17 | }; 18 | //------------------------------------------------------------------------------ 19 | #endif // VECTOR_H 20 | -------------------------------------------------------------------------------- /tools/glcorearb/.vs/glcorearb/v14/.suo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/tools/glcorearb/.vs/glcorearb/v14/.suo -------------------------------------------------------------------------------- /tools/glcorearb/glcorearb.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djbozkosz/Light-Propagation-Volumes/74020d5e5fcaaf0e22ba3cd9314baee0a9a7757a/tools/glcorearb/glcorearb.exe -------------------------------------------------------------------------------- /tools/glcorearb/glcorearb.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 14 4 | VisualStudioVersion = 14.0.23107.0 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glcorearb", "glcorearb.vcxproj", "{7EE8CD94-E12F-4E23-8467-D6101448E58B}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|x64 = Debug|x64 11 | Debug|x86 = Debug|x86 12 | Release|x64 = Release|x64 13 | Release|x86 = Release|x86 14 | EndGlobalSection 15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 16 | {7EE8CD94-E12F-4E23-8467-D6101448E58B}.Debug|x64.ActiveCfg = Debug|x64 17 | {7EE8CD94-E12F-4E23-8467-D6101448E58B}.Debug|x64.Build.0 = Debug|x64 18 | {7EE8CD94-E12F-4E23-8467-D6101448E58B}.Debug|x86.ActiveCfg = Debug|Win32 19 | {7EE8CD94-E12F-4E23-8467-D6101448E58B}.Debug|x86.Build.0 = Debug|Win32 20 | {7EE8CD94-E12F-4E23-8467-D6101448E58B}.Release|x64.ActiveCfg = Release|x64 21 | {7EE8CD94-E12F-4E23-8467-D6101448E58B}.Release|x64.Build.0 = Release|x64 22 | {7EE8CD94-E12F-4E23-8467-D6101448E58B}.Release|x86.ActiveCfg = Release|Win32 23 | {7EE8CD94-E12F-4E23-8467-D6101448E58B}.Release|x86.Build.0 = Release|Win32 24 | EndGlobalSection 25 | GlobalSection(SolutionProperties) = preSolution 26 | HideSolutionNode = FALSE 27 | EndGlobalSection 28 | EndGlobal 29 | -------------------------------------------------------------------------------- /tools/glcorearb/glcorearb.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | 14 | 15 | Source Files 16 | 17 | 18 | 19 | 20 | Header Files 21 | 22 | 23 | Header Files 24 | 25 | 26 | Header Files 27 | 28 | 29 | -------------------------------------------------------------------------------- /tools/glcorearb/src/gl.txt: -------------------------------------------------------------------------------- 1 | verze - ext 2 | string - ver/ext name 3 | types list - typedef void GLvoid; ... 4 | defines list - #define GL_LESS 0x0201 ... 5 | function types list - typedef GLboolean (APIENTRYP PFNGLISTEXTUREPROC) (GLuint texture); 6 | prototypes list - GLAPI void APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count); --------------------------------------------------------------------------------