Commit Graph

9836 Commits

Author SHA1 Message Date
Yao Wei Tjong 姚伟忠
0fe597223f Add initial support for integration tests on Emscripten platform.
At the moment the 'make test' cannot be run non-interactively yet on Linux host and Mac OS X host systems due to what-could-be a bug in 'emrun' script. The issue with 'emrun' has been reported to upstream (https://github.com/kripken/emscripten/issues/3234).
2015-03-07 12:00:47 +08:00
Lasse Öörni
f660213930 Fix AngelScript API compile on VS2015. Add CMake bat file for VS2015. 2015-03-07 01:09:13 +02:00
Lasse Öörni
6112220b16 Cube maps, point light shadows & deferred / light prepass rendering on D3D11. 2015-03-05 23:32:16 +02:00
Lasse Öörni
1d165f3e55 Fix crash when calling FixInterpolation() on compressed sound data. Add better explanation as this function is normally not needed to be called. 2015-03-05 20:45:20 +02:00
Yao Wei Tjong 姚伟忠
6a145befa5 Misc. clean up. [ci skip] 2015-03-05 21:57:31 +08:00
Yao Wei Tjong 姚伟忠
6ef0f702c7 For Travis CI - sync the samples first then update json data file.
[ci skip]
2015-03-05 17:31:10 +08:00
Yao Wei Tjong 姚伟忠
6c3d32d64a Use Urho3D custom HTML shell for Emscripten build.
Simplify the custom command for share data generation since we are not going to "fix" the UUID issue of the file_packager.py anymore. Although this would mean the slightest change in the output JS file caused by UUID change could force a long relink process in our build.
For Travis CI - upload Emscripten HTML5 samples to Urho3D main website.
[ci package]
2015-03-05 16:23:59 +08:00
Lasse Öörni
8b49a21587 Fix shadow alpha mask shader. 2015-03-05 00:42:19 +02:00
Lasse Öörni
4542e38b73 Fix terrain shader on D3D11. 2015-03-05 00:32:25 +02:00
Lasse Öörni
17cf79ab82 D3D11 rendertarget and initial shadow (directional & spot light) support. Fix creating too many rasterizer states for depth bias by quantizing. Fix crash on exit if states failed to create. 2015-03-05 00:21:21 +02:00
Lasse Öörni
6f68c07486 Moved std::begin() and std::end() for Urho containers into their respective header files, so that including ForEach.h is not needed for using the native range-based for. 2015-03-04 16:38:04 +02:00
Lasse Öörni
6fd6efc4c3 Update PugiXml to 1.5. Do not attempt to parse .txt & .icns files as xml in the editor resource browser, to prevent log spam. 2015-03-04 16:10:21 +02:00
aster2013
d34dd34fc9 Use array for glyph index to char code mapping. 2015-03-04 10:06:47 +08:00
Yao Wei Tjong 姚伟忠
e7f6e04eec Preserve the JS output file timestamp to avoid unnecessary re-link.
At the moment a re-link may still take place due to a limitation of Emscripten's file_packager.py tool.
2015-03-04 00:28:59 +08:00
Yao Wei Tjong 姚伟忠
4d34d0a626 Add new Emscripten build option for creating shared data file. 2015-03-03 23:32:27 +08:00
aster2013
897b1e6acc Fix #675. 2015-03-03 18:57:21 +08:00
Yao Wei Tjong 姚伟忠
2a6401eb54 Code cleanup on setup_emscripten_linker_flags CMake macro. 2015-03-03 13:14:49 +08:00
Lasse Öörni
3feb6875fd Do not redirect final quad rendering to the backbuffer on OpenGL after rendertarget ping-ponging. Fixes #674. 2015-03-02 21:04:34 +02:00
Yao Wei Tjong 姚伟忠
02572a9ec5 Add generic support for embedding and loading files for Emscripten.
Via the following source file property "EMCC_OPTION". The supported property values are: js-library, pre-js, post-js, embed-file, preload-file, shell-file. The files are added as link dependency so a relink will automatically occur when they are modified (have newer timestamp than target).
2015-03-03 01:16:40 +08:00
Lasse Öörni
a3ae935de2 Remove the HLSL4 directory. 2015-03-02 03:41:10 +02:00
Lasse Öörni
e919935abd Merge back D3D9 & D3D11 shaders using macros. Removed the "custom" constant buffer slot; rather allow to prevent the default material CB from being defined. 2015-03-02 03:39:21 +02:00
Lasse Öörni
7b339ef36b Fixed rasterizer state hash calculation. 2015-03-01 23:47:53 +02:00
Lasse Öörni
4ea4485d9f Fix LitSolid & LitParticle shaders failing to create input layout (missing normals.) Log more detailed error when input layout creation fails. 2015-03-01 21:33:55 +02:00
Lasse Öörni
d1a7fad925 More SM4 shaders. Do not render on D3D11 when shaders are not valid. 2015-03-01 19:34:41 +02:00
Lasse Öörni
73c847fbeb Separate D3D11 shaders as the compatibility mode did not sample eg. the light ramp texture correctly. 2015-03-01 19:14:56 +02:00
Lasse Öörni
e7f83624aa Fix update of smallest compressed texture miplevels on D3D11. 2015-03-01 15:37:16 +02:00
Lasse Öörni
d7a16d6713 Fix potential negative specular lighting. Fix recreating the sampler state when a texture has been reloaded. 2015-03-01 14:08:01 +02:00
Lasse Öörni
480284fb23 Removed the triangle count based instancing check, as instancing a large number of the same mesh should always result in less CPU time. 2015-03-01 13:54:09 +02:00
Lasse Öörni
e870cd6624 Implement flush GPU mode by calling SetMaximumFrameLatency(). 2015-03-01 03:04:06 +02:00
Lasse Öörni
876d1834eb Add D3D11 sampler states. Fix crash on empty vertex declaration. Fix Matrix3x3 uniforms on D3D11. Modify gpuObjects_ to PODVector. 2015-03-01 02:38:39 +02:00
Lasse Öörni
45d4e42240 Remove the shader parameter enum from Lua bindings as it is not used anywhere in the script-callable API. 2015-02-28 22:34:50 +02:00
Lasse Öörni
2d8696f7dd Fix crash on fullscreen / windowed switch. 2015-02-28 22:15:12 +02:00
Lasse Öörni
abe0614268 Fix skinning on D3D11. 2015-02-28 21:40:42 +02:00
Lasse Öörni
a1d1f08190 Split uniforms into constant buffers on D3D11. 2015-02-28 21:09:41 +02:00
Lasse Öörni
5ac8f1fb43 Clean up / reorder light shader parameter handling. 2015-02-28 19:51:18 +02:00
Lasse Öörni
f13a6a338f Fix typo and unnecessary expansion of the terrain update region. 2015-02-28 19:32:20 +02:00
Yao Wei Tjong 姚伟忠
3af78c291b Code cleanup on CMake/Emscripten toolchain file.
Remove hardcoding that we don't need.
2015-03-01 00:23:24 +08:00
Lasse Öörni
e8d4a05ab8 Fix incorrect partial terrain update when smoothing was used. Improve worst-case performance for partial terrain update by only tracking one rectangular region that encloses the changed area. 2015-02-28 16:07:20 +02:00
Yao Wei Tjong 姚伟忠
52ac4912b4 Minor code clean up on setting up the RPI supported ABIs.
[ci skip]
2015-02-28 12:19:01 +08:00
Lasse Öörni
7a91aa0852 Initial Texture2D support. 2015-02-28 02:27:45 +02:00
Yao Wei Tjong 姚伟忠
9612a5c164 For Travis CI - add CI build jobs for Raspberry Pi 2. 2015-02-27 22:45:35 +08:00
Yao Wei Tjong 姚伟忠
536b0a5429 Add new build option for better targeting Raspberry Pi platform. 2015-02-27 22:19:44 +08:00
Lasse Öörni
d4524e25c7 Fixed vertex position not getting passed to pixel shader. Rework the mechanism used to keep track of dirty constant buffers. 2015-02-27 01:27:59 +02:00
Lasse Öörni
cf5f5e4a18 Fixed missing CheckFeatureSupport() & missing PrepareDraw() in instanced draw call. 2015-02-27 01:00:03 +02:00
Lasse Öörni
20756b554d Applied btGjkPairDetector fix from Bullet head revision. 2015-02-26 11:17:45 +02:00
Yao Wei Tjong 姚伟忠
4b6951f9f4 For Travis CI - return exit code from worker thread correctly. 2015-02-26 17:15:32 +08:00
Yao Wei Tjong 姚伟忠
e6908cf859 Add Emscripten 'aggessive variable elimination' flag on Release build. 2015-02-26 16:14:07 +08:00
Yao Wei Tjong 姚伟忠
ddcdf8ed10 For Travis CI - speed up Emscripten Debug configuration build. 2015-02-26 15:54:10 +08:00
Yao Wei Tjong 姚伟忠
e780854eec Enhance Rakefile to perform xcodebuild install in a worker thread.
The main Ruby thread outputs '.' character while waiting for the worker thread to complete. This should avoid Travis-CI from thinking the install process has stalled.
2015-02-26 15:43:07 +08:00
Lasse Öörni
a936eab7c7 Initial D3D11 constant buffer handling. If URHO3D_D3D11 option given, disable OpenGL, but error out on non-Windows platforms. 2015-02-26 02:50:59 +02:00