Commit Graph

137 Commits

Author SHA1 Message Date
Lasse Öörni
c98d52c0a3 Prefer to put the instance transform before output variables. 2016-06-06 22:26:37 +03:00
Sergey Bosko
683ebbdc08 Fix instancing for HLSL water shader 2016-06-06 12:02:59 +02:00
Lasse Öörni
f908fa4cfd Fix normal offset GLSL code for GLES. Set default mobile multiplier for normal offset to 2. 2016-05-07 20:20:44 +03:00
Lasse Öörni
a123794886 Normal offset support in GLSL. Fix deferred specular in GLSL. 2016-05-07 20:20:43 +03:00
Lasse Öörni
7160a0ab7c Normal offset shadow support for HLSL. Fix deferred specular calculation on HLSL. 2016-05-07 20:20:42 +03:00
Lasse Öörni
2151426adc Use proper world space in deferred light shaders. This allows the cLightPos uniform and shadow matrices to behave the same in all passes (simplifies code.) Closes #1335. 2016-04-23 01:35:41 +03:00
Lasse Öörni
ed8740428c Remove cCameraRot uniform. Instead derive from cViewInv as necessary. Closes #1163. 2016-04-19 23:18:07 +03:00
Lasse Öörni
88acae8c77 Fix instancing texcoord in the PBR HLSL shader. 2016-04-18 22:47:34 +03:00
Lasse Öörni
c003af1114 Merge branch 'master' into vertexdeclaration 2016-04-18 22:34:00 +03:00
hdunderscore
310252fa25 Re-ordered the deferred g-buffer to allow GL3 to receive the material roughness. 2016-04-18 16:53:37 +10:00
hdunderscore
42cbca8b26 Fix an issue in the PBR shaders that was causing noise. 2016-04-17 12:26:43 +10:00
hdunderscore
ede6383c27 Reduced an artifact in the PBR IBL shader, simplified the code, renamed PBRFAST to IBLFAST and reduced unnecessary iterations when IBLFAST is defined. 2016-04-17 11:19:38 +10:00
Lasse Öörni
b5489bdf9b Fix second texcoord input attribute in the PBRLitSolid.glsl shader to conform with the new vertex semantic system. 2016-04-16 15:20:25 +03:00
Lasse Öörni
19f3b0f120 Merge branch 'master' into vertexdeclaration 2016-04-16 14:58:30 +03:00
Lasse Öörni
2e44b0b350 Squashed commit of the following:
commit 8197605c1c6c660c71727db8472bf9a9ac2ae76d
Author: Lasse Öörni <loorni@gmail.com>
Date:   Thu Apr 14 23:55:05 2016 +0300

    Convert cubemap to DDS.

commit a06cf912e3a106f66137241722c7fd49c1805e2b
Author: Lasse Öörni <loorni@gmail.com>
Date:   Thu Apr 14 23:42:56 2016 +0300

    Fix D3D11 crash if trying to assign color texture as a depth stencil or vice versa. Remove mistaken assignment of the 4th rendertarget output from PBRDeferredHWDepth.xml.

commit de765127b10c8cef45689fd8117875930af7031a
Author: Lasse Öörni <loorni@gmail.com>
Date:   Thu Apr 14 23:17:37 2016 +0300

    Add possibility to configure default material technique in Renderer.

commit d876a081932f423a42adcc1371a6fac622e8d585
Author: Lasse Öörni <loorni@gmail.com>
Date:   Thu Apr 14 23:10:32 2016 +0300

    Refer to Utilities/Rotator.as script in the PBR scene.

commit 9e4078c9a1cfa4be040a523d3b51aaf55a332c40
Author: Lasse Öörni <loorni@gmail.com>
Date:   Thu Apr 14 23:06:00 2016 +0300

    Readd deleted Flare.dds.

commit 1f606cc883e89e15e32272f6d47877c6e511b74b
Author: Lasse Öörni <loorni@gmail.com>
Date:   Thu Apr 14 22:31:04 2016 +0300

    Remove NinjaSnowWar copypasta.

commit 745937646f3638a208e58c3cce76df7afbab8416
Author: Lasse Öörni <loorni@gmail.com>
Date:   Thu Apr 14 22:11:28 2016 +0300

    Separate skybox2 material. Remove unused materials. Fix typo in material name.

commit 258d0325d4bed282f28d8ec8364ee64700e4f025
Author: Lasse Öörni <loorni@gmail.com>
Date:   Thu Apr 14 22:04:48 2016 +0300

    Squashed commit of the following:

    commit a329abe9a2a0f77dcb415bafd15c6e309261e7cc
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Thu Apr 14 15:08:26 2016 +0100

        removed white space

    commit 434b1d8599ce2d0828acfc2939b94b33cd821fad
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Thu Apr 14 15:06:36 2016 +0100

        Updated Licence

    commit f89a2369c83791c43762ca2b34f8b3aeeb562b24
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Thu Apr 14 15:03:57 2016 +0100

        Converted texture formats

    commit 028cd1da4d7ac226e1943a70abfd6037912c86b0
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Thu Apr 14 14:55:31 2016 +0100

        Updated Licence

    commit ecc288b3cbc046a678bbc2d0df408b2f29220b30
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Wed Apr 13 00:02:34 2016 +0100

        Added basic licence

    commit ce34c0496e80043e3e79f4273468a66463ed13cb
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Tue Apr 12 14:00:52 2016 +0100

        Cleaned Up Data and Reverted Default Technique

    commit a9e08bbd3a4f08c09baa477a0ce06cef517d506e
    Merge: 53c53ae d009f11
    Author: dragonCASTjosh <NUT13000804@students.wnc.ac.uk>
    Date:   Sat Apr 9 11:10:30 2016 +0100

        Merge pull request #11 from hdunderscore/typoFix_Metallic

        Fix metallic typo

    commit 53c53aec4c1d935b31cbc0ce5eac93faaa5b9f89
    Merge: 851487e 9c1d728
    Author: dragonCASTjosh <NUT13000804@students.wnc.ac.uk>
    Date:   Sat Apr 9 11:08:17 2016 +0100

        Merge pull request #10 from cosmy1/patch-10

        Remove extra float casts

    commit d009f11865dfdf9634fa9c297f2cc339164724de
    Author: hdunderscore <hdunderscore@gmail.com>
    Date:   Sat Apr 9 15:07:44 2016 +1000

        Fix metallic typo

    commit 9c1d728be919a74dfee8973b146f312121daed9e
    Author: cosmy1 <cosmy_rulezz@hotmail.it>
    Date:   Sat Apr 9 04:50:36 2016 +0200

        Remove extra float casts

    commit 851487ea63c181eb45c5988eb71dd526e2c12852
    Merge: 3142270 8edbae9
    Author: dragonCASTjosh <NUT13000804@students.wnc.ac.uk>
    Date:   Fri Apr 8 19:32:06 2016 +0100

        Merge pull request #9 from hdunderscore/PBRChangesR

        Updates to IBL

    commit 8edbae92c5e454727126c444b49075ef07e36ab8
    Author: hdunderscore <hdunderscore@gmail.com>
    Date:   Fri Apr 8 20:01:33 2016 +1000

        - Updated glsl shaders
        - Fixed a potential bug with direct lighting.
        - Introduced a new define 'PBRFAST' that will allow the IBL to take a short-cut for significantly higher frame-rate, but lower quality.

    commit e63a5d4faedb22710f28dbfdff3705fdfb3b1d22
    Author: hdunderscore <hdunderscore@gmail.com>
    Date:   Fri Apr 8 10:06:18 2016 +1000

        Fixed a divide-by-zero in the CookTorranceBRDF, which was causing a visual issue in DX11.

    commit 37d30d906c93ebb2e4165f91db5adc7e7893edc4
    Author: hdunderscore <hdunderscore@gmail.com>
    Date:   Fri Apr 8 00:30:26 2016 +1000

        Fixed specular IBL energy conservation.

    commit 4643342079dce76c3b26ac101745e49cabad7b68
    Author: hdunderscore <hdunderscore@gmail.com>
    Date:   Thu Apr 7 21:27:16 2016 +1000

        - Exposed tangents and bi-tangents to the IBL.
        - Removed unused calculations in deferred first pass.
        - Added a simpler image sampling calculation.

    commit b7ea9b89fe455d8e9c62fc3a1dd441a8860c9708
    Author: hdunderscore <hdunderscore@gmail.com>
    Date:   Wed Apr 6 22:44:09 2016 +1000

        - Fixed a few errors in the BRDF functions
        - Fixed the specular calculations
        - Small code refactor to allow for more consistency and easier experimentation.
        - Implemented the ImageSampling algorithm as described in Epic's 2013 paper, with improvements.
        - Implemented a true working deferred renderer.
        - Updated the concrete normal map (reversed the direction).
        - Changed the sRGB setting of the diffuse textures and cubemap, to perform calculations in linear space.
        - Added post-process effects to the PBR sample.

    commit 314227053b26c6ba70d7de32b2c5894d60d25784
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Wed Apr 6 01:35:52 2016 +0100

        Missing OpenGL changes (reverted from commit 4169cfca4abe7b23b5f2a84aa391992fe22e3a8b)

    commit 9cd441c413f4742bca3889d3cdf9f2c290462e3d
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Wed Apr 6 01:27:42 2016 +0100

        - Fix Metallic typo
        - Fix HLSL specular metallic bug
        - Fix indentation.
        - Fix BRDF typo.
        - Fix sample scene material to use normal maps.
        - Revert IBL Importance sample to use Epic described method.
        - Removed incorrect application of split sum on top of importance sample method.
        - Added diffuse IBL calculation. (reverted from commit 143379cee9968588974879e1ce53123f45d8741a)

    commit 143379cee9968588974879e1ce53123f45d8741a
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Wed Apr 6 01:10:37 2016 +0100

        - Fix Metallic typo
        - Fix HLSL specular metallic bug
        - Fix indentation.
        - Fix BRDF typo.
        - Fix sample scene material to use normal maps.
        - Revert IBL Importance sample to use Epic described method.
        - Removed incorrect application of split sum on top of importance sample method.
        - Added diffuse IBL calculation.

    commit fbba0f389b571d0b3814254c16b05279bfd29a58
    Merge: 4169cfc c9ba2ec
    Author: dragonCASTjosh <NUT13000804@students.wnc.ac.uk>
    Date:   Tue Apr 5 14:03:40 2016 +0100

        Merge pull request #5 from cosmy1/patch-6

        Update BDRF.hlsl

    commit 4169cfca4abe7b23b5f2a84aa391992fe22e3a8b
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Mon Apr 4 22:55:56 2016 +0100

        Missing OpenGL changes

    commit 62491b160cd356cdf4bc292815862fbdea2be22a
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Mon Apr 4 22:54:50 2016 +0100

        Fixed OpenGL PBR

    commit a453cfea1a061900c9de604b5d422d5915cf1712
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Mon Apr 4 02:37:53 2016 +0100

        Fixed IBL function taking metallic

    commit e33efba25b455a6c77679941c489619a02fa1098
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Mon Apr 4 02:35:28 2016 +0100

        Improve IBL and fixed specular color

    commit 4c7058f1c41bbed32c96df550cb93a14b17ec07d
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Sat Apr 2 01:43:18 2016 +0100

        Fixed HLSL

    commit 9d095a14ac64e34fa2c016e4503b2b076e64b025
    Merge: 2de2597 0a9ea24
    Author: dragonCASTjosh <NUT13000804@students.wnc.ac.uk>
    Date:   Sun Apr 3 14:22:46 2016 +0100

        Merge pull request #6 from cosmy1/patch-8

        Update PBRExample.xml

    commit 2de259781a588c80117744892083065fbe5bb5c8
    Merge: 92ab68c 12bd826
    Author: dragonCASTjosh <NUT13000804@students.wnc.ac.uk>
    Date:   Sat Apr 2 20:51:30 2016 +0100

        Merge pull request #4 from cosmy1/patch-4

        Update IBL.glsl

    commit 92ab68ce3b94a092ad96d9cd0e577d1b7fedf61c
    Merge: 295a23e e1f5ac2
    Author: dragonCASTjosh <NUT13000804@students.wnc.ac.uk>
    Date:   Sat Apr 2 20:51:05 2016 +0100

        Merge pull request #3 from cosmy1/patch-3

        Update BRDF.glsl

    commit 0a9ea24b6681bac8e3deab58081ee9462b6ada31
    Author: cosmy1 <cosmy_rulezz@hotmail.it>
    Date:   Sat Apr 2 11:54:33 2016 +0200

        Update PBRExample.xml

    commit c9ba2ec10f34da559c6148cb0d8d9cbc2ca62ff0
    Author: cosmy1 <cosmy_rulezz@hotmail.it>
    Date:   Sat Apr 2 11:50:30 2016 +0200

        Update BDRF.hlsl

    commit 12bd826c73092b8e96782c91b9cc7d925e77708f
    Author: cosmy1 <cosmy_rulezz@hotmail.it>
    Date:   Sat Apr 2 11:47:29 2016 +0200

        Update IBL.glsl

    commit e1f5ac27606295bf81c07d3d46fda1dae6f191a7
    Author: cosmy1 <cosmy_rulezz@hotmail.it>
    Date:   Sat Apr 2 11:43:37 2016 +0200

        Update BRDF.glsl

    commit 295a23e96f3dcdf05aac8d4e9057e8e6c67b3607
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Sat Apr 2 00:19:01 2016 +0100

        Updated Example

    commit 9b105230ecd33082bb82a8963057d635ffbe41ac
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Sat Apr 2 00:15:55 2016 +0100

        Fixed IBL and indentation

    commit 185d31b6a0af7d084e7305d783e407d354274cac
    Merge: 6b7b5be dad5c04
    Author: dragonCASTjosh <NUT13000804@students.wnc.ac.uk>
    Date:   Fri Apr 1 23:55:46 2016 +0100

        Merge pull request #2 from cosmy1/patch-2

        Update BRDF.glsl

    commit dad5c042fc3272accbb9c26f2e17214ece66ebf8
    Author: cosmy1 <cosmy_rulezz@hotmail.it>
    Date:   Sat Apr 2 00:39:35 2016 +0200

        Update BRDF.glsl

    commit 6b7b5bee9c56304aa92a4009d15282b6456d77c6
    Merge: a5b6b93 c398e82
    Author: dragonCASTjosh <NUT13000804@students.wnc.ac.uk>
    Date:   Fri Apr 1 23:34:40 2016 +0100

        Merge pull request #1 from cosmy1/patch-1

        Fix whitespaces in Material

    commit c398e82153ac0d0ab2b29f61d4345d747be3d40c
    Author: cosmy1 <cosmy_rulezz@hotmail.it>
    Date:   Sat Apr 2 00:33:27 2016 +0200

        Fix whitespaces in Material

    commit a5b6b93b96a053f304b7326b4fa3930d60195051
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Fri Apr 1 21:33:52 2016 +0100

        fixed indentation

    commit 5b402e75092e680975435384ecb8b0af0292139d
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Fri Apr 1 21:32:35 2016 +0100

        Fixed issue with deletion of wrong values

    commit 4ca39ec5bfb905621de8c80999cf640a8ad6d5e0
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Fri Apr 1 21:28:59 2016 +0100

        removed nolonger needed licence

    commit d2ab0f9a048d594d7115c41c2dbea2ce2d39e31b
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Fri Apr 1 21:28:18 2016 +0100

        Improve PBR and moved forward PBR into new shader

    commit cdaae6e2cf234f28cef90f244e2e24e6b7d0d915
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Fri Apr 1 21:26:57 2016 +0100

        Removed remaining area lighting and fixed pbr in deferred rendering

    commit 6fca9d3b98fc2cacea2a11129eb1fc69a7e2fd2f
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Fri Apr 1 13:19:48 2016 +0100

        Replaced data folder with one from mater to avoid commit revert errors

    commit 543c30f0b3b035df13ce09cc127117fb160bfe5f
    Author: dragonCASTjosh <dragonCASTjosh@gmail.com>
    Date:   Thu Mar 31 20:52:47 2016 +0100

        Complete PBR work
2016-04-15 18:56:19 +08:00
Lasse Öörni
8215c42e37 OpenGL arbitrary vertex attributes. Change GLSL attribute indexing to zero-based to match HLSL, so the second texcoord (lightmaps, billboard sizes) is now called texCoord1, and instancing texcoords are texCoord4,5,6. 2016-04-07 00:32:41 +03:00
Lasse Öörni
9fd22d3323 Fix instance texture coordinate in HLSL shaders. 2016-04-05 00:32:17 +03:00
Lasse Öörni
2eca6bf91f Use the OUTPOSITION convention in HLSL skydome shader. 2016-01-22 13:56:30 +02:00
Lasse Öörni
934de0f75d Merge remote-tracking branch 'rasteron/master' 2016-01-22 13:55:12 +02:00
Lasse Öörni
cd2c720352 Fix uniform type in D3D11 constant buffer. 2016-01-21 19:00:35 +02:00
Lasse Öörni
1e8335d5a4 Merge remote-tracking branch 'hjmediastudios/AddViewMatrix' 2016-01-21 18:38:36 +02:00
rasteron
6789580e18 Added Skydome Shaders and Technique 2016-01-21 16:52:25 +08:00
Nick Royer
150ddf86ca Added uniforms to shader 2016-01-18 14:34:05 -06:00
Yusuf Umar
a8d9308abe Moving billboard rotate computation from CPU to GPU. Particle with direction should run faster now. 2016-01-12 19:50:01 +07:00
Yusuf Umar
353c459e0d Adding direction for particle/billboard. It can create pseudo 3d effect inspired by Unity stretched billboard. Can be used by using face camera option 'Rotate Along Direction'. 2016-01-12 10:46:23 +07:00
Lasse Öörni
6d2853d81d Add 32-bit integer object index attribute for custom instancing schemes. May not work on GLES2 as it's using attribute index 13. Not supported on D3D9. Closes #1108. 2015-12-22 18:55:40 +02:00
Lasse Öörni
6a3bbb8aab Fix D3D11 constant buffers for VSM. Fix editor shadow mode selection. Fix script API for new shadow modes. Fix debughud for new shadow modes. Edit documentation to refer to new shadow modes. Added contributor credit. Some code convention edits, e.g. VSM instead of Vsm. Dump new NinjaSnowWarShaders.xml file. 2015-12-18 14:22:24 +02:00
Xavier Maupeu
dbcfc9721e merge VSM shadow 2015-12-17 23:04:48 +01:00
Xavier Maupeu
cf501d9585 add functions in Renderer to set shadow softness and VSM shadow parameters 2015-12-17 19:16:52 +01:00
Xavier Maupeu
b1beaf4ad1 VSM works with point light and spot light in openGL 2015-12-16 23:58:13 +01:00
Xavier Maupeu
33a278449b VSM works with point light and spot light in direct3d9 2015-12-16 22:53:18 +01:00
Lasse Öörni
95f3cecc30 Add the NOUV mechanism for Depth & Shadow HLSL shaders. Document the significance of providing all vertex attributes expected by shader on D3D11. Tabs to spaces in Reference.dox. 2015-12-15 11:01:10 +02:00
Xavier Maupeu
9b48314d99 update glsl lighting 2015-12-05 17:12:28 +01:00
Xavier Maupeu
e636d44df9 vsm implementaion for hlsl shaders 2015-12-05 15:45:07 +01:00
Xavier Maupeu
45aa12c496 VSM shadow map can be blurred 2015-12-05 13:26:38 +01:00
Xavier Maupeu
2ac35e8a06 update lighting shader for vsm 2015-12-01 16:58:31 +01:00
Xavier Maupeu
78a85ff2c6 simple VSM is working 2015-11-29 11:26:36 +01:00
Xavier Maupeu
34c0d94208 update shader for vsm 2015-11-26 13:42:20 +01:00
Xavier Maupeu
4e41906157 first modifications in order to integrate VSM shadow 2015-11-26 10:13:27 +01:00
Lasse Öörni
d13addbbd7 Fix Vegetation shadow shader for D3D11. Ensure LitSolid changes are ported to Vegetation shader. Put wind related parameters to a custom constant buffer on D3D11. Closes #1052. 2015-11-23 13:49:00 +02:00
Lasse Öörni
e1cae7077f Ensure matching interpolator order with point lights, critical on D3D11. Closes #1048. 2015-11-21 12:36:57 +02:00
Lasse Öörni
e6c75eb229 Added TRANSLUCENT option to lighting, which takes absolute value of NdotL (only works in forward lighting.) Add example translucent techniques. Closes #1016. 2015-11-13 17:21:13 +02:00
Lasse Öörni
92a080d68b Remove the GLES skybox fix as it was doing more harm than good. Closes #1011. 2015-11-04 22:11:59 +02:00
Lasse Öörni
6e118d237f Unify naming of rendertargets between the Bloom & Blur postprocesses. 2015-11-02 01:41:14 +02:00
Jukka Jylänki
fc0d427557 Add support for GPU hardware instancing on Emscripten. In WebGL 1 it is exposed by the ANGLE_instanced_arrays ( https://www.khronos.org/registry/webgl/extensions/ANGLE_instanced_arrays/ ) extension, and in WebGL 2, it is enabled in core. 2015-10-09 18:58:42 +03:00
Lasse Öörni
1d6a980136 Prevent attempting to compile the ColorCorrection function (uses unsupported sampler3D) on GLES. 2015-09-23 10:55:10 +03:00
Lasse Öörni
f59b6334ff Fixed Blur.hlsl from MonkeyFirst. Closes #899. 2015-09-17 12:21:52 +03:00
Lasse Öörni
70b871ebfa Code convention edits. Removed unused variable. Make debug icons use Basic shader for no fog. Do not render debug icons to camera preview viewport. Fixed Basic shader with VERTEXCOLOR define on D3D11. 2015-08-14 23:09:53 +03:00
Lasse Öörni
a626021d95 Fixes for VS texture fetch on D3D11. 2015-08-06 22:28:05 +03:00
Lasse Öörni
6f8ed55c0a Fix the Depth shader on D3D11. Simplify View code to determine whether a substitute RT for the backbuffer is needed. Fix having to render the hardware depth stencil twice in the ForwardDepth renderpath. 2015-07-14 19:32:58 +03:00
Mike3D
84cb5abf0b Increased precision qualifiers to medium for better compatibility across mobile devices. Closes #763. 2015-07-04 12:39:30 +02:00
Lasse Öörni
368cd56955 Fix FXAA3 shader on OpenGL 3. Add non-deprecated aliases for texture2DLod in Samplers.glsl. Thanks to Gunnar Kriik. 2015-06-14 01:55:55 +03:00
Lasse Öörni
2a34d35dec Added missing vertex color variation to the LitSolid shaders. 2015-05-08 12:41:59 +03:00
Lasse Öörni
c9bb360bf4 Fix AutoExposure shader on D3D11. Closes #714. 2015-05-04 21:26:52 +03:00
Lasse Öörni
aa65cedefd Add NOUV define to LitParticle, LitSolid & Unlit HLSL shaders when used as untextured, to prevent vertex layout creation problem on D3D11 when model has no UVs. Remove texcoords from the editor grid as they're no longer necessary. Closes #712. 2015-04-29 20:09:18 +03:00
Lasse Öörni
b26b2c470b Fix Text shader non-SDF mode on OpenGL 3. Closes #685. 2015-04-01 21:33:48 +03:00
Lasse Öörni
2961166acb Graphics code cleanup. Remove the GraphicsFeatures event, as now the features can not change during runtime. Move all OpenGL extensions checks to CheckFeatureSupport(). Fix an AMD GLSL compilation bug, which caused buggy 4-sample shadows. 2015-03-31 23:06:09 +03:00
Lasse Öörni
73b0a8221a Fix illegal use of texture3D on OpenGL 3. Closes #683. 2015-03-25 14:18: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
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
040b6263f5 Fix crash with null constant buffer slots. 2015-03-18 20:54:21 +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
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
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
Lasse Öörni
4e308f21c3 3D textures on D3D11. Fixed the ColorCorrection shader. 2015-03-08 20:16:15 +02:00
Lasse Öörni
72a153f1a3 Fix Tonemap shader for D3D11. 2015-03-08 16:23:23 +02:00
Lasse Öörni
871fc3abea Fix erroneous UI rendering after compiling the Text shader, by listing texcoord interpolator before color. 2015-03-08 16:15:17 +02:00
Lasse Öörni
e106f1b389 D3D11 clip plane support. Check that multisample level is supported. Various shader fixes. 2015-03-08 02:57:08 +02:00
Lasse Öörni
b9278e0a94 Implement partial rendertarget clear on D3D11. Implement Graphics::ResolveToTexture() on D3D11. Fix most post-process shaders on D3D11. Readded the custom constant buffer slot. Update documentation. 2015-03-07 23:02:31 +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
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
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
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
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
a1d1f08190 Split uniforms into constant buffers on D3D11. 2015-02-28 21:09:41 +02:00
Lasse Öörni
88080dad31 Remove Shader Model 2 mode & instancing without stream offset (D3D9) as they are hard to test. Added Graphics::GetApiName() function. 2015-02-21 20:53:12 +02:00
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.) 2015-02-15 15:33:16 +02:00
Lasse Öörni
6be3b14855 Merge branch 'master' into render-refactor 2015-02-15 12:59:09 +02:00
Lasse Öörni
3f2f88441d Enable cascaded shadows on Emscripten. 2015-02-14 23:30:22 +02:00
Chris Friesen
57eeeb84b1 Fix terrain shader in chrome by explicitly setting precision 2015-02-13 21:31:59 +08:00
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. 2015-02-12 00:05:32 +02:00
aster2013
392efab9d7 Change GetIntensity, make it same to Color::Luma().[ci skip] 2015-02-04 13:26:41 +08:00
Yao Wei Tjong 姚伟忠
05a8b79fd2 Rename "Bin" subdir to "bin". 2015-01-18 21:31:13 +08:00