Commit Graph

117 Commits

Author SHA1 Message Date
Ricardo Quesada 31dd70dba2 Matrix::identity() -> IDENTITY
consistency with the rest of the  cocos2d API
2014-05-13 10:26:25 -07:00
Ricardo Quesada 012f1020ca GLProgramState fixes
It is possible to submit to the Renderer a Sprite with custom uniforms
(although it won't be batched).
It is possible to use a custom shader + uniforms on Sprite with
subclassing Sprite
2014-05-12 19:12:56 -07:00
Ricardo Quesada 77c03fcf11 ShaderCache -> GLProgramCache 2014-05-09 18:39:25 -07:00
Ricardo Quesada 62d9c24518 moves shaders files from 2d/ to renderer/ 2014-05-08 18:01:48 -07:00
Ricardo Quesada 51f498fc94 fixed deprecation warnings 2014-05-08 16:42:36 -07:00
Ricardo Quesada 580ebf939f working Ok with new API 2014-05-08 15:43:12 -07:00
Ricardo Quesada e413b86295 Revert `new Sprite` change done a few days ago
Use `std::nothrow` for new in Sprite (should be done in all `new` code)
2014-05-05 16:53:37 -07:00
Ricardo Quesada 8bb8416c26 Improved directory structure 2014-04-29 17:37:36 -07:00
Ricardo Quesada 81c2d92355 yeah... love in includes
<3
2014-04-26 10:35:57 -07:00
Ricardo Quesada 9b118e5e96 Squashed commit of the following:
commit 519fcd7f68e3586c376fd5e8d4a0ee220a48d225
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 10:10:06 2014 -0700

    Updates templates files

commit 2b07843ebe592f56b2abc544ccf66d441bb19fc5
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 10:08:19 2014 -0700

    compiles on Windows

commit b175522ef7205eaab3bd3f26c27c5d6514cbe2a4
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 09:55:30 2014 -0700

    adds cocos2d.h

commit 4c3d14f929bac017b93ca843b4f149d352264a30
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 09:54:24 2014 -0700

    re-adds missing files

commit f729181728959260d14c4152555534f5beec8e05
Merge: 148da79 2adac67
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 09:51:12 2014 -0700

    Merge branch 'includes_fixes' of github.com:ricardoquesada/cocos2d-x into includes_fixes

commit 148da79010c5dffeab885933624cffaf3d588852
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 09:49:12 2014 -0700

    Adds SimpleAudioEngine

commit 2adac67019180ec82b7bd03f0b67c12f62e29e77
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 09:47:45 2014 -0700

    Compiles for Android

commit 4a300d1b9225fa5708f25a69a50bb531f0ac1a32
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 09:13:35 2014 -0700

    Fixes the includes
2014-04-26 10:11:22 -07:00
Huabing.Xu 30dec564e6 remove kazmath/kazmath.h include 2014-04-15 23:50:28 +08:00
Huabing.Xu 95cb7721f6 Merge branch 'develop' into develop_migrate_math_lib_merge
Conflicts:
	cocos/2d/CCSprite.cpp
	tests/cpp-tests/Classes/NewRendererTest/NewRendererTest.cpp
2014-04-15 22:21:04 +08:00
Huabing.Xu 63b52dd287 replace Point with Vector2 in cocos folder cpp file 2014-04-15 18:13:57 +08:00
Huabing.Xu e351b778c1 migrate setAnchorPoint to Vector2 2014-04-15 16:47:29 +08:00
Huabing.Xu 071cbc7565 migrate setPosition to Vector2 2014-04-15 16:16:14 +08:00
Ricardo Quesada 584ccf65e4 Culling working again 2014-04-14 16:46:19 -07:00
Huabing.Xu c3bf78494a remove CCFrustum.cpp, we will use new instead 2014-04-14 14:18:32 +08:00
Huabing.Xu 9935e8ddfb setCullingEnabled set to public access
changed renderer->culling test case
2014-04-14 11:33:40 +08:00
Huabing.Xu 37bfeff8f0 Add interface setCullingEnabled(), culling is disabled by default 2014-04-14 09:56:01 +08:00
Huabing.Xu 1670e07300 Merge branch 'develop' into develop_migrate_math_lib_merge
Conflicts:
	build/cocos2d_libs.xcodeproj/project.pbxproj
	build/cocos2d_tests.xcodeproj/project.pbxproj
2014-04-11 11:18:13 +08:00
Huabing.Xu ad18add1af remove kmMat4 in Sprite.cpp 2014-04-11 11:00:08 +08:00
James Chen 9d8d256bee issue #4729: Android build works ok. 2014-04-10 00:36:42 +08:00
Huabing.Xu 092d8d9ae9 remove kmMat4 interface in class Sprite 2014-04-09 11:28:34 +08:00
Huabing.Xu 409b696bab remove kmMat4 interface in class Node 2014-04-08 23:05:33 +08:00
Huabing.Xu 3837c23ebe draw() using Matrix instead of kmMat4 2014-04-08 22:07:35 +08:00
Huabing.Xu 6b4451482f remove matrixToKmMat4 function 2014-04-04 18:13:10 +08:00
Huabing.Xu f1b1678900 Director::getMatrix returns Matrix instead of kmMat4 2014-04-04 17:31:21 +08:00
Huabing.Xu 67e62ce73d readied director::getMatrix again. remove kmGLgetMatrix 2014-04-03 17:26:06 +08:00
Huabing.Xu 67971e9f0b migrate sprite spriteBatchNode to director matrix stack 2014-04-03 14:55:36 +08:00
Huabing.Xu 49de7511f5 migrate Vertex3f to Vector3 2014-04-02 15:06:16 +08:00
andyque f26ae8a019 remove unused params warnings 2014-03-20 16:34:42 +08:00
Ricardo Quesada d78304599d Cache working OK.
Performance increased in 20% for static objects.
2014-02-28 16:10:48 -08:00
Ricardo Quesada eb66ddd931 visit and draw improved.
`visit()` and `draw()` are improved.
they both receive:
 - `Renderer`
 - `kmMat4` for transformation
 - `bool` whether or not the transform changed from the previous frame

Although `draw` and `visit` are not using the 3 new parameters,
they will start using it in the coming days (or weeks, or months).

Those parameters are needed for:
 - `Renderer` shouldn't be a singleton. There should be one renderer per Director. There could be more than one renderer
 - we should get rid of `kmGLXXX` functions since nodoby knows what is happening. the `kmMat4` is for that.
 - whenever possible, we should try to optimize the multiplications. the `dirty` flag is for that.

We need those changes, so, it is better to change the API now, and not right after v3.0-final is released.
2014-02-27 21:43:54 -08:00
James Chen 2b2979551e Merge pull request #5460 from boyu0/iss4118_physical_performance_improve
issue #4118: Physical performance improve.
2014-02-26 11:37:13 +08:00
Ricardo Quesada 18c3a8dd02 little fixes for sprite 2014-02-24 15:18:07 -08:00
Huabing.Xu f20d487ade closed #3818: fix CC_SPRITE_DEBUG_DRAW feature 2014-02-24 20:02:48 +08:00
boyu0 a4cc0edb4a issue #4118: refactor physics update 2014-02-24 16:17:42 +08:00
Dhilan007 b54607bfc9 only using std::max for window. 2014-02-24 11:54:58 +08:00
Dhilan007 d6cd2eb05f fix compiling error cause by using 'fmaxf'. 2014-02-24 11:38:03 +08:00
Ricardo Quesada f77b92f1d7 performance improvements in culling 2014-02-23 02:02:28 -08:00
Ricardo Quesada 04460750b8 culling working for both 2d and 3d projections 2014-02-23 01:09:52 -08:00
Ricardo Quesada fe1160cd8c changes in API to support 3D 2014-02-22 19:16:42 -08:00
Ricardo Quesada f37c606c4e removes unsued function
keeps the code cleaner
2014-02-22 17:55:03 -08:00
Ricardo Quesada 8ca746af17 Implements AABB culling for sprites 2014-02-22 17:47:56 -08:00
Ricardo Quesada 68143d3093 re-add missing assert 2014-02-09 19:39:56 -08:00
Ricardo Quesada 9a53f5a9f5 Testing a new TMX renderer
faster
2014-02-04 17:59:21 -08:00
James Chen 9f793f8a9b Warning fixes: 1) getZOrder —> getLocalZOrder. 2) long —> int 2014-01-20 15:03:30 +08:00
Ricardo Quesada 5fcbf42356 GlobalZOrder is used for render priority...
...and not vertexZ

Node::setGlobalZOrder() is used to change that.

Node::setZOrder() -> Node::setLocalZOrder();
2014-01-18 11:38:06 -08:00
Ricardo Quesada 8931d968c0 Renderer uses a float as a key
Instead of using a 64-bit int key with viewport, opaque and depth,
it only uses a 32-bit float with only the depth.
Saves time in:
 - No need to convert the 32-bit float into 24-bit int
 - keys are shorter
2014-01-17 16:08:29 -08:00
Ricardo Quesada d0dbf34319 removes "include "cocos2d.h" from cocos2d files 2014-01-16 21:35:58 -08:00