Commit Graph

68 Commits

Author SHA1 Message Date
James Chen 02572da9dc Adds EventListenerTouchOneByOne::isSwallowTouches, fixes a typo for Director::EVENT_AFTER_UPDATE. 2014-03-05 11:28:21 +08:00
Ricardo Quesada c386f88e32 Merge branch 'develop' into visit_draw_improved
Conflicts:
	CHANGELOG
	cocos/gui/UILayout.h
2014-03-03 11:27:42 -08:00
James Chen 757425c54b issue #4165: Scheduler::scheduleCallback -> Scheduler::schedule, Scheduler::scheduleSelector -> Scheduler::schedule. APIs are clear for c++ developers now. 2014-03-03 11:00:30 +08:00
James Chen e6d2c4ec73 Refactors Scheduler class.
* Timer is an abstract class now.
* Adds three new timers ( `TimerTargetSelector`, `TimerTargetCallback`, `TimerScriptHandler`) which are inherited from Timer.
* Adds new API 'scheduleCallback` / `unscheduleCallbackForKey', and callback's target could be any classes since we're using `void*` to identify target.
* `Scheduler::scheduleCallback` use `std::function`, therefore, it supports passing `lambda`, `member_function` and `global_function`.
* The old selector API is still kept since it's very useful when schedule callback is a member function, it doesn't need a `key` to identify the callback function. (+1 squashed commit)
* Adds relevant test cases.
2014-03-01 14:09:09 +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
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 8ca746af17 Implements AABB culling for sprites 2014-02-22 17:47:56 -08:00
Dhilan007 54f48b23e6 LabelBMFont re-implemented as a wrapper of Label. 2014-02-20 22:33:52 +08:00
James Chen 5e6130c92c issue #4058: Get rid of Object ,rename it to Ref. 2014-02-20 10:53:49 +08:00
Ricardo Quesada 61e4ffbc3c quick fix for positioning the FPS on non HD 2014-02-13 04:10:23 +08:00
Ricardo Quesada 0a2d701e9f Update verts and calls every frame 2014-02-12 08:41:32 +08:00
Ricardo Quesada 07764d03f9 Uses Droid Sans Console font for FPS and more
* Uses Droid Sans Console: Size 10
* Don't scale up font even if content scale factor is bigger (not needed for FPS)
* Adds better labels in FPS console
2014-02-12 06:58:34 +08:00
Ricardo Quesada 24f655f9b1 Better 'vertices drawn' 2014-02-09 19:31:45 -08:00
Ricardo Quesada 82700339c0 Adds a way to print the renderer vertices 2014-02-07 19:37:44 -08:00
Ricardo Quesada 3560227d09 sort of working 2014-02-05 19:51:24 -08:00
Ricardo Quesada 7da8c84a75 Renames EGLView -> GLView 2014-01-30 16:51:43 -08:00
Ricardo Quesada 862500f99a Renames EGLView -> GLView 2014-01-30 15:40:56 -08:00
Ricardo Quesada efaec7b7ec Merge branch 'develop' into glview_improvements
Conflicts:
	samples/Lua/HelloLua/Classes/AppDelegate.cpp
	template/multi-platform-lua/Classes/AppDelegate.cpp
2014-01-27 10:52:35 -08:00
James Chen 5b9f1697d3 closed #3853: Some JSB projects(TestJavascript, WatermelonWithMe) crash in DEBUG mode on iOS platform. Don’t define `DEBUG` macro in our projects since all third party libraries(e.g. Spidermonkey) were built in RELEASE mode. 2014-01-26 11:16:25 +08:00
Ricardo Quesada 8ecaf49f93 GLView improvements
it is not longer a singleton
it is possible to specify the size
2014-01-23 15:36:55 -08:00
minggo ee06a5908c issue #3713:invoke static member function to destroy singleone object 2014-01-21 10:14:00 +08:00
minggo 3e5fbb2422 issue #3713: remove Object::_autoReleaseCount 2014-01-20 17:08:22 +08:00
Ricardo Quesada d0dbf34319 removes "include "cocos2d.h" from cocos2d files 2014-01-16 21:35:58 -08:00
Ricardo Quesada c267c479db Performance Test fixes
* SpritePerfTest: 3 new tests added
* SpritePerfTest: random() always use the same seed
* SpritePerfTest: Fixed tests 8 and 9 on retina display machines
* Console: Added 3 new commands: 'config', 'fileutils dump', 'textures'
2014-01-14 17:22:45 -08:00
Ricardo Quesada 6eed3a2b27 Adds missing copyright headers in some files 2014-01-13 14:48:12 -08:00
Ricardo Quesada 2a6b9fe08e Console is a property of Director.
By doing this, the console lives as much as the Director.
And the Console is not started until the method "listenOnPort" is
called.
2014-01-10 17:11:14 -08:00
walzer d15874fdf7 fixed #3627, an extra benefit from adding LabelAtlas::create() is that we can hide its default constructor into protected. 2014-01-09 14:16:26 +08:00
walzer 64af0de648 update copyrights for 2014, in cocos/2d/ folder 2014-01-07 11:25:07 +08:00
Daniel T. Borelli d10992951b fix bad name variable 2014-01-04 02:22:09 -03:00
James Chen cf006df9ff closed #2865: Deprecates CCNotificationCenter, uses EventDispatcher instead. 2013-12-31 10:54:37 +08:00
James Chen a47a7075e4 Merge pull request #4699 from boyu0/iss3509_physics_switch_foreground_bug
closed #3509: Sprites with PhysicsBody moves to wrong position when swit...
2013-12-27 00:28:43 -08:00
boyu0 1e8e15506d closed #3509: Sprites with PhysicsBody moves to wrong position when switch foreground/background. 2013-12-27 15:53:55 +08:00
James Chen 0d9fe874a3 Fix set FPS broken. 2013-12-26 19:49:54 -08:00
Ricardo Quesada eea2e70d1e Adds events in director 2013-12-21 00:56:28 -08:00
Ricardo Quesada 903844c7bd Removes unneeded files
New functionality is merged into the 'official' classes
2013-12-18 11:44:45 -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
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
minggo 1e9c763b40 use ssize_t for index and capacity 2013-12-12 14:48:26 +08:00
James Chen 2cda34d59a issue #2790: Deprecates CCDictionary, uses ValueMap for pure base data. Adds StringUtils class . 2013-12-11 18:08:05 +08:00
Ricardo Quesada aa00137fde Merge branch 'develop' into newRenderer 2013-12-09 11:10:00 -08:00
James Chen b0cb7c230a #issue #2790: Uses Vector<Scene*> for scenesStack in CCDirector. 2013-12-07 14:22:51 +08:00
Ricardo Quesada 73b1e3bb9e Merge branch 'develop' into newRenderer
Conflicts:
	cocos/2d/CCLabelAtlas.cpp
	cocos/2d/CCSprite.cpp
2013-12-06 09:37:08 -08:00
Ricardo Quesada 81b06f06a9 Merge branch 'develop' into newRenderer
Conflicts:
	cocos/2d/CCAtlasNode.h
2013-12-05 22:24:41 -08:00
minggo 1502fef7e4 use Schedule::performFunctionInCocosThread 2013-12-06 14:15:01 +08:00
Ricardo Quesada e699a3b765 Uses MV in Quad Command 2013-12-05 19:04:01 -08:00
minggo b67d567a79 replace long with int or ssize_t 2013-12-05 17:22:22 +08:00