Commit Graph

664 Commits

Author SHA1 Message Date
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