* 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.
* 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.
* 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.
* 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.
* Adds Spine binary-file format support
fixes issue #10438
* ignore SkeletonBinary.c from linter
* add another file to the exclude list
* lua manual fixes for spine
* SkeletonBinary.c and not .cpp
* missing files for win8.1
* don't compile it as crt
* new updates from spine
* Lua: remove unused 3rd argument from cc.mat4.transformVector
cc.mat4.transformVector takes a mat4 and a 4vector and returns the result
of applying the mat4 to the vector. Strangely it had been made to also
require a third argument called dst which it doesn't use but did check
was a vec4. This commit allows cc.mat4.transformVector to be called
without the unnecessary argument. We still permit calling with it for
backward compatibility.
Also changed is the wrapper in Cocos2d.lua so that a second form of
cc.mat4.transformVector can be used where the vector is supplied as
4 separate numbers.
Changed the test files to call without the unnecessary argument.
* Lua: remove unused argument from cc.mat4.createTranslation/Rotation
Both these functions have an extra unnecessary argument called dst,
although neither use it either to pass in or out a value. This
commit removes the extra argument and updates the test programs
correspondingly.
Also, within Cocos2d.lua, remove some definitions that are later
overwritten by new ones
Add Sprite3DMaterial to the list of classes for autogeneration of
lua bindings.
Add a new test case to the end of Sprite3DTest.lua showing the
use of outline.material.
* 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