Commit Graph

2041 Commits

Author SHA1 Message Date
charlesstlaurent b1a64ae730 new actions ResizeBy and ResizeTo (#16275)
* new actions ResizeBy and ResizeTo

* FDP-5580-ResizeBy and ResizeTo fix and Test cpp : added a scale exemple in the test cpp to compare with our new resize + fix

* FDP-5580: actions ResizeBy and ResizeTo : changed some functions visibility
2016-08-16 16:55:31 +08:00
Ricardo Quesada 3bc662ea7b fix: not resize textureatlas multiple times on Label::create() (#16358)
since we know the size before allocating it, just reserve
the needed capacity once.

fixes github issue #16293
2016-08-13 09:38:42 -07:00
Ricardo Quesada 3d75750728 resets bindBuffer after using it (#16342)
fixes github issue #14711
2016-08-11 08:32:09 -07:00
Ricardo Quesada f7464f8de5 fix: TriangleCommands with custom uniforms can be batched (#16329)
* fix: TriangleCommands with custom uniforms can be batched

TriangleCommands with custom uniforms can be batched together.

This improves the performance when using custom uniforms without
adding any penalties when not using them

Github issue #16224

* better tests
2016-08-07 14:51:02 -07:00
Ricardo Quesada a58323a388 Adds more info regarding bug 15776 (#16315)
Related to github issue #15776
2016-08-05 14:04:39 +08:00
James Chen b135d512d2 Update copyright to 2016. (#16311) 2016-08-05 09:42:15 +08:00
Ricardo Quesada 2945968614 Upgrades to Spine v3.4 (#16242)
* Upgrades to Spine v3.4

Github issue #16115

* compiles and works on windows

tested on:

* win32
* win10
* win8.1

* include-linter: don't test spine files

we need them unmodified

* spine bindings fixes

also, doesn't use goblins-ffd. instead it uses goblins.
goblins-ffd is no longer present in spine v3.4
2016-07-28 07:25:50 -07:00
minggo 30118aff6b Merge pull request #16226 from dumganhar/fix/iss16192-smallaudio-crash
fixed #16192: Crash while decoding small MP3 file on Android.
2016-07-27 15:39:57 +08:00
Ricardo Quesada 4e278183ad Merge pull request #16122 from ricardoquesada/issue_16100
testcase: add test case for issue #16100
2016-07-26 23:21:25 -07:00
James Chen 8eb30769a1 Adds test case. 2016-07-27 14:00:34 +08:00
Ricardo Quesada b336aa3219 testcase: add test case for issue #16100
delays camera creation

fix issue #16100
2016-07-26 19:03:54 -07:00
halx99 bf996c5bac Add ETC1 builtin alpha support. (#16118)
* Add ETC1 builtin alpha support.

* Rename setETC1AlphaFileEndix to setETC1AlphaFileSuffix

* Check whether etc1 alpha suffix is empty

* fix Code ident & Add etc1 alpha test case to SpriteTest.

* Remove unused ETC1AA shader programs

* Fix all review issues and endl issues

* Add a new TriangleCommand::init() with Texture2D* instead of GLuint textureID

* #fix issues
2016-07-25 17:31:54 +08:00
Ricardo Quesada 2abd178e96 Merge pull request #16180 from ricardoquesada/issue_16113
test case for issue #16113
2016-07-21 10:53:38 -07:00
James Chen bb004c5e22 [audio] Fixes some issues while stop/uncache right after play/preload on OSX/iOS platform. (#16147)
* [audio] Fixes some issues while stop/uncache right after play/preload on OSX/iOS platform.

* Better state control in AudioCache.

* Adds State enum class which contains INITIAL, LOADING, READY, FAILED states.
* AudioPlayer::destroy should check AudioCache::_isAudioLoaded flag, otherwise, app will freeze in cpp-tests/NewAudioEngineTest/6:Test invalid audio file.

* Should check whether state is INITIAL in the destructor of AudioCache.

* Adds test case for switching play state frequently.

* Skips invoking reading data callback if cache's state is INITIAL.

* Variables initialization for AudioCache class and fixes protential missing delete AL buffers.
2016-07-21 14:57:59 +08:00
Ricardo Quesada aff6e7852b test case for issue #16113 2016-07-20 19:45:52 -07:00
Ricardo Quesada b3218c1e58 fix: stagger tilemaps hexa works as expected
Github issue #16105
2016-07-19 22:55:05 -07:00
mogemimi 5bd2d74078 Fix spelling for `getPolygonCenter` function 2016-07-19 08:24:22 +09:00
James Chen 15ef80e27d [big refactoring] Audio latency fix for Android. Support to preload effects on Android now. (#15875)
* Audio latency fix for Android. Support preload effects on Android now.

Squashed commits:
[b6d80fe] log fix
[a0a918e] Fixes assetFd didn't be released while PcmData is returned from cache.
[4b956ba] Potential crash fix for PcmAudioPlayer while pause / resume.
[398ab8c] Updates LOG_TAG position in AudioEngine-inl.cpp
[e3634e7] include stdlib.h for posix_memalign
[9004074] fixes setVolume logical error.
[c96df46] Don't use another thread for mixing, enqueue is in a seperated thread, therefore doing mixing in another thread will waste more time.
[0a4c1a8] Adds setLoop, setVolume, setPostion support for Track
[c35fb20] Fixed include.
[cdd9d32] Do mixing by ourself. (TO BE POLISHED)
[6447025] µ -> u since µ could not be shown on some android devices.
[97be0c6] Don't send a silence clip.
[c1607ed] Make linter.py happy.
[0898b54] Puts enqueue & SetPlayState in PcmAudioPlayer::play to thread pool.
[b79fc01] Adds getDuration, getPosition support for PcmAudioPlayer
[80fa2ab] minor fix of the code position of resetting state to State::INITIALIZED
[d9c62f1] underrun fix for PcmAudioPlayer.
[9c2212a] UrlAudioPlayer, playOverMutex should be static, and should be used in update method.
[1519d2e] static variables
[19da936] _pcmAudioPlayer Null pointer check in AudioPlayerProvider.
[e6b0d14] Updates audio performance test.
[fc01dd4] Registers foreground & background event in AudioEngine-inl.cpp(android), the callback should invoke `provider`'s pause & resume method.
[e00a886] TBD: Pause & resume support for PcmAudioPlayerPool.
Since OpenSLES audio resources are expensive and device shared, we should delete all unused PcmAudioPlayers in pool while pause and re-create them while resume.
But this commit isn't finished yet, I don't find a better way to register pause&resume event in AudioEngine module.
[9e42ea3] Interleave mono audio to stereo audio. PcmAudioPlayerPool only contains PcmAudioPlayers with 2 channels.
[3f18d05] Adds a strategy for checking small size of different file formats.
[753ff49] Adds performance test for AudioEngine.
[09d3045] Releases an extra PcmAudioPlayer for UrlAudioPlayer while allocating PcmAudioPlayer fails.
[9dd4477] Using std::move for PcmData move constructor & move assignment.
[6ca3bcb] some fixes:
1) new -> new (std::nothrow)
2) break if allocate PcmAudioPlayer fails
3) renames 'initForPlayPcmData' to 'init'
4) PcmAudioPlayer destructor deadlock if 'init' failed
[54675b6] include path fix.
[a1903ca] More refactorings.
[19b9498] Makes linter.py happy. :)
[923c530] Fixes:
1) Avoid getFileInfo to be invoked twice
2) A critical bug fix for UrlAudioPlayer and adds detailed comments
3) __clang__ compiler option fix for AudioResamplerSinc.cpp.
[5ec4faf] minor fix.
[faaa0f3] output a log in the destructor of UrlAudioPlayer.
[9c20355] NewAudioEngineTest,TestControll crash fix.
[f114464] fixes an unused import.
[1dc5dab] Better algorithm for allocating PcmAudioPlayer.
[331a213] minor fix.
[e54084a] null -> nullptr
[f9a0389] Support uncache.
[89a364f] Removes unused update, and TODO uncache functionality.
[1732bf9] Supports AudioEngineImpl::setFinishCallback for android.
[43d1596] UrlAudioPlayer::stop fix.
[e2ee941] Test case fix in NewAudioEngineTest/AudioIssue11143Test
[5c5ba01] More fixes for making cpp-tests/New Audio Engine Test happy.
[8b554a3] Adds log while remove player from map.
[ed71322] If original file is larger than 30k bytes, consider it's a large audio file.
[fb1845a] Updates project.properties
[6f3839f] minor log output fix in AudioEngine-inl.cpp
[c68bc6c] Don't resample if the sample rate of the decoded pcm data matchs the device's.
[43ca45f] PcmAudioPlayers also need to be removed while they play over, but should not be deleted since their lifecycle is managed by PcmAudioPlayerPool.
[f5e63c9] Audio latency fix for Android. Support preload effects on Android now.

* Supports to loading audio files asynchronously.

* Crash fix for stop audio right after play2d.

* Minor fix for logic in AudioMixerController.cpp

* Adds missing files (CCThreadPool.h/.cpp).

* Minor fix for including.

* Minor fix for missing include <functional> in Track.h

* update license information in audio.h

* Don't use std::future/std::promise anymore since ndk counldn't support it well in armeabi arch.

* isSmallFile postion updated, fixes large audio file goto the checking logic of cache.

* std::atomic<int> isn't supported by ndk-r10e while compiling with `armeabi` arch, using a int with a mutex instead.

* fixes __isnanf & posix_memalign doesn't exist on low api (<=16) devices.

* namespace updated: cocos2d -> cocos2d::experimental

* Removes commented code in AudioMixerController.h/.cpp

* Removes unused code again, and fixes a memory leak of `Track` instance.

* Oops, namespace changed.

* Only outputs log in debug mode.

* Uses ALOGV for outputing logs in AudioEngine-inl.cpp

* const PcmData& ->  PcmData for Track

* Fixes a protential crash in NewAudioEngineTest

* Adds `COCOS` prefix in header #ifndef COCOS_BALABALA #define COCOS_BALABALA

* Uses _ prefix for cocos code style instead of `m` prefix.

* Deletes AudioResamplerSinc related files.

* Bug fix from @minggo's reply on github.

* Don't need to invoke pause after in UrlAudioPlayer::prepare.

* Updates ThreadPool class, uses enum class and adds const keyword.
2016-07-18 10:22:40 +08:00
Ricardo Quesada 1563d14447 Squashed commit of the following:
commit c8349caeca6ff5ebacf497eaa986e71d5f1c2c0d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Jul 14 11:19:50 2016 -0700

    fix: works with odd sized maps

commit da4cf8bc19c9cdab148d60e03a25ee9cc4292b66
Author: zhangbin <zhangbin@cocos2d-x.org>
Date:   Wed Jul 13 13:45:57 2016 +0800

    Add test case.
2016-07-14 11:21:24 -07:00
minggo 2ca1760b78 Merge pull request #16079 from minggo/use-std_srand
use std::srand() instead
2016-07-11 12:01:38 +08:00
minggo a146f3eec7 use std::srand() instead 2016-07-11 11:17:28 +08:00
Ricardo Quesada 995868c62e fix: Text::create() does not crash on mac/ios
...on invalid unicode.

fixes issue #16073
2016-07-08 16:59:44 -07:00
minggo 8d8c295ff0 Merge pull request #16062 from minggo/fileutils-issue
fix bug that FileUtils::removeDirectory() can not work on all platforms except iOS and Mac
2016-07-08 14:54:25 +08:00
Ricardo Quesada 7727c2eb6f Merge pull request #16058 from ricardoquesada/issue_11942
test: add test case for Github issue #11942
2016-07-07 11:51:47 -07:00
minggo 4511b35b51 fix bug that FileUitls::removeDirectory() can not work on all platforms except iOS and Mac 2016-07-07 17:43:19 +08:00
Ricardo Quesada 766817f1dd test: add test case for Github issue #11942
test case for Github issue #11942
2016-07-06 17:21:58 -07:00
Ricardo Quesada 6d5a94e569 test: add test case for Github issue #12226
Adds test case for Github issue #12226
2016-07-06 16:37:15 -07:00
Ricardo Quesada f7d65fbe8a Squashed commit of the following:
commit 3a8ccb54b58f01daaa5b17efcd0e1ab4b7ccf914
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Jul 1 11:05:02 2016 -0700

    Add support for Hex tiled maps

    Based on original patch by https://github.com/JustVic
    Original patch:
    https://github.com/cocos2d/cocos2d-x/pull/13288
    fix: tiled hex maps

    Hexagonal TileMaps Support

    fix: odd, even works as expected

    still problems with rendering order

    fix: fixes layer position in Hex

    fix render ordering
2016-07-01 15:51:00 -07:00
mogemimi 2354df9faf Fix getSubStringOfUTF8String bug 2016-07-01 15:16:35 +09:00
mogemimi c0f2194961 Fix some minor typos in local variable names 2016-06-29 11:04:11 +09:00
minggo 076e0b488b Merge pull request #15980 from minggo/merge-v312
Merge v312
2016-06-29 09:41:30 +08:00
Ricardo Quesada c7af8e3e74 Merge pull request #15987 from ricardoquesada/issue14017test
fix: add test case for issue #14017
2016-06-28 17:58:51 -07:00
Ricardo Quesada a6305cc1f7 fix: add test case for issue #14017
Add test case for issue #14017
2016-06-28 17:32:13 -07:00
Ricardo Quesada ed30993f59 fix: add testcase for issue #14050 fix 2016-06-28 17:08:56 -07:00
minggo bbd837aefa merge v3.12 back to v3 2016-06-28 17:53:50 +08:00
minggo d7cb7676bc Merge pull request #15966 from mogemimi/improve-refptr
Improve RefPtr to avoid casting when possible
2016-06-27 10:07:54 +08:00
mogemimi a287e696c9 Improve RefPtr to avoid casting when possible 2016-06-26 21:39:43 +09:00
mogemimi bc51528301 Fix typo in FileUtils::Status enum 2016-06-25 12:58:55 +09:00
Ricardo Quesada 0872cccd67 fix: collection of vr fixes (#15948)
* fix: collection of vr fixes

* Node::additionalTransform() and Node::setNodeToParentTransform() can be used at the same time
* Node allocs _additionalTransform in runtime taking 60 bytes lees for 99% of the nodes
* Node calculates the transform faster when an additionalTransform is being used
* VR works when the camera is being moved manually with setNodeToParentTransform
* VR has its own tests
* VR can be disabled and works as expected

* doc: documentation for the new fix

* fix: restore submodule web

* fix: compile and link on iOS

* fix conflicts
2016-06-24 16:55:28 +08:00
Ricardo Quesada 69d2ac1786 fix: collection of vr fixes (#15947)
* fix: collection of vr fixes

Node: additionalTransform() has its own dirty variable
VR: disabling VR works as expected
VR: works with camera3d test
VR: iOS Tracking works even if it doesn't have any input

fix: setNodeToParentTransform() and setAdditionalTransfrom() work...

...at the same time.
Also, this PR makes the size of Node smaller. `_additionalTransform` is
no longer an inline object.
Instead, it is allocated on demand making 99% of the Nodes smaller by 60
bytes.

fix: compile in windows

* doc: documentation for this fix
2016-06-24 10:03:38 +08:00
zilongshanren 459b7f30c6 refactoring Android editbox setVisible API
fix set visible issue of android editbox

fix android lower case multiline

revert unkown changes
2016-06-23 18:18:39 +08:00
zilongshanren a6b0ea76de improve editbox test and font creation 2016-06-23 15:57:41 +08:00
Ricardo Quesada ff71ffae84 fix: not crash after removing a physics body right after...
adding it.
2016-06-22 14:12:27 -07:00
James Chen beee9a664e SocketIOTest: url fix 2016-06-22 12:10:19 +08:00
Ricardo Quesada 35008702bf fix: underline will have the same solor as text in TTF
underline will have the same solor as text in TTF when calling
`setColor`. There is another method called `setTextColor` which is
confusing. What does each function?

github issue #15214
2016-06-17 17:23:59 -07:00
Ricardo Quesada d9b3ef55ae Merge pull request #15880 from ricardoquesada/issue-15776
fix: TextureCache ASSERTS if image is invalid
2016-06-17 16:48:19 -07:00
Ricardo Quesada c387f953fa fix: TextureCache ASSERTS if image is invalid
Github issue #15776
2016-06-17 16:07:33 -07:00
minggo 6778ebf451 Merge pull request #15853 from ricardoquesada/vr_squashed
Squashed commit of the following:
2016-06-17 10:15:20 +08:00
minggo d66b686bd8 Merge pull request #15816 from yalab/valuemap_reject_none
Fixed to fail FileUtils::writeValueMapToFile on iOS.
2016-06-16 14:20:46 +08:00
minggo 43ece2de34 remove unneeded test case 2016-06-16 11:00:15 +08:00