Commit Graph

93 Commits

Author SHA1 Message Date
Huabing.Xu dd4d45ea90 migrate particleBatchNode to director matrix stack 2014-04-02 22:52:41 +08:00
boyu0 06faad7020 Fix partical test->add and remove particle system crash. 2014-03-05 14:32:22 +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 6920bec6ef transform object returns the MV
code cleaner.
the kmGL code is altogether
2014-02-28 11:20:53 -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
Ricardo Quesada e402f35e7f BatchCommand API fixes
don't pass Texture Id.
Instead fetch it from the `TextureAtlas`
2014-01-21 11:13: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
Ricardo Quesada 9388253606 SpriteBatchCommand and ParticleBatchCommand use the BatchCommand
BatchCommand is being used by SpriteBatchCommand and ParticlesBatchCommand

This improves performance in batches
2014-01-15 16:07:38 -08:00
walzer 64af0de648 update copyrights for 2014, in cocos/2d/ folder 2014-01-07 11:25:07 +08:00
boyu0 2fb0179293 change QuadCommand variable to class member. 2013-12-26 16:36:03 +08:00
boyu0 f878864794 Specialize GroupCommand and CustomCommand, change generateCommand to new. 2013-12-26 15:41:47 +08:00
James Chen ed93f90ccc Removes unneeded ‘override’ codes, uses `using Node::addChild;` to prevent compiler warnings. 2013-12-23 16:58:26 +08:00
minggo 756f8f7a11 Merge pull request #4482 from dabingnn/develop_gridNode
Develop grid node
2013-12-19 18:30:42 -08:00
Ricardo Quesada 59fee6b8d2 replaces std::for_each with for()
replaces `std::for_each` with C++11 `for( : )`
2013-12-19 13:34:41 -08:00
Huabing.Xu d51ad36613 Merge branch 'develop' into develop_gridNode
* develop: (67 commits)
  Adds const in ShaderTest2.h
  Skew works again!
  [AUTO] : updating submodule reference to latest autogenerated bindings
  [AUTO] : updating submodule reference to latest autogenerated bindings
  Reverts submodule.
  Updates submodule of bindings-generator.
  Adds `std::for_each` test in invocation
  Reverts bindings-generator.
  fixed not render
  iterator in Sprite fixes
  update vs project for removes unneeded files
  getNodeToParentTransform fixes
  Node cleanup
  [AUTO] : updating submodule reference to latest autogenerated bindings
  Improves SpriteTest
  [AUTO] : updating submodule reference to latest autogenerated bindings
  Android and Linux fixes
  removes `using namespace std` from header file
  Removes unneeded files
  change play arguments
  ...

Conflicts:
	cocos/2d/CCNode.cpp
	samples/Cpp/TestCpp/Classes/ExtensionsTest/CocoStudioArmatureTest/ArmatureScene.cpp
2013-12-19 17:20:22 +08:00
boyu0 082c3d274a Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into edit_hungarian_notation 2013-12-18 18:05:30 +08:00
boyu0 e07c4ffec1 Change NULL to nullptr, edit hungarian notation. 2013-12-18 17:47:20 +08:00
Ricardo Quesada 33c4f891a0 Adds 'CC' to renderer files 2013-12-17 18:41:09 -08:00
Ricardo Quesada d6be81b7a8 The Renderer is not a singleton
In order to access, you have to get it from the Director

`Director::getInstance()->getRenderer()`
2013-12-17 17:50:17 -08:00
Huabing.Xu 25fc3d3c2a Merge branch 'develop' into develop_gridNode
* develop: (105 commits)
  update armature to new render
  iOS & Mac project fix.
  [AUTO] : updating submodule reference to latest autogenerated bindings
  use size_t replace unsigned int for record redeque::size returned value.
  issue #2171: Updates CMakeLists.txt.
  issue #2171: Binds New renderer classes, ignores NewTextureAtlas.
  issue #2171: Adds header files of renderer in cocos2d.h.
  issue #2171: Reorder renderer files for iOS & mac project.
  issue #2171: small fix in ccTypes.h
  issue #2171: Don’t ‘using namespace std;’ in header file.
  [AUTO] : updating submodule reference to latest autogenerated bindings
  issue #2171: Ignores Director::getFrustum.
  issue #2171: Fixing compilation errors for Linux port.
  issue #2171: NULL —> nullptr for Android warning of CCBAnimationManager.cpp.
  issue #2171: [New Renderer] Fixing compilation errors for Android.
  [Win32] fix argument type. - argument of interface is ssize_t.
  Update AUTHORS [ci skip]
  Update CHANGELOG [ci skip]
  Add mouse scrolling support for extension test
  issue #3341:fix Incorrect at TextureCache::addImageAsync for repeatedly execute for the same image
  ...

Conflicts:
	cocos/2d/CCNode.cpp
	cocos/2d/cocos2d.vcxproj.filters
	samples/Cpp/TestCpp/Classes/ExtensionsTest/CocoStudioArmatureTest/ArmatureScene.cpp
2013-12-17 18:16:05 +08:00
James Chen d16fa07661 Removes Vector<T>::forEach, please use std::for_each instead. The same as Vector<T>::sort. 2013-12-17 17:45:29 +08:00
Huabing.Xu b1eacd52cb Merge branch 'develop' into develop_gridNode
* develop:
  fix compile error related to ssize_t.
  issue #2771: add and change some physics API, and add more documents
  [AUTO] : updating submodule reference to latest autogenerated bindings
  Some fixes for XXX:getDescription.
  Reverts CCSpriteBatchNode.h
  size_t —> ssize_t in CCTMXLayer.cpp
  issue #2771: add PhysicsWorld function set/getUpdateRate and set/getSpeed. Change name PhysicsQueryRectCallbackFunc and PhysicsPointQueryCallbackFunc to PhysicsRectQueryCallbackFunc and PhysicsQueryPointCallbackFunc
  Fix:Add lua binding of ’registerScriptHandler’、’unregisterScriptHandler’ and ’removeObjectAllHandlers’ of ScriptHandlerMgr and some constants define
  [AUTO] : updating submodule reference to latest autogenerated bindings
  More renames of description() to getDescription()
  getDescription() works as expected
  fix compiling error after fixing conflicts
  fix compiling error after fixing conflicts
  use ssize_t for index
  use ssize_t for index and capacity
  use ssize_t for capacity and index in containers
  Fix:Remove some needless lua binding functions and resolve a bug
2013-12-16 10:43:49 +08:00
Ricardo Quesada 3838268fd0 Merge branch 'develop' into newRenderer 2013-12-14 19:28:01 -08:00
Ricardo Quesada 29a15c885a Merge branch 'develop' into newRenderer 2013-12-12 11:44:09 -08:00
Huabing.Xu 5509bd48ef remove _grid 2013-12-12 16:21:21 +08:00
minggo 1e9c763b40 use ssize_t for index and capacity 2013-12-12 14:48:26 +08:00
James Chen cc567a3077 issue #2790: Vector::remove —> Vector::erase. 2013-12-11 18:08:06 +08:00
Ricardo Quesada 745541979b Particles working again.
Paticle Batch working too: increased VBO_SIE to 10500
2013-12-06 11:51:17 -08:00
minggo b67d567a79 replace long with int or ssize_t 2013-12-05 17:22:22 +08:00
James Chen 499a0404d4 issue #2790: Renames some functions in Vector<T>. Makes it more like stl vector. 2013-12-05 10:35:10 +08:00
James Chen 9928e8bef1 issue #2790: Uses Vector<T>::getObjectAtIndex instead of Vector<T>[] operator to avoid some mistakes. 2013-12-04 16:01:55 +08:00
James Chen 1d5984b29a issue #2790: Vector::makeObjectsPerformCallback —> Vector::forEach 2013-12-04 16:01:02 +08:00
James Chen d4d864216b issue #2790: Deletes Vector::init, adds Vector::setCapacity. 2013-12-04 16:00:18 +08:00
James Chen 90062b656d issue #2790: Node::_children is Vector<Node*> now. 2013-12-04 16:00:17 +08:00
Marc Lepage 940b0ffd56 Fix typos 2013-11-29 12:09:38 -05:00
Ricardo Quesada a583ad461f CCControlButton has protected constructor 2013-11-14 17:19:16 -08:00
Huabing.Xu 99bcca0532 issue #3025: replace TextureCache::getInstance() by Director::getInstance()->getTextureCache() in cocos folder 2013-11-07 19:11:09 +08:00
James Chen 1f3863e787 Event Dispatcher refactor commit. TestCpp could run. 2013-10-25 10:53:45 +08:00
minggo 95acb1b9e3 issue #2905: helloworld build ok on android 2013-10-14 14:01:00 +08:00
minggo 49d7bbd600 issue #2905: remove sub folders except platform 2013-10-12 15:41:45 +08:00