Commit Graph

1103 Commits

Author SHA1 Message Date
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
Arnold 6da19d5eaf cache PhysicsJoint* attributes before PhysicsWorld update (#19108)
* use cache

* add unlikely

* fix pbxproj file

* remove unused methods
2018-10-19 18:11:50 +08:00
pyrosphere 411bd0934e Fix project warnings (#19126)
- Update cocos2d_libs Xcode project and turn on recommended warnings
- Fix `int` string formatting using "%zd" instead of "%d"
- Fix loop over reference to avoid object copy
2018-10-19 18:09:31 +08:00
minggo 7dcee2bcf9
Remove ccglstatecache (#19013) 2018-09-11 14:39:30 +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
Arnold 8d75c07dcb Upgrade dep libs (#19015)
* add libuv
* recompile libwebsocket 2.4.2 with libuv enabled
2018-09-06 16:07:25 +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
leeda cf1049fcaf add folder ref for Xcode, unify code style (#18617) 2018-01-10 17:18:08 +08:00
wnddpd01 816029a964 Force yes is deprecated, Edit travis (#18528)
* --force-yes => --allow, -y

* APT Version Check, Add start comment

* APT Version check, Add start Comment

* APT Version check, Add Start Comment

* APT Version check, Add start comment

* Edit travis ui for install_deps_linux.sh
2017-12-04 11:35:31 +08:00
James Chen 69e5a056e6 Uses Images.xcassets instead of several icon png files. (#18485)
* Uses Images.xcassets instead of several icon png files.

* Renames AppIcon.

* Sets AppIcon from Images.xcassets

* Uses Images.xcassets instead of several icon png files for template projects.

* Modify permission to 644
2017-11-21 15:31:29 +08:00
wnddpd01 bcfdb57a66 --force-yes => --allow, -y (#18464) 2017-11-21 09:40:45 +08:00
minggo 1d356a160a
remove vs2013 libs (#18439) 2017-11-03 10:53:14 +08:00
minggo 56baabfe50
update glfw to 3.2.1 (#18434) 2017-11-02 15:25:12 +08:00
minggo cfaa77be28
Update spine (#18427) 2017-11-02 09:06:13 +08:00
minggo b53eb25200
use prebuilt version of Box2D (#18422) 2017-10-31 14:31:23 +08:00
minggo 0b699e8f19 fix conflict 2017-10-09 10:23:13 +08:00
minggo cb3c0853e1 [ci skip]Remove win10 and tizen support
* remove win10 sln

* remove win10 porj from template

* remove win10 and tizen support
2017-09-22 17:54:37 +08:00
James Chen 0c5ba220b1 Supports full screen for iPhone X and uses Storyboard for launch screen. (#18276)
* Supports full screen for iPhone X and uses Storyboard for launch screen.
cpp-empty-tests done.

* Supports full screen for iPhone X and uses Storyboard for launch screen.
cpp-tests, js-tests, lua-empty-test, lua-tests done.

* Removes unused UILaunchImages for test projects.

* Removes unused UILaunchImages for template projects.

* Adds LaunchScreen.storyboard / LaunchScreenBackground for template projects.

* Fixes lua template.
2017-09-19 15:01:19 +08:00
minggo 4a0b9b1fd3 [ci skip]remove tizen projects (#18196) 2017-08-28 14:33:01 +08:00
Carlos Madrazo aecc68d7b8 Add game-controller-test for win32 (#18164)
compile from build/cocos2d-win32.sln
2017-08-16 17:46:09 +08:00
Wilson E. Alvarez 5dd81e758a Add controller support for Linux and Win32 (#17990)
* Add controller support for Linux and Win32

* Fix iOS and Mac linker issue

* Fixed documentation. Removed unnecessary whitespace.
2017-07-10 10:30:04 +08:00
minggo 4b61ea1f1e use travis to build iOS and mac (#17999) 2017-06-29 16:41:06 +08:00
minggo 029dabc4d5 Template issue (#17958)
* add search path

* do not ignore release/debug folder
VS out put folder name is debug/release.win32
and there may have debug/release folder name in 3rd party library

* don not ignore debug folder
2017-06-21 16:18:55 +08:00
minggo 4ce443bac2 use prebuilt version of bullet (#17950)
* use prebuilt bullet

* prebuilt bullet work ok on linux

* update search path

* update search path

* fix compiling issue for lua/jsb projects

* prebuilt bullet work on windows

* update 3rd party lib version

* add bullet search path

* fix script bindings issue

* fix scripting binding
2017-06-21 13:39:38 +08:00
minggo f79a138c2b revert updating flatbuffers (#17930)
* revert updating flatbuffers

* update external version
2017-06-15 13:42:50 +08:00
pyrosphere 5ce38d14fe On XCode projects, removed specific SDK versions from framework paths. (#17929) 2017-06-15 09:53:32 +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
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
pyrosphere 72c558e070 Change library/header search paths of external libraries for tvOS. (#17547)
* Fixes cocos2d build for tvOS.

* Support for the tvOS micro gamepad as a CCController.

* Changes library/header search paths for external libraries from iOS to tvOS.

* Updated 3rd party libraries.
2017-04-14 09:35:09 +08:00
James Chen 06fe9a28fe Tizen compilation fix (#17627) 2017-04-01 15:32:40 +08:00
James Chen a924e29c2c Adds libmd5-rfc third-party library for calculating MD5 since the functions in <openssl/md5.h> aren’t exported in win10, plus <openssl/md5.h> seems to be private header. (#17625)
* Adds libmd5-rfc library since the functions in <openssl/md5.h> aren’t exported in win10, plus <openssl/md5.h> seems to be private header.

* Adds libmd5-rfc library for win32 and win10.

* Removes json/msinttypes folder from xcode since it’s only needed for win32 | win10.
2017-04-01 11:43:17 +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
rh101 27935acd64 VS and XCode project files have non-existent file references (#17512)
* [libcocos2d.vcxproj, libcocos2d.vcxproj.filters] Removed entries for non-existent files that were causing "Build is out of date" issues in Visual Studio
[project.pbxproj] Removed entries for non-existent file

* [libcocos2d.vcxproj.filters] Renamed CCStencilStateManager.h extension to .hpp.

* [libcocos2d.vcxproj, libcocos2d.vcxproj.filters] Removed entry for file CCDownloaderImpl.h which does not exist.

* Changed extension of CCStencilStateManager.hpp to .h
2017-03-16 13:54:50 +08:00
pandamicro 0eec73ba43 Bindings fix and assets manger ex fix (#17115)
* Fix custom event being discard during event emission

* Fix tilemap black line issue

* Fix auto bindings config

* Adapt websocket to new memory model

* Improve cocos2d_specifics code stability

* Fix issue with get_or_create_js_object function

* Improve memory usage in function wrapper invocation

* Use JS Function bind to avoid memory tracking issues

* Support size parameter to collect total byte size before update process

* Fix download resuming issue on Android

* Remove temporary assets when temporary manifest is invalid or out of date

* Use version compare handle to compare manifests versions

* Support max concurrent tasks setting & download verify callback

* Add Manifest::Asset conversion

* Avoid crash caused by wrappers

* Sync implementation of tested and published AssetsManagerEx from Cocos Creator

* Fix linux compilation issues
2017-03-15 16:09:02 +08:00
pyrosphere 18d2cdbc75 Fixes cocos2d build for tvOS. (#17498) 2017-03-15 10:01:38 +08:00
James Chen fc0ad058a5 fixed #17427: lws_parse_url has wrong behavior, it parses ’ws://domain.com/abc/d’ to ‘path: abc/d’ rather than ‘path: /adb/d’. (#17455)
* fixed #17427: lws_parse_url have wrong behavior, it parses ’ws://domain.com/abc/d’ to ‘path: abc/d’ rather than ‘path: /adb/d’.
Adds Uri class and parses Url to scheme, host, port, path in engine side.

* Moves Uri implementation to Uri.cpp, adds getter functions.

* Updates win32 project.

* Updates win10 project.

* Adds include header for atoi error on android.

* Updates tizen project configuration.
2017-03-07 13:35:59 +08:00
mogemimi 48cbc890c6 Typo fix: Rename `MutiTouchTest` to `MultiTouchTest` (#17399) 2017-02-23 17:05:08 +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
minggo f54c41c074 Update flatbuffers to 1.5 (#17349)
* update flatbuffers to 1.5

* update windows projects setting

* fix compiling error on linux

* fix compiling error

* fix compiling error

* fix compiling error
2017-02-14 14:32:09 +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
Dale Stammen 9381152ef1 removed support for Windows 8.1 store and phone (#17311) 2017-02-08 09:46:47 +08:00
James Chen b1f2a056b2 Refactor WebSocket to support SSL (wss) (#17172)
* Refactors WebSocket:
1. Supports wss protocol
2. Uses only one libwebsockets context, multiple wsi instances to avoid multi-thread issues
3. Uses lws_create_vhost to create multiple virtual host, different protocols works

* Adds openssl include path to xcode project configuration.

* mac doesn’t depend on curl

* ca file path should be full path.

* More bug fixes like which in https://github.com/cocos2d/cocos2d-x/pull/6986

* Remove curl dependence for mac

* Updates Andorid.mk

* [win32] Adds wss support for win32, and updates openssl, libcurl, libwebsockets libraries.

* Updates external/config.json to 118.

* [win32] Updates cocos/2d/libcocos2d.vcxproj to fix compilation error while building in release mode.

* Linux support websocket ssl connection.

* Updates external/config.json

* Updates install-deps-linux.sh

* Adds dependence of binutils, print ld version

* Updates travis scripts.

* Updates travis scripts.

* Updates travis script, don’t output log while extracting.

* update before-install.sh

* updates before-install.sh

* updates before-install.sh

* don’t output log for installing software.

* Updates config.json to 120.
2017-01-19 13:55:14 +08:00
minggo 8fbc905134 purge glfw3 before installing glfw3.2 (#17165)
* purge glfw3 before installing glfw3.2

* purge glfw3 before installing glfw3.2
2017-01-12 11:42:01 +08:00
minggo 93d193dfcc Openssl adjust (#17106)
* change openssl search path

* copy libopenssl from openssl folder

* update external version
2017-01-05 09:22:38 +08:00
子龙山人 3302781dae fix tizen compile issue (#17002)
* fix tizen compile issue

* fix linux compile issue
2016-12-14 11:55:38 +08:00
James Chen b80e316150 fixed #16938: Audio could not be played entirely on iOS/macOS. And refactored some code of decoding. (#16946)
* fixed #16938: Audio could not be played entirely on iOS/macOS. And refactored some code of decoding.

* Adds license header, removes unused macros.

* issue #16938: Corrects remaining frame count calculation.

* Updates include path.

* Adds comments for AudioDecoder class.

* Adds const for getter functions in AudioDecoder.

* issue #16938: Adds test case.

* Updates license years.

* Deletes trailing white spaces.
2016-12-02 13:52:37 +08:00
Dale Stammen 8791794f39 updated for v3.14 (#16942) 2016-12-01 10:37:04 +08:00
Ricardo Quesada e63a2d0dc2 Scale9Sprite refactor (#16891)
* Squashed commit of the following:

commit 026eee59c9ece7fc59d71fead41104f375f72eb5
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Nov 22 21:45:12 2016 -0800

    yay!

    everything works!

commit a645c99d44f0d7674e6238afae7628d8d2a030b1
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Nov 22 14:55:31 2016 -0800

    more fixes in Scale9Sprite

commit 3a688f4ea70c0abe311232c65ed14a7e9acc7611
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Nov 21 23:06:45 2016 -0800

    rotated sprites

commit 45e2085df3aa4b52236c817f7db7c1f6602c1e95
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Nov 21 17:10:44 2016 -0800

    android patch 9: fixes

    is not 100% backward compatible since the previous version
    had some artifacts. fixed the artifacts. now it renders ok

commit 4655d894387fa40a7e63b074a36bfed20e41d5f9
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Nov 21 16:31:29 2016 -0800

    sprite: correct size for "fake scale9"

commit cb98aba27cc1c82a986268d5b74afb55b6cca2f3
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Nov 18 21:55:51 2016 -0800

    sprite: adds setStrechEnabled for backward compatibility

    and other fixes

commit c0fe67aac54cd62e3846810d56f87133f3a7343b
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Nov 18 18:49:42 2016 -0800

    implemts missing functions in scale9sprite

commit e471ef318725ccabc9eca2c062e285e9ca4f9a81
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Nov 18 18:42:30 2016 -0800

    "batched" works

commit 33124bfb14d1f275d4b0ffca8989975625a8a76d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Nov 16 18:59:38 2016 -0800

    more fixes

commit 149f8206269843af63a1739885c00ed8d94c239c
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Nov 16 18:37:12 2016 -0800

    scale 9 rotated not fixed yet.

    but making progress

commit 27f98275d94ce00c8d5ff0b6f74b5c22723cc3c3
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Nov 16 15:32:57 2016 -0800

    sprite: streching works ok with normal sprites

commit 2519498cac8b77a32dee5bdf1805be56fbda5ed6
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Nov 16 12:12:28 2016 -0800

    somes fixes... still not working

commit 43580d0b4aa976b0200717611a286bf1035c472d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Nov 15 23:15:22 2016 -0800

    more bug fixes related to untrimmed setCenterRect...

    ...in SCale9Sprite

commit 407247616e506afaa0415c58ad7fce38efed0cd9
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Nov 15 22:13:38 2016 -0800

    spritecale9: untrimmed vs. trimmed capInsets

    WIP. there still a few bugs

commit 3d845b2af3500be287fabb04bb6ba0ec04dbb401
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Nov 14 23:11:17 2016 -0800

    started progressbar

commit 0a44b00daf723869b7105689890f29cd53a62608
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Nov 14 17:43:23 2016 -0800

    adds EditBox test

commit 330304bd9b2e762de95c2f27f1ae3ceee83b2fbf
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Nov 9 16:57:08 2016 -0800

    adds elastic to scroll view

commit a06a35f8691ff56a143953c44acd947b519150b6
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Nov 9 15:58:29 2016 -0800

    yay! scrollview works

commit 37748a885c62eca8c00d2c9c11ee103f1d95e71c
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Nov 9 15:33:58 2016 -0800

    yet more scrollview fixes

commit a6e563b497adef7b141ac7c92c844d479b244c59
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Nov 9 14:48:28 2016 -0800

    initial scroll view

commit 4243edd7548e5533ca03c26d5042f8dc5517445a
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Nov 8 17:50:15 2016 -0800

    sanity check in frames.

    missing files

commit 159d88603ad22f3c01761b60bacec98d52b9041d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Nov 7 19:21:00 2016 -0800

    three buttons working

commit 6764cfc7937a1a81d6993d5e32a21f17457b8e0d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Nov 7 18:50:22 2016 -0800

    missing files

commit 11c1fa3812e706a7d34137fe2626f05ab73ee3e6
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Nov 7 18:49:59 2016 -0800

    button works!

commit 26b6de4c28fc973e332dd51fcd763a6249c0b4c2
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Nov 7 18:19:47 2016 -0800

    Scale9: more fixes.

    complies with odd Rect::ZERO behavior

commit ce561268096afe322f25034eeab3508a60027afd
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Nov 7 11:50:42 2016 -0800

    label: setTitleLabel

commit 51b5536cd2af36896002621f75c7310960c3f5e7
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Nov 2 17:41:08 2016 -0700

    UIButton kind of working

commit 7562a49a761ef70c383a99d2addefc63d77e279f
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Nov 2 11:11:42 2016 -0700

    missing resoruces

commit a9890dee5da0104bff6872cc04e8786a6c0a9018
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Nov 2 10:54:55 2016 -0700

    setCenterRect to .cpp file

commit c9c4bb55ed3fc55709eca46c43d1bfe5301c317f
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Nov 2 00:19:51 2016 -0700

    removed unused paramter

commit e47732934cca79c08e6fe96e46ebdf075508e568
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Oct 28 18:19:31 2016 -0700

    flipping works!

commit c9769bacd321aeddf84e1772dd270f12194d2f04
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Oct 28 17:57:53 2016 -0700

    spirte flip fixes... not finished yet

commit 1cbdc8e12cc6d0d2728c06dfabaada001784a178
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Oct 28 09:53:16 2016 -0700

    centerRect changes

commit aeb1b14c00331dabba640f52d79ab0e255fa3407
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Oct 28 09:10:41 2016 -0700

    changes from v3

commit e7a61c4a20d786c2bc1d6f57e33bf3ac95cb6f21
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Oct 26 17:01:15 2016 -0700

    sprite: rotated slice 9 works as expected

commit 91049389426051deb49a9d951364bf60abaf4532
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Oct 26 15:39:54 2016 -0700

    more bug fixes in scale9sprite support

commit 9feb12449078441c439df16dc7bcfb4506c7a226
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Oct 26 13:22:52 2016 -0700

    Android's Patch 9 works as expected

commit 1cf46afe3e7f7f5f714d30779caefc25a9bb1b3b
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Oct 26 10:18:47 2016 -0700

    Sprite: uses capInsets instead of centerRect

    just to share the same API as Scale9Sprite

commit e944fa0248a7eb58012aacb229de1a9b814e0aef
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Oct 25 18:59:42 2016 -0700

    scale9sprite support fixes

commit b08765740d480b6ae1491800161b40d88f458767
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Oct 25 17:38:47 2016 -0700

    more scale9sprite fixes

commit 388a34d93de5e6007a2cecea959c929f26427cab
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Oct 25 17:20:01 2016 -0700

    UI::Scale9Sprite refactoring

    subclass of Sprite... much cleaner!

commit c84ec8ee654f74d4b38be2d0a3d7ffe6adbc6faf
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Oct 24 20:58:36 2016 -0700

    supports tiled sprites

commit d2b18eb47a647b29319488bd53edac9f304acb84
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Oct 24 19:21:57 2016 -0700

    testing tiled sprite

commit b4832ab2facc01cbb624db587ede01fe7acf23e8
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Oct 24 16:53:19 2016 -0700

    using correct top-left coordinates for setCenterRect

commit 29d8de86a71cc597b2338f59f7951a28ee0c93b2
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Oct 24 16:46:13 2016 -0700

    fixes from scale_sprite9 branch

commit ccbe1063bea7db75397ecaf9046aac3dd977a621
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Oct 20 19:01:50 2016 -0700

    updated example

commit 24f7f85d4eba80f8e543810dcbc1a02447900bdc
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Oct 20 18:47:28 2016 -0700

    more fixes in nine slice

commit df3358fae68f2d81baf3a8cbe033a4c400ea50da
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Oct 20 18:22:14 2016 -0700

    anchor point fixes

commit 4ac7409bc72425abb0dc747b956ec346fbd1b2fa
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Oct 20 17:01:48 2016 -0700

    support for slice-9 from creator

commit a3221375d3a9defc2e03df0b1c2da1b36dfdd491
Merge: 73e5389 d7490d9
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Oct 20 14:13:38 2016 -0700

    Merge branch 'sprite_scale9' into creator_cpp_support

commit d7490d94896ad0ce8705dc0695252cee34329b5e
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Oct 13 14:34:52 2016 -0700

    Adds slice9 support for Sprite.

    how to use it:

    // points coords
    sprite->setCenterRect(Rect(x,y,w,h));

    // normalized coords
    sprite->setCenterRectNormalized(Rect(x,y,w,h));
    starts scale9sprite in sprite

    more slice 9 changes

    sprite 9 slice works?

    kind of works

    correct anchor point

    slice 9 works, at least with non-rotated atlases

    streched works ok

    better Y invert code.

    cleaner, compatible with the previous code

    yay, scaling workings...

    need a better api now

    sets scale correctly

    yay! works as expected!

    more fixes and tests

    better test for box

    setContentSize() changes size in non-9-slice mode sprites as well

    setCenterRect() -> setCenterRectNormalized()

    yet another test

    adds setPositionNormalized()

    adds setCenterRect() tests

    remove devel team from xcode

    tests: add one more tests

    fun test!

    improved test

    yet another test for slice 9

commit 73e5389ef719880096067d0f7d0bffd6e1f3cfd1
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sun Oct 9 18:54:22 2016 -0700

    kind of ProgressBar support

commit 4db5e9e7369e93ceba1d9512ab88c26b843c43d5
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Oct 7 16:23:54 2016 -0700

    new generatred ui files

commit 75aa06f3d39df8c6aa898d5e6810b3cd8015c07b
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Oct 6 10:44:59 2016 -0700

    bette canvas support

commit 89beacac478fc7f58ef930963b6393f3da4a743c
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Oct 5 21:47:11 2016 -0700

    sprites tests

commit 5fe930ad50c2c1b6d868982709c7b659176f9889
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Oct 5 18:35:44 2016 -0700

    more label tests

commit d3f615a097d080d78f2ebd95f3e2388da45f92db
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Oct 5 18:08:24 2016 -0700

    label tests

commit 2a4018922ce8d36117f7092fc324e37cf75fdeab
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Oct 4 21:52:56 2016 -0700

    label fixes

commit 41fafbd023de63e376d014311605f2b156add307
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Oct 4 19:14:58 2016 -0700

    updated test

commit 06919fc28fffbc5a20cd14bdcc2ad2ff997e0da1
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Oct 4 18:50:45 2016 -0700

    creator tests: works

commit 6e362e7cc7f68dc216b569a7f7f90aaa110c0e4a
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Sep 27 23:15:56 2016 -0700

    autogen: new data

commit e78078b2ad84b4e364827a66f1c459de7384a91d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Sep 26 18:18:57 2016 -0700

    fix: initial test for CPP support for Creator

* adds more documentation

* adds more documentation
2016-11-24 09:59:00 +08:00
Adrien de Sentenac 460c68125f Use resolved file name (through dictionary lookup) in font atlas creation (#16797)
* Use resolved file name (through dictionary lookup) in font atlas creation, to prevent creating multiple atlases for the same file.
Add font tests with and without font name replacement (through dictionary lookup).

* Fix cpp-tests xcode and cmake project

* Additional fix for cmake project
2016-11-18 09:23:44 +08:00