axmol/cocos/renderer
Ricardo Quesada 4a318c0048 Renderer improvments: TriangleCommand and QuadCommand merged
- more options for batching (faster)
- less flushing in between commands (faster)
- less renderer code (easier to maintain)
- less VBO/VAO (less memory)
- uses temporary buffer for faster rendering (more memory)
  - QuadCommand is just a subclass of TriangleCommand (simpler)
  - but statically it allocates indices internally (like any TriangleCommand) (more
    memory, but not that much)
- adds more tests for SpritePolygon
- adds test for batching Tri + Quad command
- and fixes some other bugs

Squashed commit of the following:

commit cce893a9114da5dda91a895e4e661894f365e2c7
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Feb 8 06:56:57 2016 -0800

    QuadCommand: indices are static

    thanks @Darinex

commit e5fd1c14e93d2f07b8266bfec03cf7206d348f59
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sun Feb 7 19:18:42 2016 -0800

    little improvements in xcode proj management

commit 6cd29764e01ad300f4e89e62aa6b399f73e94f01
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sun Feb 7 19:05:52 2016 -0800

    Renderer improvments: TriangleCommand and QuadCommand merged

    - more options for batching (faster)
    - less flushing in between commands (faster)
    - less renderer code (easier to maintain)
    - less VBO/VAO (less memory)
    - uses temporary buffer for faster rendering (more memory)

    and fixes some other bugs

    Squashed commit of the following:

    commit af7a209435c5f2430c31ab3ebcc7f45051eacb1a
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Sun Feb 7 18:55:27 2016 -0800

        adds test for batching quads and tris

    commit 25816e3eaeffd4b0cfe5fa15e97ff84e9013b8be
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Sun Feb 7 18:40:15 2016 -0800

        cleanup renderer

    commit 7f9785056681756c865d603516c7e14c46040e82
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Sun Feb 7 15:34:48 2016 -0800

        clean up docs

    commit 92a8b679dd404e4ca2839d85e2bd925195b12996
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Sun Feb 7 15:18:52 2016 -0800

        QuadCommand converted to Triangles command

    commit 7e21ec12d3781f6964b4d639cfa4bdc79eb8ae80
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Fri Feb 5 16:17:29 2016 -0800

        adds missing files... new test as well

    commit d1bd4391785515bdc2e1bebbeb3f321f983b51f2
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Fri Feb 5 14:35:41 2016 -0800

        more tests for poly sprites

    commit 5775a25b1046671bd0f5af4c5ab52b308b34bb39
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Fri Feb 5 00:30:13 2016 -0800

        malloc instead of std::vector

    commit 14a5d45cc978c55a182c03f181ca2bc603776561
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Thu Feb 4 21:40:46 2016 -0800

        little optimization

    commit 5667cb2b62416f8a439a54c3973d5841fbe1b68b
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Thu Feb 4 19:13:13 2016 -0800

        quad works as expected

    commit 462aef05baa6586591882faa366839bead4be068
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Thu Feb 4 15:22:59 2016 -0800

        works

    commit c789e6c42811278563c7682b5620296ae8d84aeb
    Merge: d6c3729 de62924
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Thu Feb 4 14:08:49 2016 -0800

        Merge branch 'v3' into uniform_matrix_auto

    commit d6c37297954af752ebf42ec5f71e5e2fe28c9cc2
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Thu Feb 4 13:54:07 2016 -0800

        works ok...

    commit 45c288631989ea735cc31ec5aa683d9d41aacab3
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Thu Feb 4 12:58:34 2016 -0800

        quad works!

    commit 7137cff51df09adee7129738cea2b69da090756e
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Wed Feb 3 16:19:34 2016 -0800

        more optimizations... WIP... doesn't work yet

    commit a8324c1a9acb6b82102e05eee6e5e5f341306c7b
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Tue Feb 2 21:59:42 2016 -0800

        compiles in release mode

        more tests... better threshold

    commit 884ffc756e7520fcbb9252260181538ec81b8368
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Tue Feb 2 17:21:32 2016 -0800

        initial uniform_auto_matrix commit

        Changes the CC_matrix uniform in runtime depending on whether the command can be batched or not.

        Lot of things missing, though... like performance tests.
2016-02-08 11:25:37 -08:00
..
CCBatchCommand.cpp fix typos and syntax error. A thorough check by tool VSSpellChecker. 2015-09-22 16:08:23 +08:00
CCBatchCommand.h issue #12078: added renderer group and removed core and support group. 2015-06-01 13:43:56 +08:00
CCCustomCommand.cpp Refactor draw command 2015-01-15 14:00:49 -08:00
CCCustomCommand.h issue #12078: added renderer group and removed core and support group. 2015-06-01 13:43:56 +08:00
CCFrameBuffer.cpp release default fbo 2015-11-24 18:11:16 +08:00
CCFrameBuffer.h Rename CCRenderBufferObject to CCRenderBuffer in windows projects. 2015-06-11 11:45:10 +08:00
CCGLProgram.cpp Renderer improvments: TriangleCommand and QuadCommand merged 2016-02-08 11:25:37 -08:00
CCGLProgram.h Renderer improvments: TriangleCommand and QuadCommand merged 2016-02-08 11:25:37 -08:00
CCGLProgramCache.cpp Adds `std::nothrow` to the `new` statements 2015-12-16 14:02:55 +08:00
CCGLProgramCache.h add config loaded event 2015-07-24 16:38:30 +08:00
CCGLProgramState.cpp Adds `std::nothrow` to the `new` statements 2015-12-16 14:02:55 +08:00
CCGLProgramState.h Renderer improvments: TriangleCommand and QuadCommand merged 2016-02-08 11:25:37 -08:00
CCGLProgramStateCache.cpp comment line 83 2014-12-18 13:49:54 +08:00
CCGLProgramStateCache.h issue #12078: added renderer group and removed core and support group. 2015-06-01 13:43:56 +08:00
CCGroupCommand.cpp Update CCGroupCommand.cpp 2015-01-20 19:28:30 +08:00
CCGroupCommand.h Fix typo in documentation and comments 2015-12-09 01:48:24 +09:00
CCMaterial.cpp Removes unused code in Material::initWithFile. 2016-01-15 00:55:10 +08:00
CCMaterial.h merge cocos 2015-09-10 10:44:09 +08:00
CCMeshCommand.cpp StateBlock::restore() is public 2015-06-15 14:12:44 -07:00
CCMeshCommand.h Removes state from MeshCommand. 2015-05-20 15:57:26 -07:00
CCPass.cpp samplers are treated as uniforms 2015-06-05 14:55:33 -07:00
CCPass.h Fix typo in documentation and comments 2015-12-09 01:48:24 +09:00
CCPrimitive.cpp Adds `PrimitiveCommand` test 2015-08-25 15:07:03 -07:00
CCPrimitive.h fix typos and syntax error. A thorough check by tool VSSpellChecker. 2015-09-22 16:08:23 +08:00
CCPrimitiveCommand.cpp Refactor draw command 2015-01-15 14:00:49 -08:00
CCPrimitiveCommand.h fix typos and syntax error. A thorough check by tool VSSpellChecker. 2015-09-22 16:08:23 +08:00
CCQuadCommand.cpp Renderer improvments: TriangleCommand and QuadCommand merged 2016-02-08 11:25:37 -08:00
CCQuadCommand.h Renderer improvments: TriangleCommand and QuadCommand merged 2016-02-08 11:25:37 -08:00
CCRenderCommand.cpp fix transparent render bug 2015-03-03 10:42:47 +08:00
CCRenderCommand.h Fix typos in documentation 2015-10-23 16:59:51 +09:00
CCRenderCommandPool.h [ci skip]Update comments 2015-03-24 20:23:51 +08:00
CCRenderState.cpp Fix typo in documentation and comments 2015-12-09 01:48:24 +09:00
CCRenderState.h fix typos and syntax error. A thorough check by tool VSSpellChecker. 2015-09-22 16:08:23 +08:00
CCRenderer.cpp Renderer improvments: TriangleCommand and QuadCommand merged 2016-02-08 11:25:37 -08:00
CCRenderer.h Renderer improvments: TriangleCommand and QuadCommand merged 2016-02-08 11:25:37 -08:00
CCTechnique.cpp fix clone 2015-09-11 15:08:59 +08:00
CCTechnique.h Adds better sample 2015-05-13 17:39:39 -07:00
CCTexture2D.cpp Adds `std::nothrow` to the `new` statements 2015-12-16 14:02:55 +08:00
CCTexture2D.h update for 3D object render, revert old changes 2015-12-18 11:23:33 +08:00
CCTextureAtlas.cpp add more descriptive message to ASSET macro. 2015-07-14 15:28:36 +08:00
CCTextureAtlas.h fix doxygen comment 2015-03-27 17:09:54 +08:00
CCTextureCache.cpp Merge branch 'v3.10' of github.com:cocos2d/cocos2d-x into v3 2015-12-20 22:56:33 +08:00
CCTextureCache.h update for 3D object render, revert old changes 2015-12-18 11:23:33 +08:00
CCTextureCube.cpp Adds `std::nothrow` to the `new` statements 2015-12-16 14:02:55 +08:00
CCTextureCube.h Move CCTextureCube From 3d to renderer to solve compilation issue 2015-08-24 14:01:50 +08:00
CCTrianglesCommand.cpp Renderer improvments: TriangleCommand and QuadCommand merged 2016-02-08 11:25:37 -08:00
CCTrianglesCommand.h Renderer improvments: TriangleCommand and QuadCommand merged 2016-02-08 11:25:37 -08:00
CCVertexAttribBinding.cpp support normal mapping material 2015-11-25 10:45:03 +08:00
CCVertexAttribBinding.h Add 3 missing class export 2015-11-27 14:58:18 +08:00
CCVertexIndexBuffer.cpp removed CC_PLATFORM_WP8 2015-05-08 09:19:13 -07:00
CCVertexIndexBuffer.h fix typos and syntax error. A thorough check by tool VSSpellChecker. 2015-09-22 16:08:23 +08:00
CCVertexIndexData.cpp make it compile on win32 2015-08-26 10:16:50 -07:00
CCVertexIndexData.h fix typos and syntax error. A thorough check by tool VSSpellChecker. 2015-09-22 16:08:23 +08:00
CMakeLists.txt Move CCTextureCube From 3d to renderer to solve compilation issue 2015-08-24 14:01:50 +08:00
ccGLStateCache.cpp MeshCommand uses StateBlock 2015-05-19 18:13:18 -07:00
ccGLStateCache.h issue #12078: added renderer group and removed core and support group. 2015-06-01 13:43:56 +08:00
ccShader_3D_Color.frag Name modification 2014-08-21 11:33:00 +08:00
ccShader_3D_ColorNormal.frag fix the bug of lighting shader 2015-03-17 16:43:08 +08:00
ccShader_3D_ColorNormalTex.frag builtin material normal map support 2015-12-01 10:37:53 +08:00
ccShader_3D_ColorTex.frag Name modification 2014-08-21 11:33:00 +08:00
ccShader_3D_Particle.frag add 3d particle (Particle Universe) 2015-02-11 18:14:22 +08:00
ccShader_3D_Particle.vert add 3d particle (Particle Universe) 2015-02-11 18:14:22 +08:00
ccShader_3D_PositionNormalTex.vert fix macro definition error 2015-11-27 14:23:17 +08:00
ccShader_3D_PositionTex.vert shader optimize 2014-10-20 13:41:26 +08:00
ccShader_3D_Skybox.frag Update ccShader_3D_Skybox.frag 2015-03-27 17:07:30 +08:00
ccShader_3D_Skybox.vert remove unused variable 2015-06-25 15:05:21 +08:00
ccShader_3D_Terrain.frag fix shader on pc 2015-10-22 09:29:12 +08:00
ccShader_3D_Terrain.vert add new line at end of file 2015-04-03 09:11:09 +08:00
ccShader_CameraClear.frag add clear feature when before draw scene with a camera 2015-05-07 15:09:06 +08:00
ccShader_CameraClear.vert add clear feature when before draw scene with a camera 2015-05-07 15:09:06 +08:00
ccShader_Label.vert Shader fixes for windows 2014-05-09 19:13:12 -07:00
ccShader_Label_df.frag Adds MARK: TODO: FIXME: in code 2014-08-29 12:54:24 -07:00
ccShader_Label_df_glow.frag Adds MARK: TODO: FIXME: in code 2014-08-29 12:54:24 -07:00
ccShader_Label_normal.frag Does not crash on Mac if the .ttf file is not found 2014-05-15 17:22:53 -07:00
ccShader_Label_outline.frag improve rendering of inner shapes when outline is used 2015-06-08 12:56:43 +03:00
ccShader_PositionColor.frag Shader fixes for windows 2014-05-09 19:13:12 -07:00
ccShader_PositionColor.vert Shader fixes for windows 2014-05-09 19:13:12 -07:00
ccShader_PositionColorLengthTexture.frag Shader fixes for windows 2014-05-09 19:13:12 -07:00
ccShader_PositionColorLengthTexture.vert Shader fixes for windows 2014-05-09 19:13:12 -07:00
ccShader_PositionColorTextureAsPointsize.vert fix crash on windows 2015-01-20 16:50:51 +08:00
ccShader_PositionTexture.frag uniform sampler CC_Texture0 MUST NOT be defined on shaders 2014-05-15 16:47:54 -07:00
ccShader_PositionTexture.vert Shader fixes for windows 2014-05-09 19:13:12 -07:00
ccShader_PositionTextureA8Color.frag uniform sampler CC_Texture0 MUST NOT be defined on shaders 2014-05-15 16:47:54 -07:00
ccShader_PositionTextureA8Color.vert Shader fixes for windows 2014-05-09 19:13:12 -07:00
ccShader_PositionTextureColor.frag uniform sampler CC_Texture0 MUST NOT be defined on shaders 2014-05-15 16:47:54 -07:00
ccShader_PositionTextureColor.vert Compiles on windows, sort of 2014-05-09 19:07:22 -07:00
ccShader_PositionTextureColorAlphaTest.frag uniform sampler CC_Texture0 MUST NOT be defined on shaders 2014-05-15 16:47:54 -07:00
ccShader_PositionTextureColor_noMVP.frag uniform sampler CC_Texture0 MUST NOT be defined on shaders 2014-05-15 16:47:54 -07:00
ccShader_PositionTextureColor_noMVP.vert Shader fixes for windows 2014-05-09 19:13:12 -07:00
ccShader_PositionTexture_uColor.frag uniform sampler CC_Texture0 MUST NOT be defined on shaders 2014-05-15 16:47:54 -07:00
ccShader_PositionTexture_uColor.vert Shader fixes for windows 2014-05-09 19:13:12 -07:00
ccShader_Position_uColor.frag Shader fixes for windows 2014-05-09 19:13:12 -07:00
ccShader_Position_uColor.vert Shader fixes for windows 2014-05-09 19:13:12 -07:00
ccShader_UI_Gray.frag fix scale9sprite gray state opacity issue. 2016-01-07 17:17:55 +08:00
ccShaders.cpp unify (No)Normal Mapping shaders 2015-11-27 13:15:33 +08:00
ccShaders.h unify (No)Normal Mapping shaders 2015-11-27 13:15:33 +08:00