Commit Graph

875 Commits

Author SHA1 Message Date
Arnold 3a55fa3dd6 [3d] add CameraBackgroundBrush (#19454) 2019-03-04 09:14:45 +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 512a5f12c1 fix compile error (#19403) 2019-02-18 14:54:12 +08:00
coulsonwang fecac0c02c fix memory leak (#19402) 2019-02-18 13:42:11 +08:00
Arnold 483e96147f [3D] ccpass restore renderer states (#19396)
* save matrix

* save more states
2019-02-15 17:39:02 +08:00
Arnold 8be2a2053f
sync 3d support code (#19392)
* Sprite3D
* DrawNode3D
* active more Sprite3DTest
2019-02-15 14:30:10 +08:00
coulsonwang 193e37a0e0 [BugFix] fix FBO memory issues (#19387) 2019-02-13 10:13:46 +08:00
coulsonwang 6c0e80c954 [Feature] fix android compile error (#19380) 2019-02-13 09:10:22 +08:00
minggo 37b3d04f8d
some fix for gl backend (#19379) 2019-01-31 18:04:30 +08:00
Arnold 5ddf2b7d45
fix android include headers (#19376) 2019-01-31 17:17:14 +08:00
coulsonwang 3d0da9a7ac [Feature] caching render pipeline (#19375)
* [Feature] caching render pipeline

* [BugFix] release render pipeline
2019-01-31 16:31:09 +08:00
coulsonwang 03bb089bfe [Feature] remove unnecessary alloc (#19373) 2019-01-30 23:21:32 +08:00
coulsonwang 64dd7d381f [Feature] fix memory leaks on ClippingNode (#19371) 2019-01-30 18:14:25 +08:00
coulsonwang 2eef8cdbb9 [Feature] Cache RenderCommandEncoder (#19367)
cache render pipeline to improve performance
2019-01-30 14:14:15 +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 d88fe68bd1
Memory leak (#19358) 2019-01-25 09:20:07 +08:00
coulsonwang 66b0139e39 [BugFix] set the correct depthStencil state (#19356) 2019-01-24 18:31:51 +08:00
minggo 2d0fc63ac6
fix bug when dynamic buffer stop updating data(#19351)
* fix warnings

* fix bug when dynamic buffer stop updating data
2019-01-24 15:56:59 +08:00
coulsonwang 28a453e49d update ui_Grag.frag (#19344)
* update ui_Grag.frag

* [Feature] fix indent
2019-01-23 17:54:24 +08:00
coulsonwang 27724aa4c5 [BugFix] set the correct bufferSize for unifromInfo (#19343) 2019-01-23 17:42:58 +08:00
coulsonwang 5c3a6d0ddb [BugFix] clear AttributeInfo vector since vertex layout info may change for different scenarios (#19330) 2019-01-22 10:50:36 +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
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
ggggamer f91ef9deee Fix some EVENT_RENDERER_RECREATED problem. (#19023)
* fix EVENT_RENDERER_RECREATED problem

* macro

* Event listener should add only once.
2018-09-10 15:04:35 +08:00
Stewart Imel c84c5761a1 fix typos and grammar in comments (#18853) 2018-05-30 20:41:59 +08:00
ggggamer 59c854a159 Avoid duplicate find action when founded. (#18863) 2018-05-30 20:33:53 +08:00
panzhihao cc145cb852 be safe to handle operator= (#18850)
* 等号赋值函数,先判断this是否不等于other再做赋值

1、CCData那个会闪退
2、CCGLProgramState那个会造成_value.tex.texture泄漏

* replace TAB to  4 SPACE
2018-05-25 09:58:11 +08:00
Peter Siegmund bac694dc55 fix reorder warning (#18819) 2018-05-14 10:34:56 +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 86ea3a8aee cmake add collect headers list, unify the logic of source add (#18722)
* fix mistake for ios lua template

* auto select headers depend on sources

* change cmake "cocos_build_app" from macro to function

* fix cmake dll repeat copy

* update travis srcipt

* add header list for cocos lib

* add header list in cmake files

* re-add include dir Classes

* improve template cpp var name

* remove func get_headers_by_sources

* cmake add simulator header list

* make source and header collect more clear

* improve macos app pkg

* improve ios pkg, run failed

* revert the ios pak logic, keep older

* expand var APP_BIN_DIR scope

* fix use sqlite3 error on linux

* fix win32 compile error

* remove multi-add mistake

* try to fix python install issue on travis

* fix js-tests build on android

* uninstall old python in travis

* add travis  python print info

* fix command ll to ls -l

* remove useless link

* PYTHON_BIN adapt homebrew python
2018-03-14 13:51:29 +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 2ff42bb38e V3 static analize fixes (#18638)
* fix different problems founded by static analize

* fix bad render assert

* Fix misprint

* reverted calloc in CCScheduler
2018-01-19 13:40:41 +08:00
minggo 7058b7ce8a
[ci skip]make codes more readable (#18627) 2018-01-16 15:30:11 +08:00
Ryan B 457de1cce1 Android Emulator Blank Screen 0x501 and 0x502 Problem Bugfix Update (#18606) 2018-01-03 17:15:00 +08:00
James Chen f77f724caa fixed #18538: TrianglesCommand hashing technique doesn't take padding into account (#18543)
* fixed #18538: TrianglesCommand hashing technique doesn't take padding into account

* sizeof fix
2017-12-08 16:05:58 +08:00
okamura d13d55c23f Fix CameraBackgroundColorBrush cannot use alpha (#18281) 2017-10-20 09:43:45 +08:00
xiaoyur347 617009f1cf fix CCTextureCache addImageAsync race condition (#18366) 2017-10-16 00:58:29 -05:00
minggo 2fbbdef58d do not initialize VBO with big size for performance issue on some Android devices (#18060) 2017-07-13 09:52:07 +08:00
Wilson E. Alvarez 90af809b89 No need to get the Configuration and Director instances more than once in CCRenderer.cpp (#17978) 2017-06-26 13:52:49 +08:00
minggo 61839e7a5b fix warnings (#17970) 2017-06-23 17:46:37 +08:00
minggo 2b3baf4517 fix precision issue (#17908)
* fix precision issue

* fix shader error on mac
2017-06-12 08:57:40 +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
minggo 1f57542d68 match the logic to unbind vao (#17628) 2017-04-01 15:37:22 +08:00
CocosRobot 8fbf04ee28 Updates license year. (#17363) 2017-02-14 14:59:12 +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
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
Wilson E. Alvarez b672b94edc Removed unnecessary assignments (#17328) 2017-02-09 10:57:01 +08:00
minggo 828fabdeb3 add uniform for mobile too (#17324) 2017-02-08 16:39:06 +08:00
Dale Stammen c0575311b7 V3 win10 websockets (#17310)
* add openssl to libwebsockets

* updated win10 version to v3.15

* clear any glErrors created by any not found uniforms
2017-02-08 09:44:06 +08:00
mogemimi 75d2e76095 Fix minor typos in comments and docs (#17294) 2017-02-07 09:41:52 +08:00
mogemimi e2ad8946cb Replace unsigned int with size_t to avoid implicit conversion (#17297) 2017-02-07 09:41:19 +08:00
子龙山人 193518ed8b add opacity support to DrawNode (#17248) 2017-02-06 15:34:14 +08:00
minggo d37ac4007b fix memory leak (#17284) 2017-02-06 15:11:42 +08:00
minggo c4712936f3 fix the bug that ect1 texture lost on android (#17278)
the commit do the following things:
- reload ect1 related shaders when comes from background
- reload alpha texture when comes from background
2017-02-04 18:00:21 +08:00
j-jorge c616d6d9ff Compilation fix (#17209)
* Fix various compilation issues.

Mostly errors on field initialization order but also missing files
in CMakeLists and missing include directives.

* Fix compilations issues with GCC 6.2

* Fix gitignore libs/ entry to not ignore the Android external libraries.
2017-02-04 09:46:32 +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 87c29759f8 Fix typos in local variables (#17236) 2017-01-20 09:58:29 +08:00
mogemimi 8b9c89f6a9 Fix typos in comments and strings (#17201) 2017-01-18 15:41:18 +08:00
minggo 3bcf8fc48a use std::stable_sort to keep order (#17156) 2017-01-11 15:47:36 +08:00
James Chen 77cf6de2e5 [label] Fixes shadow is drawn incorrect while also enabling outline. (#17024) 2016-12-16 14:56:36 +08:00
minggo b288821bdd use GLsizei to avoid overflow (#16962) 2016-12-06 23:05:56 -08:00
Wilson E. Alvarez 3056269531 Various small performance tweaks (#16881)
* These variables can be accessed by reference

* Assign values in initialization list

* _range can also be in initialization list

* Prefixed ++ and added 'auto' to loops

Also removed extra whitespace

* Prefixed ++/--, and changed for-loop implementation to use 'auto' on some loops
2016-11-22 09:54:04 +08:00
pyrosphere 663bb4d7ed No CC_UNUSED_PARAM (#16812)
* Added -Wno-unused-parameter and removed all uses of the CC_UNUSED_PARAM macro

* Commented unused parameter names in .cpp files which previously used CC_UNUSED_PARAM

* Reverted -Wno-unused-param flag.
Moved deprecated touch methods definitions to .cpp file.
Commented more unused parameter names.

* Fixed some errors and warnings caused by the previous commit.

* Commented remaining unused parameter names in .cpp files.

* Fixed unused parameter warnings in headers.

* Fixed some more unused parameter warnings.

* Fixed some more unused parameters warnings.

* Fixed mistake in previous commit, missing ComAudioReader:: in method. Other warnings.

* Fixed build errors.

* Added missing file to CMakeLists
2016-11-16 09:48:37 +08:00
Ce Zheng 4b3525f7a8 use STL emplace when possible (#16815)
* replaced some unordered_map::insert(std::make_pair(foo, bar)) with unordered_map::emplace(foo, bar)
* replaced some vector::push_back(std::make_pair(foo, bar)) with vector::emplace_back(foo, bar)

The old way will construct a std::pair first then call move constructor
when putting it into the container, while using emplace will construct
the pair in-place in the container. Also, the emplace way is shorter &
more concise.
2016-11-08 11:50:00 +08:00
James Chen f32effeb96 More: Uses c++11 multi-line string literal (#16803) 2016-11-04 09:36:26 +08:00
Wilson E. Alvarez d5dacd4f0e Use C++11 multiline string literal instead (#16765)
* Undo pull request #16742 while keeping fixed indentation on ccShader_UI_Gray.frag

* Removed unnecessary whitespace

* Switched implementation to C++11 string literal

Thanks to stevetranby for the suggestion
2016-11-02 14:13:34 +08:00
SongChengJiang af8b9cc47c Support MultiView matrix array (#16723)
* Support MultiView matrix array

Support MultiView matrix array and add new interface in GLProgram to
support shader header definitions.

* support getMatrixStackSize

* optimize code

* remove indents

* rename resetMatrixStack(unsigned int stackCount)

* Add document to interfaces

* Supplement document of render interface
2016-10-28 09:33:31 +08:00
Wilson E. Alvarez c0e1e91373 Performance tweak: Use range-based for-loops and allocate std::vector size() and *end() on the stack where favorable. (#16716)
* Use range-based for-loops and allocate std::vector size(), end(), cend(), rend(), crend() on the stack where favorable.

Other minor trivial changes were applied.

* Fixed Android compilation error

* Fixed windows-universal compilation error
2016-10-27 15:10:24 +08:00
James Chen 58acca108b Removes unused 'return' letter in builtin shaders. (#16742)
* Removes unused 'return' letter in builtin shader.

* Updates indention of ccShader_UI_Gray.frag.
2016-10-26 16:03:08 +08:00
James Chen a5fdc07fca Fixes label wrong blending and improves performance while enabling outline. (#16717) 2016-10-19 10:19:14 +08:00
James Chen b7d6e427e0 issue #16661: Replace c style uthash with std::unordered_map<K, V> in CCFontFNT.cpp (#16662)
* issue #16661: Replace c style uthash with std::unordered_map<K, V> in CCFontFNT.cpp

* issue #16661: Removes unused include "base/uthash.h" in CCGLProgram.cpp.
2016-10-17 13:53:54 +08:00
mogemimi fe52c5fa0a Fix typos in comments and strings (#16708) 2016-10-17 10:12:54 +08:00
子龙山人 c3bbbb6cb2 Refactoring ui related code and fix label atlas and BMFont rendering issue with ETC1 texture format (#16615)
* refactoring ui related code

* fix label bmfont/charmap etc drawing

* make code more robust
2016-09-30 09:42:21 +08:00
James Chen 189ffc4e27 Minor fix for TextureCache::addImage(image, key). (#16613)
* Removes insignificant log: `prevents overloading the autorelease pool`
* Removes unused retain -> autorelease stuff
* Checks the return value of `texture->initWithImage`, if it returns false, texture should be released and set to nullptr.
* More specifc log output in TextureCache::addImage(image, key)
* Checks arguments validation for VolatileTextureMgr::addImage
2016-09-27 15:10:16 +08:00
TankorSmash f93c6edb1f tidy up TextureAtlas::resizeCapacity (#16588)
My intent is to reduce clutter and improve readability, so that going forward it's a little easier to edit this.

No behaviour change.
2016-09-20 20:31:24 -07:00
mogemimi 2b9ac2c950 Remove redundant semicolons (#16558) 2016-09-12 09:45:34 +08:00
mogemimi eca7b2392d Remove unnecessary inline keywords (#16562) 2016-09-12 09:44:21 +08:00
Allen Lee 7c298bdcd7 misspelling check on cocos directory (#16522)
Misspelling fix on some comments,
cocos/editor-support/cocostudio/CSParseBinary_generated.h
fix misspelling postion -> position
2016-09-06 10:14:14 +08:00
minggo 04fd2b16b2 merge v3.13 back to v3 2016-08-29 11:57:13 +08:00
Ricardo Quesada 016e7b0dfc fix: release texture in RenderState (#16396)
memory leak fixed in RenderState

fixes github issue #16155
2016-08-19 00:22:57 -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
James Chen b135d512d2 Update copyright to 2016. (#16311) 2016-08-05 09:42:15 +08:00
halx99 73f80f4c73 #Make etc1 alpha support ok for ProgressTimer (#16296)
* #Make etc1 alpha support ok for ProgressTimer

* #fix issues

* Add comment
2016-08-03 14:29:34 +08:00
mogemimi c03dd85c3f Remove redundant includes (#16285) 2016-08-01 10:22:35 +08:00
Vladimir Perminov 5498bdb32b Add ricardoquesada info 2016-07-27 18:48:10 +03:00
Vladimir Perminov 3734668d17 GLProgram::link always check link status
Fix issues #16231
2016-07-27 15:31:32 +03:00
mogemimi 0894662eff Remove unnecessary 'extern' to prevent compiler warnings 2016-07-26 12:42:43 +09: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
mogemimi 15030ad4c3 Fix typos in log messages 2016-07-25 02:53:22 +09:00
mogemimi 94d4971ddc Fix typos in documentation and comments 2016-07-22 02:05:19 +09:00
mogemimi 17dfd03fa7 Fix typo in constant name 2016-07-21 00:49:19 +09:00
minggo e19393fa23 Merge pull request #16123 from ricardoquesada/issue_15805
Fix: not cransh on android when mapBuffer() is not present
2016-07-20 14:10:04 +08:00
Ricardo Quesada cd495f68ba Fix: not cransh on android when mapBuffer() is not present
more info:
https://www.khronos.org/registry/gles/extensions/OES/OES_mapbuffer.txt

add methods to check whether or not glMapBuffer exists
2016-07-19 21:00:50 -07:00
Ricardo Quesada 9166c28e75 Merge pull request #16101 from mtak-/glprogram_buffer_overflow_fix
fix buffer over-read in CCGLProgram.cpp in memcmp call (Address Sanitizer...
2016-07-14 17:12:17 -07:00
Tyler Kopf 15c6788783 fix buffer overflow in CCGLProgram.cpp in memcmp call (Address Sanitizer spots it easily)
- previously the flow went memcmp, if that != 0, do a bounds check, etc
- now do a bounds check, if destSize >= srcSize, do memcmp, etc
2016-07-12 11:10:16 -07:00
minggo 3dc167a9f9 use std::abs instead 2016-07-11 12:01:09 +08:00
mogemimi 2650fd1afd Add missing float suffix to avoid -Wdouble-promotion 2016-07-04 23:12:45 +09:00
mogemimi 2443e09d29 Fix typos and other mistakes in docs 2016-07-04 00:42:10 +09:00
Ricardo Quesada 9e0371a3b8 fix: fix delay when creating quadcomamnds
triggered by particles.

Github issue #15937
2016-06-23 09:17:26 -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 6280b8a376 Merge pull request #15870 from mogemimi/fix-unused-function
Remove unused debug function in RenderCommand
2016-06-17 09:38:32 +08:00
minggo 44ced37785 Merge pull request #15825 from dumganhar/iss15652-perf-fix
issue #15652: fix low FPS on some android devices while auto batch is disabled.
2016-06-17 09:37:42 +08:00
mogemimi 0872a50f60 Remove unused debug function in RenderCommand 2016-06-17 03:19:19 +09:00
mogemimi 4f329d8aac Fix possible memory leak when pass initialization fails 2016-06-16 04:52:38 +09:00
Ricardo Quesada 180c2f1e9a Squashed commit of the following:
VR support for cocos2d-x

commit 087aff0aec24b81418fa2678ce0cae2d4c1e2e01
Merge: b32d329 fc44d0d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Jun 15 11:26:33 2016 -0700

    Merge branch 'v3' into vr

commit b32d329f9331a4f9bbbbf946b88b31db7559934d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Jun 15 11:25:27 2016 -0700

    fix: dont' include oculus files

commit 816928c6a8782984830aa92de5bed038c1306cdc
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Jun 15 10:57:26 2016 -0700

    fix: missing guard in header

commit 2abd4eb5a1fc961c2cbae9b00809b5e6409740db
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Jun 15 10:43:49 2016 -0700

    removed VR engines... should be part of package manager

commit 583179755d1c66c02e898297230d0f882e629b98
Merge: 12f4f71 b6d6bb0
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Jun 15 10:42:37 2016 -0700

    Merge branch 'vr' of github.com:ricardoquesada/cocos2d-x into vr

commit 12f4f71aca4fa15231976a7727faf40648d62313
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Jun 15 10:42:12 2016 -0700

    fix: new VR API... easier to enable/disable different VR renderers

commit b6d6bb087f54cbd272fbfb9e1cf1cd6bba776ffa
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 14 20:48:04 2016 -0700

    fix: compiles and runs on win10

commit e73aa8902118377abbd2192c757104c4531d2a9e
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 14 20:27:06 2016 -0700

    fix: vr works again

commit 5615e276507edf8602f043f3130204a89dbaba69
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 14 18:55:18 2016 -0700

    fix: compiles on windows

commit 494061ee4da8fbc5616f83efb64b2c0c3932778e
Merge: 284910b fd3b6d4
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 14 17:13:47 2016 -0700

    Merge branch 'v3' into vr

commit 284910b204ee0dd76d949ea8f2b2f6b1b72e533f
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 14 17:12:25 2016 -0700

    android vr: better performance

commit aa8328e8029143dd7c6c724f38915f0fb3b64abe
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Jun 13 16:10:14 2016 -0700

    fix: low pass filter in accel and magnet

commit f6d9b622abff5abb95ad60fa7139f3ce1ec9caab
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Jun 13 15:43:00 2016 -0700

    fix: removes debugging info

commit 2004f0ce5605dad70ff8656a058073181346f083
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Jun 13 14:54:32 2016 -0700

    fix: kind of works on android! yeah!

commit d6dcb6a3410fda053f0d6fbc00af817a13a86d3b
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Jun 10 09:44:53 2016 -0700

    logging

commit 7e5d6ad52d39642c111e7b690173338af4e94092
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 7 22:53:07 2016 -0300

    android head tracking

    compiles, doesn't work yet... how to debug java code?

commit cbf5f6482aa0ae002a7dc40045ef3ffdbe192e26
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 7 19:45:41 2016 -0300

    reading sensor from android

    not compiling yet

commit 6ee0a3c2c43f8e8a603bfce9fddb0cce5ce79415
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 7 11:45:06 2016 -0300

    compiles on android... finally

commit fb728da756ca7ee94b316c113e2239a77d9f4b53
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Jun 6 18:15:12 2016 -0300

    fix: compile vr android files only on android

commit 90db6daef382d142bb60207d2b16936dd66ee245
Merge: 2e56f03 cc936af
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Jun 6 12:15:56 2016 -0300

    Merge pull request #11 from songchengjiang/riq_vr

    daydream VR platform supporting

commit cc936afac44518a00b90ec3133aaac5d00f0b91f
Author: songchengjiang <moses_jc@sina.com>
Date:   Mon Jun 6 10:38:27 2016 +0800

    remove VR 3rdparty dependence

commit 5f7a1a9c80f84cc915763ad6f52ffc524dd59309
Author: songchengjiang <moses_jc@sina.com>
Date:   Mon Jun 6 10:34:37 2016 +0800

    remove VR 3rdparty dependence

commit 3f72ecde2a259357a137bec1e99e731a2e78df84
Author: songchengjiang <moses_jc@sina.com>
Date:   Mon Jun 6 10:28:43 2016 +0800

    remove VR 3rdparty dependence

commit 2e56f032d1daced1b66b984acacc6f5007f5ecc3
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Jun 3 10:45:44 2016 -0300

    fix: started android support

commit 1910c9c488ee4315110081b60438aa1b7c1011f2
Author: songchengjiang <moses_jc@sina.com>
Date:   Thu Jun 2 15:58:34 2016 +0800

    add CCVRGvrRenderer and CCVRGvrHeadTracker framework

commit 96200eedea9234287153d71b4f198077cc49389a
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue May 31 13:07:44 2016 -0300

    fix: little fixes

commit a2eb8114b2969beca83762ba829c8cb809b1615a
Merge: 20a74e0 5fddebc
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue May 31 12:12:59 2016 -0300

    Merge pull request #10 from songchengjiang/riq_vr

    bugs fixed

commit 5fddebcae997db9e1a4108413d73b0d057a61e83
Author: songchengjiang <moses_jc@sina.com>
Date:   Fri May 27 15:57:30 2016 +0800

    parameter corrected

commit 925aad012ae513ebeeec682b003123a3c543759f
Merge: 9b5e02f 20a74e0
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Fri May 27 15:46:13 2016 +0800

    Merge branch 'vr' of https://github.com/ricardoquesada/cocos2d-x into riq_vr

    Conflicts:
    	cocos/2d/CCScene.cpp

commit 9b5e02fa7c9fcdd15cfea99769560ed30b976e9e
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Fri May 27 14:36:31 2016 +0800

    fixed ProjectionMatrix error on oculus platform
    fixed ScrollView error on oculus platform

commit 3c63ead1943d1cf8aa3c0fd722a4b3834db323b1
Author: songchengjiang <moses_jc@sina.com>
Date:   Fri May 27 10:51:46 2016 +0800

    bugs fixed

    mobile VR platforms:
    fixed ProjectionMatrix  error
    fixed culling error of ScrollView

commit 20a74e064708e6bf9d15cc5551d1f86af9d24010
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 20 09:22:45 2016 -0300

    fix: setAdditionalTransform support reference

commit 8341df82a02683b8e4ae02654e90617a2e5ced6d
Merge: 83751de 469d38d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed May 18 07:38:49 2016 -0700

    Merge pull request #8 from songchengjiang/riq_vr

    Finished VR integration of SKDs based on VRProtocol

commit 469d38d778cd5f947098a08d8fd14ca6f32b0502
Author: songchengjiang <moses_jc@sina.com>
Date:   Wed May 18 15:32:32 2016 +0800

    fix bug of deepoon's headtracking

commit 83751deac133910c24321ddaddff93bf736de884
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue May 17 09:41:17 2016 -0700

    fix: Scene inverts the eye matrix

commit 41ae41969a71fd5b07396faac78e777c4afbe5c4
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue May 17 06:54:34 2016 -0700

    fix: inversed matrix for camera

commit 049dee721356a47b19f5e51a0face6a5a1647095
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Tue May 17 15:51:57 2016 +0800

    add headtracker of oculus

commit 3f6478352a4baebc684105156389655edbac7e6f
Author: songchengjiang <moses_jc@sina.com>
Date:   Tue May 17 14:22:56 2016 +0800

    add headtracker of SKDs

    gearvr/deepoon/cardboard

commit 59df985b72adf0dbb5a4c66c80ae7299b16ae909
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon May 16 22:12:23 2016 -0700

    fix: head tracker works

commit 306c59da0175708c96b5757f5f27afd6a6592fe3
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon May 16 17:55:43 2016 -0700

    fix: adds missing methods to `VRIHeadTracker`

commit 91100b8a86d78801fbcd08e99427d6a6363ad69b
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Mon May 16 14:17:21 2016 +0800

    Rename Oculus's files

commit 01ef6215de936a8d8bb15f9ec195cb81b2b4b18f
Author: songchengjiang <moses_jc@sina.com>
Date:   Mon May 16 11:41:56 2016 +0800

    Rename files based on riq's changes

commit 734efbb045064d24df095c5b8fc604ef2aab1dea
Merge: 91449c9 769a883
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Mon May 16 09:57:57 2016 +0800

    Merge branch 'riq_vr' of https://github.com/songchengjiang/cocos2d-x into riq_vr

    Conflicts:
    	build/cocos2d_libs.xcodeproj/project.pbxproj
    	cocos/vr/CCVRGeneric.cpp
    	cocos/vr/CCVRGenericHeadTracker.h

commit 91449c9d23e357549cb1aeae6d1454274def1aab
Merge: d3e4550 a33faaf
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Mon May 16 09:54:44 2016 +0800

    Merge branch 'vr' of https://github.com/ricardoquesada/cocos2d-x into riq_vr

    Conflicts:
    	build/cocos2d_libs.xcodeproj/project.pbxproj
    	cocos/platform/CCGLView.cpp

commit a33faafa1a2b6cffdc32d87f3c1c321f46f94789
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat May 14 00:57:54 2016 -0700

    fix: adds head tracker

commit ea348cf72d3e54dc3864571bff1405909dbb65c9
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 13 18:40:32 2016 -0700

    fix: removes red background

commit 113c7debe9a35fc142183a9012cac40063e17efe
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 13 18:39:31 2016 -0700

    fix: centers image

commit 769a883c93f4f7c6191462626845f01d6f8596fe
Author: songchengjiang <moses_jc@sina.com>
Date:   Fri May 13 20:36:19 2016 +0800

    Merge branch 'vr' of https://github.com/ricardoquesada/cocos2d-x into riq_vr

commit d3e45501cd2cada87735390a407fbd44e61cd84e
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Fri May 13 17:52:46 2016 +0800

    update win32 project for VR

commit ba0fdb8b8e1efaf8fdf88e044e701fb5bedb4839
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu May 12 23:21:50 2016 -0700

    fix: no hardcoded values

    code is simpler, fixed a few bugs

commit b30596cdae4cdcf39d960a39661a79200b27c7a8
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu May 12 21:50:18 2016 -0700

    fix: simplified distortion

commit 37b184f084e7b50bac9a5a3c59a87f8f03440b53
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Fri May 13 09:39:34 2016 +0800

    finished VR rendering of Oculus

commit f7d74cd0a2479541c0546d0ec41fe4f867405fcc
Author: songchengjiang <moses_jc@sina.com>
Date:   Thu May 12 10:00:43 2016 +0800

    Finished GearVR and Deepoon VR rendering integration

commit 776fb4fd7420f1c14403eb476df1e9716362f1e5
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed May 11 16:56:57 2016 -0700

    fix: distortion working... with too many hardcoded values

    time to "un-hardcode" the values

commit 0584773cca88c5b3dee72821830841f617cfb21c
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue May 10 19:49:07 2016 -0700

    feat: distortion WIP

commit 9b5ef01776eaa617dd4677c3824e50c1f9da41c6
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue May 10 15:49:17 2016 -0700

    fix: simpler

    one texture that holds both left and right eye

commit bfff504c499c253a0c36b342e6b5bcb0edf4fed7
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon May 9 10:50:43 2016 -0700

    fix: Camera code is cleaner

commit fcf730bc2afc6c4552787273577e1942088c2e42
Author: songchengjiang <moses_jc@sina.com>
Date:   Mon May 9 16:43:58 2016 +0800

    support cardboard VR rendering

commit f88b834b70fbfb28db0c8442e68984c61192d7cc
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 6 21:16:10 2016 -0700

    fix: proj fixes. works ok in any resolution

commit f980a616837b0f259d9564e622c78e0f4869ed53
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 6 19:08:47 2016 -0700

    fix: renders ok in any device

commit 4799ad32ea38ddd217e80e868c3d9021c03e88ce
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Apr 28 16:46:30 2016 -0700

    fix: renders something

    fix: passing camera to scene

    adds a way to return user camera

    fix: stereo rendering works

    fix: viewport left is correct

    fix: scissor is not needed...

    fix: works!

    fix: minor fixes

    fix: new approach... almost working

    fix: camera is moved

    whitespace fixes

    fix: whitespaces

    fix: new line

commit c137a53aba227cf2e2a1809b55cb9b3da25d432b
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 27 18:56:41 2016 -0700

    fix: VR refactor... still WIP

commit 16fde77d71b8309e982bf6fa4f4ee0acea5fc0d1
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Apr 26 22:21:21 2016 -0700

    feat: VR, initial commit
2016-06-15 11:33:25 -07:00
mogemimi a348cbda8b Move StringUtils functions from deprecated header file to ccUTF8.h (#15835)
* Move StringUtils functions outside of deprecated header

* Replace deprecated headers with 'base/ccUTF8.h'
2016-06-15 15:01:26 +08:00
子龙山人 51f4deee01 Add system label overflow (#15827)
* Add system font overflow

1. currently only iOS, Mac and Android platform are supported

add mac label overflow shrink

modify system font overflow test

fix warning and possible memory leaks

add ios system label overflow support

add iOS system font overflow support

fix iOS system font overflow

fix Mac System font overflow

add android system font clamp

add Android system font shrink

cleanup iOS shrink related code

fix Android system font clamp

add core text to project template

fix iOS tests project

fix mac and iOS shrink

improve iOS and Mac clamp feature

fix header file include path

* modify the comments, make it more clearer
2016-06-15 10:43:15 +08:00
James Chen 126b60945e issue #15652: fix low FPS on some android devices while auto batch is disabled. 2016-06-12 11:35:30 +08:00
MagicXrEv 29cca63822 Texture2D::addImageAsync : Set pixel format correctly. (#15774) 2016-06-03 09:38:01 +08:00
James Chen 3d116c3333 SetBlending fix 2016-06-01 17:46:27 +08:00
mogemimi fc6c612c4c Remove duplicate header includes 2016-05-26 23:25:44 +09:00
mogemimi f6bee1abc2 Fix minor typo: Texure -> Texture 2016-05-26 02:36:15 +09:00
mogemimi 1e04cb5950 Use nullptr instead of 0 or NULL 2016-05-25 03:09:11 +09:00
Ricardo Quesada 23c5c18c91 Merge pull request #15646 from Rypac/fix_quadcommand_crash
Fix crash due to reallocation of shared indices memory
2016-05-24 11:29:28 -03:00
mogemimi a1a8feed71 Add missing references to avoid unnecessary copies 2016-05-17 01:15:07 +09:00
Ryan Davis 8ca09f7c2a Fix crash due to reallocation of shared indices memory 2016-05-15 12:30:30 +10:00
treert 2c4b634a50 reset UIGrayScale Shader when reload shaders
reset GLProgram for UIGrayScale Shader when reload shaders
2016-04-23 13:33:22 +08:00
minggo 5f6f35fb91 Merge pull request #15451 from xpol/fixes-format-warnings
Fixes format warnings.
2016-04-19 10:21:10 +08:00
minggo 93d331f1e8 Merge pull request #14965 from elloop/fix_opengl_log_function
fix opengl log function.
2016-04-18 18:32:00 +08:00
Xpol Wan dc0f7bf903 Fixes format warnings. 2016-04-18 17:52:58 +08:00
mogemimi 4f32df255d Fix return value of VertexAttribBinding::init() 2016-04-10 08:05:19 +09:00
minggo 4bee2c4e79 Merge pull request #15361 from stevetranby/iterator-erase
Iterator erase pattern
2016-04-07 10:34:55 +08:00
Ricardo Quesada ed42305c26 fix: works if no ';' is the the end of defines
Github issue #15376
2016-04-06 13:27:59 -07:00
Ricardo Quesada 9fae3a5ed3 Merge pull request #15204 from perminovVS/v3-dev-gl-program-feature
GLProgram replaceDefines correct and other feature
2016-04-06 10:34:44 -07:00
Steve Tranby 24fd25e143 Iterator erase pattern 2016-04-01 18:29:21 -06:00
mogemimi 44080a04d8 Fix typos in comments and strings 2016-03-29 10:52:17 +09:00
minggo 3c676d9712 Merge pull request #15037 from Shulepov/spriteframecache_pixel_format
SpriteFrameCache: take pixelFormat into account if specified
2016-03-23 09:48:35 +08:00
Xpol Wan 90456d29ba Fixes 1605 include path in 541 files
using the tools/coding-style/include-linter.py with -f options.
2016-03-20 21:53:44 +08:00
Vladimir Perminov 7011c3a7e4 GLProgram replaceDefines correct and other feature 2016-03-07 17:05:20 +03:00
mogemimi 2a8d84e7f9 Remove unnecessary const from return types 2016-02-29 16:48:07 +09:00
mogemimi 1d9e688707 Fix typos in documentation 2016-02-18 16:16:36 +09:00
Mikhail Shulepov 15f0aaa598 Texture2D::getStringForFormat - added missed formats 2016-02-12 19:04:30 +03:00
Mikhail Shulepov 112fceae81 Texture2D: RGB888 -> A8 conversion (white - full opacity, black - full transparency) 2016-02-12 17:23:56 +03:00
Ricardo Quesada 4a318c0048 Renderer improvments: TriangleCommand and QuadCommand merged
- more options for batching (faster)
- less flushing in between commands (faster)
- less renderer code (easier to maintain)
- less VBO/VAO (less memory)
- uses temporary buffer for faster rendering (more memory)
  - QuadCommand is just a subclass of TriangleCommand (simpler)
  - but statically it allocates indices internally (like any TriangleCommand) (more
    memory, but not that much)
- adds more tests for SpritePolygon
- adds test for batching Tri + Quad command
- and fixes some other bugs

Squashed commit of the following:

commit cce893a9114da5dda91a895e4e661894f365e2c7
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Feb 8 06:56:57 2016 -0800

    QuadCommand: indices are static

    thanks @Darinex

commit e5fd1c14e93d2f07b8266bfec03cf7206d348f59
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sun Feb 7 19:18:42 2016 -0800

    little improvements in xcode proj management

commit 6cd29764e01ad300f4e89e62aa6b399f73e94f01
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sun Feb 7 19:05:52 2016 -0800

    Renderer improvments: TriangleCommand and QuadCommand merged

    - more options for batching (faster)
    - less flushing in between commands (faster)
    - less renderer code (easier to maintain)
    - less VBO/VAO (less memory)
    - uses temporary buffer for faster rendering (more memory)

    and fixes some other bugs

    Squashed commit of the following:

    commit af7a209435c5f2430c31ab3ebcc7f45051eacb1a
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Sun Feb 7 18:55:27 2016 -0800

        adds test for batching quads and tris

    commit 25816e3eaeffd4b0cfe5fa15e97ff84e9013b8be
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Sun Feb 7 18:40:15 2016 -0800

        cleanup renderer

    commit 7f9785056681756c865d603516c7e14c46040e82
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Sun Feb 7 15:34:48 2016 -0800

        clean up docs

    commit 92a8b679dd404e4ca2839d85e2bd925195b12996
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Sun Feb 7 15:18:52 2016 -0800

        QuadCommand converted to Triangles command

    commit 7e21ec12d3781f6964b4d639cfa4bdc79eb8ae80
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Fri Feb 5 16:17:29 2016 -0800

        adds missing files... new test as well

    commit d1bd4391785515bdc2e1bebbeb3f321f983b51f2
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Fri Feb 5 14:35:41 2016 -0800

        more tests for poly sprites

    commit 5775a25b1046671bd0f5af4c5ab52b308b34bb39
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Fri Feb 5 00:30:13 2016 -0800

        malloc instead of std::vector

    commit 14a5d45cc978c55a182c03f181ca2bc603776561
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Thu Feb 4 21:40:46 2016 -0800

        little optimization

    commit 5667cb2b62416f8a439a54c3973d5841fbe1b68b
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Thu Feb 4 19:13:13 2016 -0800

        quad works as expected

    commit 462aef05baa6586591882faa366839bead4be068
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Thu Feb 4 15:22:59 2016 -0800

        works

    commit c789e6c42811278563c7682b5620296ae8d84aeb
    Merge: d6c3729 de62924
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Thu Feb 4 14:08:49 2016 -0800

        Merge branch 'v3' into uniform_matrix_auto

    commit d6c37297954af752ebf42ec5f71e5e2fe28c9cc2
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Thu Feb 4 13:54:07 2016 -0800

        works ok...

    commit 45c288631989ea735cc31ec5aa683d9d41aacab3
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Thu Feb 4 12:58:34 2016 -0800

        quad works!

    commit 7137cff51df09adee7129738cea2b69da090756e
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Wed Feb 3 16:19:34 2016 -0800

        more optimizations... WIP... doesn't work yet

    commit a8324c1a9acb6b82102e05eee6e5e5f341306c7b
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Tue Feb 2 21:59:42 2016 -0800

        compiles in release mode

        more tests... better threshold

    commit 884ffc756e7520fcbb9252260181538ec81b8368
    Author: Ricardo Quesada <ricardoquesada@gmail.com>
    Date:   Tue Feb 2 17:21:32 2016 -0800

        initial uniform_auto_matrix commit

        Changes the CC_matrix uniform in runtime depending on whether the command can be batched or not.

        Lot of things missing, though... like performance tests.
2016-02-08 11:25:37 -08:00
elloop 341575aa4c 1. We should define `std::string ret` in where we really need it. According to my test on android platform the function returns at `return "";`, which makes the `ret` unnecessary.
2. `charsWritten` is not used, we should either delete it or use it. Because we don't check the bytes written, I think we can just delete it.
3.  We don't need (logLength+1) space for `logBytes`, because `logBytes`  returned by calling glGetShaderInfoLog(shader, logLength, nullptr, logBytes) takes `logLength` bytes at most, including the ending null character,  i.e. `(strlen(logBytes) + 1 ==  logLength)` always yield true. According to the offical opengles sdk docs: https://www.khronos.org/opengles/sdk/docs/man/xhtml/glGetShaderInfoLog.xml.
and
https://www.khronos.org/opengles/sdk/docs/man/xhtml/glGetShaderiv.xml

4. We don't need `logBytes[logLength] = '\0';`, because `logBytes` returned is already null-terminated.
2016-01-25 12:22:30 +08:00
James Chen 057db2444c Removes unused code in Material::initWithFile. 2016-01-15 00:55:10 +08:00
zilongshanren 7d943f200f fix scale9sprite gray state opacity issue.
Ticket: https://github.com/cocos2d/cocos2d-x/issues/14378
2016-01-07 17:17:55 +08:00
pandamicro 022bcc24f1 Merge branch 'v3.10' of github.com:cocos2d/cocos2d-x into v3
Conflicts:
	cocos/scripting/js-bindings/manual/chipmunk/js_bindings_chipmunk_manual.cpp
	cocos/scripting/js-bindings/manual/component/CCComponentJS.cpp
	cocos/scripting/js-bindings/manual/js_bindings_opengl.cpp
2015-12-20 22:56:33 +08:00
Liam fb312a761c update for 3D object render, revert old changes 2015-12-18 11:23:33 +08:00
Wenhai Lin 4fa58602a8 Adds `std::nothrow` to the `new` statements 2015-12-16 14:02:55 +08:00
mogemimi f280a31323 Fix typo in documentation and comments 2015-12-09 01:48:24 +09:00
Ricardo Quesada aebfefd7a8 Merge branch 'v3' into js_more_conversions 2015-12-04 19:01:20 -08:00
Ricardo Quesada cd8631ef09 sfunction "create" uses new optimized code
...although this code should never be called
2015-12-04 18:42:31 -08:00
Ricardo Quesada f6c2758801 Merge pull request #14409 from xiaofeng11/v3_combine_opengl
Combine Studio change for openGL related operation
2015-12-03 23:03:40 -08:00
Liam 07bc48c1b8 revert glprogram 2015-12-03 16:29:02 +08:00
XiaoYang 867664197e Merge pull request #14526 from super626/v3
3D Normal Map Support
2015-12-02 14:22:20 +08:00
yangxiao ebd5c1cca7 resolve conflict and fix checktexture bug 2015-12-02 11:26:05 +08:00
pandamicro 70dd2af5d5 Merge pull request #14518 from mogemimi/fix-memory-leak-texture-cache
Fix memory leak when initWithImage() failed
2015-12-02 10:20:04 +08:00
xiaofeng11 18666a9b41 Merge pull request #14393 from xiaofeng11/v3_combine_3d
Combine Studio change for 3d components
2015-12-02 09:47:12 +08:00
mogemimi d539e6c797 Fix memory leak when initWithImage() failed 2015-12-01 12:48:54 +09:00
yangxiao 11f1bd6e28 builtin material normal map support 2015-12-01 10:37:53 +08:00
XiaoFeng 150d907636 Add missing changes to Particle 3d 2015-11-27 19:01:30 +08:00
XiaoFeng 2d28b78e41 Add 3 missing class export
Change clearShader logic.
2015-11-27 14:58:18 +08:00
songchengjiang b55f040ec6 fix macro definition error 2015-11-27 14:23:17 +08:00
XiaoFeng 8e4276469c Add comment to new function 2015-11-27 14:08:27 +08:00
songchengjiang 642e19baef unify (No)Normal Mapping shaders 2015-11-27 13:15:33 +08:00
XiaoYang 92d7ccfbca Merge pull request #14471 from super626/v3
release default fbo
2015-11-27 11:33:07 +08:00
songchengjiang fc4c3ec650 Merge branch 'v3' of https://github.com/super626/cocos2d-x into v3 2015-11-27 09:34:31 +08:00
XiaoFeng 09606e96cd Add comment for new function 2015-11-25 11:33:24 +08:00
XiaoFeng d0cd640ac8 Update 2015-11-25 11:15:17 +08:00
songchengjiang 9241797acb support normal mapping material 2015-11-25 10:45:03 +08:00
XiaoFeng 722f20c4b6 Update implement remove condition macro check. 2015-11-24 18:29:58 +08:00
yangxiao aa38dfba89 release default fbo 2015-11-24 18:11:16 +08:00
XiaoFeng 50889c1c6c Save _vertShader & _fragShader for PC platform only to decrease memory usage for mobile platform. 2015-11-17 14:29:56 +08:00
XiaoFeng acd3b5cbc4 Combine Studio change for openGL related operation 2015-11-17 13:38:42 +08:00
XiaoFeng eb644ee79f Combine Studio change for 3d components 2015-11-16 15:05:43 +08:00
pandamicro 6fc7aca423 Merge pull request #14153 from Fraggle/patch-1
PMA Handling issue
2015-11-11 14:14:22 +08:00
yangxiao 9d2fca6d34 fix cull face for render queue 2015-11-09 10:42:12 +08:00
pandamicro b58e656620 Merge pull request #14264 from super626/v3
Fix: Mesh::setGLProgramState may modify state block
2015-10-30 10:11:23 +08:00
yangxiao 16d9cf1af9 setStateBlock implement 2015-10-29 14:21:25 +08:00
mogemimi 9df30d2454 Fix typos in documentation 2015-10-23 16:59:51 +09:00
pandamicro f2898ecf30 Merge pull request #14207 from super626/terrain
fix shader on pc
2015-10-22 10:10:10 +08:00
yangxiao cca25f5b5c fix shader on pc 2015-10-22 09:29:12 +08:00
Dale Stammen ce88dbdee4 removed WP8.1 shader code 2015-10-16 14:48:03 -07:00
Dale Stammen 414a34f3f9 removed old WP8.1 shaders for gl_PointSize 2015-10-16 14:47:02 -07:00
Sebastien Flory bd83fc1474 PMA Handling issue
Hi,

I compared to cocos2D-x v2.x and it seems that there is an issue with the _hasPremultipliedAlpha flag not beeing set correctly for mipmaps and compressed textures.
I guess it's a mistake due to the reorganization of the code between the old CCTexture2D and the new one.
In our tests, this fixes the issue.

Best,

Sebastien
2015-10-15 15:48:21 +02:00
yangxiao 907189ed14 correct wrong presion, which leads to failed on some devices 2015-10-15 11:59:38 +08:00
Martin Taylor 62e36e8006 fix typos and syntax error. A thorough check by tool VSSpellChecker. 2015-09-22 16:08:23 +08:00
yangxiao ea538cd9da merge cocos 2015-09-16 10:37:24 +08:00
yangxiao ca24e6eba3 fix clone 2015-09-11 15:08:59 +08:00
yangxiao 6fd9784fce setParent for RenderState 2015-09-11 11:47:36 +08:00
yangxiao d5fab0bd38 merge cocos 2015-09-10 10:44:09 +08:00
yangxiao 8f5cd6cdc8 remove setParent 2015-09-10 09:28:01 +08:00
yangxiao 64471fab85 fix material clone 2015-09-10 09:23:02 +08:00
Nathanael Weiss 14b9c2e75c Fix crash in FrameBuffer if no DepthStencil
This fixes a debug-config crash if a FrameBuffer has no `RenderTargetDepthStencil`.
2015-09-08 13:13:38 -07:00
yangxiao c3ac446f35 resolve conflict 2015-09-07 14:45:09 +08:00