Commit Graph

170 Commits

Author SHA1 Message Date
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 a8c2fb5431 Fixes deprecated warnings 2014-05-09 21:29:24 -07:00
yangxiao 95e036dd1b GLProgramStateCache 2014-05-08 21:54:49 -07:00
Ricardo Quesada 62d9c24518 moves shaders files from 2d/ to renderer/ 2014-05-08 18:01:48 -07:00
Ricardo Quesada 580ebf939f working Ok with new API 2014-05-08 15:43:12 -07:00
Ricardo Quesada 462338879e rolling back physics in layer 2014-05-01 16:42:35 -07:00
Ricardo Quesada 40fe815ab9 Squashed commit of the following:
commit c16dcfaaea0922039aad05bce1f4efed18e04871
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 19:05:18 2014 -0700

    more linux fixes

commit 1553795976c9090a1b46deb53d12910fe0676008
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 19:04:04 2014 -0700

    more linux fixes

commit 1e43a8cabff33cbf25aa5eb5412f53a878222d83
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 19:02:07 2014 -0700

    fixes linux isuses

commit 723a445dd6411f91846da2b801248ad8298174f1
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:58:50 2014 -0700

    more linux fixes

commit 533c8025e794fc76cef02f396b3a93b3d7f4cfc8
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:57:33 2014 -0700

    more linux fixes

commit 4ba1e84959670bcbf044f18d1c0d4b3cb3be4090
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:53:43 2014 -0700

    more linux fixes

commit 1f8e011f306a47ed4134224e5e349929201f0539
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:49:28 2014 -0700

    more linux fixes

commit 3e2033100822ff6d532a1b4f012337491dc11920
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:47:43 2014 -0700

    more linux fixes

commit 2e708863c75fd032f1b2396dfdf1d31f7a62b713
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:46:00 2014 -0700

    more linux fixes

commit 861b5b92a6efd4de7b926c20d636ce9d749b293f
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:43:15 2014 -0700

    more linux fixes

commit 2a43365a0c1755e9b9cada53301be1a20adb31cf
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:36:06 2014 -0700

    more fixes for linux

commit 7d332bf911892f87c7824d2a5da7bf73ce7ec411
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:35:29 2014 -0700

    more fixes for linux

commit f1becc17d3316dfe3678c23c9dcedb7a447d9235
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:34:44 2014 -0700

    more fixes for linux

commit d2e5959bb0dde921dd5e73be1d8acc3b3f50e51d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:33:45 2014 -0700

    fixes for linux

commit ad9b633c352107cf0e8b060a0e23d6e6a3f5e80f
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:16:48 2014 -0700

    compiles on Windows

commit 4425ee8e5de8f42a2d6050e4470109600dce8b5d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:07:20 2014 -0700

    fix builder
2014-04-30 19:09:13 -07:00
Ricardo Quesada b5f513ce16 Merge branch 'v3' into improved_directory_structure 2014-04-30 13:15:10 -07:00
Huabing.Xu 183dd1ec64 inverse and conjugate, negate for matrix 2014-05-01 01:59:36 +08:00
yangxiao 11dc9367ff wrong rotation 2014-04-29 18:19:30 -07:00
yangxiao 3237d7b23d Revert "wrong rotation"
This reverts commit 3c9560017e.
2014-04-29 18:14:41 -07:00
Ricardo Quesada 8bb8416c26 Improved directory structure 2014-04-29 17:37:36 -07:00
yangxiao 3c9560017e wrong rotation 2014-04-29 17:27:32 -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 feec24e3ef Merge branch 'v3' into develop_migrate_math_lib_merge
Conflicts:
	build/cocos2d_libs.xcodeproj/project.pbxproj
	cocos/2d/CCNode.cpp
	cocos/2d/CCRenderTexture.cpp
	cocos/2d/platform/wp8/CCGLView.h
	cocos/physics/CCPhysicsBody.cpp
	extensions/physics-nodes/CCPhysicsSprite.cpp
	extensions/physics-nodes/CCPhysicsSprite.h
	tests/cpp-tests/Classes/PhysicsTest/PhysicsTest.cpp
2014-04-25 16:20:24 +08:00
boyu0 710fe9d940 closed #4771: modify test. 2014-04-21 13:32:47 +08:00
Huabing.Xu d14d3007d0 remove kazmath include file 2014-04-16 14:08:58 +08:00
Huabing.Xu 63b52dd287 replace Point with Vector2 in cocos folder cpp file 2014-04-15 18:13:57 +08:00
Huabing.Xu 511e868ac4 migrate getAnchorPoint, getAnchorPointInPoints and relative member variable to Vector2 2014-04-15 16:59:16 +08:00
Huabing.Xu e351b778c1 migrate setAnchorPoint to Vector2 2014-04-15 16:47:29 +08:00
Huabing.Xu 6686b657a4 Migrate getPostion and correspondent member variable to Vector2 2014-04-15 16:28:59 +08:00
Huabing.Xu 071cbc7565 migrate setPosition to Vector2 2014-04-15 16:16:14 +08:00
Huabing.Xu ec2ef0f64b migrate convertXXXX to Vector2 step2 2014-04-15 14:41:09 +08:00
Huabing.Xu 633173005b migrate convertXXXX to Vector2 2014-04-15 14:29:12 +08:00
Huabing.Xu 44be9a38ec Node convertToNodeSpace and convertToWorldSpace use Vector2 2014-04-15 14:09:46 +08:00
boyu0 b53961b78d issue $4771: fix lua test and fix some bugs 2014-04-15 13:40:44 +08:00
boyu0 c98f50026f issue $4771: move PhysicsWorld to layer. 2014-04-15 03:21:18 +08:00
Huabing.Xu 80f96398b3 1. changed comment message in CCNode.cpp
2. changed Director projection to Matrix
2014-04-14 09:30:51 +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 591b1e9231 remove kmMat4 in Node.cpp 2014-04-10 23:12:29 +08:00
Huabing.Xu 231cdcb906 adjust comment message 2014-04-10 11:14:46 +08:00
James Chen 9d8d256bee issue #4729: Android build works ok. 2014-04-10 00:36:42 +08:00
Huabing.Xu 409b696bab remove kmMat4 interface in class Node 2014-04-08 23:05:33 +08:00
Huabing.Xu fcff284fd5 getParentToNodeTransform return Matrix 2014-04-08 22:13:59 +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 e8596094a4 Merge branch 'develop' into develop_migrate_math_lib_merge 2014-04-08 16:58:51 +08:00
Darragh Coy 9a6b93eae1 Add extra CCNode verification
Add a check to the CCNode destructor to catch a common cocos2d-x programming mistake - forgetting to call base class onExit() in derived class onExit() implementations. We can check for this invalid API usage by checking if the node is still marked as running on destruction. If the node still thinks it's running then it's likely the cleanup logic performed by Node::onExit() was not done.
2014-04-07 17:05:42 -07:00
Huabing.Xu 5d70170a4b getNodetoParentTransform getNodeToWorldTransform return Matrix instead of kmMat4 2014-04-04 18:41:29 +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 79f62f4351 comment out director::getMatrix temporarily 2014-04-03 10:33:59 +08:00
Huabing.Xu 49de7511f5 migrate Vertex3f to Vector3 2014-04-02 15:06:16 +08:00
James Chen ecad5ea3ce Fixed `ExtensionTest/CocoStudioComponentsTest` crash after applying PR #6011. 2014-03-28 14:55:15 +08:00
James Chen e87f6991cf User object has to be released before others, since userObject may have a weak reference of this node.
It may invoke `node->stopAllAction();` while `_actionManager` is null if the next line is after `CC_SAFE_RELEASE_NULL(_actionManager)`.
2014-03-28 14:09:51 +08:00
Darragh Coy 8ee90389b4 Review feedback: Wrap the debug verification in additional macros which are disabled by default.
Require the user to enable 'CC_NODE_DEBUG_VERIFY_EVENT_LISTENERS' in ccConfig.h in order to enable the debug checks in debug builds.
2014-03-27 12:29:28 -07:00
Darragh Coy 0ee1095e37 Fix crashes in event dispatch other related safety checks/fixes
1: Add a fix to prevent events from being sent to scene nodes which are destroyed. Previously when a node was being destroyed it would try to unregister any event listeners it would have. This process would fail however in the case where event dispatching was already underway because we can't modify the listeners list while we are iterating through it. This is a pretty common occurrence since we often tear down & switch scenes in response to button clicks etc. Fix the problem by nulling out the slot for the listener we are removing in this case, so that it's node no longer receives any events after it is destroyed. The event dispatching code will cleanup this unused/nulled slot once the event processing loop has terminated.

2: When removing an event listener in cocos2d::EventDispatcher, ensure immediately it gets removed from the node priority map and dirty nodes set in order to ensure we don't inadvertently access any dangling pointers to nodes.

3: Add debug checks to ensure nodes have no associated event listeners after they are destroyed. This check will catch the problem fixed by (1) if it is still present.

4: Add some extra debug sanity checks in the event dispatcher to ensure nodes are not added to the lists twice and that they are being properly removed from the lists under certain conditions.

5: In cocos2d::Node's destructor NULL out members after releasing them in case they somehow happen to be accessed during the destructor. Move the release of the event dispatcher to the very end, since we need to check against it in debug.
2014-03-26 13:12:44 -07:00
James Chen 45b98e7dc0 issue #4541: s_globalOrderOfArrival is an static variable of Node class. 2014-03-25 15:07:11 +08:00