Commit Graph

35825 Commits

Author SHA1 Message Date
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
Paul Gardiner 875cf45d1d Lua: add cc.vec3 functions - add, sub, mul and dot (#16706)
Also update the lua test to use these functions.
2016-10-17 10:39:40 +08:00
mogemimi fe52c5fa0a Fix typos in comments and strings (#16708) 2016-10-17 10:12:54 +08:00
minggo 06b4a18f6f Merge pull request #16703 from dumganhar/pr/16689-font-pos
Adds test case for PR #16689 (fix font rendering position)
2016-10-17 10:09:50 +08:00
James Chen 627eba6aac fixed #16652: FontFreeType crashes in its destructor. (#16684) 2016-10-14 17:49:36 +08:00
Dale Stammen 58414f85a1 disable /Zw on .c file (#16697) 2016-10-14 17:49:03 +08:00
mogemimi 1ed151be82 Fix indentation (#16699) 2016-10-14 17:48:23 +08:00
mogemimi dde86b404a Remove unused local variable (#16698) 2016-10-14 17:48:00 +08:00
James Chen ae439ff8dc Adds test case for showing border of TTF label, it will be easier to find out wrong offset of Label. 2016-10-14 17:14:15 +08:00
Sergey fd902e52cf adjustForDistanceMap need to be negative to 2016-10-14 11:45:29 +03:00
Sergey f05053329b fix font rendering position 2016-10-12 16:21:09 +03:00
Bin Zhang 93609ff586 Update submodule cocos2d-console. (#16683)
Solve the error prebuilt Android.mk generated by cocos gen-libs.
2016-10-12 16:53:11 +08:00
QingliWang 7c1f88423b Fix bug when app paused the music is still resumed to play after interruption completed. (#16679)
* Support audio interruption and resume callback when change earphone status.

* Refactor keyevent callback and add makecurrent for compatible with different binary.

* Enable Tizen indicator.

* Remove the unnecessary evasobject in the window and refactor the function for glview mode.

* Fix the compatible issue between Tizen 2.3 and 2.4.

* Fix the wrong directory of script resources for HellLua template project.

* Create performance-test project for Tizen platform.
2016-10-12 15:48:27 +08:00
子龙山人 431725a2bb Merge pull request #16675 from CocosRobot/update_lua_bindings_1476209018
[ci skip][AUTO]: updating luabinding & jsbinding & cocos_file.json automatically
2016-10-11 20:46:31 -07:00
CocosRobot 23ff5fc51f [ci skip][AUTO]: updating luabinding & jsbinding & cocos_file.json automatically (#16676) 2016-10-11 11:40:11 -07:00
CocosRobot#Set 47a980c0c8 [ci skip][AUTO]: updating luabinding & jsbinding & cocos_file.json automatically 2016-10-11 18:03:42 +00:00
Wilson E. Alvarez cdee1e11de Performance tweak: use range-based for-loops instead of iterator-based for-loops. (#16642)
* Use ++ prefix instead for non-primitive data types in CCAutoPolygon.cpp

* Use ++ prefix instead for non-primitive data types in SimpleAudioEngine.cpp

* Use ++ prefix instead for non-primitive data types in CCNodeLoaderLibrary.cpp

* Use ++ prefix instead for non-primitive data types in CCActionManagerEx.cpp

* Use ++ prefix instead for non-primitive data types in CCDataReaderHelper.cpp

* Use ++ prefix instead for non-primitive data types in HttpClient-android.cpp

* Use ++ prefix instead for non-primitive data types in CCDevice-linux.cpp

* Use ++ prefix instead for non-primitive data types in ScriptingCore.cpp

* Switched implementation to range-based for loops

* Added readability, fixed loop in CCDataReaderHelper.cpp

Thanks to Dimon4eg for the code review.
2016-10-11 10:59:44 -07:00