Commit Graph

9869 Commits

Author SHA1 Message Date
Yao Wei Tjong 姚伟忠
377fd30e9a Minor code cleanup on handling of URHO3D_D3D11 and URHO3D_OPENGL. 2015-03-30 20:22:26 +08:00
Yao Wei Tjong 姚伟忠
02c2b57cea Minor tweaks and fixes for Emscripten build settings. 2015-03-30 18:36:42 +08:00
Lasse Öörni
73b0a8221a Fix illegal use of texture3D on OpenGL 3. Closes #683. 2015-03-25 14:18:33 +02:00
urho3d-travis-ci
769cbcaf86 Travis CI: API documentation update at 2015-03-25 10:15:47 UTC.
[ci package]
2015-03-25 10:15:47 +00:00
Lasse Öörni
5282cda206 Do not show the Is Modal attribute in editor, as if it's enabled, the user can do nothing except dismiss it by ESC. Closes #682. 2015-03-25 12:02:33 +02:00
urho3d-travis-ci
de1b9b2e1a Travis CI: API documentation update at 2015-03-24 21:54:08 UTC.
[ci package]
2015-03-24 21:54:08 +00:00
Lasse Öörni
d06ffe1445 Merge pull request #680 from urho3d/render-refactor
Render refactor
2015-03-24 23:34:39 +02:00
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