Commit History

Author SHA1 Message Date
  Lasse Öörni d99fefa68b Create depth-stencil texture instead of renderbuffer on OpenGL 3 / Intel / Windows to work around a driver bug. 10 years ago
  Lasse Öörni 64600d5526 Enable GLEW experimental mode only on a 3.2+ context so that OpenGL 2 extensions can be checked strictly. 10 years ago
  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. 10 years ago
  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. 10 years ago
  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. 10 years ago
  Lasse Öörni f4dc0bf149 If GL3 context creation fails, retry with GL2. 10 years ago
  Lasse Öörni 227b2b03dc Fix / simplify GL3 or GL2 detection. 10 years ago
  Lasse Öörni 88b05c738f Remember shader parameter sources inside individual ShaderPrograms to reduce redundant uniform assignments. 10 years ago
  Lasse Öörni 42963a7300 Keep track of last bound VBO & UBO to avoid redundant binding. 10 years ago
  Lasse Öörni 040b6263f5 Fix crash with null constant buffer slots. 10 years ago
  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. 10 years ago
  Lasse Öörni 0e5a05afc7 OpenGL 3 constant buffer support. 10 years ago
  Lasse Öörni 5fd6d42159 Use core functions for FBO operations when using OpenGL 3. 10 years ago
  Lasse Öörni 006c17f78e Added command line & engine startup option to disable OpenGL 3. 10 years ago
  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. 10 years ago
  Lasse Öörni 07a75dc37b Initial OpenGL 3.2 support. 10 years ago
  Lasse Öörni c833b34b7a Remove Graphics::SetDrawAntialiased() as it does not help the situation it was created for (blurred UI rendering on Nvidia 16x multisampling on OpenGL) and it cannot be implemented on D3D11. 10 years ago
  Lasse Öörni 876d1834eb Add D3D11 sampler states. Fix crash on empty vertex declaration. Fix Matrix3x3 uniforms on D3D11. Modify gpuObjects_ to PODVector. 10 years ago
  Lasse Öörni 48483ac07c Reduce number of distinct shader parameter groups to prepare for mapping them to constant buffers. 10 years ago
  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. 10 years ago
  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(). 10 years ago
  Lasse Öörni 9f129ecd51 Merge branch 'master' into render-refactor 10 years ago
  Lasse Öörni 9a98779ae9 Remove StreamFrequency related functions from Graphics public API as unnecessary. 10 years ago
  Lasse Öörni 51c80107e9 Removed debug log prints from OGLGraphics.cpp. Fixed build warnings. 10 years ago
  Lasse Öörni 88080dad31 Remove Shader Model 2 mode & instancing without stream offset (D3D9) as they are hard to test. Added Graphics::GetApiName() function. 10 years ago
  Lasse Öörni 56f64c60b9 Texture unit refactoring. On desktop ensure continuous range of 8 material texture units, while mobile has 5. Material can define a volume (3D) texture in the volume unit (desktop only.) 11 years ago
  Lasse Öörni 6be3b14855 Merge branch 'master' into render-refactor 11 years ago
  Lasse Öörni 84b5a2de5f Shadow support on Emscripten. For now same capability as on mobiles; no cascaded shadow map. 11 years ago
  t 5d92f18b46 engine source changes for emscripten 11 years ago
  Lasse Öörni b96f47db61 Change order of matrix multiplies in GLSL to eliminate need to transpose matrix uniforms and make the order consistent with skinned & instanced rendering. 11 years ago