Lasse Öörni
234c57a598
Minor documentation update. [ci rebase]
2015-03-24 18:21:49 +02:00
Lasse Öörni
7666853b3a
Revert "Create depth-stencil texture instead of renderbuffer on OpenGL 3 / Intel / Windows to work around a driver bug." as the issue is fixed on the latest Intel driver. There was also a OpenGL 2 corrupted rendering bug related to clip planes on the earlier driver version, which was not fixable.
...
This reverts commit d99fefa68b
.
2015-03-23 20:54:33 +02:00
Chris Friesen
909860635a
Fix usage of word
2015-03-22 20:30:05 -05:00
Chris Friesen
8e2b9475a8
Fix spelling
2015-03-22 20:21:53 -05:00
Lasse Öörni
d99fefa68b
Create depth-stencil texture instead of renderbuffer on OpenGL 3 / Intel / Windows to work around a driver bug.
2015-03-23 03:06:18 +02:00
Lasse Öörni
64600d5526
Enable GLEW experimental mode only on a 3.2+ context so that OpenGL 2 extensions can be checked strictly.
2015-03-22 19:00:04 +02:00
Lasse Öörni
ac60622d6b
Fix WinXP compatibility of kNet's Clock class.
2015-03-22 15:16:54 +02:00
Lasse Öörni
b7f76ea711
Search for DirectX SDK also on OpenGL build to fix build failure on old Visual Studio (2008/2010) if the SDK is not set as a VS default include directory.
...
Conflicts:
CMake/Modules/FindDirect3D.cmake
2015-03-22 15:03:00 +02:00
Lasse Öörni
f9d02e7299
Search for DirectX SDK also on OpenGL build to fix build failure on old Visual Studio (2008/2010) if the SDK is not set as a VS default include directory.
2015-03-22 14:51:40 +02:00
Lasse Öörni
596c32345e
Force extra screen buffers to RGBA only on OpenGL 2.
2015-03-21 23:38:33 +02:00
Lasse Öörni
b8c7c59eca
Configure amount of allowed bones for hardware skinning based on the rendering API. Allow 128 bones on Direct3D 11 & OpenGL 3. Add -mb (maxbones) parameter to AssetImporter & OgreImporter. When using OpenGL 3, allow deferred rendering to use different MRT formats without forcing an RGBA substitute rendertarget.
2015-03-21 23:22:08 +02:00
Lasse Öörni
a363fa2b0e
Update documentation related to DirectX SDK and shader compiling.
2015-03-21 13:31:01 +02:00
Lasse Öörni
7989be4ba8
Set D3D11 textures also for the vertex shader to enable vertex texture fetch to work as on OpenGL.
2015-03-21 02:03:40 +02:00
Lasse Öörni
81e6647b60
Clean up OpenGL Graphics class code. Use core functions for instancing on OpenGL 3. Do not enable/disable texture targets on OpenGL 3. Removed the framebuffer aging mechanism; instead framebuffers are cleaned up on context loss (resolution change.) Disable OpenGL constant buffer use by default (from Uniforms.glsl) as they were found to be slower in practice.
2015-03-21 01:56:38 +02:00
Lasse Öörni
7716b4860c
Use a reinterpret-cast trick to eliminate code duplication from Graphics::SetVertexBuffers(). Removed D3DCOMPILER_STRIP_PRIVATE_DATA flag as it may be undefined when compiling using the DirectX SDK.
2015-03-20 18:34:31 +02:00
Lasse Öörni
f4dc0bf149
If GL3 context creation fails, retry with GL2.
2015-03-20 12:31:46 +02:00
urho3d-travis-ci
ff91008697
Travis CI: API documentation update at 2015-03-20 00:29:33 UTC.
...
[ci package]
2015-03-20 00:29:33 +00:00
Lasse Öörni
0e17c34570
Typo fix and minor documentation tweak.
2015-03-20 01:17:05 +02:00
Lasse Öörni
99e49ac3b8
Add an 8-bit timestamp to client controls, which gets incremented on each sent update. Echo this timestamp back in server updates sent to client. Allow to intercept network attribute updates into an event instead of applying them immediately, to facilitate implementing application-level client prediction. Add simulated latency & packet loss parameters to Network. Note that these changes break protocol compatibility with earlier Urho3D releases.
2015-03-20 01:05:11 +02:00
Lasse Öörni
227b2b03dc
Fix / simplify GL3 or GL2 detection.
2015-03-19 12:43:22 +02:00
Lasse Öörni
607b173e53
Reinterpret-cast shader parameter source hash values consistently to const void* to avoid potential 64bit build warnings.
2015-03-19 02:01:07 +02:00
Lasse Öörni
cdfb6b77d9
Set shaders before material state to ensure changing the depth bias on OpenGL dirties the camera shader parameter group properly.
2015-03-19 01:25:59 +02:00
Lasse Öörni
bd8f455e15
Minor code formatting.
2015-03-19 00:26:16 +02:00
Lasse Öörni
88b05c738f
Remember shader parameter sources inside individual ShaderPrograms to reduce redundant uniform assignments.
2015-03-19 00:05:07 +02:00
Lasse Öörni
42963a7300
Keep track of last bound VBO & UBO to avoid redundant binding.
2015-03-18 23:09:39 +02:00
Lasse Öörni
040b6263f5
Fix crash with null constant buffer slots.
2015-03-18 20:54:21 +02:00
Lasse Öörni
f450d0c3b4
Reuse constant buffer object number when resizing. Do not mark light queue to shadow batches, as it is unnecessary and could lead to shader parameter update bugs (requires further refactoring to prevent in the Graphics class.)
2015-03-18 20:19:05 +02:00
Lasse Öörni
2cefd437de
Check if shader uses uniforms outside buffer and invalidate all parameter groups in that case, when switching shaders. Add define in Uniforms.glsl which allows to disable constant buffers on OpenGL 3, as using them may actually be slower.
2015-03-18 10:27:46 +02:00
Lasse Öörni
0e5a05afc7
OpenGL 3 constant buffer support.
2015-03-18 02:40:28 +02:00
Lasse Öörni
5fd6d42159
Use core functions for FBO operations when using OpenGL 3.
2015-03-17 22:06:09 +02:00
Lasse Öörni
006c17f78e
Added command line & engine startup option to disable OpenGL 3.
2015-03-17 20:44:49 +02:00
Lasse Öörni
5ba234e68c
Minor documentation tweaks.
2015-03-17 02:15:58 +02:00
Lasse Öörni
992cbcc73f
Fix GLSL deprecation warnings. OpenGL 3 clip plane support. Use R32F format on OpenGL 3 for deferred linear depth instead of manual RGB encoding & decoding.
2015-03-17 01:01:11 +02:00
Lasse Öörni
07a75dc37b
Initial OpenGL 3.2 support.
2015-03-16 23:36:35 +02:00
Lasse Öörni
a0a1d13109
Do pass queue lookup only once when executing the scene pass command.
2015-03-16 02:50:38 +02:00
Lasse Öörni
918d299450
Minor optimization of Drawable::MarkInView(): resize once instead of clear and push.
2015-03-16 00:57:43 +02:00
Lasse Öörni
6c3b8078f6
Split GetBatches() into sub-functions to aid in profiling. Minor optimization of View::GetTechnique() when using the default material.
2015-03-16 00:34:08 +02:00
Lasse Öörni
e2afa34bb7
Refactor Technique to not use HashTable for passes, but instead a vector with dynamically allocated pass indices. HashTable class removed as there were no other uses for it, and it was programmer-unfriendly compared to HashMap.
2015-03-15 21:07:51 +02:00
Yao Wei Tjong 姚伟忠
adcf016433
Fix ToCpHook.lua when it is being used in external project.
2015-03-15 10:58:21 +08:00
Lasse Öörni
0c58651c5c
Store constant buffer pointer directly to the ShaderProgram parameters to avoid indirection and if statement choosing between VS & PS parameters.
2015-03-15 01:21:36 +02:00
Lasse Öörni
2858755334
Log missing vertex element(s) when vertex layout fails to create. Add texcoords to the editor grid to keep D3D11 happy.
2015-03-15 00:23:49 +02:00
Yao Wei Tjong 姚伟忠
d2ea0ca934
Finetune the default test timeout value for Emscripten platform.
...
We have a time constraint on Travis CI side for all our CI builds and tests. Default value of 10 for Emscripten and 5 for native platform is also inline with Emscripten's claim that asm.js is about 50% slower than native speed.
2015-03-14 12:46:15 +08:00
Yao Wei Tjong 姚伟忠
bcf5286158
For Travis CI - attempt to enable integration tests in Emscripten-CI.
2015-03-14 11:04:12 +08:00
Lasse Öörni
e17a88b46f
GetData() on D3D11 for Texture3D & TextureCube.
2015-03-13 09:09:41 +02:00
Lasse Öörni
d1b03d95db
Texture2D::GetData() for D3D11. D3D11 texture code cleanup.
2015-03-13 01:11:01 +02:00
Lasse Öörni
785df863e4
Save spot textures generated by RampGenerator as RGB.
2015-03-12 21:39:28 +02:00
Lasse Öörni
3759570319
Remove rrr swizzle from lighting shaders to allow the spotlight to be colored. Convert the default spot textures to RGB color to avoid sampling only the R channel on D3D11.
2015-03-12 21:25:42 +02:00
Yao Wei Tjong 姚伟忠
3503a1069e
Fix test case setup. Only add test case when URHO3D_TESTING is enabled.
2015-03-12 18:58:31 +08:00
Yao Wei Tjong 姚伟忠
8a77399bd0
Fix integration tests execution for Emscripten platform.
...
A test case is considered passed when the html exits as the result of emscripten_force_exit() function being called, which happens when the engine's elapsed time reaches URHO3D_TEST_TIMEOUT seconds. When something goes wrong, the engine's elapsed time does not progress as per normal, in this case the emrun's timeout would kick in and terminate the test case with failed exit status. The EMRUN'S timeout is set to be 2 times URHO3D_TEST_TIMEOUT auotmatically.
Add new build option EMSCRIPTEN_EMRUN_BROWSER to select which browser to use for testing. Default is 'firefox'. Refer to https://github.com/kripken/emscripten/issues/3234 to apply the recommended Firefox preference setting for emrun.
2015-03-12 18:04:16 +08:00
Lasse Öörni
e3f2220fe0
Remove forgotten todo. Implement Graphics::GetMultisampleLevels() properly on D3D11.
2015-03-12 10:15:54 +02:00