Commit Graph

35841 Commits

Author SHA1 Message Date
tmr111116 ab8a119df2 Add NDEBUG for template Xcode project (#10825)
Android and other projects include NDEBUG already

templates/cpp-template-default/proj.android/jni/Application.mk:  APP_CPPFLAGS += -DNDEBUG
templates/cpp-template-default/proj.win32/HelloCpp.vcxproj:      <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USE_MATH_DEFINES;GL_GLEXT_PROTOTYPES;CC_ENABLE_CHIPMUNK_INTEGRATION=1;_CRT_SECUR
templates/cpp-template-default/proj.wp8-xaml/AppComponent/HelloCppComponent.vcxproj:      <PreprocessorDefinitions>CC_ENABLE_CHIPMUNK_INTEGRATION=1;NDEBUG;%(PreprocessorDefinitions)</Preprocess
templates/cpp-template-default/proj.wp8-xaml/AppComponent/HelloCppComponent.vcxproj:      <PreprocessorDefinitions>CC_ENABLE_CHIPMUNK_INTEGRATION=1;NDEBUG;%(PreprocessorDefinitions)</Preprocess
templates/lua-template-default/frameworks/runtime-src/proj.android/jni/Application.mk:  APP_CPPFLAGS += -DNDEBUG
templates/lua-template-default/frameworks/runtime-src/proj.ios_mac/HelloLua.xcodeproj/project.pbxproj:                                  NDEBUG,
templates/lua-template-default/frameworks/runtime-src/proj.win32/HelloLua.vcxproj:      <PreprocessorDefinitions>WIN32;_WINDOWS;STRICT;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGSNDEBUG;GLFW
templates/lua-template-default/frameworks/runtime-src/proj.win32/HelloLua.vcxproj:      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
templates/lua-template-default/frameworks/runtime-src/proj.win32/HelloLua.vcxproj:      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
2016-11-09 11:26:28 +08:00
Josh Bodily c3c6681b9e Add Horizontal Text Alignment to UIEditBox (#16772)
* Add Horizontal Text Alignment to UIEditBox

* Fix compile error

* Fix win32 compile
2016-11-09 10:38:00 +08:00
yahont e9b39a99e2 cocos2dInternal cleaned of some warnings (#16818)
* cocos2dInternal cleaned of some warnings: unused parameters and signed-unsigned comparisons

* -Werror removed

* tab fixed

* indent fixed

* more warnings fixed
2016-11-09 10:34:50 +08:00
David DeSimone fb9c1f2de0 Fixed EditBox placeholder font not being set correctly for multiline text fields on iOS. (#16821) 2016-11-09 10:27:34 +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
minggo 0e8b1210fc fix typo (#16813) 2016-11-07 10:36:53 +08:00
James Chen 4fc7f48c76 fixed #16800: [AssetsManagerEx] project.manifest will be downloaded twice (#16801) 2016-11-04 15:03:32 +08:00
CocosRobot 2d18d703a0 [ci skip][AUTO]: updating luabinding & jsbinding & cocos_file.json automatically (#16810) 2016-11-04 14:07:25 +08:00
David DeSimone 9204c87cfc Adding performance.now() to cocos2d-js. (#16766)
* Adding performance.now() to cocos2d-js. See https://developer.mozilla.org/en-US/docs/Web/API/Performance/now

* Fixing improper logic for converting from microseconds, to milliseconds with micro-precision

* Adding performance.now tests
2016-11-04 11:58:48 +08:00
minggo fa02f24f0d add fbs files needed to update flatbuffer (#16808) 2016-11-04 10:13:06 +08:00
n2omatt 6be4ec8ee5 Add new methods to get the number of actions running in a given node with a specific tag. (#16789)
* Add new methods to get the number of actions running in a
given node with a specific tag.

This is useful for cases that we want to know how many
animations with a **specific** tag is running in our target.
For example:

auto tag1Count = this->getNumberOfRunningActionsByTag(kMyTag1);
auto tag2Count = this->getNumberOfRunningActionsByTag(kMyTag2);

While this could be achieved (more or less) with callbacks
to increment the tagCount at start of action and decrement
at the end the proposed API is much more concise and less error
prone.

* Replace the old C casts to static_casts.

As discussed in #16789 issue thread @minggo asked
to change the old style of cast to newer, more safer
static_casts.

* Add the required parenthesis and normalize the spaces.

Normalize all the static_cast<Action *> to static_cast<Action*>
some places we have spaces, other places haven't.

Fix the missing parenthesis.
2016-11-04 09:41:03 +08:00
Josh Bodily e20c1e0a9a Misc. UIEditBoxImpl-winrt fixes (#16773)
* SENSITIVE doesn't imply password, fixes crash on static cast in
* onTextChanged
* Fix type fontName instead of pFontName
* Set attributes that affect text content before setting initial text
2016-11-04 09:38:48 +08:00
James Chen 7e14812240 fixed #16492: RapidJSON Crashes in Release mode on Android. (#16792)
* fixed #16492: RapidJSON Crashes in Release mode on Android.

* Updates external/config.json

* json/filestream.h -> json/filereadstream.h
2016-11-04 09:36:59 +08:00
James Chen f32effeb96 More: Uses c++11 multi-line string literal (#16803) 2016-11-04 09:36:26 +08:00
CocosRobot 9eb177c6cc [ci skip][AUTO]: updating luabinding & jsbinding & cocos_file.json automatically (#16802) 2016-11-03 15:29:09 +08:00
Josh Bodily 9f31a1e43c Add reason for edit end to UIEditBoxDelegate (#16771)
* Add reason for edit end to UIEditBoxDelegate

* Adds "NEXT" action button for iOS and Android for easier form
* navigation

* Fix compile error
2016-11-03 14:02:53 +08:00
Guy 925b4fa96f Update CCObjLoader.cpp (#16790)
In the case of a simple MTL file such as 

newmtl cube
  Ns 10.0000
  Ni 1.5000
  d 1.0000
  Tr 0.0000
  Tf 1.0000 1.0000 1.0000 
  illum 2
  Ka 0.0000 0.0000 0.0000
  Kd 0.5880 0.5880 0.5880
  Ks 0.0000 0.0000 0.0000
  Ke 0.0000 0.0000 0.0000
  map_Ka cube.png
  map_Kd cube.png

The entire istringstream would be consumed by LoadMTL and result in a 'not found' error due to the null check being in the wrong place
2016-11-02 10:22:48 -07:00
ggggamer 54d6321ff3 Support float line width (#16781)
glLineWidth use float but CCDrawNode use int
2016-11-02 17:48:26 +08:00
Bin Zhang 3b87e46280 Support compile & run project on Tizen by cocos command. (#16783)
* Add config files for build engine source code on tizen.

* Add config files for cpp-empty-test on tizen.

* Add missing files.

* Add config files for cpp-tests on tizen.

* Add Tizen config files for lua-bindings.

* Add Tizen config files for lua-empty-test.

* Solve the error when build lua-empty-test for Tizen.

* Add Tizen config files for lua-tests.

* Solve the error when build lua-tests for Tizen.

* Add tizen config files for templates.

* Update submodule cocos2d-console.
2016-11-02 17:41:26 +08:00
James Chen e183160efe fixed #16787: Removes unused code of 'if (sizeof(Vec2) == sizeof(Vec2)'. (#16791) 2016-11-02 17:27:49 +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
Paul Gardiner a888f42d7f Lua: have cc.Ray:intersects additionally return the distance (#16677)
cc.Ray:intersects now returns two results, an indication of hit or
not, plus the distance along the ray. The function can still be called
expecting a single argument and hence is backward compatible.

Also correct the debug error message
2016-11-02 09:45:24 +08:00
Josh Bodily 40b5c9f4b7 Mac edit box bug fixes (#16656)
* Don't allow multiline to overflow bounds of box
* Fix bug w/ performSelector
2016-10-31 15:16:18 +08:00
子龙山人 e154585796 Merge pull request #16780 from CocosRobot/update_lua_bindings_1477894156
[ci skip][AUTO]: updating luabinding & jsbinding & cocos_file.json automatically
2016-10-31 00:01:47 -07:00
子龙山人 1a258f7ed4 Merge pull request #16776 from CocosRobot/update_lua_bindings_1477789224
[ci skip][AUTO]: updating luabinding & jsbinding & cocos_file.json automatically
2016-10-31 00:01:08 -07:00
CocosRobot#Set c737fc1387 [ci skip][AUTO]: updating luabinding & jsbinding & cocos_file.json automatically 2016-10-31 06:09:19 +00:00
pyrosphere 1667a5c444 Toggle between windowed/fullscreen on desktop (#16762)
* GLViewImpl methods for desktop window management - toggle between fullscreen/windowed

* Window management tests (mac)

* Added window management tests to Win32 and Linux

* Added const keyword. Removed platform macros.
2016-10-31 14:02:02 +08:00
chgowolf ef380298bb fix issue#16756 tileGid may overflow when use horizontal flip (#16758)
* tileGid may overflow when use horizontal flip

kTMXTileHorizontalFlag = 0x80000000
when use horizontal flip, gid will bigger chan 0x7FFFFFFF

* use unsigned int to convert string to gid
2016-10-31 10:42:09 +08:00
James Chen cc1b7808f0 fixed #16735: [native] The behavior of (setRotation + setSkewX) is wrong (#16736)
* fixed #16735: [native] The behavior of (setRotation + setSkewX) is wrong.
Since I removed some logic, this patch may also improve a little bit performance.

* Adds test case for issue #16735
2016-10-31 10:29:04 +08:00
CocosRobot#Set 57903077d0 [ci skip][AUTO]: updating luabinding & jsbinding & cocos_file.json automatically 2016-10-30 01:00:27 +00:00
Ricardo Quesada e0809d869c Sprite::capInsets -> Sprite::centerRect (#16770)
* Sprite::capInsets -> Sprite::centerRect

as requested by @minggo

* fixes flip issues in Sprite with slice 9
2016-10-29 17:52:33 -07:00
CocosRobot 3ab1be61a7 [ci skip][AUTO]: updating luabinding & jsbinding & cocos_file.json automatically (#16764) 2016-10-28 10:13:57 +08:00
James Chen 609750ef58 fixed #16754: [android] Background music which is playing could not be paused while game enters background. (#16755)
* fixed #16754: [android] Background music which is playing could not be paused while game enters background.

* Updates a comment of cocos/audio/android/AudioEngine-inl.h
2016-10-28 10:12:52 +08:00
Bin Zhang de9a3e52a5 Update the submodule cocos2d-console. (#16753)
Changed : Improve `cocos run -p iOS`  for support XCode 8.
2016-10-28 09:35:30 +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
pandamicro e4170a7b02 Improve JS bindings (#16751)
* Fix tests for v3.12 web

* Improve scheduler wrapper

* Update web engine ref

* Fix leak: js_remove_object_reference can not remove non binding objects

* Fix ScriptingCore::evalString

* Add missed `__cppCreated` for JS create objects

* Fix manifest path issue
2016-10-28 09:29:56 +08:00
Alexander Poluektov cfcbbaa6e5 Fix android-build.py (#16727)
* Rejuvenate android-build.py

- replace deprecated OptionParser with ArgumentParser
- PEP8
- better shebang
- main() function

* Fix android-build.py

- resurrect '-p' parameter to be able to specify android platform in
  cocos console as '--ap' parameter
- correct usage message
- fix some misprints

* android_build.py: stricter error handling and better handling of duplicate targets

- handle duplicates like that './android-build.py cpp cpp'
- don't default to debug if some incorrect build mode passed, raise
2016-10-27 15:32:47 +08:00
zloopnew ed2dac1ba4 Mesh* Sprite3D::getMesh() should return nullptr when _meshes.empty() is true (#16711) 2016-10-27 15:20:41 +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
CocosRobot 44f6865697 [ci skip][AUTO]: updating luabinding & jsbinding & cocos_file.json automatically (#16750) 2016-10-27 11:15:24 +08:00
niu2x 92af2b2b6f bug fix (#16747) 2016-10-27 09:46:07 +08:00
Ricardo Quesada 323ea7c0d4 Sprite scale9 (#16702)
* 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

* fixes anchorPoint issues

* adds documentation

* fix: using top-left coordinate for setRect

* sprite: fixes related to scale9 and tiled

* Sprite: slice 9 fixes

works Ok with rotated frames
uses `setCapInsets` instead of `setCenterRect` to be more familiar
with `UIScale9Sprite`

* fixes js and lua bindings for Autopolygon
2016-10-26 18:45:40 -07: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 0a31c7de3a fixed #16737: NodeTest (stress test #2: no leaks) is broken. (#16741)
'clone' method must invoke the inner object's clone method rather than its raw pointer.
2016-10-26 15:54:01 +08:00
mogemimi 5b8919829c Fix typos in local variables (#16712) 2016-10-20 18:17:37 +08:00
James Chen a5fdc07fca Fixes label wrong blending and improves performance while enabling outline. (#16717) 2016-10-19 10:19:14 +08:00
Ricardo Quesada 90db0eb6bf Android pixel fixes (#16694)
* android pixel fixes

- pragma pack for NavMesh! (how this was working)
- no no-const global variables in shaders

* spine: js bindings work again
2016-10-17 15:44:41 +08:00
noprops 92da63db3d update visibleTiles rect (#16331) 2016-10-17 14:27:38 +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
Paul Gardiner 6b27f014fc Correct the Skybox fov (#16655)
* Remove undrawn quads from the skybox mesh

CCSkybox had been implemented using a combination of two
inconsistent techniques. The rendering was being achieved via use of
the vertex shader's inherent support for cubemaps. That technique requires
only a single screen-covering quad, but the implemtation defined a cube.
Defining a cube mesh would be appropriate if one were simply mapping the
cubemap's 6 textures to faces, but is unnecessary if using the shader's
cubemap feature.

Not only was the use of a cube mesh unnecessary, but the particular way
the cube was defined and used meant that only one face would ever
contribute to the rendering. One of the other faces would always be culled
and the other four would be viewed edge on, mapping the the infinitesimally
thin lines defining the edges of the screen.

This commit simply removes the never-rendered faces, and adds comments
explaining the technique.

* Within test code, remove setScale calls applied to skyboxes.

A Skybox is defined in such a way that it's position, rotation and
scaling has no effect on it's rendering, so setScale has no effect.
The calls are removed from test code to avoid confusing anyone using
it as a template for their own programs.

* Make the Skybox correctly account for the camera's fov

The Skybox does not use the model/view and projection matricies. Instead
a single quad that maps exactly to the screen is rendered and the camera's
world matrix is passed into a shader that renders using cubemap lookups.
The way that works hardwires the fov to 90deg in both the horizontal and
vertical. That shows up particularly badly when the camera is pointed
directly downwards and rotated: the image deforms as it rotates.

This commit corrects the problem by using scaling factors from the
camera's projection matrix to prescale the matrix passed into the shader.
2016-10-17 13:46:26 +08:00