summaryrefslogtreecommitdiffstats
path: root/drivers/gles2/shader_compiler_gles2.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Many fixes to GLES2 renderer, fixed compilation issues in GLES3 shaders.Juan Linietsky2018-09-291-3/+3
|
* -Rewrote GLES2 lighting and shadows and optimized state changes, did many ↵Juan Linietsky2018-09-231-2/+18
| | | | | | optimizations, added vertex lighting. -Did some fixes to GLES3 too
* Make core/ includes absolute, remove subfolders from include pathRémi Verschelde2018-09-121-3/+4
| | | | | | This allows more consistency in the manner we include core headers, where previously there would be a mix of absolute, relative and include path-dependent includes.
* Make some debug prints verbose-only, remove othersRémi Verschelde2018-08-241-0/+1
|
* [GLES2] fix wrong shader compiler outputThomas Herzog2018-08-241-1/+1
| | | | | The `f` postfix was working fine on dekstop GL but not on some mobile drivers.
* Keeping track of discardDavid Sichma2018-08-021-0/+4
| | | | | | | | | | Shader compilation now keeps track of the discard key word. Previously only variables were monitored. But discard, which needs special treatment in some cases, went unnoticed by the compiler as discard is not a variable but a flow control. This commit adds monitoring for discard.
* add initial GLES2 3D rendererkarroffel2018-07-271-5/+62
|
* Reduce unnecessary COW on Vector by make writing explicitHein-Pieter van Braam2018-07-261-3/+3
| | | | | | | | | | | | | | | | | | | | | | | This commit makes operator[] on Vector const and adds a write proxy to it. From now on writes to Vectors need to happen through the .write proxy. So for instance: Vector<int> vec; vec.push_back(10); std::cout << vec[0] << std::endl; vec.write[0] = 20; Failing to use the .write proxy will cause a compilation error. In addition COWable datatypes can now embed a CowData pointer to their data. This means that String, CharString, and VMap no longer use or derive from Vector. _ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug builds. This is a lot faster for Vector in the editor and while running tests. The reason why this difference used to exist is because force-inlined methods used to give a bad debugging experience. After extensive testing with modern compilers this is no longer the case.
* Shader lang: Properly assign INSTANCE_ID to gl_InstanceIDRémi Verschelde2018-07-221-8/+2
| | | | | | | | Note that gl_InstanceID is not supported in OpenGL ES 2.0, so in the gles2 backend we assign it to 0. Also clean up some duplicates/commented out code. Fixes #20088.
* A typo in ShaderCompilerGLES2 constructor code '==' used instead of '='nemerle2018-06-131-1/+1
|
* Merge pull request #17421 from Chaosus/fixshaderbugsJuan Linietsky2018-04-081-3/+3
|\ | | | | Fix few bugs in shader definitions
| * Fix few bugs in shader definitionsChaosus2018-03-101-3/+3
| |
* | s/2017/2018/g for gles2, websocket, linux appdataPoommetee Ketson2018-03-211-2/+2
|/
* add GLES 2 renderer for 2Dkarroffel2018-03-011-0/+891
| | | | | | | | This commit adds a new rendering backend, GLES2, and adds a project setting to enable it. Currently this backend can only be used on the X11 platform, but integrating into other platforms is planned.
* Dead code tells no talesRémi Verschelde2017-08-271-939/+0
|
* Use HTTPS URL for Godot's website in the headersRémi Verschelde2017-08-271-1/+1
|
* Add "Godot Engine contributors" copyright lineRémi Verschelde2017-04-081-0/+1
|
* A Whole New World (clang-format edition)Rémi Verschelde2017-03-051-521/+511
| | | | | | | | | | | | | | | | | | | | | | | | I can show you the code Pretty, with proper whitespace Tell me, coder, now when did You last write readable code? I can open your eyes Make you see your bad indent Force you to respect the style The core devs agreed upon A whole new world A new fantastic code format A de facto standard With some sugar Enforced with clang-format A whole new world A dazzling style we all dreamed of And when we read it through It's crystal clear That now we're in a whole new world of code
* Style: Various fixes to play nice with clang-formatRémi Verschelde2017-01-161-3/+6
|
* Style: Fix whole-line commented codeRémi Verschelde2017-01-141-9/+10
| | | | | They do not play well with clang-format which aligns the `//` part with the rest of the code block, thus producing badly indented commented code.
* Type renames:Juan Linietsky2017-01-111-2/+2
| | | | | | | | | | | | Matrix32 -> Transform2D Matrix3 -> Basis AABB -> Rect3 RawArray -> PoolByteArray IntArray -> PoolIntArray FloatArray -> PoolFloatArray Vector2Array -> PoolVector2Array Vector3Array -> PoolVector3Array ColorArray -> PoolColorArray
* Welcome in 2017, dear changelog reader!Rémi Verschelde2017-01-011-1/+1
| | | | | | | | That year should bring the long-awaited OpenGL ES 3.0 compatible renderer with state-of-the-art rendering techniques tuned to work as low as middle end handheld devices - without compromising with the possibilities given for higher end desktop games of course. Great times ahead for the Godot community and the gamers that will play our games!
* Expose light shadow color to canvas item shadersPedro J. Estébanez2016-09-071-0/+1
|
* Update copyright to 2016 in headersGeorge Marques2016-01-011-1/+1
|
* Merge branch 'master' of https://github.com/okamstudio/godot into shadow_colorSaracen2015-11-181-115/+123
|\ | | | | | | | | Conflicts: drivers/gles2/shader_compiler_gles2.cpp
| * Added ability to write directly to 4-dimensional position vector from within ↵Saracen2015-11-021-115/+123
| | | | | | | | custom vertex shader code. Bugfixes to shader graph code generation concerning xforms.
* | New shader feature: change the colour of shadows on a per-material basis.Saracen2015-11-081-0/+6
|/ | | | | Conflicts: drivers/gles2/shader_compiler_gles2.cpp
* merged some stuff for okamJuan Linietsky2015-09-031-11/+11
|
* -corrected frac() and hyperbolic sin,cos,tan when running on PC (GLSL120), ↵Juan Linietsky2015-05-041-4/+57
| | | | fixes #1775
* -made normalmaps easier in 2D, fixes #1467Juan Linietsky2015-04-271-0/+7
|
* Updated copyright year in all headersJuan Linietsky2015-04-181-1/+1
|
* Changes to LightJuan Linietsky2015-04-031-0/+8
| | | | | | | | -=-=-=-=-=-=-=-= -Changed material unshaded property for an enum, which supports light-only shading -Added a "Mix" shading mode, useful for using lights as masks -Added energy parameter to Light2D
* New Demo, Screen Space ShadersJuan Linietsky2015-03-101-0/+8
| | | | | -Fixes to screen space shaders. -Fixes to isometric light demo.
* lot of work on 2D lighting and isometric mapsJuan Linietsky2015-03-091-5/+12
| | | | | added a new demo, isometric_light that does full isometric sorting, lights, shadows, etc.
* support for light and normal mapping in 2DJuan Linietsky2015-02-181-1/+6
|
* fixed world vertex issues in canvas item shaderJuan Linietsky2015-01-211-7/+7
|
* Visual Shader Editing for 2DJuan Linietsky2015-01-201-0/+7
| | | | Editing 2D shaders with visual editor seems to work now.
* Add missing shader function: refractsanikoyes2015-01-141-0/+1
|
* -begin work on unidirectional collision detectionJuan Linietsky2015-01-131-1/+1
| | | | | -fixed performance issue in new 2D engine -texscreen() working in shader 2D
* -Initial working(?) implementation of shaders for 2D. Lighting still not ↵Juan Linietsky2015-01-121-3/+51
| | | | | | | there though. Check for reference: https://github.com/okamstudio/godot/wiki/shader
* 2D shader progressreduz2015-01-111-1/+1
|
* -Initial (untested) implementation of 2D shaders. Probably broken, will be ↵Juan Linietsky2015-01-111-0/+40
| | | | | | fixed later. -fixed issue of opacity not working
* Fixes to GraphEdit:Juan Linietsky2015-01-081-0/+3
| | | | | | | | -Working area is bigger now, solves #1148 -Using Position now works, fixes #1141 -RGB ops now work, fixes #1139 -Missing bindings to GraphEdit and GraphNode added -Shader Graph Editor Shows errors on cyclic links and missing connections
* FixesJuan Linietsky2014-10-141-0/+1
| | | | | | | | | -=-=- -Fixed normalmap depth parameter -Fixes to DirAccess on Windows -Double click on resource dock will open them -Fixes to doc generator (should make github wiki on class list more up to date)
* ColladaJuan Linietsky2014-10-141-0/+9
| | | | | | | | | | | | -=-=-=- -Fixed some DAE import & export bugs -Changed Collada exporter to use the mesh loops API -Added tangent export to Collada exporter -Added triangulation option to Collada exporter -Changed a little how normalmaps are handled in shader. Not sure if it's working properly, be careful. -Fixed some strange bug with kinematic bodies #776 -Fix release compilaiton issues #782
* CollisionPolygon (3D)Juan Linietsky2014-09-161-0/+4
| | | | Workaround for round() on PC.
* Little BitsJuan Linietsky2014-08-141-0/+26
| | | | | | | | -=-=-=-=-=- -Fixed small bugs all around -Added ability to show/hide entire sections of the spatial (3D) tree -WIP new vehicle (not ready yet) based on Bullet
* Small Issues & MaintenanceJuan Linietsky2014-08-011-0/+6
| | | | | | | | | -=-=-=-=-=-=-=-=-=-=-=-=-= -Begin work on Navigation Meshes (simple pathfinding for now, will improve soon) -More doc on theme overriding -Upgraded OpenSSL to version without bugs -Misc bugfixes
* Misc FixesJuan Linietsky2014-06-271-3/+44
| | | | | | | | | | | | ========== -NOTIFICATION_WM_QUIT fixed on android (seems tha way this is reported changed in newer sdk) -WIP implementation of APK Expansion APIs for publishing games larger than 50mb in Play Store -Feaures in the new tutorials are all present in the sourcecode -This (hopefully) should get rid of the animation list order getting corrupted -Improved 3D Scene Importer (Skeletons, Animations and other stuff were not being merged). Anything missing? -In code editor, the automatic syntax checker will only use file_exists() to check preload() else it might freeze the editor too much while typing if the preload is a big resource -Fixed bugs in PolygonPathFinder, stil pending to do a node and a demo
* More 3D ImprovementsJuan Linietsky2014-05-291-0/+7
| | | | | | | | | | | | | -=-=-=-=-=-=-=-=-=-= -Sprite3D and AnimatedSprite3D support. -Opaque pre-pass works, is compatible with shadows -Improved shadow map rendering (can differentiate between plain opaque and opaque with shaders/discard/etc) -Added option to use alpha discard in FixedMaterial -Improved Glow FX, many more options (three modes, Additive, Screen and SoftLight), strength and scale -Ability for Background (image or cubemap) to send to glow buffer -Dumb Deploy of clients now actually works in Android -Many Many rendering fixes, 3D is much more usable now.