Commit Graph

9869 Commits

Author SHA1 Message Date
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
Lasse Öörni
48483ac07c Reduce number of distinct shader parameter groups to prepare for mapping them to constant buffers. 2015-02-26 00:58:25 +02:00
Lasse Öörni
3685373e77 Do not store window position in fullscreen mode; would be 0,0 and position the window to hard top-left after switching back to windowed. 2015-02-26 00:04:56 +02:00
Lasse Öörni
6e6c39c5a8 Add a ShaderProgram class also for D3D9, which holds the combined shader parameters. Cleaned up ShaderProgram handling on OpenGL. Optimized away repeated assignment of constant values from D3D9 SetShaderParameter(). 2015-02-25 23:31:10 +02:00
Yao Wei Tjong 姚伟忠
cf77a15e6f Fix Android build with LuaJIT enabled on Mac OS X host system. Take 2. 2015-02-25 22:46:11 +08:00
Yao Wei Tjong 姚伟忠
904aedef93 Fix Android build with LuaJIT enabled on Mac OS X host system.
Close #670.
2015-02-25 19:07:53 +08:00
Lasse Öörni
4ce7ed6838 Parse shader parameters & texture units. Removed comment stripping as it did not work reliably for SM4 shaders. 2015-02-25 02:05:18 +02:00
Lasse Öörni
1c32e957f8 Create input layouts on demand. Inspect vertex shader's input signature. Fixed setting rendertarget & depth-stencil views. Implement draw calls. 2015-02-24 23:46:27 +02:00
Lasse Öörni
0c48c9df87 Fix Assimp to not give negative light direction. Fix FOV handling for spot lights in AssetImporter. Added error prints to Editor if fails to execute AssetImporter. Closes #669. 2015-02-24 12:19:25 +02:00
Lasse Öörni
1e1b44c4aa Added placeholder for shader resource view in Texture classes. Fixed shader creation from bytecode to use the correct bytecode size. 2015-02-24 09:46:36 +02:00
Lasse Öörni
f4aee7da2b Vertex & index buffer creation & update. State object creation. 2015-02-23 23:04:38 +02:00
Lasse Öörni
7b05a853d4 Merge pull request #668 from AtomicGameEngine/Fix-View3D
Fix typo in View3D size check
2015-02-23 02:31:49 +02:00
Josh Engebretson
4339a09194 Fix typo in View3D size check 2015-02-22 16:15:35 -08:00
Lasse Öörni
9f129ecd51 Merge branch 'master' into render-refactor 2015-02-23 01:43:02 +02:00
Lasse Öörni
9a98779ae9 Remove StreamFrequency related functions from Graphics public API as unnecessary. 2015-02-23 00:32:50 +02:00
Lasse Öörni
281809121c Skeleton of D3D11 graphics classes. Does not render anything visible yet and many functions lack implementation. 2015-02-22 22:44:12 +02:00
Lasse Öörni
4fd2fe20b8 Fix Editor to not use the sm3Support variable any more. 2015-02-22 02:19:23 +02:00
Lasse Öörni
51c80107e9 Removed debug log prints from OGLGraphics.cpp. Fixed build warnings. 2015-02-21 22:08:25 +02:00