Commit Graph

2355 Commits

Author SHA1 Message Date
Arnold e1675ae67b Enable navmesh (#19530)
* enable flags

* impl debug draw

* run tests

* remove comments

* fix mac compile error

* review fix
2019-03-20 14:34:35 +08:00
Arnold 6e063330e0
remove todos 2019-03-20 09:45:09 +08:00
patricejiang 82bbeb9b87
merge metal-support 2019-03-19 10:30:15 +08:00
minggo cb9cf672a1
Merge pull request #19517 from PatriceJiang/3d-material-test-cases
Enable material system test cases
2019-03-19 09:46:46 +08:00
minggo 8452b55b82
Merge pull request #19513 from Mee-gu/feature/AddDeviceInfo
Feature/add device info
2019-03-19 09:24:18 +08:00
Arnold c1ba0d866b
remove comments 2019-03-15 15:09:39 +08:00
Arnold d75c2f3c5e
add uniform callback 2019-03-15 14:44:28 +08:00
Arnold c35c4e2347
fix ccpass 2019-03-15 14:41:59 +08:00
Arnold 069800b98c
enable test case 2019-03-15 14:41:59 +08:00
minggo 629eebd031
Merge pull request #19498 from PatriceJiang/texture_setTexParams
Texture2D::TexParams fields use backend enum types
2019-03-15 10:43:52 +08:00
coulsonwang b2387f13de [Feature] add DeviceInfo for querying implementation limits. 2019-03-14 15:58:55 +08:00
patricejiang f8abc80989
fix android compile error 2019-03-14 13:39:11 +08:00
minggo f5380f8efe
Merge pull request #19506 from minggo/rectangleclipping
ClippingRectangleNode works
2019-03-13 15:50:31 +08:00
Arnold fb29eefda6
add setVertexLayout interface 2019-03-13 15:06:30 +08:00
minggo 1d9bde0520 ClippingRectangleNode works 2019-03-13 14:27:47 +08:00
minggo 7ebea45168 fix some todo 2019-03-13 14:11:40 +08:00
patricejiang 73ad5c62d3
fix android compile 2019-03-13 11:16:03 +08:00
Arnold 1d0107c087
alias backend::SamplerDescriptor 2019-03-13 10:54:26 +08:00
patricejiang 53975ee428
fix android error 2019-03-13 09:56:29 +08:00
coulsonwang a8e54b9b53 [Feature] update attribute setting 2019-03-12 21:05:03 +08:00
patricejiang 58c40c1cc6
fix android compile error 2019-03-12 16:53:28 +08:00
Arnold 62c6eae7c3
change Texture2D::TexParams fields type 2019-03-12 16:53:28 +08:00
Arnold a384e38e16 [bugfix] GL vertex attribute layout incorrect (#19484)
* collect OpenGL enum convertion methods

* add testcase for lots of nots

* fix andorid compile error

* move more function to UtilsGL

* use shared pointer

* naming stuff

* move VertexLayouts to CommandBuffer

* fix android compile error

* fix android headers

* add comment

* add comment, fix
2019-03-12 10:37:52 +08:00
coulsonwang c5c6fa3396 Feature/update sprite3 d test (#19475)
* [BugFix] fix crashed test in metal

* [Feature] add comments

* [Feature] modify ways to get max_vertex_attribute

* [Feature] make it crashed in debug mode
2019-03-08 18:48:12 +08:00
coulsonwang e69e7e0b30 [Feature] support cubeMapping in metal (#19469) 2019-03-07 11:08:12 +08:00
Arnold f7496948fd [3d] support particle3d (#19464)
* first commit

* fix matrix

* remove used comments

* fix compile error on mac

* self review fix 1

* litte refactor

* use reference:
2019-03-06 17:03:16 +08:00
coulsonwang 776ab98e0b [BugFix] fix fill UnifromBuffer issues (#19462) 2019-03-05 11:19:52 +08:00
Arnold 3a55fa3dd6 [3d] add CameraBackgroundBrush (#19454) 2019-03-04 09:14:45 +08:00
Arnold 1e00f50266
reorder sprite3d testscase (#19449) 2019-02-28 15:25:41 +08:00
Arnold b4f2ed0376 [3d] Sprite3DTest enable test cases (#19447) 2019-02-28 15:20:23 +08:00
Arnold 7fd82997ef [3d] terrain impl & test case (#19442) 2019-02-27 17:16:25 +08:00
coulsonwang f4170ea89a [Feature] set default scissor rectangle for metal when scissor test disabled (#19441) 2019-02-27 15:02:28 +08:00
coulsonwang cba56e5da7 Feature/save image issue (#19435) 2019-02-27 11:29:20 +08:00
minggo 1e7a6f7fcf
Issue19416 (#19427)
* use more meaningful names

* remove unneeded types
2019-02-22 14:06:26 +08:00
minggo 2ed60f72cf
Remove gl codes (#19415) 2019-02-20 17:07:31 +08:00
Arnold edf3687af5 [3d] add motionstreak3d (#19414) 2019-02-20 16:56:35 +08:00
minggo 06d7e4eda7
remove CCGLProgram related files (#19408)
* remove CCGLProgram related files

* remove CCGLProgram related header files
2019-02-19 16:06:17 +08:00
Arnold bfc98c6f21 [3d] add billboard (#19407) 2019-02-19 14:56:21 +08:00
minggo 480d964039
removed duplicated shaders (#19406) 2019-02-19 11:57:13 +08:00
Arnold fd1d5d2dd7 [3D] texture cubemap GL & skybox (#19401) 2019-02-19 10:15:24 +08:00
Arnold c14c5009a9
fix android compile error (#19397) 2019-02-15 14:55:26 +08:00
Arnold 8be2a2053f
sync 3d support code (#19392)
* Sprite3D
* DrawNode3D
* active more Sprite3DTest
2019-02-15 14:30:10 +08:00
Arnold fe497933f8 3d support: some test cases works
* hack to make sprite3d test work

* support cull face

* support setting front face winding

* convert depth compare function type

* clean codes

* remove usage of glprogramstate

* pass needed information to Material::draw()

* add 3d textures

* enable animation

* 3D: compile on windows  (#179)

* exclude source files from extensions/

* enable assets and 3D

* run on windows

* update comments

* use std::vector instead of raw pointer void *

* compile on mac

* revert cmake

* fix bufferdata

* add todos

* remove dirty flag from uniform buffer

* argument type const &

* enable more tests

* update shader

* save: failed to compile

* pass compilation

* fix type convert

* save stage

* save stage 2

* remove VertexData & IndexBuffer & VertexBuffer

* comment out _meshCommand

* comment bindPredefinedVertexAttribs()

* fix xcode project file

* simple refactor

* remove unused files

* revert sprite3d testcase position

* revert change

* remove ProgramGL::bindPredefinedVertexAttribs()

* add header <string>

* fix uniform size
2019-01-30 09:35:17 +08:00
minggo 8d9bd925c9
metal support for cocos2d-x (#19305)
* remove deprecated files

* remove some deprecated codes

* remove more deprecated codes

* remove ui deprecated codes

* remove more deprecated codes

* remove deprecated codes in ccmenuitem

* remove more deprecated codes in ui

* remove more deprecated codes in ui

* remove more deprecated codes in ui

* remove more deprecated codes

* remove more deprecated codes

* remove more deprecated codes

* remove vr related codes and ignore some modules

* remove allocator

* remove some config

* 【Feature】add back-end project file

* [Feature] add back-end file

* add pipeline descriptor and shader cache

* [Feature] support sprite for backend

* [Feature] remove unneeded code

* [Feature] according to es2.0 spec, you must use clamp-to-edge as  texture wrap mode, and no mipmapping for non-power-of-two texture

* [Feature] set texture wrap mode to clamp-to-edge, and no mipmapping for non-power-of-two texture

* [Feature] remove macro define to .cpp file

* [Feature] add log info

* [Feature] add PipelineDescriptor for TriangleCommand

* [Feature] add PipelineDescriptor object as member of TriangleCommand

* [Feature] add getPipelineDescriptor method

* add renderbackend

* complete pipeline descriptor

* [Feature] add viewport in RenderCommand

* set viewport when rendrering

* [Feature] occur error when using RendererBackend, to be fixed.

* a workaround to fix black screen on macOS 10.14 (#19090)

* add rendererbackend init function

* fix typo

* [Feature] modify testFile

* [BugFix] modify shader path

* [Feature] set default viewport

* fix projection

* [Feature] modify log info

* [BugFix] change viewport data type to int

* [BugFix] add BindGroup to PipelienDescriptor

* [BugFix] change a_position to vec3 in sprite.vert

* [BugFix] set vertexLayout according to V3F_C4B_T2F structure

* [Feature] revert a_position to vec4

* [Feature] renderer should not use gl codes directly

* [Feature] it's better not use default value parameter

* fix depth test setting

* rendererbackend -> renderer

* clear color and depth at begin

* add metal backend

* metal support normalized attribute

* simplify codes

* update external

* add render pass desctriptor in pipeline descriptor

* fix warnings

* fix crash and memeory leak

* refactor Texture2D

* put pipeline descriptor into render command

* simplify codes

* [Feature] update Sprite

* fix crash when closing app

* [Feature] update SpriteBatchNode and TextureAtlas

* support render texture(not finish)

* [Feature] remove unused code

* make tests work on mac

* fix download-deps path error

* make tests work on iOS

* [Feature] support ttf under normal label effect

* refactor triangle command processing

* let renderer handle more common commands

* refactor backend

* make render texture work

* [Feature] refactor backend for GL

* [Feature]Renaming to make it easy to understand

* [Feature] change warp mode to CLAMP_TO_EDGE

* fix ghost

* simplify visit render queue logic

* support progress timer without rial mode

* support partcile system

* Feature/update label (#149)

* [BugFix] fix compile error

* [Feature] support outline effect in ios

* [Feature] add shader file

* [BugFix] fix begin and end RenderPass

* [Feature] update CustomCommand

* [Feature] revert project.pbxproj

* [Feature] simplify codes

* [BugFix] pack AI88 to RGBA8888 only when outline enable

* [Feature] support shadow effect in Label

* [Feature] support BMFont

* [Feature] support glow effect

* [Feature] simplify shader files

* LabelAtlas work

* handle blend function correctly

* support tile map

* don't share buffer in metal

* alloc buffer size as needed

* support more tilemap

* Merge branch 'minggo/metal-support' into feature/updateLabel

* minggo/metal-support:
  support tile map
  handle blend function correctly
  LabelAtlas work
  Feature/update label (#149)
  support partcile system

# Conflicts:
#	cocos/2d/CCLabel.cpp
#	cocos/2d/CCSprite.cpp
#	cocos/2d/CCSpriteBatchNode.cpp
#	cocos/renderer/CCQuadCommand.cpp
#	cocos/renderer/CCQuadCommand.h

* render texture work without saving file

* use global viewport

* grid3d works

* remove grabber

* tiled3d works

* [BugFix] fix label bug

* [Feature] add updateSubData for buffer

* [Feature] remove setVertexCount

* support depth test

* add callback command

* [Feature] add UITest

* [Feature] update UITest

* [Feature] remove unneeded codes

* fix custom command issue

* fix layer color blend issue

* [BugFix] fix iOS compile error

* [Feature] remove unneeded codes

* [Feature] fix updateVertexBuffer

* layerradial works

* add draw test back

* fix batch issue

* fix compiling error

* [BugFix] support ETC1

* [BugFix] get the correct pipelineDescriptor

* [BugFix]  skip draw when backendTexture nullptr

* clipping node support

* [Feature] add shader files

* fix stencil issue in metal

* [Feature] update UILayoutTest

* [BugFix] skip drawing when vertexCount is zero

* refactor renderer

* add set global z order for stencil manager commands

* fix warnings caused by type

* remove viewport in render command

* [Feature] fix warnings caused by type

* [BugFix] clear vertexCount and indexCount for CustomComand when needed

* [Feature] update clear for CustomCommand

* ios use metal

* fix viewport issue

* fix LayerColorGradient crash

* [cmake] transport to android and windows (#160)

* save point 1

* compile on windows

* run on android

* revert useless change

* android set CC_ENABLE_CACHE_TEXTURE_DATA to 1

* add initGlew

* fix android crash

* add TODO new-renderer

* review update

* revert onGLFWWindowPosCallback

* fix android compiling error

* Impl progress radial (#162)

* progresstimer add radial impl

* default drawType to element

* dec invoke times of createVertexBuffer (#163)

* support depth/stencil format for gl backend

* simplify progress timer codes

* support motionstreak, effect is wrong

* fix motionstreak issue

* [Feature] update Scissor Test (#161)

* [Feature] update Scissor Test

* [Feature] update ScissorTest

* [Feature] rename function

* [Feature] get constant reference if needed

* [Feature] show render status (#164)

* improve performance

* fix depth state

* fill error that triangle vertex/index number bigger than buffer

* fix compiline error in release mode

* fix buffer conflict between CPU and GPU on iOS/macOS

* Renderer refactor (#165)

* use one vertes/index buffer with opengl

* fix error on windows

* custom command support index format config

* CCLayer: compact vertex data structure

* update comment

* fix doc

* support fast tilemap

* pass index format instead

* fix some wrong effect

* fix render texture error

* fix texture per-element size

* fix texture format error

* BlendFunc type refactor, GLenum -> backend::BlendFactor  (#167)

* BlendFunc use backend::BlendFactor as inner field

* update comments

* use int to replace GLenum

* update xcode project fiel

* rename to GLBlendConst

* add ccConstants.h

* update xcode project file

* update copyright

* remove primitive command

* remove CCPrimitive.cpp/.h

* remove deprecated files

* remove unneeded files

* remove multiple view support

* remove multiple view support

* remove the usage of frame buffer in camera

* director don't use frame buffer

* remove FrameBuffer

* remove BatchCommand

* add some api reference

* add physics2d back

* fix crash when close app on mac

* improve render texture

* fix rendertexture issue

* fix rendertexture issue

* simplify codes

* CMake support for mac & ios (#169)

* update cmake

* fix compile error

* update 3rd libs version

* remove CCThread.h/.cpp

* remove ccthread

* use audio engine to implement simple audio engine

* remove unneeded codes

* remove deprecated codes

* remove winrt macro

* remove CC_USE_WIC

* set partcile blend function in more elegant way

* remove unneeded codes

* remove unneeded codes

* cmake works on windows

* update project setting

* improve performance

* GLFloat -> float

* sync v3 cmake improvements into metal-support (#172)

* pick: modern cmake, compile definitions improvement (#19139)

* modern cmake, use target_compile_definitions partly

* simplify macro define, remove USE_*

* modern cmake, macro define

* add physics 2d macro define into ccConfig.h

* remove USE_CHIPMUNK macro in build.gradle

* remove CocosSelectModule.cmake

* shrink useless define

* simplify compile options config, re-add if necessary

* update external for tmp CI test

* un-quote target_compile_options value

* add "-g" parameter only when debug mode

* keep single build type when generator Xcode & VS projecy

* update external for tmp CI tes

* add static_cast<char>(-1), fix -Wc++11-narrowing

* simplify win32 compile define

* not modify code, only improve compile options

# Conflicts:
#	.gitignore
#	cmake/Modules/CocosConfigDepend.cmake
#	cocos/CMakeLists.txt
#	external/config.json
#	tests/cpp-tests/CMakeLists.txt

* modern cmake, improve cmake_compiler_flags (#19145)

* cmake_compiler_flags

* Fix typo

* Fix typo2

* Remove chanages from Android.mk

*  correct lua template cmake build (#19149)

* don't add -Wno-deprecated into jsb target

* correct lua template cmake build

* fix win32 lua template compile error

* prevent cmake in-source-build friendly (#19151)

* pick: Copy resources to "Resources/" on win32 like in linux configuration

* add "/Z7" for cpp-tests on windows

* [cmake] fix iOS xcode property setting failed (#19208)

* fix iOS xcode property setting failed

* use search_depend_libs_recursive at dlls collect

* fix typo

* [cmake] add find_host_library into iOS toolchain file (#19230)

* pick: [lua android] use luajit & template cmake update (#19239)

* increase cmake stability ,  remove tests/CMakeLists.txt (#19261)

* cmake win32 Precompiled header (#19273)

* Precompiled header

* Fix

* Precompiled header for cocos

* Precompiled header jscocos2d

* Fix for COCOS2D_DEBUG is always 1 on Android (#19291)

Related #19289

* little build fix, tests cpp-tests works on mac

* sync v3 build related codes into metal-support (#173)

* strict initialization for std::array

* remove proj.win32 project configs

* modern cmake, cmake_cleanup_remove_unused_variables (#19146)

* Switch travis CI to xenial (#19207)

* Switch travis CI to xenial

* Remove language: android

* Set language: cpp

* Fix java problem

* Update sdkmanager

* Fix sdkmanger

* next sdkmanager fix

* Remove xenial from android

* revert to sdk-tools-{system}-3859397

* Remove linux cmake install

* Update before-install.sh

* Update .travis.yml

* Simplify install-deps-linux.sh, tested on Ubuntu 16.04 (#19212)

* Simplify install-deps-linux.sh

* Cleanup

* pick: install ninja

* update cocos2d-console submodule

* for metal-support alpha release, we only test cpp

* add HelloCpp into project(Cocos2d-x) for tmp test

* update extenal metal-support-4

* update uniform setting

* [Feature] update BindGroup

* [Feature] empty-test

* [Feature] cpp-test

* [Feature] fix GL compiler error

* [Feature] fix GL crash

* [Feature] empty-test

* [Feature] cpp-tests

* [feature] improve frameRate

* [feature] fix opengl compile error

* [feature] fix opengl compile error

* [BugFix] fix compute maxLocation error

* [Feature] update setting unifrom

* [Feature] fix namespace

* [Feature] remove unneeded code

* [Bugfix] fix project file

* [Feature] update review

* [texture2d] impl texture format support  (#175)

* texture update

* update

* update texture

* commit

* compile on windows

* ddd

* rename

* rename methods

* no crash

* save gl

* save

* save

* rename

* move out pixel format convert functions

* metal crash

* update

* update android

* support gles compressed texture format

* support more compress format

* add more conversion methods

* ss

* save

* update conversion methods

* add PVRTC format support

* reformat

* add marco linux

* fix GL marcro

* pvrtc supported only by ios 8.0+

* remove unused cmake

* revert change

* refactor Texture2D::initWithData

* fix conversion log

* refactor Texture2D::initWithData

* remove some OpenGL constants for PVRTC

* add todo

* fix typo

* AutoTest works on mac/iOS by disable part cases, sync v3 bug fix (#174)

* review cpp-tests, and fix part issues on start auto test

* sync png format fix: Node:Particle3D abnormal texture effects #19204

* fix cpp-tests SpritePolygon crash, wrong png format (#19170)

* fix wrong png convert format from sRGB to Gray

* erase plist index if all frames was erased

* test_A8.png have I8 format, fix it

* [CCSpriteCache] allow re-add plist & add testcase (#19175)

* allow re-add plist & add testcase

* remove comments/rename method/update testcase

* fix isSpriteFramesWithFileLoaded & add testcase

* remove used variable

* remove unused variable

* fix double free issues when js/lua-tests exit on iOS (#19236)

* disable part cases, AutoTest works without crash on mac

* update cocos2dx files json, to test cocos new next

* fix spritecache plist parsing issue (#19269)

* [linux] Fix FileUtils::getContents with folder (#19157)

* fix FileUtils::getContents on linux/mac

* use stat.st_mode

* simplify

* [CCFileUtils] win32 getFileSize (#19176)

* win32 getFileSize

* fix stat

* [cpp test-Android]20:FileUtils/2 change title (#19197)

* sync #19200

* sync #19231

* [android lua] improve performance of lua loader (#19234)

* [lua] improve performance of lua loader

* remove cache fix

* Revert "fix spritecache plist parsing issue (#19269)"

This reverts commit f3a85ece4307a7b90816c34489d1ed2c8fd11baf.

* remove win32 project files ref in template.json

* add metal framework lnk ref into cpp template

* test on iOS, and disable part cases

* alBufferData instead of alBufferDataStatic for small audio file on Apple (#19227)

* changes AudioCache to use alBufferData instead of alBufferDataStatic

(also makes test 19 faster to trigger openal bugs faster)

The original problem: CrashIfClientProvidedBogusAudioBufferList
https://github.com/cocos2d/cocos2d-x/issues/18948
is not happening anymore, but there's still a not very frequent issue
that makes OpenAL crash with a call stack like this.
AudioCache::readDataTask > alBufferData > CleanUpDeadBufferList

It happes more frequently when the device is "cold", which means after
half an hour of not using the device (locked).

I could not find the actual source code for iOS OpenAL, so I used the
macOS versions:
https://opensource.apple.com/source/OpenAL/OpenAL-48.7/Source/OpenAL/oalImp.cpp.auto.html

They seem to use CAGuard.h to make sure the dead buffer list
has no threading issues. I'm worried because the CAGuard code I found
has macos and win32 define but no iOS, so I'm not sure. I guess the
iOS version is different and has the guard.

I could not find a place in the code that's unprotected by the locks
except the InitializeBufferMap() which should not be called more than
once from cocos, and there's a workaround in AudioEngine-impl for it.

I reduced the occurence of the CleanUpDeadBufferList crash by moving
the guard in ~AudioCache to cover the alDeleteBuffers call.

* remove hack method "setTimeout" on audio

* AutoTest works on iOS

* support set ios deployment target for root project

* enable all texture2d cases, since Jiang have fixed

* add CCTextureUtils to xcode project file (#176)

* add leak cases for SpriteFrameCache (#177)

* re-add SpriteFrameCache cases

* update template file json

* Update SpriteFrameCacheTest.cpp

* fix compiling error
2019-01-18 15:08:25 +08:00
minggo 7dcee2bcf9
Remove ccglstatecache (#19013) 2018-09-11 14:39:30 +08:00
ggggamer cf56f96a14 ClassLoader.loadClass use 'Binary names'. (#19011) 2018-09-10 15:06:19 +08:00
CHP 6a442192d4 Fix uninitialized variables problems found by drmemory (#19028) 2018-09-10 11:23:14 +08:00
CHP 548f50b92b Fix auto test (#19029)
* Fix auto test

* Add atomic include
2018-09-10 10:21:11 +08:00
Arnold eb920949a2 Add websocket latency test (#19018)
* compile on windows

* update android.mk, add WebSocketDelayTest.cpp

* update xcode project

* mac: fix printf format argument %llf

* update cmake
2018-09-07 09:11:04 +08:00
Jeff Wang 3948e5eece refine EditBox: add support for pressed and disabled image (#18965)
* refine EditBox add support for pressed and disabled image

* add test case

* fix compile error

* fix compatibility

* fix compile warning

* fix test cases

* remove CC_DEPRECATED_ATTRIBUTE mark
2018-08-07 09:29:51 +08:00
tyfkda aacec550c9 Fix out of range access in Label (#18789)
Out of range occurred in some condition
when using `Label` with its `getLetter()` member function.

`Label::recordPlaceholderInfo()` member function is called for
new line (\n) letter in `Label::multilineTextWrap()`,
but the function doesn't set `_lettersInfo[letterIndex].lineIndex`.

But `lineIndex` is used in `Label::updateLabelLetters()`
even if letter is new line.

This change checks `letterInfo.valid` to avoid
accessing `_linesOffsetX[letterInfo.lineIndex]`
for invalid (i.e. `NewLine`) letter.
2018-08-06 14:27:47 +08:00
leda 8d4ee80ac1
add test case for issue #18597(audio crash on iOS), and fix (#18865)
* use atomic_bool type for _isRotateThreadExited

* add test case for issues 18597

* fix test case error

* add data race comments, fix lock usage error

* add comments for audioplayer

* fix typo in comments

* revert wrong changes

* update test case, keep reproduce

* add alSourceUnqueueBuffers before stop

* improve UnqueueBuffers

* detail test case to show side effect

* remove unused comments

* add comments for AudioPlayer change

* correct a audio log level

* change log level from W to VV

* update time step, add play state check

* remove record time of UnqueueBuffers
2018-07-11 09:36:57 +08:00
rh101 fd7f7ba085 Fix for Label and UIRichEdit text trailing space trimming (#18876)
* [UIRichText.cpp] Allow user to select if they want to trim trailing spaces for a RichElementText. Also fixed crash if estimatedIdx is less than 0 in certain conditions.
[UIRichText.h] New flag added for enabling trailing space trimming.
[CCLabelTextFormatter.cpp] Only trim trailing whitespace if lines are being split. This will trim all whitespace up to the next non-whitespace token in a line.

* Fix for oversized sprites that need to be offset by X and Y to be aligned correctly in the UIRichText

* Revert "Fix for oversized sprites that need to be offset by X and Y to be aligned correctly in the UIRichText"

This reverts commit fc5492e878a982ff748488bf1de4ffa88a3d4755.

* [UIRichText] Reverted changes made for trimming since they are no longer required. The changes made to CCLabelTextFormatter.cpp fixed all the current issues.

* Added test cases from #18869

* Removed the forced trailing space clipping since it is not required here, and causing side-effects.

* Removed comment that no longer applies to that section of code
2018-06-08 17:06:29 +08:00
leda 9ccc271591 add download multi task test case (#18795)
* add network test case

* improve download task

* Trigger CI
2018-05-17 09:10:51 +08:00
leda 4675ee79cd correct iOS project config when using CMake `-GXcode` generate (3.17 round 2 test) (#18808)
* ARCH_DIR only useful for search linux prebuilt libs

* add iOS app target ONLY_ACTIVE_ARCH property

* set Xcode property for application, include all depend target

* fix bugs-editbox-win32 crash

* improve EditBox-align test case

* typo error

* update cocos-console submodule

* VS RelWithDebInfo build use release folder external libs
2018-05-11 15:09:09 +08:00
leda 391f30a3f3 beauty cmake format, reduce duplicate defines (#18799)
* reduce cmake module duplicate

* make module use more clear, correct cmake style

* keep default physics option

* delete the modules distributed with cmake

* unify the cmake files format

* use AndroidNdkModules at cmake sys modules

* add cmake comments for win

* update cocos2dx files list, manually
2018-05-02 15:33:01 +08:00
leda a5c52607d5 check test cases and fix small bugs before 3.17 release (#18786)
* update edit box H alignment case

* improve label no-break-space test case

* fix label test cases bug

* add GetterSetter define for the placeHolder of TextField

* fix event condition bugs on ParticleTest.lua
2018-04-25 09:50:53 +08:00
Dimon4eg d32f33056f Fix no-break space size (#18661)
* fix warnings

* added test

* fix warning

* fix no-break space size

* Correct code
2018-03-13 09:40:24 +08:00
leeda edee97278f V3 android cmake support, add mac/ios support (#18646)
* CMake build improvements

* android cmake support

* Enable proguard for cocos2d

* examples & test cmake support

* add android build type param to gradle.properties file

* less warnings

* update all android configs to recomended settings

* fix network cmake error

* fix js-tests cmake error

* android build config, add cmake

* android build config, add cmake

* add lua share lib

* android lua cmake build fix

* fix

* luajit test

* run fail, still

* fix js-warning

* correct lua main include

* lua test project cmake support android

* try to add lua-template cmake support

* lua template fix

* js_tests support cmake on android

* js-tests improve

* cmake support js-template

* test to realise prebuild

* cmake improve, no feature

* improve templates cmake

* refactor cmake struct

* correct cpp-tests cmake

* cpp-templates cmake improve

* typo fix

* cmake struct refator

* change default option

* adapt new project struct

* uniform cmake test style

* add_dependencies to support make -j

* little struct improve

* little fix

* adapt cmake bin dir

* little improve about cmake version

* change build all tests condition

* add source_group for Xcode

* add mark source files

* add more mark source code

* add template project to test

* add macos info.plist template

* add pak macos for all project

* lua test icon fix

* not consider lua project for now

* modify pak method

* add another ios toolchain

* add ios system library

* update ios toolchain, and reduce ios compile errors

* reduce error

* make ios engine lib compile pass

* cpp-empty-test ios bundle

* cpp-tests ios support

* js-tests ios support

* templates project support ios

* fix the way of lua-tests package

* try to fix lua-template on macOS

* comment lua-template sim file

* improve display on xcode

* update cmake readme

* check android compile again

* fix android compile error

* fix linux cmake res error

* update deps version, for cmake

* fix lua_template linux compile error

* close android cmake support for now

* review template android share library name

* change PROP_BUILD_TOOLS_VERSION version to 27.0.1

* change android compile version

* make `PROP_APP_PLATFORM` back, add comments for android native build

* Revert "make `PROP_APP_PLATFORM` back, add comments for android native build"

This reverts commit 272ddc19886891b9502cde070753a870c0fdb588.
2018-02-08 09:24:33 +08:00
Dimon4eg b3285edb56 Speed up windows build (#18662)
* added precompiled headers

* Configure Visual Studio projects to use precompiled headers
2018-01-29 16:36:38 +08:00
leeda 18a6d8241d update Copyright. might need manual fix later (#18659)
* Copyright use python script updated. might be fix by manual later

* Revert "Copyright use python script updated. might be fix by manual later"

This reverts commit 49e99418e4da1fd02afda448ddeb16210f5e8c71.

* re modify copyright, consider utf-8-sig encoding

* another situation, add Copyright before  "Permission is hereby granted"

* Revert "another situation, add Copyright before  "Permission is hereby granted""

This reverts commit ee82591d32353c7ce2e146fe51ef447433b47571.

* another situation, add Copyright before Permission is hereby granted

* change "Copyright (c) 2016-2016 Chukong Technologies Inc." to " Copyright (c) 2016 Chukong Technologies Inc."

* script modify copyright, consider is cocos copyright or not

* change "Copyright (c) 2017 Chukong Technologies Inc." to "Copyright (c) 2016 Chukong Technologies Inc."

* manual fix, not fix audio related

* change "2016-2016" to "2016"
2018-01-29 16:25:32 +08:00
newnon 5d006192aa V3 multisampling support (#18632)
* Multisampling support

* fix opengl initialization with multisampling

* fix merge conflict

* reverted default attributes
2018-01-19 09:28:22 +08:00
leeda cf1049fcaf add folder ref for Xcode, unify code style (#18617) 2018-01-10 17:18:08 +08:00
Dimon4eg 3d63730c06 Add test wrap unicode text (#18570)
* fix LabelFNTMultiLineAlignment test

* Added test for unicode text wrap
2018-01-10 17:01:19 +08:00
Vladyslav Kaplun 4f386a4d26 18572 PR amends & override warning fix (#18580) 2018-01-09 09:26:15 +08:00
Ruud Arentsen ea22822875 Added support for BMFont in TextField (#18587)
* Added support for BMFont in TextField

* Added cursor support for BMFont in TextFieldTTF
Made BMFont detection case insensitive and a bit more fool proof

* Added TextField::createWithBMFont, so that the font size is determined internally.

* Revert "Added TextField::createWithBMFont, so that the font size is determined internally."

This reverts commit 46b4e72ba44979b012ffa52bb78ea0a8493f7869.

* fix BMFont Cursor scale

* remove error add subproject
2017-12-29 11:24:02 +08:00
leeda ca46b062fd spine res name update, because files name changed before (#18586) 2017-12-26 09:10:24 +08:00
Jeff Wang 01ee30a023 improvements for EditBox-win32 (#18579)
* improvements for EditBox-win32

* add test case

* Update UIEditBoxImpl-win32.cpp
2017-12-22 09:14:27 +08:00
AIGRIND 45992aa80e ScrollView API to stop overall scroll (#18552)
* ScrollView API to stop overall scroll

* ScrollView API to stop overall scroll

* ScrollView API to stop overall scroll

Cancel current touch handling after stopScroll() is called

* New test for scrolling stop in UIScrollView

* New test for scrolling stop in UIScrollView
2017-12-14 13:38:03 +08:00
James Chen 89781a44df Fixes ResizableBufferAdapter<Data>::resize doesn't consider the situation of new size which is lower than old size. (#18553) 2017-12-12 17:49:11 +08:00
minggo cfaa77be28
Update spine (#18427) 2017-11-02 09:06:13 +08:00
okamura d13d55c23f Fix CameraBackgroundColorBrush cannot use alpha (#18281) 2017-10-20 09:43:45 +08:00
Vladimir Perminov 849e72385b Add test case for TextFieldTTF::setCursorFromPoint (#18336)
Test crash in https://github.com/cocos2d/cocos2d-x/pull/18159
2017-10-17 00:48:38 -05:00
minggo b275a3e2f0 fix conflict 2017-09-20 09:11:35 +08:00
minggo bbc3eaaa4d fix gravity direction (#18282) 2017-09-19 09:41:44 +08:00
minggo c66694cf20 adjust to make wrap mode take effect (#18259)
* adjust to make wrap mode take effect

* make description more clear
2017-09-15 09:01:56 +08:00
minggo dc8502edc1 make description more clear (#18263) 2017-09-14 09:26:04 +08:00
minggo 26272b2026 use update instead of run action because Sequence has issue when work with RepeatForever (#18257) 2017-09-13 15:36:11 +08:00
minggo afe4016618 fix crash of CaptureScreenTest (#18242) 2017-09-12 09:39:15 +08:00
James Chen d13c01230f Fixes ShaderRetroEffect crashes. (#18237) 2017-09-08 14:10:40 +08:00
minggo 2fe40dba68 make uifocustest the same behavior as cpp (#18238) 2017-09-08 10:35:15 +08:00
minggo ce1c207aee add LayerMultiplex::switch(int ,bool) (#18224) 2017-09-08 09:28:57 +08:00
minggo 85456fa1d5 fix local z order issue (#18232) 2017-09-08 09:28:35 +08:00
James Chen c6b87f2b09 More specific prompt for ETC1 test. (#18212) 2017-09-06 15:03:59 +08:00
kepler-5 d42d969b46 Allow customizing opacity of PageView indicator nodes (#18059)
* allow setting and getting of pageview indicator opacity. fix some documentation comments

* don't draw the indicator the selected indicator is currently overlapping

* add a tweaked opacity to one of the test cases

* remove unused variable

* convert tabs to whitespace

* change constexpr to static const
2017-07-17 15:55:43 +08:00
子龙山人 0b99ba35f2 Fix ui slice issue (#18065)
* add tests to reproduce sprite slice issue

* fix scale9sprite change texture losing slice info

* fix tilemap crash issue
2017-07-17 15:52:01 +08:00
kepler-5 876e4222a9 More useful events and getters in UIScrollView (#18054)
* add begin and end events to UIScrollView

* add new state to copySpecialProperties

* functions to find what percent scrolled in a scrollview we are
2017-07-13 10:35:29 +08:00
kepler-5 d3eb857482 horizontal alignment support in RichText (#18027)
* horizontal alignment support in RichText

* split lambda into separate function

* tweak shadow test's content size so horizontal aligment doesn't give the illusion of behaving incorrectly

* fix alignment when the last char of a line is whitespace

* fix errors from merge

* fix bug in setting of size of image elements. scaling was applied effectively twice.

* removed debugging code. whoops
2017-07-05 09:25:12 +08:00
minggo 84ccbde845 Sequence issue (#18009)
* fix SequenceWithFinalInstant test issue

* fix the issue that sequence will not finish for ever
2017-07-03 09:15:53 +08:00
shintaro.tanikawa f9c8bd4bc1 Add padding options to ListView (#17587)
* Add options to ListView for setting padding

* Add 'setPadding' method test cases.
2017-06-15 14:56:54 +08:00
minggo 2b3baf4517 fix precision issue (#17908)
* fix precision issue

* fix shader error on mac
2017-06-12 08:57:40 +08:00
Satoshi 84463dbab4 fix CCLabel line height is reset (#17902) (#17903) 2017-06-07 16:56:02 +08:00
Undume 72ad341d24 Webview opacity and background transparency (#17831)
* Added three new methods for UiWebView. SetOpacityWebView(float), getOpacityWebView(), setBackgroundTransparent() in IOS

* Implemented methods for UiWebView. SetOpacityWebView(float), getOpacityWebView(). They only work using android sdk +11.

* New methods not implemented for Tizen.

* Added new button for testing the opacity in the cocos2d-x test application.

* Added setBackgroundTransparent to android, and his UI-Test.

* Added setBackgroundTransparent to android, and his UI-Test.

* Added keyword const to the getters.

* Android sdk reflection. +11sdk for chaging the opacity.

* Reflection used for the webview.setLayerType, webview.setAlpha, webview.getAlpha

* Unified exceptions.
2017-06-07 16:12:32 +08:00
Nick Dong afcffc7b3a Handle auto layout with scaled widget (#17822)
* handle auto layout with scaled widget

* add test for UILayout for Scaled Widget

* add test for UILayout - Scaled Widget - JS
2017-05-26 10:09:57 +08:00
minggo 54962ee509 LayerRadialGradient works on mac and iOS (#17826)
* LayerRadialGradient works on mac and iOS

* fix radius

* finish LayerRadialGradient and add test case

* use local coordinate in shader

* adjust function attributes

* implement getCenter()

* add some comments
2017-05-22 13:42:00 +08:00
James Chen 95baff7086 fixed #17835: pauseEventListenersForTarget doesn't work correctly while in dispatching event (#17836)
* add test.

* fixed #17835: pauseEventListenersForTarget doesn't work correctly while in dispatching event

* remove a unneeded check
2017-05-19 14:03:51 +08:00
Dimon4eg a3cb7de101 Fix reschedule issue with same key (#17706)
* fix reschedule issue

* correct code formatting

* Fix isScheduled

* improve a bit performance of executing functions in cocos thread

* added test to verify reschedule issue

* re-init timer in schedule if timer exists and alive
2017-05-04 16:24:20 +08:00
子龙山人 55b14cbde5 Fix android edit box duplicated text (#17775)
* fix editbox textChanged event called after fragment loaded

* fix editbox duplicatd text when change text in textChanged callback

* revert changes of placeholder modification
2017-05-04 15:04:47 +08:00
RickyZheng001 f8e325792b V3.15 (#17752)
* remove APP_SHORT_COMMANDS setting (#17722)

some developers report it will cause error on Windows though i can not reproduce it. It is strange, the setting is used to resolve command length limitation on Windows.

* Particle font size should be a const value (#17676)

* Particle font size should be a const value

* Minor fix: CCStencilStateManager.hpp -> CCStencilStateManager.h in xcode project.

* JSB SocketIO.connect supports to pass a CA cert file (#17736)

* JSB SocketIO.connect supports to pass a CA cert file

* The second parameter of SocketIO.connect function is probably a `option` object. JSB just ignores it.
2017-04-27 09:25:20 +08:00
minggo ee84d9f12e update v3.15 2017-04-14 13:45:32 +08:00
James Chen 3c1e36c2c3 Cleanup AudioEngine resource after exiting NewAudioEngineTest. (#17675)
* Unschedules update in AudioEngine implementation while AudioEngine::end is called.

* Cleanup AudioEngine resource after exiting NewAudioEngineTest.
2017-04-13 17:58:49 +08:00
James Chen e5e87311b6 [lua-tests] Check the validity of label instance before setString. (#17664)
* [lua-tests] Check the validity of label instance before setString.
fixed http://punchbox.info:3000/issues/26233

* Minor fix: Adds missing test case in NewAudioEngineTest.
2017-04-10 10:14:06 +08:00
minggo 2ee3274029 skip some test on android (#17648) 2017-04-05 17:40:47 +08:00
minggo 4ad1901a92 fix comiling issue 2017-04-05 14:57:04 +08:00
minggo 9c77f09c49 fixed bug that toggle can not work at first time (#17647) 2017-04-05 14:26:11 +08:00
minggo 2f173104b4 fix resource (#17645) 2017-04-05 14:13:17 +08:00
minggo 9ed5127edc synchronize v3.15 2017-04-01 17:16:45 +08:00
James Chen 439f371758 fixed #17619: [android] Crash if uncache audio in the finished callback (#17620) 2017-03-31 09:38:45 +08:00
James Chen 2b3087ffc5 Fixes ConsoleUploadFile test could not work on android. (#17607)
* Should not use fread to read file from assets, uses FileUtils::getDataFromFile instead.
* Client socket should not be closed immediatelly after ::send. Otherwise, sever may will receive “Connection reset by peer - Errno 104” error on some platforms. It could be 100% reproduced on Android.
2017-03-29 14:23:33 +08:00
James Chen 1eea499466 fixed #17603: Connection error in Console uploadFile test. (#17604)
* fixed #17603: Connection error in Console uploadFile test.

* tab -> spaces

* tab -> spaces

* tab -> spaces
2017-03-29 09:17:37 +08:00
James Chen 6217d8c5ca fixed #17591: [ios, mac, win32] Audio could not be played in the callback of AudioEngine::setFinishedCallback (#17593)
* Moves the implementation of AudioEngine::AudioInfo to cpp file.

* fixed #17591: [ios, mac, win32] Audio could not be played in the callback of AudioEngine::setFinishedCallback

* fixed #17591: Adds test case.
2017-03-27 17:28:39 +08:00
minggo a4c06670b1 make menu item don't overlap with other label (#17590) 2017-03-27 10:50:41 +08:00
minggo 39095ce804 make log more clear (#17589) 2017-03-27 09:56:17 +08:00
mogemimi 8a327c77fa Fix various minor typos (#17570) 2017-03-23 09:30:42 +08:00
j-jorge 168ffa639c Flag the end of ActionInstant and ActionInterval. (#17557) 2017-03-22 14:17:49 +08:00
minggo db837ebdae remove unneeded test cases and fix parameter length limitation on windows
* delete unnneded test case on windows

* delete unneeded test cases

* avoid parameter length limit when building android on windows

* adjust project setting to delete unneeded test cases

* remove unneeded test cases for windows10

* remove unneeded test cases for tizen

* remove unnedded test case for android
2017-03-22 13:43:12 +08:00
James Chen 3bd09ae286 [win32] Fixes cpp-tests/FileUtilsTest crash. (#17551) 2017-03-22 11:17:52 +08:00
minggo 20c162fc0a make all mesh in view rect (#17558) 2017-03-22 09:21:59 +08:00
mogemimi f90691eb63 Fix spelling: billborad -> billboard (#17560) 2017-03-22 09:21:34 +08:00
minggo 5fec861e27 use correctly '' (#17553) 2017-03-20 11:45:17 +08:00
James Chen 670a47c27f Fixes label cover (#17550) 2017-03-20 11:24:29 +08:00
minggo b5a1360a17 revert #17437 (#17545)
* revert #17437

* fix resource path
2017-03-20 09:28:12 +08:00
minggo d263f8e0f2 fix resource path (#17546) 2017-03-17 17:53:35 +08:00
minggo e8c0b04e24 fix crash (#17544) 2017-03-17 16:15:21 +08:00
minggo 3ff521505e use correct resource (#17543) 2017-03-17 15:02:47 +08:00
mogemimi 8be22ce55c Fix typos in comments and strings (#17534) 2017-03-17 10:44:38 +08:00
James Chen 8c542d711d issue #17503: Avoid crash if initializing audio fails. (#17505)
* issue #17503: Avoid crash if initializing audio fails.

* Corrects logic of checking the return value of decodeMP3.
2017-03-15 16:46:19 +08:00
mogemimi 0a35a8ca10 Fix spelling mistake in test case (#17502) 2017-03-15 13:51:37 +08:00
James Chen 5c0c6d2e1e More powerful Uri class, adds unit test for Uri class. Refactors some code in SocketIO & Websocket. (#17472)
* More powerful Uri class, adds unit test for Uri class. Refactores some code in SocketIO & Websocket.

* Adds missing header file stdint.h

* Exports Uri class

* Uri belongs to network group

* Updates the location of group comment

* Removes an unused include.

* Updates Uri comment.
2017-03-09 10:14:39 +08:00
j-jorge 67d16bee98 Prevent unexpected calls to unscheduled selector in long updates. (#17431)
If the delta time dt passed to cocos2d::Timer::update(float) is longer than the
interval of the timer, then the timer will be triggered several times even if
the selector is unscheduled during the call.

This commit adds a flag in cocos2d::Timer stop the update loop if the selector
has been unscheduled.
2017-03-07 11:16:30 +08:00
j-jorge 6cd7314497 cocos2d::Sequence::isDone() checks that the last action is actually done. (#17437) 2017-03-07 09:36:09 +08:00
James Chen bdcacd0031 Some fixes for search paths: (#17435)
* Some fixes for search paths:
1. Adds ‘_originalSearchPaths’ variable, ’getSearchPaths’ returns the original values set by ‘setSearchPaths’  or ‘addSearchPath’.
2. Adds a getter function ‘getDefaultResourceRootPath’.
3. ‘setDefaultResourceRootPath’ should also update search paths and remove file path cache internally.
4. ‘setSearchPaths’  supports to pass self (_originalSearchPath), could be used in ‘setDefaultResourceRootPath’ to update the final ’_searchPathArray’ for searching full path.
5. ‘addSearchPath’ fix, the default resource root path should be the last element in ‘_searchPathArray’.

* Checks whether the parameter ‘searchResolutionOrder’ passed in is the same as ‘_searchResolutionsOrderArray’.

* Don’t break the compatibility, add a new method called ‘FileUtils::getOriginalSearchPaths’.
2017-03-06 16:59:43 +08:00
mogemimi e293520057 Fix some local variable names in tests (#17445) 2017-03-06 10:01:53 +08:00
radman0x c442275c8e 17357: Better encapsulate the definition of mouse buttons (#17358)
* 17357: Better encapsulate the definition of mouse buttons

Move definition of buttons from a list of #define's to an enum class and
make appropriate updates for successful compilation.

* 17357: Better encapsulate the definition of mouse buttons

Updates from code review:
* Removed changes to automatically generated files
* Removed std::ostream& convenience operator

* 17357: Fix mouse tests
2017-03-02 13:39:33 +08:00
mogemimi 454fd8518b Fix minor typos in tests (#17404) 2017-02-24 12:45:41 +08:00
mogemimi 48cbc890c6 Typo fix: Rename `MutiTouchTest` to `MultiTouchTest` (#17399) 2017-02-23 17:05:08 +08:00
mogemimi 3937b4d631 Fix minor typos in UI test cases (#17400) 2017-02-23 16:14:39 +08:00
James Chen 619e012d9b [WebSocket] Adds support for getting url and server selected protocol (#17381)
* [WebSocket] Adds support for getting url and server selected protocol

* Adds const keyword for getter methods, and make LOGE also works in release mode.
2017-02-20 09:44:20 +08:00
CocosRobot d07794052f Update license to 2017 (#17362)
* Typo: CopyRight -> Copyright

* Copyright update: chukong-inc.com -> Chukong Technologies Inc.

* [js files] Copyright update: 2014 -> 2014-2017

* [cpp files] Copyright update: 2014 -> 2014-2017

* Copyright update: 2015 -> 2015-2017

* [js files] Copyright update: 2014 -> 2014-2017

* Copyright update: 2016 -> 2016-2017

* Copyright update: 2013 -> 2013-2017

* Copyright update: 201?-201? -> 201?-2017

* License year fixes.

* Liscene year fix in CCRay.cpp

* Updates license years in CCGLProgramState.h & CCGLProgramStateCache.h
2017-02-14 14:36:57 +08:00
子龙山人 1baad6b962 Fix tizen compilation issue (#17341)
* fix tizen compile issue

* enable websocket test on tizen

* change application id of tizen projects

* improve cpp-tests websockets

* update template app id of tizen

* fix tizen cpp-tests in release mode

* update 3rd deps version

* bump external version to 123
2017-02-13 17:59:48 +08:00
James Chen 4237639dd6 Some fixes for websocket (#17342)
* libwebsockets & curl are dynamic libraries now, modify project configuration for win32.
Updates WebSocketTest.cpp to test wss connection.

* Corrects some logic in WebSocket.cpp. Adds wss test case. WebSocketTest suggests developers to use `WebSocket::closeAsync` method which will not block current thread.

* mutex unlock fix in WebSocket.cpp. Reverts TEST URL.

* Allows self-assign cert.

* Each ws connection will create a virutal host now. Supports self-signed cert and update test case to suggest developer use ‘closeAsync’.

* Updates deps to 123.
2017-02-13 15:15:23 +08:00
newnon f408cbfcca fix rendering font with not null line gap (#17175)
* fix rendering font with not null line gap

* test for line gap fix
2017-02-13 13:58:32 +08:00
James Chen 27e2012cf1 fixed #16871: Material second shader texture will be lost when removeUnusedTextures is invoked. (#16884)
* fixed #16871: Material second shader texture will be lost when removeUnusedTextures is invoked.

* issue #16871: Adds test case for issue #16871.

* issue #16871: Checks whether current texture is the same as which is passed in. And more comments for release stuffs.

* Removes unused nullptr check of _value.tex.texture

CC_SAFE_RETAIN will check it.
And some indention fixes.
2017-02-10 14:01:26 +08:00
mogemimi d160d79d5b Fix typos in comments and strings (#17333) 2017-02-10 10:35:52 +08:00
minggo 8825a091bb update spine to 3.5.35 (#17331)
* update spine to 3.5.35

* fix jsb compiling error

* fix lua compiling error
2017-02-09 16:57:42 +08:00
newnon 88c3fcde67 Full unicode support (#17179)
* Full unicode support

* test for emoji
2017-02-06 16:41:52 +08:00
子龙山人 193518ed8b add opacity support to DrawNode (#17248) 2017-02-06 15:34:14 +08:00
j-jorge 6bbf01537d Allow to unbind asynchronous texture loading callback with a custom key. (#17206)
* Allow to unbind asynchronous texture loading callback with a custom key.

In order to unbind the callback passed to
`cocos2d::TextureCache::addImageAsync(path, callback)`, one has to
call `cocos2d::TextureCache::unbindImageAsync(path)`. In the cases
where the loading of the same texture is requested from several sources
simultaneously, then none of the source can unbind its own callback
unambiguously.

This commit adds an overload of the `addImageAsync` function taking an extra
argument identifying the callback, thus allowing to unbind it unambiguously
in cases where the loading of path is requested by several sources
simultaneously.

* Add a test case for TextureCache::addImageAsync with a custom key.
2017-02-04 09:38:54 +08:00
mogemimi 061122514c Fix typo in Sprite (strech -> stretch) (#17241) 2017-01-23 09:25:56 +08:00
minggo 690db56f44 Merge v3.14.1 (#17231)
* update cocos console to fix compiling error with Android Studio projects (#17129) (#17145)

* fix crash if physics3d camera is not set (#17139) (#17144)

* fix linking error with vs2015 (#17146)

* fix issue #17116 & #17119 for v3.14.1

* tests cases

* better documentation

* doc: updates sprite doc

* Fix scale9sprite polygon info (#17161)

* add guard code to Scale9Sprite

* add new test code

* Glfw linux issue (#17166)

* purge glfw3 before installing glfw3.2

* purge glfw3 before installing glfw3.2

* Update web engine ref (#17169)

* update version and release note (#17170)

* issue ##17119 improved v3.14.1 (#17189)

* update version (#17230)
2017-01-20 09:59:30 +08:00