Commit Graph

29 Commits

Author SHA1 Message Date
Huabing.Xu 231cdcb906 adjust comment message 2014-04-10 11:14:46 +08:00
Huabing.Xu 3837c23ebe draw() using Matrix instead of kmMat4 2014-04-08 22:07:35 +08:00
Huabing.Xu b9af100493 visit() using Matrix instead of kmMat4 2014-04-08 21:45:54 +08:00
Huabing.Xu 960ac300d5 migrate cocostudio to director matrix stack 2014-04-03 14:55:55 +08:00
Ricardo Quesada a0ab8fcdf3 onDraw() updated
`onDraw()` receives `const kmMat4 &transform` and `bool
transformUpdated`.

`CC_NODE_DRAW_SETUP()` is no longer used in our code.
`_modelViewTransform` is only used as a cache.
2014-03-05 15:49:08 -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 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
walzer d4c1aa92d5 add copyrights for 2014, in folders other then 2d. 2014-01-07 11:47:11 +08:00
boyu0 d32fbbbfca change GroupCommand variable to class member. 2013-12-26 18:11:23 +08:00
boyu0 f878864794 Specialize GroupCommand and CustomCommand, change generateCommand to new. 2013-12-26 15:41:47 +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
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
yinkaile bc868cc004 update armature to new render 2013-12-17 17:00:01 +08:00
Huabing.Xu 5509bd48ef remove _grid 2013-12-12 16:21:21 +08:00
James Chen 1d5984b29a issue #2790: Vector::makeObjectsPerformCallback —> Vector::forEach 2013-12-04 16:01:02 +08:00
James Chen 90062b656d issue #2790: Node::_children is Vector<Node*> now. 2013-12-04 16:00:17 +08:00
2youyou2 4f2603f69c fixed BatchNode's _children is empty, draw will crash 2013-11-18 13:23:38 +08:00
2youyou2 12d6bc1722 1. change CCARRAY_FOREACH to range-based loop 2013-11-06 15:25:44 +08:00
2youyou2 16c23d0ad3 remove CC_PROPERTY and CC_SYNTHESIZE. 2013-11-05 19:53:38 +08:00
2youyou2 3eef64c3b8 1. Change NULL to null
2. Remove CocoStudio/Armature files
2013-11-05 15:32:13 +08:00
yinkaile 8fa8b9f844 update develop 2013-10-30 09:41:40 +08:00
James Chen 1f3863e787 Event Dispatcher refactor commit. TestCpp could run. 2013-10-25 10:53:45 +08:00
minggo 8f7a489a4d issue #2905:make cocostudio and gui flat 2013-10-16 16:48:39 +08:00