This commit is contained in:
2youyou2 2014-05-23 13:19:06 +08:00
commit 4103eb87ac
1017 changed files with 31609 additions and 20124 deletions

12
AUTHORS
View File

@ -11,6 +11,7 @@ Core Developers:
Huabing Xu (dabingnn)
Bo Yu (boyu0)
Wenhai Lin(Dhilan007)
Guanghui Qu(andyque
Developers:
@ -673,6 +674,7 @@ Developers:
xhcnb
Device::setAccelerometerEnabled needs to be invoked before adding ACC listener.
Fixed a bug that it will get wrong custom properties when use different count custom properties in CocosBuilder.
Correct TotalTime of ActionObject
bopohaa
Fixed a bug that Webp test crashes.
@ -818,6 +820,7 @@ Developers:
Fixed a bug that HTTPClient reports 2xx status codes as errors
Added missing Text Font and Placeholder feature of EditBox for Mac platform
HttpRequest uses std::function as callback
EditBox: mac secure input
iSevenDays
Fixed a bug that the result of 'malloc' is incompatible with type 'unsigned char *' in Image::saveImageToPNG
@ -840,6 +843,9 @@ Developers:
zifter
Fixed a bug that the effect of particle loaded from CocosBuilder is incorrectly
Fix twice calling onExit
Fixed bug with cascade opacity and color for control button
Fix Progress Action. Not working with charging from 100 to 0.
twhittock
Fixed a bug that Application::run returns wrong value on Mac platform
@ -849,6 +855,12 @@ Developers:
myourys
Make cpp template support Eclipse c++ project
NatWeiss
Fix compilation error using arch i386
favorcode
Correct some doxygen comment
Retired Core Developers:
WenSheng Yang

View File

@ -1,3 +1,26 @@
cocos2d-x-3.1 ???
[FIX] Label: may crash when using outline effect
[FIX] Label: using outline and invoking 'Director::setContentScaleFactor' cause label show nothing
[FIX] ProgressTo: will start from 0 when it reaches 100
[FIX] Physics integration: may crashes if remove bodies at physics contact callback
[FIX] WP8: orientation is not correct when it is set to portrait
[FIX] WP8: fix for precompiled shaders and precompiled headers
[FIX] WP8: template supports orientation
cocos2d-x-3.1-rc0 May.18 2014
[NEW] Cocos2dxActivity: Adds a virtual method to load native libraries.
[NEW] Directory Structure: reorder some files within the cocos/ folder
[NEW] Sprite3D: a node that renders 3d models
[NEW] EditBox: support secure input on Mac
[FIX] ControlButton: cascade opacity and color error
[FIX] Director: twice calling of onExit
[FIX] Math: Vector2->Vec2, Vector3->Vec3, Vector4->Vec4, Matrix->Mat4
[FIX] GLProgram: uniform CC_Texture0 is pre-defined by cocos2d. MUST NOT be defined in shaders
[FIX] GLProgramState: Supports multitexturing
[FIX] Studio:ActionObject: correct TotalTime of ActionObject
[FIX] Studio: FrameData::copy doesn't copy `isTween` property
cocos2d-x-3.1-alpha1 May.9 2014
[NEW] Animate: Dispatch a custom event after an animation frame is displayed
[NEW] GLProgram: Easy to customize uniforms and attributes by using the new class GLProgramState

View File

@ -130,6 +130,8 @@ endif()
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/cocos
${CMAKE_CURRENT_SOURCE_DIR}/cocos/platform/desktop
${CMAKE_CURRENT_SOURCE_DIR}/cocos/platform/${PLATFORM_FOLDER}
${CMAKE_CURRENT_SOURCE_DIR}/cocos/audio/include
${CMAKE_CURRENT_SOURCE_DIR}/cocos/editor-support
${CMAKE_CURRENT_SOURCE_DIR}/cocos/scripting/lua-bindings/auto
@ -140,8 +142,6 @@ include_directories(
${CMAKE_CURRENT_SOURCE_DIR}/external/unzip
${CMAKE_CURRENT_SOURCE_DIR}/external/edtaa3func
${CMAKE_CURRENT_SOURCE_DIR}/external/chipmunk/include/chipmunk
${CMAKE_CURRENT_SOURCE_DIR}/cocos/2d/platform/desktop
${CMAKE_CURRENT_SOURCE_DIR}/cocos/2d/platform/${PLATFORM_FOLDER}
${CMAKE_CURRENT_SOURCE_DIR}/external/jpeg/include/${PLATFORM_FOLDER}
${CMAKE_CURRENT_SOURCE_DIR}/external/png/include/${PLATFORM_FOLDER}
${CMAKE_CURRENT_SOURCE_DIR}/external/tiff/include/${PLATFORM_FOLDER}

View File

@ -5,7 +5,7 @@ cocos2d-x
=========
[![Build Status](https://travis-ci.org/cocos2d/cocos2d-x.png?branch=v3)](https://travis-ci.org/cocos2d/cocos2d-x)
[![Build Status](https://travis-ci.org/cocos2d/cocos2d-x.png?branch=v3)](https://travis-ci.org/cocos-travis-mac/cocos2d-x)
[![Build Status](https://travis-ci.org/cocos-travis-mac/cocos2d-x.png?branch=v3)](https://travis-ci.org/cocos-travis-mac/cocos2d-x)
[cocos2d-x][1] is a multi-platform framework for building 2d games, interactive books, demos and other graphical applications.
It is based on [cocos2d-iphone][2], but instead of using Objective-C, it uses C++.
@ -18,7 +18,15 @@ cocos2d-x is:
* Easy to use
* Community Supported
Git user attention
-----------------------
1. After cloning the repo, please execute `download-deps.py` to download and install some dependences.
$ cd cocos2d-x
$ python download-deps.py
2. Please execute `download-deps.py` once you synchronize with this repo. If there aren't any updates, it will not download dependences again.
How to start a new game
-----------------------

View File

@ -116,7 +116,7 @@ def do_build(cocos_root, ndk_root, app_android_root, ndk_build_param,sdk_root,an
raise Exception("Build dynamic library for project [ " + app_android_root + " ] fails!")
elif android_platform is not None:
sdk_tool_path = os.path.join(sdk_root, "tools/android")
cocoslib_path = os.path.join(cocos_root, "cocos/2d/platform/android/java")
cocoslib_path = os.path.join(cocos_root, "cocos/platform/android/java")
command = '%s update lib-project -t %s -p %s' % (sdk_tool_path,android_platform,cocoslib_path)
if os.system(command) != 0:
raise Exception("update cocos lib-project [ " + cocoslib_path + " ] fails!")

View File

@ -59,7 +59,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "cpp-empty-test", "..\tests\
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cpp-empty-testComponent", "..\tests\cpp-empty-test\proj-wp8-xaml\cpp-empty-testComponent\cpp-empty-testComponent.vcxproj", "{F5D665F8-AE19-4F3F-99A7-230A1E8305D2}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CopyTemplateFiles", "..\cocos\2d\platform\wp8-xaml\CopyTemplateFiles.vcxproj", "{271FEE84-9198-4C26-8567-4247C563B0B1}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libGUI", "..\cocos\ui\proj.wp8\libGUI.vcxproj", "{08FB23E4-1517-4EDC-B682-DA238CDAA83D}"
ProjectSection(ProjectDependencies) = postProject
{B5AF91B3-64EA-44E1-84B0-D759E93758FB} = {B5AF91B3-64EA-44E1-84B0-D759E93758FB}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CopyTemplateFiles", "..\cocos\platform\wp8-xaml\CopyTemplateFiles.vcxproj", "{271FEE84-9198-4C26-8567-4247C563B0B1}"
ProjectSection(ProjectDependencies) = postProject
{5921FE12-7EF3-4847-8453-42EF286DDBE7} = {5921FE12-7EF3-4847-8453-42EF286DDBE7}
{60D53713-1675-4466-81DC-D67A031C3D21} = {60D53713-1675-4466-81DC-D67A031C3D21}
@ -67,11 +72,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CopyTemplateFiles", "..\coc
{F5D665F8-AE19-4F3F-99A7-230A1E8305D2} = {F5D665F8-AE19-4F3F-99A7-230A1E8305D2}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libGUI", "..\cocos\ui\proj.wp8\libGUI.vcxproj", "{08FB23E4-1517-4EDC-B682-DA238CDAA83D}"
ProjectSection(ProjectDependencies) = postProject
{B5AF91B3-64EA-44E1-84B0-D759E93758FB} = {B5AF91B3-64EA-44E1-84B0-D759E93758FB}
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -392,26 +392,6 @@ Global
{F5D665F8-AE19-4F3F-99A7-230A1E8305D2}.Release|x64.ActiveCfg = Release|Win32
{F5D665F8-AE19-4F3F-99A7-230A1E8305D2}.Release|x86.ActiveCfg = Release|Win32
{F5D665F8-AE19-4F3F-99A7-230A1E8305D2}.Release|x86.Build.0 = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|Any CPU.ActiveCfg = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|ARM.ActiveCfg = Debug|ARM
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|ARM.Build.0 = Debug|ARM
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|Mixed Platforms.Build.0 = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|Win32.ActiveCfg = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|Win32.Build.0 = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|x64.ActiveCfg = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|x86.ActiveCfg = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|x86.Build.0 = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|Any CPU.ActiveCfg = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|ARM.ActiveCfg = Release|ARM
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|ARM.Build.0 = Release|ARM
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|Mixed Platforms.ActiveCfg = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|Mixed Platforms.Build.0 = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|Win32.ActiveCfg = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|Win32.Build.0 = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|x64.ActiveCfg = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|x86.ActiveCfg = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|x86.Build.0 = Release|Win32
{08FB23E4-1517-4EDC-B682-DA238CDAA83D}.Debug|Any CPU.ActiveCfg = Debug|Win32
{08FB23E4-1517-4EDC-B682-DA238CDAA83D}.Debug|ARM.ActiveCfg = Debug|ARM
{08FB23E4-1517-4EDC-B682-DA238CDAA83D}.Debug|ARM.Build.0 = Debug|ARM
@ -432,6 +412,26 @@ Global
{08FB23E4-1517-4EDC-B682-DA238CDAA83D}.Release|x64.ActiveCfg = Release|Win32
{08FB23E4-1517-4EDC-B682-DA238CDAA83D}.Release|x86.ActiveCfg = Release|Win32
{08FB23E4-1517-4EDC-B682-DA238CDAA83D}.Release|x86.Build.0 = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|Any CPU.ActiveCfg = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|ARM.ActiveCfg = Debug|ARM
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|ARM.Build.0 = Debug|ARM
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|Mixed Platforms.Build.0 = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|Win32.ActiveCfg = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|Win32.Build.0 = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|x64.ActiveCfg = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|x86.ActiveCfg = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Debug|x86.Build.0 = Debug|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|Any CPU.ActiveCfg = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|ARM.ActiveCfg = Release|ARM
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|ARM.Build.0 = Release|ARM
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|Mixed Platforms.ActiveCfg = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|Mixed Platforms.Build.0 = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|Win32.ActiveCfg = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|Win32.Build.0 = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|x64.ActiveCfg = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|x86.ActiveCfg = Release|Win32
{271FEE84-9198-4C26-8567-4247C563B0B1}.Release|x86.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

File diff suppressed because it is too large Load Diff

View File

@ -85,6 +85,8 @@
15C90B4A18E66C2B00D69802 /* tp.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1503FAB118DA8B6C00F6518C /* tp.lua */; };
15C90B4B18E66C2F00D69802 /* url.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1503FAB218DA8B6C00F6518C /* url.lua */; };
15C90B4C18E66C3100D69802 /* url.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1503FAB218DA8B6C00F6518C /* url.lua */; };
15E66FC8192D957100C20A52 /* Sprite3DTest in Resources */ = {isa = PBXBuildFile; fileRef = 3E92EA841921A7720094CD21 /* Sprite3DTest */; };
15E66FD6192DC8C700C20A52 /* Sprite3DTest in Resources */ = {isa = PBXBuildFile; fileRef = 3E92EA841921A7720094CD21 /* Sprite3DTest */; };
1A0EE2A118CDF6DA004CD58F /* libchipmunk Mac.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 46A15FB41807A4F9005B8026 /* libchipmunk Mac.a */; };
1A0EE2A218CDF6DA004CD58F /* libcocos2dx Mac.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 46A15FB01807A4F9005B8026 /* libcocos2dx Mac.a */; };
1A0EE2A418CDF6DA004CD58F /* libCocosDenshion Mac.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 46A15FB81807A4F9005B8026 /* libCocosDenshion Mac.a */; };
@ -812,6 +814,10 @@
29080DE4191B595E0066F8DF /* UIWidgetAddNodeTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29080D89191B595E0066F8DF /* UIWidgetAddNodeTest.cpp */; };
29080DE5191B595E0066F8DF /* UIWidgetAddNodeTest_Editor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29080D8B191B595E0066F8DF /* UIWidgetAddNodeTest_Editor.cpp */; };
29080DE6191B595E0066F8DF /* UIWidgetAddNodeTest_Editor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29080D8B191B595E0066F8DF /* UIWidgetAddNodeTest_Editor.cpp */; };
3E92EA821921A1400094CD21 /* Sprite3DTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3E92EA801921A1400094CD21 /* Sprite3DTest.cpp */; };
3E92EA831921A1400094CD21 /* Sprite3DTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3E92EA801921A1400094CD21 /* Sprite3DTest.cpp */; };
3E92EA851921A7720094CD21 /* Sprite3DTest in Resources */ = {isa = PBXBuildFile; fileRef = 3E92EA841921A7720094CD21 /* Sprite3DTest */; };
3E92EA861921A7720094CD21 /* Sprite3DTest in Resources */ = {isa = PBXBuildFile; fileRef = 3E92EA841921A7720094CD21 /* Sprite3DTest */; };
3EA0FB5E191B92F100B170C8 /* cocosvideo.mp4 in Resources */ = {isa = PBXBuildFile; fileRef = 3EA0FB5D191B92F100B170C8 /* cocosvideo.mp4 */; };
3EA0FB66191B933000B170C8 /* MediaPlayer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3EA0FB65191B933000B170C8 /* MediaPlayer.framework */; };
3EA0FB72191C844400B170C8 /* UIVideoPlayerTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EA0FB70191C844400B170C8 /* UIVideoPlayerTest.cpp */; };
@ -827,6 +833,8 @@
A07A52BF1783AF210073F6A7 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A07A52B91783AE900073F6A7 /* OpenGLES.framework */; };
A07A52C01783AF250073F6A7 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A07A52B71783AE6D0073F6A7 /* UIKit.framework */; };
A07A52C31783B02C0073F6A7 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A07A52C11783B01F0073F6A7 /* AVFoundation.framework */; };
B2507B6B192589AF00FA4972 /* Shaders3D in Resources */ = {isa = PBXBuildFile; fileRef = B2507B6A192589AF00FA4972 /* Shaders3D */; };
B2507B6C192589AF00FA4972 /* Shaders3D in Resources */ = {isa = PBXBuildFile; fileRef = B2507B6A192589AF00FA4972 /* Shaders3D */; };
C08689C118D370C90093E810 /* background.caf in Resources */ = {isa = PBXBuildFile; fileRef = C08689C018D370C90093E810 /* background.caf */; };
C08689C218D370C90093E810 /* background.caf in Resources */ = {isa = PBXBuildFile; fileRef = C08689C018D370C90093E810 /* background.caf */; };
C08689C318D370C90093E810 /* background.caf in Resources */ = {isa = PBXBuildFile; fileRef = C08689C018D370C90093E810 /* background.caf */; };
@ -1849,6 +1857,9 @@
29080D8A191B595E0066F8DF /* UIWidgetAddNodeTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIWidgetAddNodeTest.h; sourceTree = "<group>"; };
29080D8B191B595E0066F8DF /* UIWidgetAddNodeTest_Editor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UIWidgetAddNodeTest_Editor.cpp; sourceTree = "<group>"; };
29080D8C191B595E0066F8DF /* UIWidgetAddNodeTest_Editor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIWidgetAddNodeTest_Editor.h; sourceTree = "<group>"; };
3E92EA801921A1400094CD21 /* Sprite3DTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Sprite3DTest.cpp; path = Sprite3DTest/Sprite3DTest.cpp; sourceTree = "<group>"; };
3E92EA811921A1400094CD21 /* Sprite3DTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Sprite3DTest.h; path = Sprite3DTest/Sprite3DTest.h; sourceTree = "<group>"; };
3E92EA841921A7720094CD21 /* Sprite3DTest */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Sprite3DTest; path = "../tests/cpp-tests/Resources/Sprite3DTest"; sourceTree = "<group>"; };
3EA0FB5D191B92F100B170C8 /* cocosvideo.mp4 */ = {isa = PBXFileReference; lastKnownFileType = file; name = cocosvideo.mp4; path = "../tests/cpp-tests/Resources/cocosvideo.mp4"; sourceTree = "<group>"; };
3EA0FB65191B933000B170C8 /* MediaPlayer.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MediaPlayer.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/MediaPlayer.framework; sourceTree = DEVELOPER_DIR; };
3EA0FB70191C844400B170C8 /* UIVideoPlayerTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UIVideoPlayerTest.cpp; sourceTree = "<group>"; };
@ -1864,6 +1875,7 @@
A07A52B91783AE900073F6A7 /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/System/Library/Frameworks/OpenGLES.framework; sourceTree = DEVELOPER_DIR; };
A07A52BB1783AEB80073F6A7 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/System/Library/Frameworks/CoreGraphics.framework; sourceTree = DEVELOPER_DIR; };
A07A52C11783B01F0073F6A7 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/System/Library/Frameworks/AVFoundation.framework; sourceTree = DEVELOPER_DIR; };
B2507B6A192589AF00FA4972 /* Shaders3D */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Shaders3D; path = "../tests/cpp-tests/Resources/Shaders3D"; sourceTree = "<group>"; };
C08689C018D370C90093E810 /* background.caf */ = {isa = PBXFileReference; lastKnownFileType = file; name = background.caf; path = "../tests/cpp-tests/Resources/background.caf"; sourceTree = "<group>"; };
D60AE43317F7FFE100757E4B /* CoreMotion.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMotion.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/Frameworks/CoreMotion.framework; sourceTree = DEVELOPER_DIR; };
EDCC747E17C455FD007B692C /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; };
@ -2258,6 +2270,7 @@
1AC35AE918CECF0C00F37B72 /* SchedulerTest */,
1AC35AEC18CECF0C00F37B72 /* ShaderTest */,
1AC35AF118CECF0C00F37B72 /* SpineTest */,
3E92EA7D1921A0C60094CD21 /* Sprite3DTest */,
1AC35AF418CECF0C00F37B72 /* SpriteTest */,
1AC35AF718CECF0C00F37B72 /* testBasic.cpp */,
1AC35AF818CECF0C00F37B72 /* testBasic.h */,
@ -3274,6 +3287,8 @@
1AC35CA818CED83500F37B72 /* Resources */ = {
isa = PBXGroup;
children = (
B2507B6A192589AF00FA4972 /* Shaders3D */,
3E92EA841921A7720094CD21 /* Sprite3DTest */,
3EA0FB5D191B92F100B170C8 /* cocosvideo.mp4 */,
1AC35CA918CED84500F37B72 /* animations */,
1AC35CAE18CED84500F37B72 /* ccb */,
@ -3790,6 +3805,15 @@
name = Frameworks;
sourceTree = "<group>";
};
3E92EA7D1921A0C60094CD21 /* Sprite3DTest */ = {
isa = PBXGroup;
children = (
3E92EA801921A1400094CD21 /* Sprite3DTest.cpp */,
3E92EA811921A1400094CD21 /* Sprite3DTest.h */,
);
name = Sprite3DTest;
sourceTree = "<group>";
};
3EA0FB6F191C844400B170C8 /* UIVideoPlayerTest */ = {
isa = PBXGroup;
children = (
@ -3998,11 +4022,6 @@
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0510;
TargetAttributes = {
1ABCA2CC18CD93580087CE3A = {
DevelopmentTeam = NQ596S94Q5;
};
};
};
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "cocos2d_tests" */;
compatibilityVersion = "Xcode 3.2";
@ -4264,6 +4283,7 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
15E66FD6192DC8C700C20A52 /* Sprite3DTest in Resources */,
1AC35DC318CEE65100F37B72 /* Misc in Resources */,
1AC35DC618CEE65100F37B72 /* Shaders in Resources */,
1AC35DBB18CEE65100F37B72 /* components in Resources */,
@ -4332,6 +4352,7 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
15E66FC8192D957100C20A52 /* Sprite3DTest in Resources */,
15C90B4418E66C1800D69802 /* mime.lua in Resources */,
15C90B4C18E66C3100D69802 /* url.lua in Resources */,
1AC35DD618CEE65200F37B72 /* Misc in Resources */,
@ -4415,6 +4436,7 @@
1AC35D0418CED84500F37B72 /* Shaders in Resources */,
1AC35CD818CED84500F37B72 /* CocosBuilderExample.ccbresourcelog in Resources */,
1AC35CDC18CED84500F37B72 /* commonly_used_words.txt in Resources */,
B2507B6B192589AF00FA4972 /* Shaders3D in Resources */,
1AC35D0618CED84500F37B72 /* spine in Resources */,
1AC35CE818CED84500F37B72 /* extensions in Resources */,
1AC35CDE18CED84500F37B72 /* components in Resources */,
@ -4433,6 +4455,7 @@
1AC35D0018CED84500F37B72 /* pew-pew-lei.wav in Resources */,
1AC35CD018CED84500F37B72 /* background.mp3 in Resources */,
1AC35CD618CED84500F37B72 /* CocosBuilderExample.ccbproj in Resources */,
3E92EA851921A7720094CD21 /* Sprite3DTest in Resources */,
1AC35CA318CECF1E00F37B72 /* InfoPlist.strings in Resources */,
1AC35CA418CECF1E00F37B72 /* MainMenu.xib in Resources */,
1AC35CD418CED84500F37B72 /* ccb in Resources */,
@ -4471,6 +4494,7 @@
1AC35CD318CED84500F37B72 /* background.ogg in Resources */,
1AC35CCB18CED84500F37B72 /* animations in Resources */,
3EA0FB5E191B92F100B170C8 /* cocosvideo.mp4 in Resources */,
3E92EA861921A7720094CD21 /* Sprite3DTest in Resources */,
1AC35C8C18CECF1400F37B72 /* Icon-114.png in Resources */,
1AC35CF118CED84500F37B72 /* hd in Resources */,
1AC35C9318CECF1400F37B72 /* Icon-57.png in Resources */,
@ -4486,6 +4510,7 @@
1AC35C9418CECF1400F37B72 /* Icon-58.png in Resources */,
1AC35CD118CED84500F37B72 /* background.mp3 in Resources */,
1AC35CD918CED84500F37B72 /* CocosBuilderExample.ccbresourcelog in Resources */,
B2507B6C192589AF00FA4972 /* Shaders3D in Resources */,
1AC35CED18CED84500F37B72 /* fonts in Resources */,
1AC35CD718CED84500F37B72 /* CocosBuilderExample.ccbproj in Resources */,
1AC35CDD18CED84500F37B72 /* commonly_used_words.txt in Resources */,
@ -4574,6 +4599,7 @@
1AC35BE118CECF0C00F37B72 /* CCControlButtonTest.cpp in Sources */,
1AC35BEB18CECF0C00F37B72 /* CCControlSliderTest.cpp in Sources */,
1AC35C4D18CECF0C00F37B72 /* SpineTest.cpp in Sources */,
3E92EA821921A1400094CD21 /* Sprite3DTest.cpp in Sources */,
1AC35C1D18CECF0C00F37B72 /* NewRendererTest.cpp in Sources */,
1AC35B6718CECF0C00F37B72 /* AnimationsTestLayer.cpp in Sources */,
29080DB7191B595E0066F8DF /* UIListViewTest_Editor.cpp in Sources */,
@ -4906,6 +4932,7 @@
1AC35B5418CECF0C00F37B72 /* CocosDenshionTest.cpp in Sources */,
1AC35B8018CECF0C00F37B72 /* ProjectileController.cpp in Sources */,
1AC35C2618CECF0C00F37B72 /* PerformanceAllocTest.cpp in Sources */,
3E92EA831921A1400094CD21 /* Sprite3DTest.cpp in Sources */,
1AC35B5A18CECF0C00F37B72 /* controller.cpp in Sources */,
1AC35C2A18CECF0C00F37B72 /* PerformanceEventDispatcherTest.cpp in Sources */,
1AC35BEA18CECF0C00F37B72 /* CCControlSceneManager.cpp in Sources */,
@ -5221,26 +5248,28 @@
1A0EE2B018CDF6DA004CD58F /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
CC_TARGET_OS_MAC,
);
INFOPLIST_FILE = "$(SRCROOT)/../tests/cpp-empty-test/proj.mac/Info.plist";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/2d/platform/mac $(SRCROOT)/../external/glfw3/include/mac";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/platform/mac $(SRCROOT)/../external/glfw3/include/mac";
};
name = Debug;
};
1A0EE2B118CDF6DA004CD58F /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
CC_TARGET_OS_MAC,
);
INFOPLIST_FILE = "$(SRCROOT)/../tests/cpp-empty-test/proj.mac/Info.plist";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/2d/platform/mac $(SRCROOT)/../external/glfw3/include/mac";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/platform/mac $(SRCROOT)/../external/glfw3/include/mac";
VALIDATE_PRODUCT = YES;
};
name = Release;
@ -5248,6 +5277,7 @@
1A0EE31218CDF733004CD58F /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
CC_TARGET_OS_MAC,
@ -5259,13 +5289,14 @@
"-image_base",
100000000,
);
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/2d/platform/mac $(SRCROOT)/../external/glfw3/include/mac $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/platform/mac $(SRCROOT)/../external/glfw3/include/mac $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
};
name = Debug;
};
1A0EE31318CDF733004CD58F /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
CC_TARGET_OS_MAC,
@ -5277,7 +5308,7 @@
"-image_base",
100000000,
);
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/2d/platform/mac $(SRCROOT)/../external/glfw3/include/mac $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/platform/mac $(SRCROOT)/../external/glfw3/include/mac $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
VALIDATE_PRODUCT = YES;
};
name = Release;
@ -5294,7 +5325,7 @@
IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/2d/platform/ios $(SRCROOT)/../cocos/2d/platform/ios/Simulation $(SRCROOT)/../external/curl/include/ios";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/platform/ios $(SRCROOT)/../cocos/platform/ios/Simulation $(SRCROOT)/../external/curl/include/ios";
};
name = Debug;
};
@ -5310,7 +5341,7 @@
IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/2d/platform/ios $(SRCROOT)/../cocos/2d/platform/ios/Simulation $(SRCROOT)/../external/curl/include/ios";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/platform/ios $(SRCROOT)/../cocos/platform/ios/Simulation $(SRCROOT)/../external/curl/include/ios";
VALIDATE_PRODUCT = YES;
};
name = Release;
@ -5327,7 +5358,7 @@
IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/2d/platform/ios $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/platform/ios $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
};
name = Debug;
};
@ -5343,7 +5374,7 @@
IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/2d/platform/ios $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/platform/ios $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
VALIDATE_PRODUCT = YES;
};
name = Release;
@ -5351,6 +5382,7 @@
1ABCA2B318CD91520087CE3A /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
CC_TARGET_OS_MAC,
@ -5362,13 +5394,14 @@
"-image_base",
100000000,
);
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/2d/platform/mac $(SRCROOT)/../external/glfw3/include/mac $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/platform/mac $(SRCROOT)/../external/glfw3/include/mac $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
};
name = Debug;
};
1ABCA2B418CD91520087CE3A /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
CC_TARGET_OS_MAC,
@ -5380,7 +5413,7 @@
"-image_base",
100000000,
);
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/2d/platform/mac $(SRCROOT)/../external/glfw3/include/mac $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/platform/mac $(SRCROOT)/../external/glfw3/include/mac $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
VALIDATE_PRODUCT = YES;
};
name = Release;
@ -5389,17 +5422,15 @@
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
CC_TARGET_OS_IPHONE,
);
INFOPLIST_FILE = "$(SRCROOT)/../tests/lua-tests/project/proj.ios_mac/ios/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
PROVISIONING_PROFILE = "";
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/2d/platform/ios $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/platform/ios $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
};
name = Debug;
};
@ -5407,17 +5438,15 @@
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
CC_TARGET_OS_IPHONE,
);
INFOPLIST_FILE = "$(SRCROOT)/../tests/lua-tests/project/proj.ios_mac/ios/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
PROVISIONING_PROFILE = "";
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/2d/platform/ios $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/platform/ios $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto";
VALIDATE_PRODUCT = YES;
};
name = Release;
@ -5425,24 +5454,26 @@
1D6058940D05DD3E006BFB54 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
CC_TARGET_OS_MAC,
);
INFOPLIST_FILE = "$(SRCROOT)/../tests/cpp-tests/proj.mac/Info.plist";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/2d/platform/mac $(SRCROOT)/../external/glfw3/include/mac";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/platform/mac $(SRCROOT)/../external/glfw3/include/mac";
};
name = Debug;
};
1D6058950D05DD3E006BFB54 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
CC_TARGET_OS_MAC,
);
INFOPLIST_FILE = "$(SRCROOT)/../tests/cpp-tests/proj.mac/Info.plist";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/2d/platform/mac $(SRCROOT)/../external/glfw3/include/mac";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/platform/mac $(SRCROOT)/../external/glfw3/include/mac";
VALIDATE_PRODUCT = YES;
};
name = Release;
@ -5489,7 +5520,7 @@
IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/2d/platform/ios $(SRCROOT)/../cocos/2d/platform/ios/Simulation $(SRCROOT)/../external/curl/include/ios";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/platform/ios $(SRCROOT)/../cocos/platform/ios/Simulation $(SRCROOT)/../external/curl/include/ios";
};
name = Debug;
};
@ -5505,7 +5536,7 @@
IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/2d/platform/ios $(SRCROOT)/../cocos/2d/platform/ios/Simulation $(SRCROOT)/../external/curl/include/ios";
USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../cocos/platform/ios $(SRCROOT)/../cocos/platform/ios/Simulation $(SRCROOT)/../external/curl/include/ios";
VALIDATE_PRODUCT = YES;
};
name = Release;

View File

@ -215,7 +215,7 @@ bool Follow::initWithTarget(Node *followedNode, const Rect& rect/* = Rect::ZERO*
_boundaryFullyCovered = false;
Size winSize = Director::getInstance()->getWinSize();
_fullScreenSize = Vector2(winSize.width, winSize.height);
_fullScreenSize = Vec2(winSize.width, winSize.height);
_halfScreenSize = _fullScreenSize * 0.5f;
if (_boundarySet)
@ -257,9 +257,9 @@ void Follow::step(float dt)
if(_boundaryFullyCovered)
return;
Vector2 tempPos = _halfScreenSize - _followedNode->getPosition();
Vec2 tempPos = _halfScreenSize - _followedNode->getPosition();
_target->setPosition(Vector2(clampf(tempPos.x, _leftBoundary, _rightBoundary),
_target->setPosition(Vec2(clampf(tempPos.x, _leftBoundary, _rightBoundary),
clampf(tempPos.y, _bottomBoundary, _topBoundary)));
}
else

View File

@ -277,8 +277,8 @@ protected:
bool _boundaryFullyCovered;
// fast access to the screen dimensions
Vector2 _halfScreenSize;
Vector2 _fullScreenSize;
Vec2 _halfScreenSize;
Vec2 _fullScreenSize;
// world boundaries
float _leftBoundary;

View File

@ -60,12 +60,12 @@ ActionCamera * ActionCamera::reverse() const
void ActionCamera::restore()
{
_center = Vector3(0, 0, 0);
_eye = Vector3(0, 0, FLT_EPSILON);
_up = Vector3(0, 1, 0);
_center = Vec3(0, 0, 0);
_eye = Vec3(0, 0, FLT_EPSILON);
_up = Vec3(0, 1, 0);
}
void ActionCamera::setEye(const Vector3& eye)
void ActionCamera::setEye(const Vec3& eye)
{
_eye = eye;
updateTransform();
@ -73,17 +73,17 @@ void ActionCamera::setEye(const Vector3& eye)
void ActionCamera::setEye(float x, float y, float z)
{
_eye = Vector3(x, y, z);
_eye = Vec3(x, y, z);
updateTransform();
}
void ActionCamera::setCenter(const Vector3& center)
void ActionCamera::setCenter(const Vec3& center)
{
_center = center;
updateTransform();
}
void ActionCamera::setUp(const Vector3& up)
void ActionCamera::setUp(const Vec3& up)
{
_up = up;
updateTransform();
@ -91,18 +91,18 @@ void ActionCamera::setUp(const Vector3& up)
void ActionCamera::updateTransform()
{
Matrix lookupMatrix;
Matrix::createLookAt(_eye.x, _eye.y, _eye.z, _center.x, _center.y, _center.z, _up.x, _up.y, _up.z, &lookupMatrix);
Mat4 lookupMatrix;
Mat4::createLookAt(_eye.x, _eye.y, _eye.z, _center.x, _center.y, _center.z, _up.x, _up.y, _up.z, &lookupMatrix);
Vector2 anchorPoint = _target->getAnchorPointInPoints();
Vec2 anchorPoint = _target->getAnchorPointInPoints();
bool needsTranslation = !anchorPoint.equals(Vector2::ZERO);
bool needsTranslation = !anchorPoint.equals(Vec2::ZERO);
Matrix mv = Matrix::IDENTITY;
Mat4 mv = Mat4::IDENTITY;
if(needsTranslation) {
Matrix t;
Matrix::createTranslation(anchorPoint.x, anchorPoint.y, 0, &t);
Mat4 t;
Mat4::createTranslation(anchorPoint.x, anchorPoint.y, 0, &t);
mv = mv * t;
}
@ -110,8 +110,8 @@ void ActionCamera::updateTransform()
if(needsTranslation) {
Matrix t;
Matrix::createTranslation(-anchorPoint.x, -anchorPoint.y, 0, &t);
Mat4 t;
Mat4::createTranslation(-anchorPoint.x, -anchorPoint.y, 0, &t);
mv = mv * t;
}

View File

@ -63,27 +63,27 @@ public:
virtual ActionCamera *clone() const override;
/* sets the Eye value of the Camera */
void setEye(const Vector3 &eye);
void setEye(const Vec3 &eye);
void setEye(float x, float y, float z);
/* returns the Eye value of the Camera */
const Vector3& getEye() const { return _eye; }
const Vec3& getEye() const { return _eye; }
/* sets the Center value of the Camera */
void setCenter(const Vector3 &center);
void setCenter(const Vec3 &center);
/* returns the Center value of the Camera */
const Vector3& getCenter() const { return _center; }
const Vec3& getCenter() const { return _center; }
/* sets the Up value of the Camera */
void setUp(const Vector3 &up);
void setUp(const Vec3 &up);
/* Returns the Up value of the Camera */
const Vector3& getUp() const { return _up; }
const Vec3& getUp() const { return _up; }
protected:
void restore();
void updateTransform();
Vector3 _center;
Vector3 _eye;
Vector3 _up;
Vec3 _center;
Vec3 _eye;
Vec3 _up;
};
/**

View File

@ -62,18 +62,18 @@ PointArray* PointArray::create(ssize_t capacity)
bool PointArray::initWithCapacity(ssize_t capacity)
{
_controlPoints = new vector<Vector2*>();
_controlPoints = new vector<Vec2*>();
return true;
}
PointArray* PointArray::clone() const
{
vector<Vector2*> *newArray = new vector<Vector2*>();
vector<Vector2*>::iterator iter;
vector<Vec2*> *newArray = new vector<Vec2*>();
vector<Vec2*>::iterator iter;
for (iter = _controlPoints->begin(); iter != _controlPoints->end(); ++iter)
{
newArray->push_back(new Vector2((*iter)->x, (*iter)->y));
newArray->push_back(new Vec2((*iter)->x, (*iter)->y));
}
PointArray *points = new PointArray();
@ -88,7 +88,7 @@ PointArray::~PointArray()
{
CCLOGINFO("deallocing PointArray: %p", this);
vector<Vector2*>::iterator iter;
vector<Vec2*>::iterator iter;
for (iter = _controlPoints->begin(); iter != _controlPoints->end(); ++iter)
{
delete *iter;
@ -98,17 +98,17 @@ PointArray::~PointArray()
PointArray::PointArray() :_controlPoints(nullptr){}
const std::vector<Vector2*>* PointArray::getControlPoints() const
const std::vector<Vec2*>* PointArray::getControlPoints() const
{
return _controlPoints;
}
void PointArray::setControlPoints(vector<Vector2*> *controlPoints)
void PointArray::setControlPoints(vector<Vec2*> *controlPoints)
{
CCASSERT(controlPoints != nullptr, "control points should not be nullptr");
// delete old points
vector<Vector2*>::iterator iter;
vector<Vec2*>::iterator iter;
for (iter = _controlPoints->begin(); iter != _controlPoints->end(); ++iter)
{
delete *iter;
@ -118,35 +118,35 @@ void PointArray::setControlPoints(vector<Vector2*> *controlPoints)
_controlPoints = controlPoints;
}
void PointArray::addControlPoint(Vector2 controlPoint)
void PointArray::addControlPoint(Vec2 controlPoint)
{
_controlPoints->push_back(new Vector2(controlPoint.x, controlPoint.y));
_controlPoints->push_back(new Vec2(controlPoint.x, controlPoint.y));
}
void PointArray::insertControlPoint(Vector2 &controlPoint, ssize_t index)
void PointArray::insertControlPoint(Vec2 &controlPoint, ssize_t index)
{
Vector2 *temp = new Vector2(controlPoint.x, controlPoint.y);
Vec2 *temp = new Vec2(controlPoint.x, controlPoint.y);
_controlPoints->insert(_controlPoints->begin() + index, temp);
}
Vector2 PointArray::getControlPointAtIndex(ssize_t index)
Vec2 PointArray::getControlPointAtIndex(ssize_t index)
{
index = MIN(static_cast<ssize_t>(_controlPoints->size())-1, MAX(index, 0));
return *(_controlPoints->at(index));
}
void PointArray::replaceControlPoint(cocos2d::Vector2 &controlPoint, ssize_t index)
void PointArray::replaceControlPoint(cocos2d::Vec2 &controlPoint, ssize_t index)
{
Vector2 *temp = _controlPoints->at(index);
Vec2 *temp = _controlPoints->at(index);
temp->x = controlPoint.x;
temp->y = controlPoint.y;
}
void PointArray::removeControlPointAtIndex(ssize_t index)
{
vector<Vector2*>::iterator iter = _controlPoints->begin() + index;
Vector2* removedPoint = *iter;
vector<Vec2*>::iterator iter = _controlPoints->begin() + index;
Vec2* removedPoint = *iter;
_controlPoints->erase(iter);
delete removedPoint;
}
@ -158,13 +158,13 @@ ssize_t PointArray::count() const
PointArray* PointArray::reverse() const
{
vector<Vector2*> *newArray = new vector<Vector2*>();
vector<Vector2*>::reverse_iterator iter;
Vector2 *point = nullptr;
vector<Vec2*> *newArray = new vector<Vec2*>();
vector<Vec2*>::reverse_iterator iter;
Vec2 *point = nullptr;
for (iter = _controlPoints->rbegin(); iter != _controlPoints->rend(); ++iter)
{
point = *iter;
newArray->push_back(new Vector2(point->x, point->y));
newArray->push_back(new Vec2(point->x, point->y));
}
PointArray *config = PointArray::create(0);
config->setControlPoints(newArray);
@ -175,8 +175,8 @@ PointArray* PointArray::reverse() const
void PointArray::reverseInline()
{
size_t l = _controlPoints->size();
Vector2 *p1 = nullptr;
Vector2 *p2 = nullptr;
Vec2 *p1 = nullptr;
Vec2 *p2 = nullptr;
float x, y;
for (size_t i = 0; i < l/2; ++i)
{
@ -195,7 +195,7 @@ void PointArray::reverseInline()
}
// CatmullRom Spline formula:
Vector2 ccCardinalSplineAt(Vector2 &p0, Vector2 &p1, Vector2 &p2, Vector2 &p3, float tension, float t)
Vec2 ccCardinalSplineAt(Vec2 &p0, Vec2 &p1, Vec2 &p2, Vec2 &p3, float tension, float t)
{
float t2 = t * t;
float t3 = t2 * t;
@ -213,7 +213,7 @@ Vector2 ccCardinalSplineAt(Vector2 &p0, Vector2 &p1, Vector2 &p2, Vector2 &p3, f
float x = (p0.x*b1 + p1.x*b2 + p2.x*b3 + p3.x*b4);
float y = (p0.y*b1 + p1.y*b2 + p2.y*b3 + p3.y*b4);
return Vector2(x,y);
return Vec2(x,y);
}
/* Implementation of CardinalSplineTo
@ -274,7 +274,7 @@ void CardinalSplineTo::startWithTarget(cocos2d::Node *target)
_deltaT = (float) 1 / (_points->count() - 1);
_previousPosition = target->getPosition();
_accumulatedDiff = Vector2::ZERO;
_accumulatedDiff = Vec2::ZERO;
}
CardinalSplineTo* CardinalSplineTo::clone() const
@ -307,17 +307,17 @@ void CardinalSplineTo::update(float time)
}
// Interpolate
Vector2 pp0 = _points->getControlPointAtIndex(p-1);
Vector2 pp1 = _points->getControlPointAtIndex(p+0);
Vector2 pp2 = _points->getControlPointAtIndex(p+1);
Vector2 pp3 = _points->getControlPointAtIndex(p+2);
Vec2 pp0 = _points->getControlPointAtIndex(p-1);
Vec2 pp1 = _points->getControlPointAtIndex(p+0);
Vec2 pp2 = _points->getControlPointAtIndex(p+1);
Vec2 pp3 = _points->getControlPointAtIndex(p+2);
Vector2 newPos = ccCardinalSplineAt(pp0, pp1, pp2, pp3, _tension, lt);
Vec2 newPos = ccCardinalSplineAt(pp0, pp1, pp2, pp3, _tension, lt);
#if CC_ENABLE_STACKABLE_ACTIONS
// Support for stacked actions
Node *node = _target;
Vector2 diff = node->getPosition() - _previousPosition;
Vec2 diff = node->getPosition() - _previousPosition;
if( diff.x !=0 || diff.y != 0 ) {
_accumulatedDiff = _accumulatedDiff + diff;
newPos = newPos + _accumulatedDiff;
@ -327,7 +327,7 @@ void CardinalSplineTo::update(float time)
this->updatePosition(newPos);
}
void CardinalSplineTo::updatePosition(cocos2d::Vector2 &newPos)
void CardinalSplineTo::updatePosition(cocos2d::Vec2 &newPos)
{
_target->setPosition(newPos);
_previousPosition = newPos;
@ -365,9 +365,9 @@ CardinalSplineBy::CardinalSplineBy() : _startPosition(0,0)
{
}
void CardinalSplineBy::updatePosition(cocos2d::Vector2 &newPos)
void CardinalSplineBy::updatePosition(cocos2d::Vec2 &newPos)
{
Vector2 p = newPos + _startPosition;
Vec2 p = newPos + _startPosition;
_target->setPosition(p);
_previousPosition = p;
}
@ -379,11 +379,11 @@ CardinalSplineBy* CardinalSplineBy::reverse() const
//
// convert "absolutes" to "diffs"
//
Vector2 p = copyConfig->getControlPointAtIndex(0);
Vec2 p = copyConfig->getControlPointAtIndex(0);
for (ssize_t i = 1; i < copyConfig->count(); ++i)
{
Vector2 current = copyConfig->getControlPointAtIndex(i);
Vector2 diff = current - p;
Vec2 current = copyConfig->getControlPointAtIndex(i);
Vec2 diff = current - p;
copyConfig->replaceControlPoint(diff, i);
p = current;
@ -404,9 +404,9 @@ CardinalSplineBy* CardinalSplineBy::reverse() const
for (ssize_t i = 1; i < pReverse->count(); ++i)
{
Vector2 current = pReverse->getControlPointAtIndex(i);
Vec2 current = pReverse->getControlPointAtIndex(i);
current = -current;
Vector2 abs = current + p;
Vec2 abs = current + p;
pReverse->replaceControlPoint(abs, i);
p = abs;
@ -524,11 +524,11 @@ CatmullRomBy* CatmullRomBy::reverse() const
//
// convert "absolutes" to "diffs"
//
Vector2 p = copyConfig->getControlPointAtIndex(0);
Vec2 p = copyConfig->getControlPointAtIndex(0);
for (ssize_t i = 1; i < copyConfig->count(); ++i)
{
Vector2 current = copyConfig->getControlPointAtIndex(i);
Vector2 diff = current - p;
Vec2 current = copyConfig->getControlPointAtIndex(i);
Vec2 diff = current - p;
copyConfig->replaceControlPoint(diff, i);
p = current;
@ -549,9 +549,9 @@ CatmullRomBy* CatmullRomBy::reverse() const
for (ssize_t i = 1; i < reverse->count(); ++i)
{
Vector2 current = reverse->getControlPointAtIndex(i);
Vec2 current = reverse->getControlPointAtIndex(i);
current = -current;
Vector2 abs = current + p;
Vec2 abs = current + p;
reverse->replaceControlPoint(abs, i);
p = abs;

View File

@ -80,22 +80,22 @@ public:
/** appends a control point
* @js NA
*/
void addControlPoint(Vector2 controlPoint);
void addControlPoint(Vec2 controlPoint);
/** inserts a controlPoint at index
* @js NA
*/
void insertControlPoint(Vector2 &controlPoint, ssize_t index);
void insertControlPoint(Vec2 &controlPoint, ssize_t index);
/** replaces an existing controlPoint at index
* @js NA
*/
void replaceControlPoint(Vector2 &controlPoint, ssize_t index);
void replaceControlPoint(Vec2 &controlPoint, ssize_t index);
/** get the value of a controlPoint at a given index
* @js NA
*/
Vector2 getControlPointAtIndex(ssize_t index);
Vec2 getControlPointAtIndex(ssize_t index);
/** deletes a control point at a given index
* @js NA
@ -124,14 +124,14 @@ public:
/**
* @js NA
*/
const std::vector<Vector2*>* getControlPoints() const;
const std::vector<Vec2*>* getControlPoints() const;
/**
* @js NA
*/
void setControlPoints(std::vector<Vector2*> *controlPoints);
void setControlPoints(std::vector<Vec2*> *controlPoints);
private:
/** Array that contains the control points */
std::vector<Vector2*> *_controlPoints;
std::vector<Vec2*> *_controlPoints;
};
/** Cardinal Spline path.
@ -164,7 +164,7 @@ public:
/** initializes the action with a duration and an array of points */
bool initWithDuration(float duration, PointArray* points, float tension);
virtual void updatePosition(Vector2 &newPos);
virtual void updatePosition(Vec2 &newPos);
inline PointArray* getPoints() { return _points; }
/**
@ -189,8 +189,8 @@ protected:
PointArray *_points;
float _deltaT;
float _tension;
Vector2 _previousPosition;
Vector2 _accumulatedDiff;
Vec2 _previousPosition;
Vec2 _accumulatedDiff;
};
/** Cardinal Spline path.
@ -214,12 +214,12 @@ public:
// Overrides
virtual void startWithTarget(Node *target) override;
virtual void updatePosition(Vector2 &newPos) override;
virtual void updatePosition(Vec2 &newPos) override;
virtual CardinalSplineBy *clone() const override;
virtual CardinalSplineBy* reverse() const override;
protected:
Vector2 _startPosition;
Vec2 _startPosition;
};
/** An action that moves the target with a CatmullRom curve to a destination point.
@ -275,7 +275,7 @@ public:
};
/** Returns the Cardinal Spline position for a given set of control points, tension and time */
extern CC_DLL Vector2 ccCardinalSplineAt(Vector2 &p0, Vector2 &p1, Vector2 &p2, Vector2 &p3, float tension, float t);
extern CC_DLL Vec2 ccCardinalSplineAt(Vec2 &p0, Vec2 &p1, Vec2 &p2, Vec2 &p3, float tension, float t);
// end of actions group
/// @}

View File

@ -23,10 +23,12 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
****************************************************************************/
#include "2d/CCActionGrid.h"
#include "base/CCDirector.h"
#include "2d/CCGrid.h"
#include "2d/CCNodeGrid.h"
#include "base/CCDirector.h"
NS_CC_BEGIN
// implementation of GridAction
@ -103,19 +105,19 @@ GridBase* Grid3DAction::getGrid()
return Grid3D::create(_gridSize);
}
Vector3 Grid3DAction::getVertex(const Vector2& position) const
Vec3 Grid3DAction::getVertex(const Vec2& position) const
{
Grid3D *g = (Grid3D*)_gridNodeTarget->getGrid();
return g->getVertex(position);
}
Vector3 Grid3DAction::getOriginalVertex(const Vector2& position) const
Vec3 Grid3DAction::getOriginalVertex(const Vec2& position) const
{
Grid3D *g = (Grid3D*)_gridNodeTarget->getGrid();
return g->getOriginalVertex(position);
}
void Grid3DAction::setVertex(const Vector2& position, const Vector3& vertex)
void Grid3DAction::setVertex(const Vec2& position, const Vec3& vertex)
{
Grid3D *g = (Grid3D*)_gridNodeTarget->getGrid();
g->setVertex(position, vertex);
@ -128,19 +130,19 @@ GridBase* TiledGrid3DAction::getGrid(void)
return TiledGrid3D::create(_gridSize);
}
Quad3 TiledGrid3DAction::getTile(const Vector2& pos) const
Quad3 TiledGrid3DAction::getTile(const Vec2& pos) const
{
TiledGrid3D *g = (TiledGrid3D*)_gridNodeTarget->getGrid();
return g->getTile(pos);
}
Quad3 TiledGrid3DAction::getOriginalTile(const Vector2& pos) const
Quad3 TiledGrid3DAction::getOriginalTile(const Vec2& pos) const
{
TiledGrid3D *g = (TiledGrid3D*)_gridNodeTarget->getGrid();
return g->getOriginalTile(pos);
}
void TiledGrid3DAction::setTile(const Vector2& pos, const Quad3& coords)
void TiledGrid3DAction::setTile(const Vec2& pos, const Quad3& coords)
{
TiledGrid3D *g = (TiledGrid3D*)_gridNodeTarget->getGrid();
return g->setTile(pos, coords);

View File

@ -82,31 +82,31 @@ public:
* @js NA
* @lua NA
*/
Vector3 getVertex(const Vector2& position) const;
Vec3 getVertex(const Vec2& position) const;
/** @deprecated Use getVertex() instead
* @js NA
* @lua NA
*/
CC_DEPRECATED_ATTRIBUTE inline Vector3 vertex(const Vector2& position) { return getVertex(position); }
CC_DEPRECATED_ATTRIBUTE inline Vec3 vertex(const Vec2& position) { return getVertex(position); }
/** returns the non-transformed vertex than belongs to certain position in the grid
* @js NA
* @lua NA
*/
Vector3 getOriginalVertex(const Vector2& position) const;
Vec3 getOriginalVertex(const Vec2& position) const;
/** @deprecated Use getOriginalVertex() instead
* @js NA
* @lua NA
*/
CC_DEPRECATED_ATTRIBUTE inline Vector3 originalVertex(const Vector2& position) { return getOriginalVertex(position); }
CC_DEPRECATED_ATTRIBUTE inline Vec3 originalVertex(const Vec2& position) { return getOriginalVertex(position); }
/** sets a new vertex to a certain position of the grid
* @js NA
* @lua NA
*/
void setVertex(const Vector2& position, const Vector3& vertex);
void setVertex(const Vec2& position, const Vec3& vertex);
// Overrides
virtual Grid3DAction * clone() const override = 0;
@ -126,31 +126,31 @@ public:
* @js NA
* @lua NA
*/
Quad3 getTile(const Vector2& position) const;
Quad3 getTile(const Vec2& position) const;
/** @deprecated Use getTile() instead
* @js NA
* @lua NA
*/
CC_DEPRECATED_ATTRIBUTE Quad3 tile(const Vector2& position) { return getTile(position); }
CC_DEPRECATED_ATTRIBUTE Quad3 tile(const Vec2& position) { return getTile(position); }
/** returns the non-transformed tile that belongs to a certain position of the grid
* @js NA
* @lua NA
*/
Quad3 getOriginalTile(const Vector2& position) const;
Quad3 getOriginalTile(const Vec2& position) const;
/** @deprecated Use getOriginalTile() instead
* @js NA
* @lua NA
*/
CC_DEPRECATED_ATTRIBUTE Quad3 originalTile(const Vector2& position) { return getOriginalTile(position); }
CC_DEPRECATED_ATTRIBUTE Quad3 originalTile(const Vec2& position) { return getOriginalTile(position); }
/** sets a new tile to a certain position of the grid
* @js NA
* @lua NA
*/
void setTile(const Vector2& position, const Quad3& coords);
void setTile(const Vec2& position, const Quad3& coords);
/** returns the grid */
virtual GridBase* getGrid();

View File

@ -79,10 +79,10 @@ void Waves3D::update(float time)
{
for (j = 0; j < _gridSize.height + 1; ++j)
{
Vector3 v = getOriginalVertex(Vector2(i ,j));
Vec3 v = getOriginalVertex(Vec2(i ,j));
v.z += (sinf((float)M_PI * time * _waves * 2 + (v.y+v.x) * 0.01f) * _amplitude * _amplitudeRate);
//CCLOG("v.z offset is %f\n", (sinf((float)M_PI * time * _waves * 2 + (v.y+v.x) * .01f) * _amplitude * _amplitudeRate));
setVertex(Vector2(i, j), v);
setVertex(Vec2(i, j), v);
}
}
}
@ -142,32 +142,32 @@ void FlipX3D::update(float time)
angle = angle / 2.0f; // x calculates degrees from 0 to 90
float mx = cosf(angle);
Vector3 v0, v1, v, diff;
Vec3 v0, v1, v, diff;
v0 = getOriginalVertex(Vector2(1, 1));
v1 = getOriginalVertex(Vector2(0, 0));
v0 = getOriginalVertex(Vec2(1, 1));
v1 = getOriginalVertex(Vec2(0, 0));
float x0 = v0.x;
float x1 = v1.x;
float x;
Vector2 a, b, c, d;
Vec2 a, b, c, d;
if ( x0 > x1 )
{
// Normal Grid
a = Vector2(0,0);
b = Vector2(0,1);
c = Vector2(1,0);
d = Vector2(1,1);
a = Vec2(0,0);
b = Vec2(0,1);
c = Vec2(1,0);
d = Vec2(1,1);
x = x0;
}
else
{
// Reversed Grid
c = Vector2(0,0);
d = Vector2(0,1);
a = Vector2(1,0);
b = Vector2(1,1);
c = Vec2(0,0);
d = Vec2(0,1);
a = Vec2(1,0);
b = Vec2(1,1);
x = x1;
}
@ -236,32 +236,32 @@ void FlipY3D::update(float time)
angle = angle / 2.0f; // x calculates degrees from 0 to 90
float my = cosf(angle);
Vector3 v0, v1, v, diff;
Vec3 v0, v1, v, diff;
v0 = getOriginalVertex(Vector2(1, 1));
v1 = getOriginalVertex(Vector2(0, 0));
v0 = getOriginalVertex(Vec2(1, 1));
v1 = getOriginalVertex(Vec2(0, 0));
float y0 = v0.y;
float y1 = v1.y;
float y;
Vector2 a, b, c, d;
Vec2 a, b, c, d;
if (y0 > y1)
{
// Normal Grid
a = Vector2(0,0);
b = Vector2(0,1);
c = Vector2(1,0);
d = Vector2(1,1);
a = Vec2(0,0);
b = Vec2(0,1);
c = Vec2(1,0);
d = Vec2(1,1);
y = y0;
}
else
{
// Reversed Grid
b = Vector2(0,0);
a = Vector2(0,1);
d = Vector2(1,0);
c = Vector2(1,1);
b = Vec2(0,0);
a = Vec2(0,1);
d = Vec2(1,0);
c = Vec2(1,1);
y = y1;
}
@ -296,7 +296,7 @@ void FlipY3D::update(float time)
// implementation of Lens3D
Lens3D* Lens3D::create(float duration, const Size& gridSize, const Vector2& position, float radius)
Lens3D* Lens3D::create(float duration, const Size& gridSize, const Vec2& position, float radius)
{
Lens3D *action = new Lens3D();
@ -315,11 +315,11 @@ Lens3D* Lens3D::create(float duration, const Size& gridSize, const Vector2& posi
return action;
}
bool Lens3D::initWithDuration(float duration, const Size& gridSize, const Vector2& position, float radius)
bool Lens3D::initWithDuration(float duration, const Size& gridSize, const Vec2& position, float radius)
{
if (Grid3DAction::initWithDuration(duration, gridSize))
{
_position = Vector2(-1, -1);
_position = Vec2(-1, -1);
setPosition(position);
_radius = radius;
_lensEffect = 0.7f;
@ -341,7 +341,7 @@ Lens3D* Lens3D::clone() const
return a;
}
void Lens3D::setPosition(const Vector2& pos)
void Lens3D::setPosition(const Vec2& pos)
{
if( !pos.equals(_position))
{
@ -361,8 +361,8 @@ void Lens3D::update(float time)
{
for (j = 0; j < _gridSize.height + 1; ++j)
{
Vector3 v = getOriginalVertex(Vector2(i, j));
Vector2 vect = _position - Vector2(v.x, v.y);
Vec3 v = getOriginalVertex(Vec2(i, j));
Vec2 vect = _position - Vec2(v.x, v.y);
float r = vect.getLength();
if (r < _radius)
@ -380,12 +380,12 @@ void Lens3D::update(float time)
if (vect.getLength() > 0)
{
vect.normalize();
Vector2 new_vect = vect * new_r;
Vec2 new_vect = vect * new_r;
v.z += (_concave ? -1.0f : 1.0f) * new_vect.getLength() * _lensEffect;
}
}
setVertex(Vector2(i, j), v);
setVertex(Vec2(i, j), v);
}
}
@ -395,7 +395,7 @@ void Lens3D::update(float time)
// implementation of Ripple3D
Ripple3D* Ripple3D::create(float duration, const Size& gridSize, const Vector2& position, float radius, unsigned int waves, float amplitude)
Ripple3D* Ripple3D::create(float duration, const Size& gridSize, const Vec2& position, float radius, unsigned int waves, float amplitude)
{
Ripple3D *action = new Ripple3D();
@ -414,7 +414,7 @@ Ripple3D* Ripple3D::create(float duration, const Size& gridSize, const Vector2&
return action;
}
bool Ripple3D::initWithDuration(float duration, const Size& gridSize, const Vector2& position, float radius, unsigned int waves, float amplitude)
bool Ripple3D::initWithDuration(float duration, const Size& gridSize, const Vec2& position, float radius, unsigned int waves, float amplitude)
{
if (Grid3DAction::initWithDuration(duration, gridSize))
{
@ -430,7 +430,7 @@ bool Ripple3D::initWithDuration(float duration, const Size& gridSize, const Vect
return false;
}
void Ripple3D::setPosition(const Vector2& position)
void Ripple3D::setPosition(const Vec2& position)
{
_position = position;
}
@ -453,8 +453,8 @@ void Ripple3D::update(float time)
{
for (j = 0; j < (_gridSize.height+1); ++j)
{
Vector3 v = getOriginalVertex(Vector2(i, j));
Vector2 vect = _position - Vector2(v.x,v.y);
Vec3 v = getOriginalVertex(Vec2(i, j));
Vec2 vect = _position - Vec2(v.x,v.y);
float r = vect.getLength();
if (r < _radius)
@ -464,7 +464,7 @@ void Ripple3D::update(float time)
v.z += (sinf( time*(float)M_PI * _waves * 2 + r * 0.1f) * _amplitude * _amplitudeRate * rate);
}
setVertex(Vector2(i, j), v);
setVertex(Vec2(i, j), v);
}
}
}
@ -521,7 +521,7 @@ void Shaky3D::update(float time)
{
for (j = 0; j < (_gridSize.height+1); ++j)
{
Vector3 v = getOriginalVertex(Vector2(i ,j));
Vec3 v = getOriginalVertex(Vec2(i ,j));
v.x += (rand() % (_randrange*2)) - _randrange;
v.y += (rand() % (_randrange*2)) - _randrange;
if (_shakeZ)
@ -529,7 +529,7 @@ void Shaky3D::update(float time)
v.z += (rand() % (_randrange*2)) - _randrange;
}
setVertex(Vector2(i, j), v);
setVertex(Vec2(i, j), v);
}
}
}
@ -586,10 +586,10 @@ void Liquid::update(float time)
{
for (j = 1; j < _gridSize.height; ++j)
{
Vector3 v = getOriginalVertex(Vector2(i, j));
Vec3 v = getOriginalVertex(Vec2(i, j));
v.x = (v.x + (sinf(time * (float)M_PI * _waves * 2 + v.x * .01f) * _amplitude * _amplitudeRate));
v.y = (v.y + (sinf(time * (float)M_PI * _waves * 2 + v.y * .01f) * _amplitude * _amplitudeRate));
setVertex(Vector2(i, j), v);
setVertex(Vec2(i, j), v);
}
}
}
@ -648,7 +648,7 @@ void Waves::update(float time)
{
for (j = 0; j < _gridSize.height + 1; ++j)
{
Vector3 v = getOriginalVertex(Vector2(i, j));
Vec3 v = getOriginalVertex(Vec2(i, j));
if (_vertical)
{
@ -660,14 +660,14 @@ void Waves::update(float time)
v.y = (v.y + (sinf(time * (float)M_PI * _waves * 2 + v.x * .01f) * _amplitude * _amplitudeRate));
}
setVertex(Vector2(i, j), v);
setVertex(Vec2(i, j), v);
}
}
}
// implementation of Twirl
Twirl* Twirl::create(float duration, const Size& gridSize, Vector2 position, unsigned int twirls, float amplitude)
Twirl* Twirl::create(float duration, const Size& gridSize, Vec2 position, unsigned int twirls, float amplitude)
{
Twirl *action = new Twirl();
@ -686,7 +686,7 @@ Twirl* Twirl::create(float duration, const Size& gridSize, Vector2 position, uns
return action;
}
bool Twirl::initWithDuration(float duration, const Size& gridSize, Vector2 position, unsigned int twirls, float amplitude)
bool Twirl::initWithDuration(float duration, const Size& gridSize, Vec2 position, unsigned int twirls, float amplitude)
{
if (Grid3DAction::initWithDuration(duration, gridSize))
{
@ -701,7 +701,7 @@ bool Twirl::initWithDuration(float duration, const Size& gridSize, Vector2 posit
return false;
}
void Twirl::setPosition(const Vector2& position)
void Twirl::setPosition(const Vec2& position)
{
_position = position;
}
@ -718,28 +718,28 @@ Twirl *Twirl::clone() const
void Twirl::update(float time)
{
int i, j;
Vector2 c = _position;
Vec2 c = _position;
for (i = 0; i < (_gridSize.width+1); ++i)
{
for (j = 0; j < (_gridSize.height+1); ++j)
{
Vector3 v = getOriginalVertex(Vector2(i ,j));
Vec3 v = getOriginalVertex(Vec2(i ,j));
Vector2 avg = Vector2(i-(_gridSize.width/2.0f), j-(_gridSize.height/2.0f));
Vec2 avg = Vec2(i-(_gridSize.width/2.0f), j-(_gridSize.height/2.0f));
float r = avg.getLength();
float amp = 0.1f * _amplitude * _amplitudeRate;
float a = r * cosf( (float)M_PI/2.0f + time * (float)M_PI * _twirls * 2 ) * amp;
Vector2 d = Vector2(
Vec2 d = Vec2(
sinf(a) * (v.y-c.y) + cosf(a) * (v.x-c.x),
cosf(a) * (v.y-c.y) - sinf(a) * (v.x-c.x));
v.x = c.x + d.x;
v.y = c.y + d.y;
setVertex(Vector2(i ,j), v);
setVertex(Vec2(i ,j), v);
}
}
}

View File

@ -120,7 +120,7 @@ class CC_DLL Lens3D : public Grid3DAction
{
public:
/** creates the action with center position, radius, a grid size and duration */
static Lens3D* create(float duration, const Size& gridSize, const Vector2& position, float radius);
static Lens3D* create(float duration, const Size& gridSize, const Vec2& position, float radius);
/** Get lens center position */
inline float getLensEffect() const { return _lensEffect; }
@ -129,8 +129,8 @@ public:
/** Set whether lens is concave */
inline void setConcave(bool concave) { _concave = concave; }
inline const Vector2& getPosition() const { return _position; }
void setPosition(const Vector2& position);
inline const Vec2& getPosition() const { return _position; }
void setPosition(const Vec2& position);
// Overrides
virtual Lens3D* clone() const override;
@ -141,11 +141,11 @@ CC_CONSTRUCTOR_ACCESS:
virtual ~Lens3D() {}
/** initializes the action with center position, radius, a grid size and duration */
bool initWithDuration(float duration, const Size& gridSize, const Vector2& position, float radius);
bool initWithDuration(float duration, const Size& gridSize, const Vec2& position, float radius);
protected:
/* lens center position */
Vector2 _position;
Vec2 _position;
float _radius;
/** lens effect. Defaults to 0.7 - 0 means no effect, 1 is very strong effect */
float _lensEffect;
@ -163,12 +163,12 @@ class CC_DLL Ripple3D : public Grid3DAction
{
public:
/** creates the action with radius, number of waves, amplitude, a grid size and duration */
static Ripple3D* create(float duration, const Size& gridSize, const Vector2& position, float radius, unsigned int waves, float amplitude);
static Ripple3D* create(float duration, const Size& gridSize, const Vec2& position, float radius, unsigned int waves, float amplitude);
/** get center position */
inline const Vector2& getPosition() const { return _position; }
inline const Vec2& getPosition() const { return _position; }
/** set center position */
void setPosition(const Vector2& position);
void setPosition(const Vec2& position);
inline float getAmplitude() const { return _amplitude; }
inline void setAmplitude(float fAmplitude) { _amplitude = fAmplitude; }
@ -185,11 +185,11 @@ CC_CONSTRUCTOR_ACCESS:
virtual ~Ripple3D() {}
/** initializes the action with radius, number of waves, amplitude, a grid size and duration */
bool initWithDuration(float duration, const Size& gridSize, const Vector2& position, float radius, unsigned int waves, float amplitude);
bool initWithDuration(float duration, const Size& gridSize, const Vec2& position, float radius, unsigned int waves, float amplitude);
protected:
/* center position */
Vector2 _position;
Vec2 _position;
float _radius;
unsigned int _waves;
float _amplitude;
@ -298,12 +298,12 @@ class CC_DLL Twirl : public Grid3DAction
{
public:
/** creates the action with center position, number of twirls, amplitude, a grid size and duration */
static Twirl* create(float duration, const Size& gridSize, Vector2 position, unsigned int twirls, float amplitude);
static Twirl* create(float duration, const Size& gridSize, Vec2 position, unsigned int twirls, float amplitude);
/** get twirl center */
inline const Vector2& getPosition() const { return _position; }
inline const Vec2& getPosition() const { return _position; }
/** set twirl center */
void setPosition(const Vector2& position);
void setPosition(const Vec2& position);
inline float getAmplitude() const { return _amplitude; }
inline void setAmplitude(float amplitude) { _amplitude = amplitude; }
@ -321,11 +321,11 @@ CC_CONSTRUCTOR_ACCESS:
virtual ~Twirl() {}
/** initializes the action with center position, number of twirls, amplitude, a grid size and duration */
bool initWithDuration(float duration, const Size& gridSize, Vector2 position, unsigned int twirls, float amplitude);
bool initWithDuration(float duration, const Size& gridSize, Vec2 position, unsigned int twirls, float amplitude);
protected:
/* twirl center */
Vector2 _position;
Vec2 _position;
unsigned int _twirls;
float _amplitude;
float _amplitudeRate;

View File

@ -28,7 +28,7 @@
#include "2d/CCActionInstant.h"
#include "2d/CCNode.h"
#include "2d/CCSprite.h"
#include "2d/CCScriptSupport.h"
#include "base/CCScriptSupport.h"
#if defined(__GNUC__) && ((__GNUC__ >= 4) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 1)))
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
@ -278,7 +278,7 @@ FlipY * FlipY::clone() const
// Place
//
Place* Place::create(const Vector2& pos)
Place* Place::create(const Vec2& pos)
{
Place *ret = new Place();
@ -291,7 +291,7 @@ Place* Place::create(const Vector2& pos)
return nullptr;
}
bool Place::initWithPosition(const Vector2& pos) {
bool Place::initWithPosition(const Vec2& pos) {
_position = pos;
return true;
}

View File

@ -228,7 +228,7 @@ class CC_DLL Place : public ActionInstant //<NSCopying>
public:
/** creates a Place action with a position */
static Place * create(const Vector2& pos);
static Place * create(const Vec2& pos);
//
// Overrides
@ -242,10 +242,10 @@ CC_CONSTRUCTOR_ACCESS:
virtual ~Place(){}
/** Initializes a Place action with a position */
bool initWithPosition(const Vector2& pos);
bool initWithPosition(const Vec2& pos);
protected:
Vector2 _position;
Vec2 _position;
private:
CC_DISALLOW_COPY_AND_ASSIGN(Place);

View File

@ -859,7 +859,7 @@ RotateBy* RotateBy::create(float duration, float deltaAngleX, float deltaAngleY)
return rotateBy;
}
RotateBy* RotateBy::create(float duration, const Vector3& deltaAngle3D)
RotateBy* RotateBy::create(float duration, const Vec3& deltaAngle3D)
{
RotateBy *rotateBy = new RotateBy();
rotateBy->initWithDuration(duration, deltaAngle3D);
@ -896,7 +896,7 @@ bool RotateBy::initWithDuration(float duration, float deltaAngleX, float deltaAn
return false;
}
bool RotateBy::initWithDuration(float duration, const Vector3& deltaAngle3D)
bool RotateBy::initWithDuration(float duration, const Vec3& deltaAngle3D)
{
if (ActionInterval::initWithDuration(duration))
{
@ -942,7 +942,7 @@ void RotateBy::update(float time)
{
if(_is3D)
{
Vector3 v;
Vec3 v;
v.x = _startAngle3D.x + _angle3D.x * time;
v.y = _startAngle3D.y + _angle3D.y * time;
v.z = _startAngle3D.z + _angle3D.z * time;
@ -960,7 +960,7 @@ RotateBy* RotateBy::reverse() const
{
if(_is3D)
{
Vector3 v;
Vec3 v;
v.x = - _angle3D.x;
v.y = - _angle3D.y;
v.z = - _angle3D.z;
@ -973,7 +973,7 @@ RotateBy* RotateBy::reverse() const
// MoveBy
//
MoveBy* MoveBy::create(float duration, const Vector2& deltaPosition)
MoveBy* MoveBy::create(float duration, const Vec2& deltaPosition)
{
MoveBy *ret = new MoveBy();
ret->initWithDuration(duration, deltaPosition);
@ -982,7 +982,7 @@ MoveBy* MoveBy::create(float duration, const Vector2& deltaPosition)
return ret;
}
bool MoveBy::initWithDuration(float duration, const Vector2& deltaPosition)
bool MoveBy::initWithDuration(float duration, const Vec2& deltaPosition)
{
if (ActionInterval::initWithDuration(duration))
{
@ -1010,7 +1010,7 @@ void MoveBy::startWithTarget(Node *target)
MoveBy* MoveBy::reverse() const
{
return MoveBy::create(_duration, Vector2( -_positionDelta.x, -_positionDelta.y));
return MoveBy::create(_duration, Vec2( -_positionDelta.x, -_positionDelta.y));
}
@ -1019,10 +1019,10 @@ void MoveBy::update(float t)
if (_target)
{
#if CC_ENABLE_STACKABLE_ACTIONS
Vector2 currentPos = _target->getPosition();
Vector2 diff = currentPos - _previousPosition;
Vec2 currentPos = _target->getPosition();
Vec2 diff = currentPos - _previousPosition;
_startPosition = _startPosition + diff;
Vector2 newPos = _startPosition + (_positionDelta * t);
Vec2 newPos = _startPosition + (_positionDelta * t);
_target->setPosition(newPos);
_previousPosition = newPos;
#else
@ -1035,7 +1035,7 @@ void MoveBy::update(float t)
// MoveTo
//
MoveTo* MoveTo::create(float duration, const Vector2& position)
MoveTo* MoveTo::create(float duration, const Vec2& position)
{
MoveTo *ret = new MoveTo();
ret->initWithDuration(duration, position);
@ -1044,7 +1044,7 @@ MoveTo* MoveTo::create(float duration, const Vector2& position)
return ret;
}
bool MoveTo::initWithDuration(float duration, const Vector2& position)
bool MoveTo::initWithDuration(float duration, const Vec2& position)
{
if (ActionInterval::initWithDuration(duration))
{
@ -1252,7 +1252,7 @@ SkewBy* SkewBy::reverse() const
// JumpBy
//
JumpBy* JumpBy::create(float duration, const Vector2& position, float height, int jumps)
JumpBy* JumpBy::create(float duration, const Vec2& position, float height, int jumps)
{
JumpBy *jumpBy = new JumpBy();
jumpBy->initWithDuration(duration, position, height, jumps);
@ -1261,7 +1261,7 @@ JumpBy* JumpBy::create(float duration, const Vector2& position, float height, in
return jumpBy;
}
bool JumpBy::initWithDuration(float duration, const Vector2& position, float height, int jumps)
bool JumpBy::initWithDuration(float duration, const Vec2& position, float height, int jumps)
{
CCASSERT(jumps>=0, "Number of jumps must be >= 0");
@ -1303,24 +1303,24 @@ void JumpBy::update(float t)
float x = _delta.x * t;
#if CC_ENABLE_STACKABLE_ACTIONS
Vector2 currentPos = _target->getPosition();
Vec2 currentPos = _target->getPosition();
Vector2 diff = currentPos - _previousPos;
Vec2 diff = currentPos - _previousPos;
_startPosition = diff + _startPosition;
Vector2 newPos = _startPosition + Vector2(x,y);
Vec2 newPos = _startPosition + Vec2(x,y);
_target->setPosition(newPos);
_previousPos = newPos;
#else
_target->setPosition(_startPosition + Vector2(x,y));
_target->setPosition(_startPosition + Vec2(x,y));
#endif // !CC_ENABLE_STACKABLE_ACTIONS
}
}
JumpBy* JumpBy::reverse() const
{
return JumpBy::create(_duration, Vector2(-_delta.x, -_delta.y),
return JumpBy::create(_duration, Vec2(-_delta.x, -_delta.y),
_height, _jumps);
}
@ -1328,7 +1328,7 @@ JumpBy* JumpBy::reverse() const
// JumpTo
//
JumpTo* JumpTo::create(float duration, const Vector2& position, float height, int jumps)
JumpTo* JumpTo::create(float duration, const Vec2& position, float height, int jumps)
{
JumpTo *jumpTo = new JumpTo();
jumpTo->initWithDuration(duration, position, height, jumps);
@ -1355,7 +1355,7 @@ JumpTo* JumpTo::reverse() const
void JumpTo::startWithTarget(Node *target)
{
JumpBy::startWithTarget(target);
_delta = Vector2(_delta.x - _startPosition.x, _delta.y - _startPosition.y);
_delta = Vec2(_delta.x - _startPosition.x, _delta.y - _startPosition.y);
}
// Bezier cubic formula:
@ -1427,16 +1427,16 @@ void BezierBy::update(float time)
float y = bezierat(ya, yb, yc, yd, time);
#if CC_ENABLE_STACKABLE_ACTIONS
Vector2 currentPos = _target->getPosition();
Vector2 diff = currentPos - _previousPosition;
Vec2 currentPos = _target->getPosition();
Vec2 diff = currentPos - _previousPosition;
_startPosition = _startPosition + diff;
Vector2 newPos = _startPosition + Vector2(x,y);
Vec2 newPos = _startPosition + Vec2(x,y);
_target->setPosition(newPos);
_previousPosition = newPos;
#else
_target->setPosition( _startPosition + Vector2(x,y));
_target->setPosition( _startPosition + Vec2(x,y));
#endif // !CC_ENABLE_STACKABLE_ACTIONS
}
}

View File

@ -28,13 +28,14 @@ THE SOFTWARE.
#ifndef __ACTION_CCINTERVAL_ACTION_H__
#define __ACTION_CCINTERVAL_ACTION_H__
#include <vector>
#include "2d/CCNode.h"
#include "2d/CCAction.h"
#include "2d/CCProtocols.h"
#include "2d/CCSpriteFrame.h"
#include "2d/CCAnimation.h"
#include "base/CCProtocols.h"
#include "base/CCVector.h"
#include <vector>
NS_CC_BEGIN
@ -370,7 +371,7 @@ public:
/** creates the action */
static RotateBy* create(float duration, float deltaAngle);
static RotateBy* create(float duration, float deltaAngleZ_X, float deltaAngleZ_Y);
static RotateBy* create(float duration, const Vector3& deltaAngle3D);
static RotateBy* create(float duration, const Vec3& deltaAngle3D);
//
// Override
@ -387,7 +388,7 @@ CC_CONSTRUCTOR_ACCESS:
/** initializes the action */
bool initWithDuration(float duration, float deltaAngle);
bool initWithDuration(float duration, float deltaAngleZ_X, float deltaAngleZ_Y);
bool initWithDuration(float duration, const Vector3& deltaAngle3D);
bool initWithDuration(float duration, const Vec3& deltaAngle3D);
protected:
float _angleZ_X;
@ -396,8 +397,8 @@ protected:
float _startAngleZ_Y;
bool _is3D;
Vector3 _angle3D;
Vector3 _startAngle3D;
Vec3 _angle3D;
Vec3 _startAngle3D;
private:
CC_DISALLOW_COPY_AND_ASSIGN(RotateBy);
@ -413,7 +414,7 @@ class CC_DLL MoveBy : public ActionInterval
{
public:
/** creates the action */
static MoveBy* create(float duration, const Vector2& deltaPosition);
static MoveBy* create(float duration, const Vec2& deltaPosition);
//
// Overrides
@ -428,12 +429,12 @@ CC_CONSTRUCTOR_ACCESS:
virtual ~MoveBy() {}
/** initializes the action */
bool initWithDuration(float duration, const Vector2& deltaPosition);
bool initWithDuration(float duration, const Vec2& deltaPosition);
protected:
Vector2 _positionDelta;
Vector2 _startPosition;
Vector2 _previousPosition;
Vec2 _positionDelta;
Vec2 _startPosition;
Vec2 _previousPosition;
private:
CC_DISALLOW_COPY_AND_ASSIGN(MoveBy);
@ -448,7 +449,7 @@ class CC_DLL MoveTo : public MoveBy
{
public:
/** creates the action */
static MoveTo* create(float duration, const Vector2& position);
static MoveTo* create(float duration, const Vec2& position);
//
// Overrides
@ -461,10 +462,10 @@ CC_CONSTRUCTOR_ACCESS:
virtual ~MoveTo() {}
/** initializes the action */
bool initWithDuration(float duration, const Vector2& position);
bool initWithDuration(float duration, const Vec2& position);
protected:
Vector2 _endPosition;
Vec2 _endPosition;
private:
CC_DISALLOW_COPY_AND_ASSIGN(MoveTo);
@ -539,7 +540,7 @@ class CC_DLL JumpBy : public ActionInterval
{
public:
/** creates the action */
static JumpBy* create(float duration, const Vector2& position, float height, int jumps);
static JumpBy* create(float duration, const Vec2& position, float height, int jumps);
//
// Overrides
@ -554,14 +555,14 @@ CC_CONSTRUCTOR_ACCESS:
virtual ~JumpBy() {}
/** initializes the action */
bool initWithDuration(float duration, const Vector2& position, float height, int jumps);
bool initWithDuration(float duration, const Vec2& position, float height, int jumps);
protected:
Vector2 _startPosition;
Vector2 _delta;
Vec2 _startPosition;
Vec2 _delta;
float _height;
int _jumps;
Vector2 _previousPos;
Vec2 _previousPos;
private:
CC_DISALLOW_COPY_AND_ASSIGN(JumpBy);
@ -573,7 +574,7 @@ class CC_DLL JumpTo : public JumpBy
{
public:
/** creates the action */
static JumpTo* create(float duration, const Vector2& position, float height, int jumps);
static JumpTo* create(float duration, const Vec2& position, float height, int jumps);
//
// Override
@ -592,11 +593,11 @@ private:
*/
typedef struct _ccBezierConfig {
//! end position of the bezier
Vector2 endPosition;
Vec2 endPosition;
//! Bezier control point 1
Vector2 controlPoint_1;
Vec2 controlPoint_1;
//! Bezier control point 2
Vector2 controlPoint_2;
Vec2 controlPoint_2;
} ccBezierConfig;
/** @brief An action that moves the target with a cubic Bezier curve by a certain distance.
@ -630,8 +631,8 @@ CC_CONSTRUCTOR_ACCESS:
protected:
ccBezierConfig _config;
Vector2 _startPosition;
Vector2 _previousPosition;
Vec2 _startPosition;
Vec2 _previousPosition;
private:
CC_DISALLOW_COPY_AND_ASSIGN(BezierBy);

View File

@ -30,8 +30,8 @@ THE SOFTWARE.
#include "2d/CCNode.h"
#include "base/CCScheduler.h"
#include "base/ccMacros.h"
#include "2d/ccCArray.h"
#include "2d/uthash.h"
#include "base/ccCArray.h"
#include "base/uthash.h"
NS_CC_BEGIN
//

View File

@ -76,7 +76,7 @@ void PageTurn3D::update(float time)
for (int j = 0; j <= _gridSize.height; ++j)
{
// Get original vertex
Vector3 p = getOriginalVertex(Vector2(i ,j));
Vec3 p = getOriginalVertex(Vec2(i ,j));
float R = sqrtf((p.x * p.x) + ((p.y - ay) * (p.y - ay)));
float r = R * sinTheta;
@ -111,7 +111,7 @@ void PageTurn3D::update(float time)
}
// Set new coords
setVertex(Vector2(i, j), p);
setVertex(Vec2(i, j), p);
}
}

View File

@ -72,13 +72,6 @@ void ProgressTo::startWithTarget(Node *target)
{
ActionInterval::startWithTarget(target);
_from = ((kProgressTimerCast)(target))->getPercentage();
// XXX: Is this correct ?
// Adding it to support Repeat
if (_from == 100)
{
_from = 0;
}
}
void ProgressTo::update(float time)

View File

@ -34,8 +34,8 @@ NS_CC_BEGIN
struct Tile
{
Vector2 position;
Vector2 startPosition;
Vec2 position;
Vec2 startPosition;
Size delta;
};
@ -91,7 +91,7 @@ void ShakyTiles3D::update(float time)
{
for (j = 0; j < _gridSize.height; ++j)
{
Quad3 coords = getOriginalTile(Vector2(i, j));
Quad3 coords = getOriginalTile(Vec2(i, j));
// X
coords.bl.x += ( rand() % (_randrange*2) ) - _randrange;
@ -113,7 +113,7 @@ void ShakyTiles3D::update(float time)
coords.tr.z += ( rand() % (_randrange*2) ) - _randrange;
}
setTile(Vector2(i, j), coords);
setTile(Vec2(i, j), coords);
}
}
}
@ -173,7 +173,7 @@ void ShatteredTiles3D::update(float time)
{
for (j = 0; j < _gridSize.height; ++j)
{
Quad3 coords = getOriginalTile(Vector2(i ,j));
Quad3 coords = getOriginalTile(Vec2(i ,j));
// X
coords.bl.x += ( rand() % (_randrange*2) ) - _randrange;
@ -195,7 +195,7 @@ void ShatteredTiles3D::update(float time)
coords.tr.z += ( rand() % (_randrange*2) ) - _randrange;
}
setTile(Vector2(i, j), coords);
setTile(Vec2(i, j), coords);
}
}
@ -267,7 +267,7 @@ void ShuffleTiles::shuffle(unsigned int *array, unsigned int len)
Size ShuffleTiles::getDelta(const Size& pos) const
{
Vector2 pos2;
Vec2 pos2;
unsigned int idx = pos.width * _gridSize.height + pos.height;
@ -277,11 +277,11 @@ Size ShuffleTiles::getDelta(const Size& pos) const
return Size((int)(pos2.x - pos.width), (int)(pos2.y - pos.height));
}
void ShuffleTiles::placeTile(const Vector2& pos, Tile *t)
void ShuffleTiles::placeTile(const Vec2& pos, Tile *t)
{
Quad3 coords = getOriginalTile(pos);
Vector2 step = _gridNodeTarget->getGrid()->getStep();
Vec2 step = _gridNodeTarget->getGrid()->getStep();
coords.bl.x += (int)(t->position.x * step.x);
coords.bl.y += (int)(t->position.y * step.y);
@ -329,8 +329,8 @@ void ShuffleTiles::startWithTarget(Node *target)
{
for (j = 0; j < _gridSize.height; ++j)
{
tileArray->position = Vector2((float)i, (float)j);
tileArray->startPosition = Vector2((float)i, (float)j);
tileArray->position = Vec2((float)i, (float)j);
tileArray->startPosition = Vec2((float)i, (float)j);
tileArray->delta = getDelta(Size(i, j));
++tileArray;
}
@ -347,8 +347,8 @@ void ShuffleTiles::update(float time)
{
for (j = 0; j < _gridSize.height; ++j)
{
tileArray->position = Vector2((float)tileArray->delta.width, (float)tileArray->delta.height) * time;
placeTile(Vector2(i, j), tileArray);
tileArray->position = Vec2((float)tileArray->delta.width, (float)tileArray->delta.height) * time;
placeTile(Vec2(i, j), tileArray);
++tileArray;
}
}
@ -386,7 +386,7 @@ FadeOutTRTiles* FadeOutTRTiles::clone() const
float FadeOutTRTiles::testFunc(const Size& pos, float time)
{
Vector2 n = Vector2((float)_gridSize.width, (float)_gridSize.height) * time;
Vec2 n = Vec2((float)_gridSize.width, (float)_gridSize.height) * time;
if ((n.x + n.y) == 0.0f)
{
return 1.0f;
@ -395,22 +395,22 @@ float FadeOutTRTiles::testFunc(const Size& pos, float time)
return powf((pos.width + pos.height) / (n.x + n.y), 6);
}
void FadeOutTRTiles::turnOnTile(const Vector2& pos)
void FadeOutTRTiles::turnOnTile(const Vec2& pos)
{
setTile(pos, getOriginalTile(pos));
}
void FadeOutTRTiles::turnOffTile(const Vector2& pos)
void FadeOutTRTiles::turnOffTile(const Vec2& pos)
{
Quad3 coords;
memset(&coords, 0, sizeof(Quad3));
setTile(pos, coords);
}
void FadeOutTRTiles::transformTile(const Vector2& pos, float distance)
void FadeOutTRTiles::transformTile(const Vec2& pos, float distance)
{
Quad3 coords = getOriginalTile(pos);
Vector2 step = _gridNodeTarget->getGrid()->getStep();
Vec2 step = _gridNodeTarget->getGrid()->getStep();
coords.bl.x += (step.x / 2) * (1.0f - distance);
coords.bl.y += (step.y / 2) * (1.0f - distance);
@ -438,15 +438,15 @@ void FadeOutTRTiles::update(float time)
float distance = testFunc(Size(i, j), time);
if ( distance == 0 )
{
turnOffTile(Vector2(i, j));
turnOffTile(Vec2(i, j));
} else
if (distance < 1)
{
transformTile(Vector2(i, j), distance);
transformTile(Vec2(i, j), distance);
}
else
{
turnOnTile(Vector2(i, j));
turnOnTile(Vec2(i, j));
}
}
}
@ -484,7 +484,7 @@ FadeOutBLTiles* FadeOutBLTiles::clone() const
float FadeOutBLTiles::testFunc(const Size& pos, float time)
{
Vector2 n = Vector2((float)_gridSize.width, (float)_gridSize.height) * (1.0f - time);
Vec2 n = Vec2((float)_gridSize.width, (float)_gridSize.height) * (1.0f - time);
if ((pos.width + pos.height) == 0)
{
return 1.0f;
@ -525,7 +525,7 @@ FadeOutUpTiles* FadeOutUpTiles::clone() const
float FadeOutUpTiles::testFunc(const Size& pos, float time)
{
Vector2 n = Vector2((float)_gridSize.width, (float)_gridSize.height) * time;
Vec2 n = Vec2((float)_gridSize.width, (float)_gridSize.height) * time;
if (n.y == 0.0f)
{
return 1.0f;
@ -534,10 +534,10 @@ float FadeOutUpTiles::testFunc(const Size& pos, float time)
return powf(pos.height / n.y, 6);
}
void FadeOutUpTiles::transformTile(const Vector2& pos, float distance)
void FadeOutUpTiles::transformTile(const Vec2& pos, float distance)
{
Quad3 coords = getOriginalTile(pos);
Vector2 step = _gridNodeTarget->getGrid()->getStep();
Vec2 step = _gridNodeTarget->getGrid()->getStep();
coords.bl.y += (step.y / 2) * (1.0f - distance);
coords.br.y += (step.y / 2) * (1.0f - distance);
@ -579,7 +579,7 @@ FadeOutDownTiles* FadeOutDownTiles::clone() const
float FadeOutDownTiles::testFunc(const Size& pos, float time)
{
Vector2 n = Vector2((float)_gridSize.width, (float)_gridSize.height) * (1.0f - time);
Vec2 n = Vec2((float)_gridSize.width, (float)_gridSize.height) * (1.0f - time);
if (pos.height == 0)
{
return 1.0f;
@ -662,12 +662,12 @@ void TurnOffTiles::shuffle(unsigned int *array, unsigned int len)
}
}
void TurnOffTiles::turnOnTile(const Vector2& pos)
void TurnOffTiles::turnOnTile(const Vec2& pos)
{
setTile(pos, getOriginalTile(pos));
}
void TurnOffTiles::turnOffTile(const Vector2& pos)
void TurnOffTiles::turnOffTile(const Vec2& pos)
{
Quad3 coords;
@ -706,7 +706,7 @@ void TurnOffTiles::update(float time)
for( i = 0; i < _tilesCount; i++ )
{
t = _tilesOrder[i];
Vector2 tilePos = Vector2( (unsigned int)(t / _gridSize.height), t % (unsigned int)_gridSize.height );
Vec2 tilePos = Vec2( (unsigned int)(t / _gridSize.height), t % (unsigned int)_gridSize.height );
if ( i < l )
{
@ -771,7 +771,7 @@ void WavesTiles3D::update(float time)
{
for( j = 0; j < _gridSize.height; j++ )
{
Quad3 coords = getOriginalTile(Vector2(i, j));
Quad3 coords = getOriginalTile(Vec2(i, j));
coords.bl.z = (sinf(time * (float)M_PI *_waves * 2 +
(coords.bl.y+coords.bl.x) * .01f) * _amplitude * _amplitudeRate );
@ -779,7 +779,7 @@ void WavesTiles3D::update(float time)
coords.tl.z = coords.bl.z;
coords.tr.z = coords.bl.z;
setTile(Vector2(i, j), coords);
setTile(Vec2(i, j), coords);
}
}
}
@ -839,7 +839,7 @@ void JumpTiles3D::update(float time)
{
for( j = 0; j < _gridSize.height; j++ )
{
Quad3 coords = getOriginalTile(Vector2(i, j));
Quad3 coords = getOriginalTile(Vec2(i, j));
if ( ((i+j) % 2) == 0 )
{
@ -856,7 +856,7 @@ void JumpTiles3D::update(float time)
coords.tr.z += sinz2;
}
setTile(Vector2(i, j), coords);
setTile(Vec2(i, j), coords);
}
}
}
@ -910,7 +910,7 @@ void SplitRows::update(float time)
for (j = 0; j < _gridSize.height; ++j)
{
Quad3 coords = getOriginalTile(Vector2(0, j));
Quad3 coords = getOriginalTile(Vec2(0, j));
float direction = 1;
if ( (j % 2 ) == 0 )
@ -923,7 +923,7 @@ void SplitRows::update(float time)
coords.tl.x += direction * _winSize.width * time;
coords.tr.x += direction * _winSize.width * time;
setTile(Vector2(0, j), coords);
setTile(Vec2(0, j), coords);
}
}
@ -975,7 +975,7 @@ void SplitCols::update(float time)
for (i = 0; i < _gridSize.width; ++i)
{
Quad3 coords = getOriginalTile(Vector2(i, 0));
Quad3 coords = getOriginalTile(Vec2(i, 0));
float direction = 1;
if ( (i % 2 ) == 0 )
@ -988,7 +988,7 @@ void SplitCols::update(float time)
coords.tl.y += direction * _winSize.height * time;
coords.tr.y += direction * _winSize.height * time;
setTile(Vector2(i, 0), coords);
setTile(Vec2(i, 0), coords);
}
}

View File

@ -100,7 +100,7 @@ public:
void shuffle(unsigned int *array, unsigned int len);
Size getDelta(const Size& pos) const;
void placeTile(const Vector2& pos, Tile *t);
void placeTile(const Vec2& pos, Tile *t);
// Overrides
virtual void startWithTarget(Node *target) override;
@ -134,9 +134,9 @@ public:
static FadeOutTRTiles* create(float duration, const Size& gridSize);
virtual float testFunc(const Size& pos, float time);
void turnOnTile(const Vector2& pos);
void turnOffTile(const Vector2& pos);
virtual void transformTile(const Vector2& pos, float distance);
void turnOnTile(const Vec2& pos);
void turnOffTile(const Vec2& pos);
virtual void transformTile(const Vec2& pos, float distance);
// Overrides
virtual void update(float time) override;
@ -180,7 +180,7 @@ public:
/** creates the action with the grid size and the duration */
static FadeOutUpTiles* create(float duration, const Size& gridSize);
virtual void transformTile(const Vector2& pos, float distance);
virtual void transformTile(const Vec2& pos, float distance);
// Overrides
virtual FadeOutUpTiles* clone() const override;
@ -227,8 +227,8 @@ public:
static TurnOffTiles* create(float duration, const Size& gridSize, unsigned int seed);
void shuffle(unsigned int *array, unsigned int len);
void turnOnTile(const Vector2& pos);
void turnOffTile(const Vector2& pos);
void turnOnTile(const Vec2& pos);
void turnOffTile(const Vec2& pos);
// Overrides
virtual TurnOffTiles* clone() const override;

View File

@ -25,10 +25,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
****************************************************************************/
#include "2d/CCAnimation.h"
#include "2d/CCTextureCache.h"
#include "2d/CCTexture2D.h"
#include "base/ccMacros.h"
#include "2d/CCSpriteFrame.h"
#include "renderer/CCTextureCache.h"
#include "renderer/CCTexture2D.h"
#include "base/ccMacros.h"
#include "base/CCDirector.h"
NS_CC_BEGIN

View File

@ -29,7 +29,7 @@ THE SOFTWARE.
#include "2d/CCAnimation.h"
#include "2d/CCSpriteFrame.h"
#include "2d/CCSpriteFrameCache.h"
#include "2d/platform/CCFileUtils.h"
#include "platform/CCFileUtils.h"
#include "deprecated/CCString.h"
using namespace std;

View File

@ -26,10 +26,10 @@ THE SOFTWARE.
****************************************************************************/
#include "CCAtlasNode.h"
#include "2d/CCTextureAtlas.h"
#include "2d/CCTextureCache.h"
#include "renderer/CCTextureAtlas.h"
#include "base/CCDirector.h"
#include "base/CCDirector.h"
#include "renderer/CCTextureCache.h"
#include "renderer/CCRenderer.h"
#include "renderer/CCGLProgram.h"
#include "renderer/CCGLProgramState.h"
@ -133,7 +133,7 @@ void AtlasNode::updateAtlasValues()
}
// AtlasNode - draw
void AtlasNode::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void AtlasNode::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
_quadCommand.init(
_globalZOrder,

View File

@ -29,7 +29,7 @@ THE SOFTWARE.
#define __CCATLAS_NODE_H__
#include "2d/CCNode.h"
#include "2d/CCProtocols.h"
#include "base/CCProtocols.h"
#include "base/ccTypes.h"
#include "renderer/CCQuadCommand.h"
@ -69,7 +69,7 @@ public:
// Overrides
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
virtual Texture2D* getTexture() const override;
virtual void setTexture(Texture2D *texture) override;
virtual bool isOpacityModifyRGB() const override;

View File

@ -196,14 +196,14 @@ void ClippingNode::drawFullScreenQuadClearStencil()
director->loadIdentityMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_PROJECTION);
DrawPrimitives::drawSolidRect(Vector2(-1,-1), Vector2(1,1), Color4F(1, 1, 1, 1));
DrawPrimitives::drawSolidRect(Vec2(-1,-1), Vec2(1,1), Color4F(1, 1, 1, 1));
director->popMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_PROJECTION);
director->popMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_MODELVIEW);
}
void ClippingNode::visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated)
void ClippingNode::visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated)
{
if(!_visible)
return;
@ -214,7 +214,7 @@ void ClippingNode::visit(Renderer *renderer, const Matrix &parentTransform, bool
_transformUpdated = false;
// IMPORTANT:
// To ease the migration to v3.0, we still support the Matrix stack,
// To ease the migration to v3.0, we still support the Mat4 stack,
// but it is deprecated and your code should not rely on it
Director* director = Director::getInstance();
CCASSERT(nullptr != director, "Director is null when seting matrix stack");
@ -382,7 +382,7 @@ void ClippingNode::onBeforeVisit()
glStencilOp(!_inverted ? GL_ZERO : GL_REPLACE, GL_KEEP, GL_KEEP);
// draw a fullscreen solid rectangle to clear the stencil buffer
//ccDrawSolidRect(Vector2::ZERO, ccpFromSize([[Director sharedDirector] winSize]), Color4F(1, 1, 1, 1));
//ccDrawSolidRect(Vec2::ZERO, ccpFromSize([[Director sharedDirector] winSize]), Color4F(1, 1, 1, 1));
drawFullScreenQuadClearStencil();
///////////////////////////////////

View File

@ -95,7 +95,7 @@ public:
* @lua NA
*/
virtual void onExit() override;
virtual void visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated) override;
virtual void visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated) override;
CC_CONSTRUCTOR_ACCESS:
ClippingNode();

View File

@ -23,7 +23,7 @@ THE SOFTWARE.
****************************************************************************/
#include "2d/CCComponent.h"
#include "2d/CCScriptSupport.h"
#include "base/CCScriptSupport.h"
NS_CC_BEGIN

View File

@ -26,7 +26,7 @@ THE SOFTWARE.
#define __CC_FRAMEWORK_COMPONENT_H__
#include "base/CCRef.h"
#include "2d/CCScriptSupport.h"
#include "base/CCScriptSupport.h"
#include <string>
NS_CC_BEGIN

View File

@ -34,67 +34,67 @@
NS_CC_BEGIN
// Vector2 == CGPoint in 32-bits, but not in 64-bits (OS X)
// Vec2 == CGPoint in 32-bits, but not in 64-bits (OS X)
// that's why the "v2f" functions are needed
static Vector2 v2fzero(0.0f,0.0f);
static Vec2 v2fzero(0.0f,0.0f);
static inline Vector2 v2f(float x, float y)
static inline Vec2 v2f(float x, float y)
{
Vector2 ret(x, y);
Vec2 ret(x, y);
return ret;
}
static inline Vector2 v2fadd(const Vector2 &v0, const Vector2 &v1)
static inline Vec2 v2fadd(const Vec2 &v0, const Vec2 &v1)
{
return v2f(v0.x+v1.x, v0.y+v1.y);
}
static inline Vector2 v2fsub(const Vector2 &v0, const Vector2 &v1)
static inline Vec2 v2fsub(const Vec2 &v0, const Vec2 &v1)
{
return v2f(v0.x-v1.x, v0.y-v1.y);
}
static inline Vector2 v2fmult(const Vector2 &v, float s)
static inline Vec2 v2fmult(const Vec2 &v, float s)
{
return v2f(v.x * s, v.y * s);
}
static inline Vector2 v2fperp(const Vector2 &p0)
static inline Vec2 v2fperp(const Vec2 &p0)
{
return v2f(-p0.y, p0.x);
}
static inline Vector2 v2fneg(const Vector2 &p0)
static inline Vec2 v2fneg(const Vec2 &p0)
{
return v2f(-p0.x, - p0.y);
}
static inline float v2fdot(const Vector2 &p0, const Vector2 &p1)
static inline float v2fdot(const Vec2 &p0, const Vec2 &p1)
{
return p0.x * p1.x + p0.y * p1.y;
}
static inline Vector2 v2fforangle(float _a_)
static inline Vec2 v2fforangle(float _a_)
{
return v2f(cosf(_a_), sinf(_a_));
}
static inline Vector2 v2fnormalize(const Vector2 &p)
static inline Vec2 v2fnormalize(const Vec2 &p)
{
Vector2 r = Vector2(p.x, p.y).getNormalized();
Vec2 r = Vec2(p.x, p.y).getNormalized();
return v2f(r.x, r.y);
}
static inline Vector2 __v2f(const Vector2 &v)
static inline Vec2 __v2f(const Vec2 &v)
{
//#ifdef __LP64__
return v2f(v.x, v.y);
// #else
// return * ((Vector2*) &v);
// return * ((Vec2*) &v);
// #endif
}
static inline Tex2F __t(const Vector2 &v)
static inline Tex2F __t(const Vec2 &v)
{
return *(Tex2F*)&v;
}
@ -205,14 +205,14 @@ bool DrawNode::init()
return true;
}
void DrawNode::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void DrawNode::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
_customCommand.init(_globalZOrder);
_customCommand.func = CC_CALLBACK_0(DrawNode::onDraw, this, transform, transformUpdated);
renderer->addCommand(&_customCommand);
}
void DrawNode::onDraw(const Matrix &transform, bool transformUpdated)
void DrawNode::onDraw(const Mat4 &transform, bool transformUpdated)
{
auto glProgram = getGLProgram();
glProgram->use();
@ -252,15 +252,15 @@ void DrawNode::onDraw(const Matrix &transform, bool transformUpdated)
CHECK_GL_ERROR_DEBUG();
}
void DrawNode::drawDot(const Vector2 &pos, float radius, const Color4F &color)
void DrawNode::drawDot(const Vec2 &pos, float radius, const Color4F &color)
{
unsigned int vertex_count = 2*3;
ensureCapacity(vertex_count);
V2F_C4B_T2F a = {Vector2(pos.x - radius, pos.y - radius), Color4B(color), Tex2F(-1.0, -1.0) };
V2F_C4B_T2F b = {Vector2(pos.x - radius, pos.y + radius), Color4B(color), Tex2F(-1.0, 1.0) };
V2F_C4B_T2F c = {Vector2(pos.x + radius, pos.y + radius), Color4B(color), Tex2F( 1.0, 1.0) };
V2F_C4B_T2F d = {Vector2(pos.x + radius, pos.y - radius), Color4B(color), Tex2F( 1.0, -1.0) };
V2F_C4B_T2F a = {Vec2(pos.x - radius, pos.y - radius), Color4B(color), Tex2F(-1.0, -1.0) };
V2F_C4B_T2F b = {Vec2(pos.x - radius, pos.y + radius), Color4B(color), Tex2F(-1.0, 1.0) };
V2F_C4B_T2F c = {Vec2(pos.x + radius, pos.y + radius), Color4B(color), Tex2F( 1.0, 1.0) };
V2F_C4B_T2F d = {Vec2(pos.x + radius, pos.y - radius), Color4B(color), Tex2F( 1.0, -1.0) };
V2F_C4B_T2F_Triangle *triangles = (V2F_C4B_T2F_Triangle *)(_buffer + _bufferCount);
V2F_C4B_T2F_Triangle triangle0 = {a, b, c};
@ -273,28 +273,28 @@ void DrawNode::drawDot(const Vector2 &pos, float radius, const Color4F &color)
_dirty = true;
}
void DrawNode::drawSegment(const Vector2 &from, const Vector2 &to, float radius, const Color4F &color)
void DrawNode::drawSegment(const Vec2 &from, const Vec2 &to, float radius, const Color4F &color)
{
unsigned int vertex_count = 6*3;
ensureCapacity(vertex_count);
Vector2 a = __v2f(from);
Vector2 b = __v2f(to);
Vec2 a = __v2f(from);
Vec2 b = __v2f(to);
Vector2 n = v2fnormalize(v2fperp(v2fsub(b, a)));
Vector2 t = v2fperp(n);
Vec2 n = v2fnormalize(v2fperp(v2fsub(b, a)));
Vec2 t = v2fperp(n);
Vector2 nw = v2fmult(n, radius);
Vector2 tw = v2fmult(t, radius);
Vector2 v0 = v2fsub(b, v2fadd(nw, tw));
Vector2 v1 = v2fadd(b, v2fsub(nw, tw));
Vector2 v2 = v2fsub(b, nw);
Vector2 v3 = v2fadd(b, nw);
Vector2 v4 = v2fsub(a, nw);
Vector2 v5 = v2fadd(a, nw);
Vector2 v6 = v2fsub(a, v2fsub(nw, tw));
Vector2 v7 = v2fadd(a, v2fadd(nw, tw));
Vec2 nw = v2fmult(n, radius);
Vec2 tw = v2fmult(t, radius);
Vec2 v0 = v2fsub(b, v2fadd(nw, tw));
Vec2 v1 = v2fadd(b, v2fsub(nw, tw));
Vec2 v2 = v2fsub(b, nw);
Vec2 v3 = v2fadd(b, nw);
Vec2 v4 = v2fsub(a, nw);
Vec2 v5 = v2fadd(a, nw);
Vec2 v6 = v2fsub(a, v2fsub(nw, tw));
Vec2 v7 = v2fadd(a, v2fadd(nw, tw));
V2F_C4B_T2F_Triangle *triangles = (V2F_C4B_T2F_Triangle *)(_buffer + _bufferCount);
@ -346,24 +346,24 @@ void DrawNode::drawSegment(const Vector2 &from, const Vector2 &to, float radius,
_dirty = true;
}
void DrawNode::drawPolygon(Vector2 *verts, int count, const Color4F &fillColor, float borderWidth, const Color4F &borderColor)
void DrawNode::drawPolygon(Vec2 *verts, int count, const Color4F &fillColor, float borderWidth, const Color4F &borderColor)
{
CCASSERT(count >= 0, "invalid count value");
struct ExtrudeVerts {Vector2 offset, n;};
struct ExtrudeVerts {Vec2 offset, n;};
struct ExtrudeVerts* extrude = (struct ExtrudeVerts*)malloc(sizeof(struct ExtrudeVerts)*count);
memset(extrude, 0, sizeof(struct ExtrudeVerts)*count);
for (int i = 0; i < count; i++)
{
Vector2 v0 = __v2f(verts[(i-1+count)%count]);
Vector2 v1 = __v2f(verts[i]);
Vector2 v2 = __v2f(verts[(i+1)%count]);
Vec2 v0 = __v2f(verts[(i-1+count)%count]);
Vec2 v1 = __v2f(verts[i]);
Vec2 v2 = __v2f(verts[(i+1)%count]);
Vector2 n1 = v2fnormalize(v2fperp(v2fsub(v1, v0)));
Vector2 n2 = v2fnormalize(v2fperp(v2fsub(v2, v1)));
Vec2 n1 = v2fnormalize(v2fperp(v2fsub(v1, v0)));
Vec2 n2 = v2fnormalize(v2fperp(v2fsub(v2, v1)));
Vector2 offset = v2fmult(v2fadd(n1, n2), 1.0/(v2fdot(n1, n2) + 1.0));
Vec2 offset = v2fmult(v2fadd(n1, n2), 1.0/(v2fdot(n1, n2) + 1.0));
struct ExtrudeVerts tmp = {offset, n2};
extrude[i] = tmp;
}
@ -380,9 +380,9 @@ void DrawNode::drawPolygon(Vector2 *verts, int count, const Color4F &fillColor,
float inset = (outline == false ? 0.5 : 0.0);
for (int i = 0; i < count-2; i++)
{
Vector2 v0 = v2fsub(__v2f(verts[0 ]), v2fmult(extrude[0 ].offset, inset));
Vector2 v1 = v2fsub(__v2f(verts[i+1]), v2fmult(extrude[i+1].offset, inset));
Vector2 v2 = v2fsub(__v2f(verts[i+2]), v2fmult(extrude[i+2].offset, inset));
Vec2 v0 = v2fsub(__v2f(verts[0 ]), v2fmult(extrude[0 ].offset, inset));
Vec2 v1 = v2fsub(__v2f(verts[i+1]), v2fmult(extrude[i+1].offset, inset));
Vec2 v2 = v2fsub(__v2f(verts[i+2]), v2fmult(extrude[i+2].offset, inset));
V2F_C4B_T2F_Triangle tmp = {
{v0, Color4B(fillColor), __t(v2fzero)},
@ -396,20 +396,20 @@ void DrawNode::drawPolygon(Vector2 *verts, int count, const Color4F &fillColor,
for(int i = 0; i < count; i++)
{
int j = (i+1)%count;
Vector2 v0 = __v2f(verts[i]);
Vector2 v1 = __v2f(verts[j]);
Vec2 v0 = __v2f(verts[i]);
Vec2 v1 = __v2f(verts[j]);
Vector2 n0 = extrude[i].n;
Vec2 n0 = extrude[i].n;
Vector2 offset0 = extrude[i].offset;
Vector2 offset1 = extrude[j].offset;
Vec2 offset0 = extrude[i].offset;
Vec2 offset1 = extrude[j].offset;
if(outline)
{
Vector2 inner0 = v2fsub(v0, v2fmult(offset0, borderWidth));
Vector2 inner1 = v2fsub(v1, v2fmult(offset1, borderWidth));
Vector2 outer0 = v2fadd(v0, v2fmult(offset0, borderWidth));
Vector2 outer1 = v2fadd(v1, v2fmult(offset1, borderWidth));
Vec2 inner0 = v2fsub(v0, v2fmult(offset0, borderWidth));
Vec2 inner1 = v2fsub(v1, v2fmult(offset1, borderWidth));
Vec2 outer0 = v2fadd(v0, v2fmult(offset0, borderWidth));
Vec2 outer1 = v2fadd(v1, v2fmult(offset1, borderWidth));
V2F_C4B_T2F_Triangle tmp1 = {
{inner0, Color4B(borderColor), __t(v2fneg(n0))},
@ -426,10 +426,10 @@ void DrawNode::drawPolygon(Vector2 *verts, int count, const Color4F &fillColor,
*cursor++ = tmp2;
}
else {
Vector2 inner0 = v2fsub(v0, v2fmult(offset0, 0.5));
Vector2 inner1 = v2fsub(v1, v2fmult(offset1, 0.5));
Vector2 outer0 = v2fadd(v0, v2fmult(offset0, 0.5));
Vector2 outer1 = v2fadd(v1, v2fmult(offset1, 0.5));
Vec2 inner0 = v2fsub(v0, v2fmult(offset0, 0.5));
Vec2 inner1 = v2fsub(v1, v2fmult(offset1, 0.5));
Vec2 outer0 = v2fadd(v0, v2fmult(offset0, 0.5));
Vec2 outer1 = v2fadd(v1, v2fmult(offset1, 0.5));
V2F_C4B_T2F_Triangle tmp1 = {
{inner0, Color4B(fillColor), __t(v2fzero)},
@ -454,15 +454,15 @@ void DrawNode::drawPolygon(Vector2 *verts, int count, const Color4F &fillColor,
free(extrude);
}
void DrawNode::drawTriangle(const Vector2 &p1, const Vector2 &p2, const Vector2 &p3, const Color4F &color)
void DrawNode::drawTriangle(const Vec2 &p1, const Vec2 &p2, const Vec2 &p3, const Color4F &color)
{
unsigned int vertex_count = 2*3;
ensureCapacity(vertex_count);
Color4B col = Color4B(color);
V2F_C4B_T2F a = {Vector2(p1.x, p1.y), col, Tex2F(0.0, 0.0) };
V2F_C4B_T2F b = {Vector2(p2.x, p2.y), col, Tex2F(0.0, 0.0) };
V2F_C4B_T2F c = {Vector2(p3.x, p3.y), col, Tex2F(0.0, 0.0) };
V2F_C4B_T2F a = {Vec2(p1.x, p1.y), col, Tex2F(0.0, 0.0) };
V2F_C4B_T2F b = {Vec2(p2.x, p2.y), col, Tex2F(0.0, 0.0) };
V2F_C4B_T2F c = {Vec2(p3.x, p3.y), col, Tex2F(0.0, 0.0) };
V2F_C4B_T2F_Triangle *triangles = (V2F_C4B_T2F_Triangle *)(_buffer + _bufferCount);
V2F_C4B_T2F_Triangle triangle = {a, b, c};
@ -472,23 +472,23 @@ void DrawNode::drawTriangle(const Vector2 &p1, const Vector2 &p2, const Vector2
_dirty = true;
}
void DrawNode::drawCubicBezier(const Vector2& from, const Vector2& control1, const Vector2& control2, const Vector2& to, unsigned int segments, const Color4F &color)
void DrawNode::drawCubicBezier(const Vec2& from, const Vec2& control1, const Vec2& control2, const Vec2& to, unsigned int segments, const Color4F &color)
{
unsigned int vertex_count = (segments + 1) * 3;
ensureCapacity(vertex_count);
Tex2F texCoord = Tex2F(0.0, 0.0);
Color4B col = Color4B(color);
Vector2 vertex;
Vector2 firstVertex = Vector2(from.x, from.y);
Vector2 lastVertex = Vector2(to.x, to.y);
Vec2 vertex;
Vec2 firstVertex = Vec2(from.x, from.y);
Vec2 lastVertex = Vec2(to.x, to.y);
float t = 0;
for(unsigned int i = segments + 1; i > 0; i--)
{
float x = powf(1 - t, 3) * from.x + 3.0f * powf(1 - t, 2) * t * control1.x + 3.0f * (1 - t) * t * t * control2.x + t * t * t * to.x;
float y = powf(1 - t, 3) * from.y + 3.0f * powf(1 - t, 2) * t * control1.y + 3.0f * (1 - t) * t * t * control2.y + t * t * t * to.y;
vertex = Vector2(x, y);
vertex = Vec2(x, y);
V2F_C4B_T2F a = {firstVertex, col, texCoord };
V2F_C4B_T2F b = {lastVertex, col, texCoord };
@ -503,23 +503,23 @@ void DrawNode::drawCubicBezier(const Vector2& from, const Vector2& control1, con
_dirty = true;
}
void DrawNode::drawQuadraticBezier(const Vector2& from, const Vector2& control, const Vector2& to, unsigned int segments, const Color4F &color)
void DrawNode::drawQuadraticBezier(const Vec2& from, const Vec2& control, const Vec2& to, unsigned int segments, const Color4F &color)
{
unsigned int vertex_count = (segments + 1) * 3;
ensureCapacity(vertex_count);
Tex2F texCoord = Tex2F(0.0, 0.0);
Color4B col = Color4B(color);
Vector2 vertex;
Vector2 firstVertex = Vector2(from.x, from.y);
Vector2 lastVertex = Vector2(to.x, to.y);
Vec2 vertex;
Vec2 firstVertex = Vec2(from.x, from.y);
Vec2 lastVertex = Vec2(to.x, to.y);
float t = 0;
for(unsigned int i = segments + 1; i > 0; i--)
{
float x = powf(1 - t, 2) * from.x + 2.0f * (1 - t) * t * control.x + t * t * to.x;
float y = powf(1 - t, 2) * from.y + 2.0f * (1 - t) * t * control.y + t * t * to.y;
vertex = Vector2(x, y);
vertex = Vec2(x, y);
V2F_C4B_T2F a = {firstVertex, col, texCoord };
V2F_C4B_T2F b = {lastVertex, col, texCoord };

View File

@ -50,10 +50,10 @@ public:
static DrawNode* create();
/** draw a dot at a position, with a given radius and color */
void drawDot(const Vector2 &pos, float radius, const Color4F &color);
void drawDot(const Vec2 &pos, float radius, const Color4F &color);
/** draw a segment with a radius and color */
void drawSegment(const Vector2 &from, const Vector2 &to, float radius, const Color4F &color);
void drawSegment(const Vec2 &from, const Vec2 &to, float radius, const Color4F &color);
/** draw a polygon with a fill color and line color
* @code
@ -62,16 +62,16 @@ public:
* In lua:local drawPolygon(local pointTable,local tableCount,local fillColor,local width,local borderColor)
* @endcode
*/
void drawPolygon(Vector2 *verts, int count, const Color4F &fillColor, float borderWidth, const Color4F &borderColor);
void drawPolygon(Vec2 *verts, int count, const Color4F &fillColor, float borderWidth, const Color4F &borderColor);
/** draw a triangle with color */
void drawTriangle(const Vector2 &p1, const Vector2 &p2, const Vector2 &p3, const Color4F &color);
void drawTriangle(const Vec2 &p1, const Vec2 &p2, const Vec2 &p3, const Color4F &color);
/** draw a cubic bezier curve with color and number of segments */
void drawCubicBezier(const Vector2& from, const Vector2& control1, const Vector2& control2, const Vector2& to, unsigned int segments, const Color4F &color);
void drawCubicBezier(const Vec2& from, const Vec2& control1, const Vec2& control2, const Vec2& to, unsigned int segments, const Color4F &color);
/** draw a quadratic bezier curve with color and number of segments */
void drawQuadraticBezier(const Vector2& from, const Vector2& control, const Vector2& to, unsigned int segments, const Color4F &color);
void drawQuadraticBezier(const Vec2& from, const Vec2& control, const Vec2& to, unsigned int segments, const Color4F &color);
/** Clear the geometry in the node's buffer. */
void clear();
@ -89,10 +89,10 @@ public:
*/
void setBlendFunc(const BlendFunc &blendFunc);
void onDraw(const Matrix &transform, bool transformUpdated);
void onDraw(const Mat4 &transform, bool transformUpdated);
// Overrides
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
CC_CONSTRUCTOR_ACCESS:
DrawNode();

View File

@ -123,11 +123,11 @@ void free()
s_initialized = false;
}
void drawPoint( const Vector2& point )
void drawPoint( const Vec2& point )
{
lazy_init();
Vector2 p;
Vec2 p;
p.x = point.x;
p.y = point.y;
@ -150,7 +150,7 @@ void drawPoint( const Vector2& point )
CC_INCREMENT_GL_DRAWN_BATCHES_AND_VERTICES(1,1);
}
void drawPoints( const Vector2 *points, unsigned int numberOfPoints )
void drawPoints( const Vec2 *points, unsigned int numberOfPoints )
{
lazy_init();
@ -161,13 +161,13 @@ void drawPoints( const Vector2 *points, unsigned int numberOfPoints )
s_shader->setUniformLocationWith1f(s_pointSizeLocation, s_pointSize);
// XXX: Mac OpenGL error. arrays can't go out of scope before draw is executed
Vector2* newPoints = new Vector2[numberOfPoints];
Vec2* newPoints = new Vec2[numberOfPoints];
// iPhone and 32-bit machines optimization
if( sizeof(Vector2) == sizeof(Vector2) )
if( sizeof(Vec2) == sizeof(Vec2) )
{
#ifdef EMSCRIPTEN
setGLBufferData((void*) points, numberOfPoints * sizeof(Vector2));
setGLBufferData((void*) points, numberOfPoints * sizeof(Vec2));
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, 0);
#else
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, points);
@ -183,7 +183,7 @@ void drawPoints( const Vector2 *points, unsigned int numberOfPoints )
#ifdef EMSCRIPTEN
// Suspect Emscripten won't be emitting 64-bit code for a while yet,
// but want to make sure this continues to work even if they do.
setGLBufferData(newPoints, numberOfPoints * sizeof(Vector2));
setGLBufferData(newPoints, numberOfPoints * sizeof(Vec2));
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, 0);
#else
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, newPoints);
@ -198,13 +198,13 @@ void drawPoints( const Vector2 *points, unsigned int numberOfPoints )
}
void drawLine( const Vector2& origin, const Vector2& destination )
void drawLine( const Vec2& origin, const Vec2& destination )
{
lazy_init();
Vector2 vertices[2] = {
Vector2(origin.x, origin.y),
Vector2(destination.x, destination.y)
Vec2 vertices[2] = {
Vec2(origin.x, origin.y),
Vec2(destination.x, destination.y)
};
s_shader->use();
@ -223,27 +223,27 @@ void drawLine( const Vector2& origin, const Vector2& destination )
CC_INCREMENT_GL_DRAWN_BATCHES_AND_VERTICES(1,2);
}
void drawRect( Vector2 origin, Vector2 destination )
void drawRect( Vec2 origin, Vec2 destination )
{
drawLine(Vector2(origin.x, origin.y), Vector2(destination.x, origin.y));
drawLine(Vector2(destination.x, origin.y), Vector2(destination.x, destination.y));
drawLine(Vector2(destination.x, destination.y), Vector2(origin.x, destination.y));
drawLine(Vector2(origin.x, destination.y), Vector2(origin.x, origin.y));
drawLine(Vec2(origin.x, origin.y), Vec2(destination.x, origin.y));
drawLine(Vec2(destination.x, origin.y), Vec2(destination.x, destination.y));
drawLine(Vec2(destination.x, destination.y), Vec2(origin.x, destination.y));
drawLine(Vec2(origin.x, destination.y), Vec2(origin.x, origin.y));
}
void drawSolidRect( Vector2 origin, Vector2 destination, Color4F color )
void drawSolidRect( Vec2 origin, Vec2 destination, Color4F color )
{
Vector2 vertices[] = {
Vec2 vertices[] = {
origin,
Vector2(destination.x, origin.y),
Vec2(destination.x, origin.y),
destination,
Vector2(origin.x, destination.y)
Vec2(origin.x, destination.y)
};
drawSolidPoly(vertices, 4, color );
}
void drawPoly( const Vector2 *poli, unsigned int numberOfPoints, bool closePolygon )
void drawPoly( const Vec2 *poli, unsigned int numberOfPoints, bool closePolygon )
{
lazy_init();
@ -254,10 +254,10 @@ void drawPoly( const Vector2 *poli, unsigned int numberOfPoints, bool closePolyg
GL::enableVertexAttribs( GL::VERTEX_ATTRIB_FLAG_POSITION );
// iPhone and 32-bit machines optimization
if( sizeof(Vector2) == sizeof(Vector2) )
if( sizeof(Vec2) == sizeof(Vec2) )
{
#ifdef EMSCRIPTEN
setGLBufferData((void*) poli, numberOfPoints * sizeof(Vector2));
setGLBufferData((void*) poli, numberOfPoints * sizeof(Vec2));
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, 0);
#else
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, poli);
@ -272,13 +272,13 @@ void drawPoly( const Vector2 *poli, unsigned int numberOfPoints, bool closePolyg
{
// Mac on 64-bit
// XXX: Mac OpenGL error. arrays can't go out of scope before draw is executed
Vector2* newPoli = new Vector2[numberOfPoints];
Vec2* newPoli = new Vec2[numberOfPoints];
for( unsigned int i=0; i<numberOfPoints;i++) {
newPoli[i].x = poli[i].x;
newPoli[i].y = poli[i].y;
}
#ifdef EMSCRIPTEN
setGLBufferData(newPoli, numberOfPoints * sizeof(Vector2));
setGLBufferData(newPoli, numberOfPoints * sizeof(Vec2));
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, 0);
#else
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, newPoli);
@ -295,7 +295,7 @@ void drawPoly( const Vector2 *poli, unsigned int numberOfPoints, bool closePolyg
CC_INCREMENT_GL_DRAWN_BATCHES_AND_VERTICES(1, numberOfPoints);
}
void drawSolidPoly( const Vector2 *poli, unsigned int numberOfPoints, Color4F color )
void drawSolidPoly( const Vec2 *poli, unsigned int numberOfPoints, Color4F color )
{
lazy_init();
@ -306,13 +306,13 @@ void drawSolidPoly( const Vector2 *poli, unsigned int numberOfPoints, Color4F co
GL::enableVertexAttribs( GL::VERTEX_ATTRIB_FLAG_POSITION );
// XXX: Mac OpenGL error. arrays can't go out of scope before draw is executed
Vector2* newPoli = new Vector2[numberOfPoints];
Vec2* newPoli = new Vec2[numberOfPoints];
// iPhone and 32-bit machines optimization
if( sizeof(Vector2) == sizeof(Vector2) )
if( sizeof(Vec2) == sizeof(Vec2) )
{
#ifdef EMSCRIPTEN
setGLBufferData((void*) poli, numberOfPoints * sizeof(Vector2));
setGLBufferData((void*) poli, numberOfPoints * sizeof(Vec2));
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, 0);
#else
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, poli);
@ -323,10 +323,10 @@ void drawSolidPoly( const Vector2 *poli, unsigned int numberOfPoints, Color4F co
// Mac on 64-bit
for( unsigned int i=0; i<numberOfPoints;i++)
{
newPoli[i] = Vector2( poli[i].x, poli[i].y );
newPoli[i] = Vec2( poli[i].x, poli[i].y );
}
#ifdef EMSCRIPTEN
setGLBufferData(newPoli, numberOfPoints * sizeof(Vector2));
setGLBufferData(newPoli, numberOfPoints * sizeof(Vec2));
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, 0);
#else
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, newPoli);
@ -339,7 +339,7 @@ void drawSolidPoly( const Vector2 *poli, unsigned int numberOfPoints, Color4F co
CC_INCREMENT_GL_DRAWN_BATCHES_AND_VERTICES(1, numberOfPoints);
}
void drawCircle( const Vector2& center, float radius, float angle, unsigned int segments, bool drawLineToCenter, float scaleX, float scaleY)
void drawCircle( const Vec2& center, float radius, float angle, unsigned int segments, bool drawLineToCenter, float scaleX, float scaleY)
{
lazy_init();
@ -383,12 +383,12 @@ void drawCircle( const Vector2& center, float radius, float angle, unsigned int
CC_INCREMENT_GL_DRAWN_BATCHES_AND_VERTICES(1,segments+additionalSegment);
}
void drawCircle( const Vector2& center, float radius, float angle, unsigned int segments, bool drawLineToCenter)
void drawCircle( const Vec2& center, float radius, float angle, unsigned int segments, bool drawLineToCenter)
{
drawCircle(center, radius, angle, segments, drawLineToCenter, 1.0f, 1.0f);
}
void drawSolidCircle( const Vector2& center, float radius, float angle, unsigned int segments, float scaleX, float scaleY)
void drawSolidCircle( const Vec2& center, float radius, float angle, unsigned int segments, float scaleX, float scaleY)
{
lazy_init();
@ -429,16 +429,16 @@ void drawSolidCircle( const Vector2& center, float radius, float angle, unsigned
CC_INCREMENT_GL_DRAWN_BATCHES_AND_VERTICES(1,segments+1);
}
void drawSolidCircle( const Vector2& center, float radius, float angle, unsigned int segments)
void drawSolidCircle( const Vec2& center, float radius, float angle, unsigned int segments)
{
drawSolidCircle(center, radius, angle, segments, 1.0f, 1.0f);
}
void drawQuadBezier(const Vector2& origin, const Vector2& control, const Vector2& destination, unsigned int segments)
void drawQuadBezier(const Vec2& origin, const Vec2& control, const Vec2& destination, unsigned int segments)
{
lazy_init();
Vector2* vertices = new Vector2[segments + 1];
Vec2* vertices = new Vec2[segments + 1];
float t = 0.0f;
for(unsigned int i = 0; i < segments; i++)
@ -457,7 +457,7 @@ void drawQuadBezier(const Vector2& origin, const Vector2& control, const Vector2
GL::enableVertexAttribs( GL::VERTEX_ATTRIB_FLAG_POSITION );
#ifdef EMSCRIPTEN
setGLBufferData(vertices, (segments + 1) * sizeof(Vector2));
setGLBufferData(vertices, (segments + 1) * sizeof(Vec2));
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, 0);
#else
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, vertices);
@ -477,7 +477,7 @@ void drawCardinalSpline( PointArray *config, float tension, unsigned int segmen
{
lazy_init();
Vector2* vertices = new Vector2[segments + 1];
Vec2* vertices = new Vec2[segments + 1];
ssize_t p;
float lt;
@ -497,12 +497,12 @@ void drawCardinalSpline( PointArray *config, float tension, unsigned int segmen
}
// Interpolate
Vector2 pp0 = config->getControlPointAtIndex(p-1);
Vector2 pp1 = config->getControlPointAtIndex(p+0);
Vector2 pp2 = config->getControlPointAtIndex(p+1);
Vector2 pp3 = config->getControlPointAtIndex(p+2);
Vec2 pp0 = config->getControlPointAtIndex(p-1);
Vec2 pp1 = config->getControlPointAtIndex(p+0);
Vec2 pp2 = config->getControlPointAtIndex(p+1);
Vec2 pp3 = config->getControlPointAtIndex(p+2);
Vector2 newPos = ccCardinalSplineAt( pp0, pp1, pp2, pp3, tension, lt);
Vec2 newPos = ccCardinalSplineAt( pp0, pp1, pp2, pp3, tension, lt);
vertices[i].x = newPos.x;
vertices[i].y = newPos.y;
}
@ -514,7 +514,7 @@ void drawCardinalSpline( PointArray *config, float tension, unsigned int segmen
GL::enableVertexAttribs( GL::VERTEX_ATTRIB_FLAG_POSITION );
#ifdef EMSCRIPTEN
setGLBufferData(vertices, (segments + 1) * sizeof(Vector2));
setGLBufferData(vertices, (segments + 1) * sizeof(Vec2));
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, 0);
#else
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, vertices);
@ -525,11 +525,11 @@ void drawCardinalSpline( PointArray *config, float tension, unsigned int segmen
CC_INCREMENT_GL_DRAWN_BATCHES_AND_VERTICES(1,segments+1);
}
void drawCubicBezier(const Vector2& origin, const Vector2& control1, const Vector2& control2, const Vector2& destination, unsigned int segments)
void drawCubicBezier(const Vec2& origin, const Vec2& control1, const Vec2& control2, const Vec2& destination, unsigned int segments)
{
lazy_init();
Vector2* vertices = new Vector2[segments + 1];
Vec2* vertices = new Vec2[segments + 1];
float t = 0;
for(unsigned int i = 0; i < segments; i++)
@ -548,7 +548,7 @@ void drawCubicBezier(const Vector2& origin, const Vector2& control1, const Vecto
GL::enableVertexAttribs( GL::VERTEX_ATTRIB_FLAG_POSITION );
#ifdef EMSCRIPTEN
setGLBufferData(vertices, (segments + 1) * sizeof(Vector2));
setGLBufferData(vertices, (segments + 1) * sizeof(Vec2));
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, 0);
#else
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, vertices);

View File

@ -63,7 +63,7 @@ THE SOFTWARE.
- ccPointSize()
- glLineWidth()
@warning These functions draws the Line, Vector2, Polygon, immediately. They aren't batched. If you are going to make a game that depends on these primitives, I suggest creating a batch. Instead you should use DrawNode
@warning These functions draws the Line, Vec2, Polygon, immediately. They aren't batched. If you are going to make a game that depends on these primitives, I suggest creating a batch. Instead you should use DrawNode
*/
@ -85,52 +85,52 @@ namespace DrawPrimitives
void free();
/** draws a point given x and y coordinate measured in points */
void drawPoint( const Vector2& point );
void drawPoint( const Vec2& point );
/** draws an array of points.
@since v0.7.2
*/
void drawPoints( const Vector2 *points, unsigned int numberOfPoints );
void drawPoints( const Vec2 *points, unsigned int numberOfPoints );
/** draws a line given the origin and destination point measured in points */
void drawLine( const Vector2& origin, const Vector2& destination );
void drawLine( const Vec2& origin, const Vec2& destination );
/** draws a rectangle given the origin and destination point measured in points. */
void drawRect( Vector2 origin, Vector2 destination );
void drawRect( Vec2 origin, Vec2 destination );
/** draws a solid rectangle given the origin and destination point measured in points.
@since 1.1
*/
void drawSolidRect( Vector2 origin, Vector2 destination, Color4F color );
void drawSolidRect( Vec2 origin, Vec2 destination, Color4F color );
/** draws a polygon given a pointer to point coordinates and the number of vertices measured in points.
The polygon can be closed or open
*/
void drawPoly( const Vector2 *vertices, unsigned int numOfVertices, bool closePolygon );
void drawPoly( const Vec2 *vertices, unsigned int numOfVertices, bool closePolygon );
/** draws a solid polygon given a pointer to CGPoint coordinates, the number of vertices measured in points, and a color.
*/
void drawSolidPoly( const Vector2 *poli, unsigned int numberOfPoints, Color4F color );
void drawSolidPoly( const Vec2 *poli, unsigned int numberOfPoints, Color4F color );
/** draws a circle given the center, radius and number of segments. */
void drawCircle( const Vector2& center, float radius, float angle, unsigned int segments, bool drawLineToCenter, float scaleX, float scaleY);
void drawCircle( const Vector2& center, float radius, float angle, unsigned int segments, bool drawLineToCenter);
void drawCircle( const Vec2& center, float radius, float angle, unsigned int segments, bool drawLineToCenter, float scaleX, float scaleY);
void drawCircle( const Vec2& center, float radius, float angle, unsigned int segments, bool drawLineToCenter);
/** draws a solid circle given the center, radius and number of segments. */
void drawSolidCircle( const Vector2& center, float radius, float angle, unsigned int segments, float scaleX, float scaleY);
void drawSolidCircle( const Vector2& center, float radius, float angle, unsigned int segments);
void drawSolidCircle( const Vec2& center, float radius, float angle, unsigned int segments, float scaleX, float scaleY);
void drawSolidCircle( const Vec2& center, float radius, float angle, unsigned int segments);
/** draws a quad bezier path
@warning This function could be pretty slow. Use it only for debugging purposes.
@since v0.8
*/
void drawQuadBezier(const Vector2& origin, const Vector2& control, const Vector2& destination, unsigned int segments);
void drawQuadBezier(const Vec2& origin, const Vec2& control, const Vec2& destination, unsigned int segments);
/** draws a cubic bezier path
@warning This function could be pretty slow. Use it only for debugging purposes.
@since v0.8
*/
void drawCubicBezier(const Vector2& origin, const Vector2& control1, const Vector2& control2, const Vector2& destination, unsigned int segments);
void drawCubicBezier(const Vec2& origin, const Vec2& control1, const Vec2& control2, const Vec2& destination, unsigned int segments);
/** draws a Catmull Rom path.
@warning This function could be pretty slow. Use it only for debugging purposes.

View File

@ -23,8 +23,8 @@
THE SOFTWARE.
****************************************************************************/
#include "CCFont.h"
#include "ccUTF8.h"
#include "2d/CCFont.h"
#include "base/ccUTF8.h"
NS_CC_BEGIN

View File

@ -25,7 +25,7 @@
#include "2d/CCFontAtlas.h"
#include "2d/CCFontFreeType.h"
#include "ccUTF8.h"
#include "base/ccUTF8.h"
#include "base/CCDirector.h"
#include "base/CCEventListenerCustom.h"
#include "base/CCEventDispatcher.h"
@ -33,8 +33,8 @@
NS_CC_BEGIN
const int FontAtlas::CacheTextureWidth = 1024;
const int FontAtlas::CacheTextureHeight = 1024;
const int FontAtlas::CacheTextureWidth = 512;
const int FontAtlas::CacheTextureHeight = 512;
const char* FontAtlas::EVENT_PURGE_TEXTURES = "__cc_FontAtlasPurgeTextures";
FontAtlas::FontAtlas(Font &theFont)

View File

@ -69,8 +69,8 @@ FontAtlas * FontAtlasCache::getFontAtlasTTF(const TTFConfig & config)
if ( it == _atlasMap.end() )
{
auto font = FontFreeType::create(config.fontFilePath, fontSize * contentScaleFactor, config.glyphs,
config.customGlyphs,useDistanceField,config.outlineSize * contentScaleFactor);
auto font = FontFreeType::create(config.fontFilePath, fontSize, config.glyphs,
config.customGlyphs, useDistanceField, config.outlineSize);
if (font)
{
auto tempAtlas = font->createFontAtlas();
@ -90,7 +90,7 @@ FontAtlas * FontAtlasCache::getFontAtlasTTF(const TTFConfig & config)
return nullptr;
}
FontAtlas * FontAtlasCache::getFontAtlasFNT(const std::string& fontFileName, const Vector2& imageOffset /* = Vector2::ZERO */)
FontAtlas * FontAtlasCache::getFontAtlasFNT(const std::string& fontFileName, const Vec2& imageOffset /* = Vec2::ZERO */)
{
std::string atlasName = generateFontName(fontFileName, 0, GlyphCollection::CUSTOM,false);
auto it = _atlasMap.find(atlasName);

View File

@ -38,7 +38,7 @@ class CC_DLL FontAtlasCache
{
public:
static FontAtlas * getFontAtlasTTF(const TTFConfig & config);
static FontAtlas * getFontAtlasFNT(const std::string& fontFileName, const Vector2& imageOffset = Vector2::ZERO);
static FontAtlas * getFontAtlasFNT(const std::string& fontFileName, const Vec2& imageOffset = Vec2::ZERO);
static FontAtlas * getFontAtlasCharMap(const std::string& charMapFile, int itemWidth, int itemHeight, int startCharMap);
static FontAtlas * getFontAtlasCharMap(Texture2D* texture, int itemWidth, int itemHeight, int startCharMap);

View File

@ -25,10 +25,10 @@
#include "CCFontCharMap.h"
#include "2d/CCFontAtlas.h"
#include "2d/platform/CCFileUtils.h"
#include "platform/CCFileUtils.h"
#include "base/ccUTF8.h"
#include "base/CCDirector.h"
#include "2d/CCTextureCache.h"
#include "ccUTF8.h"
#include "renderer/CCTextureCache.h"
NS_CC_BEGIN

View File

@ -24,15 +24,16 @@
****************************************************************************/
#include "2d/CCFontFNT.h"
#include "2d/uthash.h"
#include "base/uthash.h"
#include "2d/CCFontAtlas.h"
#include "base/ccUTF8.h"
#include "platform/CCFileUtils.h"
#include "base/CCConfiguration.h"
#include "base/CCDirector.h"
#include "2d/CCFontAtlas.h"
#include "base/CCMap.h"
#include "renderer/CCTextureCache.h"
#include "deprecated/CCString.h"
#include "2d/CCTextureCache.h"
#include "ccUTF8.h"
#include "2d/platform/CCFileUtils.h"
using namespace std;
NS_CC_BEGIN
@ -665,7 +666,7 @@ void BMFontConfiguration::parseKerningEntry(std::string line)
HASH_ADD_INT(_kerningDictionary,key, element);
}
FontFNT * FontFNT::create(const std::string& fntFilePath, const Vector2& imageOffset /* = Vector2::ZERO */)
FontFNT * FontFNT::create(const std::string& fntFilePath, const Vec2& imageOffset /* = Vec2::ZERO */)
{
BMFontConfiguration *newConf = FNTConfigLoadFile(fntFilePath);
if (!newConf)
@ -690,16 +691,16 @@ FontFNT * FontFNT::create(const std::string& fntFilePath, const Vector2& imageOf
return tempFont;
}
FontFNT::FontFNT(BMFontConfiguration *theContfig, const Vector2& imageOffset /* = Vector2::ZERO */)
FontFNT::FontFNT(BMFontConfiguration *theContfig, const Vec2& imageOffset /* = Vec2::ZERO */)
:_configuration(theContfig)
,_imageOffset(CC_POINT_PIXELS_TO_POINTS(imageOffset))
{
_configuration->retain();
}
FontFNT::~FontFNT()
{
_configuration->release();
}
void FontFNT::purgeCachedData()

View File

@ -37,7 +37,7 @@ class FontFNT : public Font
public:
static FontFNT * create(const std::string& fntFilePath, const Vector2& imageOffset = Vector2::ZERO);
static FontFNT * create(const std::string& fntFilePath, const Vec2& imageOffset = Vec2::ZERO);
/** Purges the cached data.
Removes from memory the cached configurations and the atlas name dictionary.
*/
@ -47,7 +47,7 @@ public:
protected:
FontFNT(BMFontConfiguration *theContfig, const Vector2& imageOffset = Vector2::ZERO);
FontFNT(BMFontConfiguration *theContfig, const Vec2& imageOffset = Vec2::ZERO);
/**
* @js NA
* @lua NA
@ -59,7 +59,7 @@ private:
int getHorizontalKerningForChars(unsigned short firstChar, unsigned short secondChar) const;
BMFontConfiguration * _configuration;
Vector2 _imageOffset;
Vec2 _imageOffset;
};

View File

@ -23,12 +23,13 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
****************************************************************************/
#include "2d/CCFontFreeType.h"
#include <stdio.h>
#include <algorithm>
#include "ccUTF8.h"
#include "2d/CCFontFreeType.h"
#include "2d/platform/CCFileUtils.h"
#include "base/CCDirector.h"
#include "base/ccUTF8.h"
#include "platform/CCFileUtils.h"
#include "edtaa3func.h"
#include FT_BBOX_H
@ -101,6 +102,7 @@ FontFreeType::FontFreeType(bool distanceFieldEnabled /* = false */,int outline /
{
if (_outlineSize > 0)
{
_outlineSize *= CC_CONTENT_SCALE_FACTOR();
FT_Stroker_New(FontFreeType::getFTLibrary(), &_stroker);
FT_Stroker_Set(_stroker,
(int)(_outlineSize * 64),
@ -141,7 +143,7 @@ bool FontFreeType::createFontObject(const std::string &fontName, int fontSize)
// set the requested font size
int dpi = 72;
int fontSizePoints = (int)(64.f * fontSize);
int fontSizePoints = (int)(64.f * fontSize * CC_CONTENT_SCALE_FACTOR());
if (FT_Set_Char_Size(face, fontSizePoints, fontSizePoints, dpi, dpi))
return false;
@ -285,8 +287,6 @@ unsigned char* FontFreeType::getGlyphBitmap(unsigned short theChar, long &outWid
auto copyBitmap = new unsigned char[outWidth * outHeight];
memcpy(copyBitmap,ret,outWidth * outHeight * sizeof(unsigned char));
long bitmapWidth;
long bitmapHeight;
FT_BBox bbox;
auto outlineBitmap = getGlyphBitmapWithOutline(theChar,bbox);
if(outlineBitmap == nullptr)
@ -296,42 +296,47 @@ unsigned char* FontFreeType::getGlyphBitmap(unsigned short theChar, long &outWid
break;
}
bitmapWidth = (bbox.xMax - bbox.xMin)>>6;
bitmapHeight = (bbox.yMax - bbox.yMin)>>6;
auto outlineWidth = (bbox.xMax - bbox.xMin)>>6;
auto outlineHeight = (bbox.yMax - bbox.yMin)>>6;
long index;
auto blendImage = new unsigned char[bitmapWidth * bitmapHeight * 2];
memset(blendImage, 0, bitmapWidth * bitmapHeight * 2);
for (int x = 0; x < bitmapWidth; ++x)
auto blendWidth = outlineWidth > outWidth ? outlineWidth : outWidth;
auto blendHeight = outlineHeight > outHeight ? outlineHeight : outHeight;
long index,index2;
auto blendImage = new unsigned char[blendWidth * blendHeight * 2];
memset(blendImage, 0, blendWidth * blendHeight * 2);
auto px = (blendWidth - outlineWidth) / 2;
auto py = (blendHeight - outlineHeight) / 2;
for (int x = 0; x < outlineWidth; ++x)
{
for (int y = 0; y < bitmapHeight; ++y)
for (int y = 0; y < outlineHeight; ++y)
{
index = x + ( y * bitmapWidth );
blendImage[2 * index] = outlineBitmap[index];
index = px + x + ( (py + y) * blendWidth );
index2 = x + (y * outlineWidth);
blendImage[2 * index] = outlineBitmap[index2];
}
}
long maxX = outWidth + _outlineSize;
long maxY = outHeight + _outlineSize;
for (int x = _outlineSize; x < maxX; ++x)
px = (blendWidth - outWidth) / 2;
py = (blendHeight - outHeight) / 2;
for (int x = 0; x < outWidth; ++x)
{
for (int y = _outlineSize; y < maxY; ++y)
for (int y = 0; y < outHeight; ++y)
{
index = x + ( y * bitmapWidth );
blendImage[2 * index + 1] = copyBitmap[outWidth * (y - _outlineSize) + x - _outlineSize];
index = px + x + ( (y + py) * blendWidth );
index2 = x + (y * outWidth);
blendImage[2 * index + 1] = copyBitmap[index2];
}
}
outRect.origin.x = bbox.xMin >> 6;
outRect.origin.y = - (bbox.yMax >> 6);
xAdvance += bitmapWidth - outRect.size.width;
outRect.size.width = bitmapWidth;
outRect.size.height = bitmapHeight;
outWidth = bitmapWidth;
outHeight = bitmapHeight;
xAdvance += 2 * _outlineSize;
outRect.size.width = blendWidth;
outRect.size.height = blendHeight;
outWidth = blendWidth;
outHeight = blendHeight;
delete [] outlineBitmap;
delete [] copyBitmap;
@ -563,4 +568,4 @@ void FontFreeType::renderCharAt(unsigned char *dest,int posX, int posY, unsigned
}
}
NS_CC_END
NS_CC_END

View File

@ -58,7 +58,7 @@ public:
static void shutdownFreeType();
bool isDistanceFieldEnabled() const { return _distanceFieldEnabled;}
int getOutlineSize() const { return _outlineSize; }
float getOutlineSize() const { return _outlineSize; }
void renderCharAt(unsigned char *dest,int posX, int posY, unsigned char* bitmap,long bitmapWidth,long bitmapHeight);
virtual FontAtlas * createFontAtlas() override;
@ -89,7 +89,7 @@ private:
FT_Stroker _stroker;
std::string _fontName;
bool _distanceFieldEnabled;
int _outlineSize;
float _outlineSize;
};
NS_CC_END

View File

@ -25,7 +25,7 @@ THE SOFTWARE.
****************************************************************************/
#include "CCGrabber.h"
#include "base/ccMacros.h"
#include "2d/CCTexture2D.h"
#include "renderer/CCTexture2D.h"
NS_CC_BEGIN

View File

@ -27,7 +27,7 @@ THE SOFTWARE.
#include "base/ccMacros.h"
#include "base/CCDirector.h"
#include "2d/CCGrabber.h"
#include "2d/ccUtils.h"
#include "base/ccUtils.h"
#include "2d/CCGrid.h"
#include "renderer/CCGLProgram.h"
#include "renderer/CCGLProgramCache.h"
@ -186,8 +186,8 @@ void GridBase::set2DProjection()
glViewport(0, 0, (GLsizei)(size.width), (GLsizei)(size.height) );
director->loadIdentityMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_PROJECTION);
Matrix orthoMatrix;
Matrix::createOrthographicOffCenter(0, size.width, 0, size.height, -1, 1, &orthoMatrix);
Mat4 orthoMatrix;
Mat4::createOrthographicOffCenter(0, size.width, 0, size.height, -1, 1, &orthoMatrix);
director->multiplyMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_PROJECTION, orthoMatrix);
director->loadIdentityMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_MODELVIEW);
@ -217,7 +217,7 @@ void GridBase::afterDraw(cocos2d::Node *target)
// if (target->getCamera()->isDirty())
// {
// Vector2 offset = target->getAnchorPointInPoints();
// Vec2 offset = target->getAnchorPointInPoints();
//
// //
// // XXX: Camera should be applied in the AnchorPoint
@ -326,11 +326,11 @@ void Grid3D::blit(void)
unsigned int numOfPoints = (_gridSize.width+1) * (_gridSize.height+1);
// position
setGLBufferData(_vertices, numOfPoints * sizeof(Vector3), 0);
setGLBufferData(_vertices, numOfPoints * sizeof(Vec3), 0);
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 3, GL_FLOAT, GL_FALSE, 0, 0);
// texCoords
setGLBufferData(_texCoordinates, numOfPoints * sizeof(Vector2), 1);
setGLBufferData(_texCoordinates, numOfPoints * sizeof(Vec2), 1);
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_TEX_COORD, 2, GL_FLOAT, GL_FALSE, 0, 0);
setGLIndexData(_indices, n * 12, 0);
@ -361,9 +361,9 @@ void Grid3D::calculateVertexPoints(void)
unsigned int numOfPoints = (_gridSize.width+1) * (_gridSize.height+1);
_vertices = malloc(numOfPoints * sizeof(Vector3));
_originalVertices = malloc(numOfPoints * sizeof(Vector3));
_texCoordinates = malloc(numOfPoints * sizeof(Vector2));
_vertices = malloc(numOfPoints * sizeof(Vec3));
_originalVertices = malloc(numOfPoints * sizeof(Vec3));
_texCoordinates = malloc(numOfPoints * sizeof(Vec2));
_indices = (GLushort*)malloc(_gridSize.width * _gridSize.height * sizeof(GLushort) * 6);
GLfloat *vertArray = (GLfloat*)_vertices;
@ -391,15 +391,15 @@ void Grid3D::calculateVertexPoints(void)
memcpy(&idxArray[6*idx], tempidx, 6*sizeof(GLushort));
int l1[4] = {a*3, b*3, c*3, d*3};
Vector3 e(x1, y1, 0);
Vector3 f(x2, y1, 0);
Vector3 g(x2, y2, 0);
Vector3 h(x1, y2, 0);
Vec3 e(x1, y1, 0);
Vec3 f(x2, y1, 0);
Vec3 g(x2, y2, 0);
Vec3 h(x1, y2, 0);
Vector3 l2[4] = {e, f, g, h};
Vec3 l2[4] = {e, f, g, h};
int tex1[4] = {a*2, b*2, c*2, d*2};
Vector2 Tex2F[4] = {Vector2(x1, y1), Vector2(x2, y1), Vector2(x2, y2), Vector2(x1, y2)};
Vec2 Tex2F[4] = {Vec2(x1, y1), Vec2(x2, y1), Vec2(x2, y2), Vec2(x1, y2)};
for (i = 0; i < 4; ++i)
{
@ -420,34 +420,34 @@ void Grid3D::calculateVertexPoints(void)
}
}
memcpy(_originalVertices, _vertices, (_gridSize.width+1) * (_gridSize.height+1) * sizeof(Vector3));
memcpy(_originalVertices, _vertices, (_gridSize.width+1) * (_gridSize.height+1) * sizeof(Vec3));
}
Vector3 Grid3D::getVertex(const Vector2& pos) const
Vec3 Grid3D::getVertex(const Vec2& pos) const
{
CCASSERT( pos.x == (unsigned int)pos.x && pos.y == (unsigned int) pos.y , "Numbers must be integers");
int index = (pos.x * (_gridSize.height+1) + pos.y) * 3;
float *vertArray = (float*)_vertices;
Vector3 vert(vertArray[index], vertArray[index+1], vertArray[index+2]);
Vec3 vert(vertArray[index], vertArray[index+1], vertArray[index+2]);
return vert;
}
Vector3 Grid3D::getOriginalVertex(const Vector2& pos) const
Vec3 Grid3D::getOriginalVertex(const Vec2& pos) const
{
CCASSERT( pos.x == (unsigned int)pos.x && pos.y == (unsigned int) pos.y , "Numbers must be integers");
int index = (pos.x * (_gridSize.height+1) + pos.y) * 3;
float *vertArray = (float*)_originalVertices;
Vector3 vert(vertArray[index], vertArray[index+1], vertArray[index+2]);
Vec3 vert(vertArray[index], vertArray[index+1], vertArray[index+2]);
return vert;
}
void Grid3D::setVertex(const Vector2& pos, const Vector3& vertex)
void Grid3D::setVertex(const Vec2& pos, const Vec3& vertex)
{
CCASSERT( pos.x == (unsigned int)pos.x && pos.y == (unsigned int) pos.y , "Numbers must be integers");
int index = (pos.x * (_gridSize.height + 1) + pos.y) * 3;
@ -461,7 +461,7 @@ void Grid3D::reuse(void)
{
if (_reuseGrid > 0)
{
memcpy(_originalVertices, _vertices, (_gridSize.width+1) * (_gridSize.height+1) * sizeof(Vector3));
memcpy(_originalVertices, _vertices, (_gridSize.width+1) * (_gridSize.height+1) * sizeof(Vec3));
--_reuseGrid;
}
}
@ -541,11 +541,11 @@ void TiledGrid3D::blit(void)
int numQuads = _gridSize.width * _gridSize.height;
// position
setGLBufferData(_vertices, (numQuads*4*sizeof(Vector3)), 0);
setGLBufferData(_vertices, (numQuads*4*sizeof(Vec3)), 0);
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 3, GL_FLOAT, GL_FALSE, 0, 0);
// texCoords
setGLBufferData(_texCoordinates, (numQuads*4*sizeof(Vector2)), 1);
setGLBufferData(_texCoordinates, (numQuads*4*sizeof(Vec2)), 1);
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_TEX_COORD, 2, GL_FLOAT, GL_FALSE, 0, 0);
setGLIndexData(_indices, n * 12, 0);
@ -576,9 +576,9 @@ void TiledGrid3D::calculateVertexPoints(void)
CC_SAFE_FREE(_texCoordinates);
CC_SAFE_FREE(_indices);
_vertices = malloc(numQuads*4*sizeof(Vector3));
_originalVertices = malloc(numQuads*4*sizeof(Vector3));
_texCoordinates = malloc(numQuads*4*sizeof(Vector2));
_vertices = malloc(numQuads*4*sizeof(Vec3));
_originalVertices = malloc(numQuads*4*sizeof(Vec3));
_texCoordinates = malloc(numQuads*4*sizeof(Vec2));
_indices = (GLushort*)malloc(numQuads*6*sizeof(GLushort));
GLfloat *vertArray = (GLfloat*)_vertices;
@ -643,7 +643,7 @@ void TiledGrid3D::calculateVertexPoints(void)
memcpy(_originalVertices, _vertices, numQuads * 12 * sizeof(GLfloat));
}
void TiledGrid3D::setTile(const Vector2& pos, const Quad3& coords)
void TiledGrid3D::setTile(const Vec2& pos, const Quad3& coords)
{
CCASSERT( pos.x == (unsigned int)pos.x && pos.y == (unsigned int) pos.y , "Numbers must be integers");
int idx = (_gridSize.height * pos.x + pos.y) * 4 * 3;
@ -651,7 +651,7 @@ void TiledGrid3D::setTile(const Vector2& pos, const Quad3& coords)
memcpy(&vertArray[idx], &coords, sizeof(Quad3));
}
Quad3 TiledGrid3D::getOriginalTile(const Vector2& pos) const
Quad3 TiledGrid3D::getOriginalTile(const Vec2& pos) const
{
CCASSERT( pos.x == (unsigned int)pos.x && pos.y == (unsigned int) pos.y , "Numbers must be integers");
int idx = (_gridSize.height * pos.x + pos.y) * 4 * 3;
@ -663,7 +663,7 @@ Quad3 TiledGrid3D::getOriginalTile(const Vector2& pos) const
return ret;
}
Quad3 TiledGrid3D::getTile(const Vector2& pos) const
Quad3 TiledGrid3D::getTile(const Vec2& pos) const
{
CCASSERT( pos.x == (unsigned int)pos.x && pos.y == (unsigned int) pos.y , "Numbers must be integers");
int idx = (_gridSize.height * pos.x + pos.y) * 4 * 3;

View File

@ -30,7 +30,7 @@ THE SOFTWARE.
#include "base/ccTypes.h"
#include "base/CCDirector.h"
#include "2d/CCNode.h"
#include "2d/CCTexture2D.h"
#include "renderer/CCTexture2D.h"
#ifdef EMSCRIPTEN
#include "CCGLBufferedNode.h"
#endif // EMSCRIPTEN
@ -77,8 +77,8 @@ public:
inline void setGridSize(const Size& gridSize) { _gridSize = gridSize; }
/** pixels between the grids */
inline const Vector2& getStep(void) const { return _step; }
inline void setStep(const Vector2& step) { _step = step; }
inline const Vec2& getStep(void) const { return _step; }
inline void setStep(const Vec2& step) { _step = step; }
/** is texture flipped */
inline bool isTextureFlipped(void) const { return _isTextureFlipped; }
@ -97,7 +97,7 @@ protected:
int _reuseGrid;
Size _gridSize;
Texture2D *_texture;
Vector2 _step;
Vec2 _step;
Grabber *_grabber;
bool _isTextureFlipped;
GLProgram* _shaderProgram;
@ -131,28 +131,28 @@ public:
* @js NA
* @lua NA
*/
Vector3 getVertex(const Vector2& pos) const;
Vec3 getVertex(const Vec2& pos) const;
/** @deprecated Use getVertex() instead
* @js NA
* @lua NA
*/
CC_DEPRECATED_ATTRIBUTE Vector3 vertex(const Vector2& pos) const { return getVertex(pos); }
CC_DEPRECATED_ATTRIBUTE Vec3 vertex(const Vec2& pos) const { return getVertex(pos); }
/** returns the original (non-transformed) vertex at a given position
* @js NA
* @lua NA
*/
Vector3 getOriginalVertex(const Vector2& pos) const;
Vec3 getOriginalVertex(const Vec2& pos) const;
/** @deprecated Use getOriginalVertex() instead
* @js NA
* @lua NA
*/
CC_DEPRECATED_ATTRIBUTE Vector3 originalVertex(const Vector2& pos) const { return getOriginalVertex(pos); }
CC_DEPRECATED_ATTRIBUTE Vec3 originalVertex(const Vec2& pos) const { return getOriginalVertex(pos); }
/** sets a new vertex at a given position
* @js NA
* @lua NA
*/
void setVertex(const Vector2& pos, const Vector3& vertex);
void setVertex(const Vec2& pos, const Vec3& vertex);
// Overrides
virtual void blit() override;
@ -194,28 +194,28 @@ public:
* @js NA
* @lua NA
*/
Quad3 getTile(const Vector2& pos) const;
Quad3 getTile(const Vec2& pos) const;
/** returns the tile at the given position
* @js NA
* @lua NA
*/
CC_DEPRECATED_ATTRIBUTE Quad3 tile(const Vector2& pos) const { return getTile(pos); }
CC_DEPRECATED_ATTRIBUTE Quad3 tile(const Vec2& pos) const { return getTile(pos); }
/** returns the original tile (untransformed) at the given position
* @js NA
* @lua NA
*/
Quad3 getOriginalTile(const Vector2& pos) const;
Quad3 getOriginalTile(const Vec2& pos) const;
/** returns the original tile (untransformed) at the given position
* @js NA
* @lua NA
*/
CC_DEPRECATED_ATTRIBUTE Quad3 originalTile(const Vector2& pos) const { return getOriginalTile(pos); }
CC_DEPRECATED_ATTRIBUTE Quad3 originalTile(const Vec2& pos) const { return getOriginalTile(pos); }
/** sets a new tile
* @js NA
* @lua NA
*/
void setTile(const Vector2& pos, const Quad3& coords);
void setTile(const Vec2& pos, const Quad3& coords);
// Overrides
virtual void blit() override;

View File

@ -27,9 +27,9 @@
#include "2d/CCFontAtlasCache.h"
#include "2d/CCSprite.h"
#include "2d/CCLabelTextFormatter.h"
#include "2d/ccUTF8.h"
#include "base/ccUTF8.h"
#include "2d/CCSpriteFrame.h"
#include "2d/platform/CCFileUtils.h"
#include "platform/CCFileUtils.h"
#include "2d/CCFont.h"
#include "renderer/CCGLProgramState.h"
#include "renderer/CCRenderer.h"
@ -129,7 +129,7 @@ Label* Label::createWithTTF(const TTFConfig& ttfConfig, const std::string& text,
return nullptr;
}
Label* Label::createWithBMFont(const std::string& bmfontFilePath, const std::string& text,const TextHAlignment& alignment /* = TextHAlignment::LEFT */, int maxLineWidth /* = 0 */, const Vector2& imageOffset /* = Vector2::ZERO */)
Label* Label::createWithBMFont(const std::string& bmfontFilePath, const std::string& text,const TextHAlignment& alignment /* = TextHAlignment::LEFT */, int maxLineWidth /* = 0 */, const Vec2& imageOffset /* = Vec2::ZERO */)
{
auto ret = new Label(nullptr,alignment);
@ -260,8 +260,9 @@ Label::Label(FontAtlas *atlas /* = nullptr */, TextHAlignment hAlignment /* = Te
, _shadowDirty(false)
, _compatibleMode(false)
, _insideBounds(true)
, _effectColorF(Color4F::BLACK)
{
setAnchorPoint(Vector2::ANCHOR_MIDDLE);
setAnchorPoint(Vec2::ANCHOR_MIDDLE);
reset();
#if CC_ENABLE_CACHE_TEXTURE_DATA
@ -348,20 +349,20 @@ void Label::updateShaderProgram()
break;
case cocos2d::LabelEffect::OUTLINE:
setGLProgramState(GLProgramState::getOrCreateWithGLProgramName(GLProgram::SHADER_NAME_LABEL_OUTLINE));
_uniformEffectColor = glGetUniformLocation(getGLProgram()->getProgram(), "v_effectColor");
_uniformEffectColor = glGetUniformLocation(getGLProgram()->getProgram(), "u_effectColor");
break;
case cocos2d::LabelEffect::GLOW:
if (_useDistanceField)
{
setGLProgramState(GLProgramState::getOrCreateWithGLProgramName(GLProgram::SHADER_NAME_LABEL_DISTANCEFIELD_GLOW));
_uniformEffectColor = glGetUniformLocation(getGLProgram()->getProgram(), "v_effectColor");
_uniformEffectColor = glGetUniformLocation(getGLProgram()->getProgram(), "u_effectColor");
}
break;
default:
return;
}
_uniformTextColor = glGetUniformLocation(getGLProgram()->getProgram(), "v_textColor");
_uniformTextColor = glGetUniformLocation(getGLProgram()->getProgram(), "u_textColor");
}
void Label::setFontAtlas(FontAtlas* atlas,bool distanceFieldEnabled /* = false */, bool useA8Shader /* = false */)
@ -394,7 +395,7 @@ void Label::setFontAtlas(FontAtlas* atlas,bool distanceFieldEnabled /* = false *
_reusedLetter = Sprite::createWithTexture(_fontAtlas->getTexture(0));
_reusedLetter->setOpacityModifyRGB(_isOpacityModifyRGB);
_reusedLetter->retain();
_reusedLetter->setAnchorPoint(Vector2::ANCHOR_TOP_LEFT);
_reusedLetter->setAnchorPoint(Vec2::ANCHOR_TOP_LEFT);
_reusedLetter->setBatchNode(this);
}
else
@ -426,6 +427,7 @@ bool Label::setTTFConfig(const TTFConfig& ttfConfig)
reset();
return false;
}
_systemFontDirty = false;
_currentLabelType = LabelType::TTF;
setFontAtlas(newAtlas,ttfConfig.distanceFieldEnabled,true);
@ -452,7 +454,7 @@ bool Label::setTTFConfig(const TTFConfig& ttfConfig)
return true;
}
bool Label::setBMFontFilePath(const std::string& bmfontFilePath, const Vector2& imageOffset /* = Vector2::ZERO */)
bool Label::setBMFontFilePath(const std::string& bmfontFilePath, const Vec2& imageOffset /* = Vec2::ZERO */)
{
FontAtlas *newAtlas = FontAtlasCache::getFontAtlasFNT(bmfontFilePath,imageOffset);
@ -470,13 +472,16 @@ bool Label::setBMFontFilePath(const std::string& bmfontFilePath, const Vector2&
void Label::setString(const std::string& text)
{
_originalUTF8String = text;
_contentDirty = true;
std::u16string utf16String;
if (StringUtils::UTF8ToUTF16(_originalUTF8String, utf16String))
if (text.compare(_originalUTF8String))
{
_currentUTF16String = utf16String;
_originalUTF8String = text;
_contentDirty = true;
std::u16string utf16String;
if (StringUtils::UTF8ToUTF16(_originalUTF8String, utf16String))
{
_currentUTF16String = utf16String;
}
}
}
@ -592,8 +597,8 @@ void Label::alignText()
for (auto index = _batchNodes.size(); index < textures.size(); ++index)
{
auto batchNode = SpriteBatchNode::createWithTexture(textures[index]);
batchNode->setAnchorPoint(Vector2::ANCHOR_TOP_LEFT);
batchNode->setPosition(Vector2::ZERO);
batchNode->setAnchorPoint(Vec2::ANCHOR_TOP_LEFT);
batchNode->setPosition(Vec2::ZERO);
Node::addChild(batchNode,0,Node::INVALID_TAG);
_batchNodes.push_back(batchNode);
}
@ -675,7 +680,7 @@ void Label::updateQuads()
}
}
bool Label::recordLetterInfo(const cocos2d::Vector2& point,const FontLetterDefinition& letterDef, int spriteIndex)
bool Label::recordLetterInfo(const cocos2d::Vec2& point,const FontLetterDefinition& letterDef, int spriteIndex)
{
if (static_cast<std::size_t>(spriteIndex) >= _lettersInfo.size())
{
@ -804,7 +809,7 @@ void Label::setFontScale(float fontScale)
Node::setScale(_fontScale);
}
void Label::onDraw(const Matrix& transform, bool transformUpdated)
void Label::onDraw(const Mat4& transform, bool transformUpdated)
{
CC_PROFILER_START("Label - draw");
@ -872,7 +877,7 @@ void Label::drawShadowWithoutBlur()
setColor(oldColor);
}
void Label::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void Label::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
// Don't do calculate the culling if the transform was not updated
_insideBounds = transformUpdated ? renderer->checkVisibility(transform, _contentSize) : _insideBounds;
@ -892,7 +897,7 @@ void Label::createSpriteWithFontDefinition()
texture->initWithString(_originalUTF8String.c_str(),_fontDefinition);
_textSprite = Sprite::createWithTexture(texture);
_textSprite->setAnchorPoint(Vector2::ANCHOR_BOTTOM_LEFT);
_textSprite->setAnchorPoint(Vec2::ANCHOR_BOTTOM_LEFT);
this->setContentSize(_textSprite->getContentSize());
texture->release();
if (_blendFuncDirty)
@ -1030,7 +1035,7 @@ void Label::drawTextSprite(Renderer *renderer, bool parentTransformUpdated)
{
_shadowNode->setBlendFunc(_blendFunc);
}
_shadowNode->setAnchorPoint(Vector2::ANCHOR_BOTTOM_LEFT);
_shadowNode->setAnchorPoint(Vec2::ANCHOR_BOTTOM_LEFT);
_shadowNode->setColor(_shadowColor);
_shadowNode->setOpacity(_shadowOpacity * _displayedOpacity);
_shadowNode->setPosition(_shadowOffset.width, _shadowOffset.height);
@ -1044,7 +1049,7 @@ void Label::drawTextSprite(Renderer *renderer, bool parentTransformUpdated)
_textSprite->visit(renderer, _modelViewTransform, parentTransformUpdated);
}
void Label::visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated)
void Label::visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated)
{
if (! _visible || _originalUTF8String.empty())
{
@ -1083,7 +1088,7 @@ void Label::visit(Renderer *renderer, const Matrix &parentTransform, bool parent
_transformUpdated = false;
// IMPORTANT:
// To ease the migration to v3.0, we still support the Matrix stack,
// To ease the migration to v3.0, we still support the Mat4 stack,
// but it is deprecated and your code should not rely on it
Director* director = Director::getInstance();
CCASSERT(nullptr != director, "Director is null when seting matrix stack");
@ -1156,7 +1161,7 @@ Sprite * Label::getLetter(int letterIndex)
sp = Sprite::createWithTexture(_fontAtlas->getTexture(letter.def.textureID),uvRect);
sp->setBatchNode(_batchNodes[letter.def.textureID]);
sp->setPosition(Vector2(letter.position.x + uvRect.size.width / 2,
sp->setPosition(Vec2(letter.position.x + uvRect.size.width / 2,
letter.position.y - uvRect.size.height / 2));
sp->setOpacity(_realOpacity);

View File

@ -104,7 +104,7 @@ public:
/* Creates a label with an FNT file,an initial string,horizontal alignment,max line width and the offset of image*/
static Label* createWithBMFont(const std::string& bmfontFilePath, const std::string& text,
const TextHAlignment& alignment = TextHAlignment::LEFT, int maxLineWidth = 0,
const Vector2& imageOffset = Vector2::ZERO);
const Vec2& imageOffset = Vec2::ZERO);
static Label * createWithCharMap(const std::string& charMapFile, int itemWidth, int itemHeight, int startCharMap);
static Label * createWithCharMap(Texture2D* texture, int itemWidth, int itemHeight, int startCharMap);
@ -114,7 +114,7 @@ public:
virtual bool setTTFConfig(const TTFConfig& ttfConfig);
virtual const TTFConfig& getTTFConfig() const { return _fontConfig;}
virtual bool setBMFontFilePath(const std::string& bmfontFilePath, const Vector2& imageOffset = Vector2::ZERO);
virtual bool setBMFontFilePath(const std::string& bmfontFilePath, const Vec2& imageOffset = Vec2::ZERO);
const std::string& getBMFontFilePath() const { return _bmFontPath;}
virtual bool setCharMap(const std::string& charMapFile, int itemWidth, int itemHeight, int startCharMap);
@ -237,8 +237,8 @@ public:
virtual Rect getBoundingBox() const override;
virtual void visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated) override;
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
CC_DEPRECATED_ATTRIBUTE static Label* create(const std::string& text, const std::string& font, float fontSize,
const Size& dimensions = Size::ZERO, TextHAlignment hAlignment = TextHAlignment::LEFT,
@ -248,13 +248,13 @@ public:
CC_DEPRECATED_ATTRIBUTE const FontDefinition& getFontDefinition() const { return _fontDefinition; }
protected:
void onDraw(const Matrix& transform, bool transformUpdated);
void onDraw(const Mat4& transform, bool transformUpdated);
struct LetterInfo
{
FontLetterDefinition def;
Vector2 position;
Vec2 position;
Size contentSize;
int atlasIndex;
};
@ -279,7 +279,7 @@ protected:
virtual void setFontAtlas(FontAtlas* atlas,bool distanceFieldEnabled = false, bool useA8Shader = false);
bool recordLetterInfo(const cocos2d::Vector2& point,const FontLetterDefinition& letterDef, int spriteIndex);
bool recordLetterInfo(const cocos2d::Vec2& point,const FontLetterDefinition& letterDef, int spriteIndex);
bool recordPlaceholderInfo(int spriteIndex);
void setFontScale(float fontScale);
@ -363,7 +363,7 @@ protected:
bool _shadowEnabled;
Size _shadowOffset;
int _shadowBlurRadius;
Matrix _shadowTransform;
Mat4 _shadowTransform;
Color3B _shadowColor;
float _shadowOpacity;
Sprite* _shadowNode;

View File

@ -25,17 +25,17 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
****************************************************************************/
#include "CCLabelAtlas.h"
#include "2d/CCTextureAtlas.h"
#include "2d/CCTextureCache.h"
#include "renderer/CCTextureAtlas.h"
#include "2d/CCDrawingPrimitives.h"
#include "platform/CCFileUtils.h"
#include "base/ccConfig.h"
#include "base/CCDirector.h"
#include "renderer/CCTextureCache.h"
#include "renderer/CCGLProgramCache.h"
#include "renderer/CCGLProgram.h"
#include "renderer/ccGLStateCache.h"
#include "base/CCDirector.h"
#include "math/TransformUtils.h"
#include "2d/platform/CCFileUtils.h"
// external
#include "deprecated/CCString.h"
#if CC_LABELATLAS_DEBUG_DRAW
@ -249,7 +249,7 @@ void LabelAtlas::updateColor()
//CCLabelAtlas - draw
#if CC_LABELATLAS_DEBUG_DRAW
void LabelAtlas::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void LabelAtlas::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
AtlasNode::draw(renderer, transform, transformUpdated);
@ -258,7 +258,7 @@ void LabelAtlas::draw(Renderer *renderer, const Matrix &transform, bool transfor
renderer->addCommand(&_customDebugDrawCommand);
}
void LabelAtlas::drawDebugData(const Matrix& transform, bool transformUpdated)
void LabelAtlas::drawDebugData(const Mat4& transform, bool transformUpdated)
{
Director* director = Director::getInstance();
director->pushMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_MODELVIEW);
@ -266,12 +266,12 @@ void LabelAtlas::drawDebugData(const Matrix& transform, bool transformUpdated)
auto size = getContentSize();
Vector2 vertices[4]=
Vec2 vertices[4]=
{
Vector2::ZERO,
Vector2(size.width, 0),
Vector2(size.width, size.height),
Vector2(0, size.height)
Vec2::ZERO,
Vec2(size.width, 0),
Vec2(size.width, size.height),
Vec2(0, size.height)
};
DrawPrimitives::drawPoly(vertices, 4, true);

View File

@ -84,7 +84,7 @@ public:
virtual std::string getDescription() const override;
#if CC_LABELATLAS_DEBUG_DRAW
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
#endif
protected:
@ -100,7 +100,7 @@ protected:
#if CC_LABELATLAS_DEBUG_DRAW
CustomCommand _customDebugDrawCommand;
void drawDebugData(const Matrix& transform, bool transformUpdated);
void drawDebugData(const Mat4& transform, bool transformUpdated);
#endif
// string to render

View File

@ -65,7 +65,7 @@ LabelBMFont * LabelBMFont::create()
}
//LabelBMFont - Creation & Init
LabelBMFont *LabelBMFont::create(const std::string& str, const std::string& fntFile, float width /* = 0 */, TextHAlignment alignment /* = TextHAlignment::LEFT */,const Vector2& imageOffset /* = Vector2::ZERO */)
LabelBMFont *LabelBMFont::create(const std::string& str, const std::string& fntFile, float width /* = 0 */, TextHAlignment alignment /* = TextHAlignment::LEFT */,const Vec2& imageOffset /* = Vec2::ZERO */)
{
LabelBMFont *ret = new LabelBMFont();
if(ret && ret->initWithString(str, fntFile, width, alignment,imageOffset))
@ -77,7 +77,7 @@ LabelBMFont *LabelBMFont::create(const std::string& str, const std::string& fntF
return nullptr;
}
bool LabelBMFont::initWithString(const std::string& str, const std::string& fntFile, float width /* = 0 */, TextHAlignment alignment /* = TextHAlignment::LEFT */,const Vector2& imageOffset /* = Vector2::ZERO */)
bool LabelBMFont::initWithString(const std::string& str, const std::string& fntFile, float width /* = 0 */, TextHAlignment alignment /* = TextHAlignment::LEFT */,const Vec2& imageOffset /* = Vec2::ZERO */)
{
if (_label->setBMFontFilePath(fntFile,imageOffset))
{
@ -95,9 +95,9 @@ bool LabelBMFont::initWithString(const std::string& str, const std::string& fntF
LabelBMFont::LabelBMFont()
{
_label = Label::create();
_label->setAnchorPoint(Vector2::ANCHOR_BOTTOM_LEFT);
_label->setAnchorPoint(Vec2::ANCHOR_BOTTOM_LEFT);
this->addChild(_label);
this->setAnchorPoint(Vector2::ANCHOR_MIDDLE);
this->setAnchorPoint(Vec2::ANCHOR_MIDDLE);
_cascadeOpacityEnabled = true;
}
@ -152,7 +152,7 @@ void LabelBMFont::setLineBreakWithoutSpace( bool breakWithoutSpace )
}
// LabelBMFont - FntFile
void LabelBMFont::setFntFile(const std::string& fntFile, const Vector2& imageOffset /* = Vector2::ZERO */)
void LabelBMFont::setFntFile(const std::string& fntFile, const Vec2& imageOffset /* = Vec2::ZERO */)
{
if (_fntFile.compare(fntFile) != 0)
{
@ -181,7 +181,7 @@ const BlendFunc &LabelBMFont::getBlendFunc() const
return _label->getBlendFunc();
}
Node* LabelBMFont::getChildByTag(int tag)
Node* LabelBMFont::getChildByTag(int tag) const
{
return _label->getLetter(tag);
}
@ -207,7 +207,7 @@ Rect LabelBMFont::getBoundingBox() const
return _label->getBoundingBox();
}
#if CC_LABELBMFONT_DEBUG_DRAW
void LabelBMFont::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void LabelBMFont::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
Node::draw(renderer, transform, transformUpdated);
@ -216,7 +216,7 @@ void LabelBMFont::draw(Renderer *renderer, const Matrix &transform, bool transfo
renderer->addCommand(&_customDebugDrawCommand);
}
void LabelBMFont::drawDebugData(const Matrix& transform, bool transformUpdated)
void LabelBMFont::drawDebugData(const Mat4& transform, bool transformUpdated)
{
Director* director = Director::getInstance();
director->pushMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_MODELVIEW);
@ -224,12 +224,12 @@ void LabelBMFont::drawDebugData(const Matrix& transform, bool transformUpdated)
auto size = getContentSize();
Vector2 vertices[4]=
Vec2 vertices[4]=
{
Vector2::ZERO,
Vector2(size.width, 0),
Vector2(size.width, size.height),
Vector2(0, size.height)
Vec2::ZERO,
Vec2(size.width, 0),
Vec2(size.width, size.height),
Vec2(0, size.height)
};
DrawPrimitives::drawPoly(vertices, 4, true);

View File

@ -85,14 +85,14 @@ public:
virtual ~LabelBMFont();
/** creates a bitmap font atlas with an initial string and the FNT file */
static LabelBMFont * create(const std::string& str, const std::string& fntFile, float width = 0, TextHAlignment alignment = TextHAlignment::LEFT,const Vector2& imageOffset = Vector2::ZERO);
static LabelBMFont * create(const std::string& str, const std::string& fntFile, float width = 0, TextHAlignment alignment = TextHAlignment::LEFT,const Vec2& imageOffset = Vec2::ZERO);
/** Creates an label.
*/
static LabelBMFont * create();
/** init a bitmap font atlas with an initial string and the FNT file */
bool initWithString(const std::string& str, const std::string& fntFile, float width = 0, TextHAlignment alignment = TextHAlignment::LEFT,const Vector2& imageOffset = Vector2::ZERO);
bool initWithString(const std::string& str, const std::string& fntFile, float width = 0, TextHAlignment alignment = TextHAlignment::LEFT,const Vec2& imageOffset = Vec2::ZERO);
// super method
virtual void setString(const std::string& newString) override;
@ -107,7 +107,7 @@ public:
virtual bool isOpacityModifyRGB() const;
virtual void setOpacityModifyRGB(bool isOpacityModifyRGB);
void setFntFile(const std::string& fntFile, const Vector2& imageOffset = Vector2::ZERO);
void setFntFile(const std::string& fntFile, const Vec2& imageOffset = Vec2::ZERO);
const std::string& getFntFile() const;
virtual void setBlendFunc(const BlendFunc &blendFunc) override;
@ -115,7 +115,7 @@ public:
virtual const BlendFunc &getBlendFunc() const override;
virtual Sprite * getLetter(int ID);
virtual Node * getChildByTag(int tag) override;
virtual Node * getChildByTag(int tag) const override;
virtual void setColor(const Color3B& color) override;
@ -124,13 +124,13 @@ public:
virtual std::string getDescription() const override;
#if CC_LABELBMFONT_DEBUG_DRAW
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
#endif
private:
#if CC_LABELBMFONT_DEBUG_DRAW
CustomCommand _customDebugDrawCommand;
void drawDebugData(const Matrix& transform, bool transformUpdated);
void drawDebugData(const Mat4& transform, bool transformUpdated);
#endif
// name of fntFile

View File

@ -39,9 +39,9 @@ NS_CC_BEGIN
LabelTTF::LabelTTF()
{
_renderLabel = Label::create();
_renderLabel->setAnchorPoint(Vector2::ANCHOR_BOTTOM_LEFT);
_renderLabel->setAnchorPoint(Vec2::ANCHOR_BOTTOM_LEFT);
this->addChild(_renderLabel);
this->setAnchorPoint(Vector2::ANCHOR_MIDDLE);
this->setAnchorPoint(Vec2::ANCHOR_MIDDLE);
_contentDirty = false;
_cascadeColorEnabled = true;
@ -262,7 +262,7 @@ void LabelTTF::setFlippedY(bool flippedY)
}
}
void LabelTTF::visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated)
void LabelTTF::visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated)
{
if (_contentDirty)
{

View File

@ -150,7 +150,7 @@ public:
* @lua NA
*/
virtual std::string getDescription() const override;
virtual void visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated) override;
virtual void visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated) override;
virtual const Size& getContentSize() const override;
protected:
Label* _renderLabel;

View File

@ -23,10 +23,11 @@
THE SOFTWARE.
****************************************************************************/
#include "2d/CCLabelTextFormatter.h"
#include <vector>
#include "ccUTF8.h"
#include "CCLabelTextFormatter.h"
#include "base/ccUTF8.h"
#include "base/CCDirector.h"
#include "2d/CCLabel.h"
@ -310,7 +311,7 @@ bool LabelTextFormatter::createStringSprites(Label *theLabel)
auto strWhole = theLabel->_currentUTF16String;
auto fontAtlas = theLabel->_fontAtlas;
FontLetterDefinition tempDefinition;
Vector2 letterPosition;
Vec2 letterPosition;
const auto& kernings = theLabel->_horizontalKernings;
float clipTop = 0;

View File

@ -26,6 +26,8 @@
#ifndef _CCLabelTextFormatter_h_
#define _CCLabelTextFormatter_h_
#include "base/CCPlatformMacros.h"
NS_CC_BEGIN
class Label;

View File

@ -27,8 +27,8 @@ THE SOFTWARE.
#include <stdarg.h>
#include "2d/CCLayer.h"
#include "2d/CCScriptSupport.h"
#include "2d/platform/CCDevice.h"
#include "base/CCScriptSupport.h"
#include "platform/CCDevice.h"
#include "2d/CCScene.h"
#include "renderer/CCGLProgramState.h"
#include "renderer/CCGLProgram.h"
@ -65,7 +65,7 @@ Layer::Layer()
, _swallowsTouches(true)
{
_ignoreAnchorPointForPosition = true;
setAnchorPoint(Vector2(0.5f, 0.5f));
setAnchorPoint(Vec2(0.5f, 0.5f));
}
Layer::~Layer()
@ -584,7 +584,7 @@ void LayerColor::updateColor()
}
}
void LayerColor::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void LayerColor::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
_customCommand.init(_globalZOrder);
_customCommand.func = CC_CALLBACK_0(LayerColor::onDraw, this, transform, transformUpdated);
@ -592,15 +592,15 @@ void LayerColor::draw(Renderer *renderer, const Matrix &transform, bool transfor
for(int i = 0; i < 4; ++i)
{
Vector4 pos;
Vec4 pos;
pos.x = _squareVertices[i].x; pos.y = _squareVertices[i].y; pos.z = _positionZ;
pos.w = 1;
_modelViewTransform.transformVector(&pos);
_noMVPVertices[i] = Vector3(pos.x,pos.y,pos.z)/pos.w;
_noMVPVertices[i] = Vec3(pos.x,pos.y,pos.z)/pos.w;
}
}
void LayerColor::onDraw(const Matrix& transform, bool transformUpdated)
void LayerColor::onDraw(const Mat4& transform, bool transformUpdated)
{
getGLProgram()->use();
getGLProgram()->setUniformsForBuiltins(transform);
@ -610,7 +610,7 @@ void LayerColor::onDraw(const Matrix& transform, bool transformUpdated)
// Attributes
//
#ifdef EMSCRIPTEN
setGLBufferData(_noMVPVertices, 4 * sizeof(Vector3), 0);
setGLBufferData(_noMVPVertices, 4 * sizeof(Vec3), 0);
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 3, GL_FLOAT, GL_FALSE, 0, 0);
setGLBufferData(_squareColors, 4 * sizeof(Color4F), 1);
@ -640,7 +640,7 @@ LayerGradient::LayerGradient()
, _endColor(Color4B::BLACK)
, _startOpacity(255)
, _endOpacity(255)
, _alongVector(Vector2(0, -1))
, _alongVector(Vec2(0, -1))
, _compressedInterpolation(true)
{
@ -662,7 +662,7 @@ LayerGradient* LayerGradient::create(const Color4B& start, const Color4B& end)
return nullptr;
}
LayerGradient* LayerGradient::create(const Color4B& start, const Color4B& end, const Vector2& v)
LayerGradient* LayerGradient::create(const Color4B& start, const Color4B& end, const Vec2& v)
{
LayerGradient * layer = new LayerGradient();
if( layer && layer->initWithColor(start, end, v))
@ -695,10 +695,10 @@ bool LayerGradient::init()
bool LayerGradient::initWithColor(const Color4B& start, const Color4B& end)
{
return initWithColor(start, end, Vector2(0, -1));
return initWithColor(start, end, Vec2(0, -1));
}
bool LayerGradient::initWithColor(const Color4B& start, const Color4B& end, const Vector2& v)
bool LayerGradient::initWithColor(const Color4B& start, const Color4B& end, const Vec2& v)
{
_endColor.r = end.r;
_endColor.g = end.g;
@ -722,7 +722,7 @@ void LayerGradient::updateColor()
return;
float c = sqrtf(2.0f);
Vector2 u = Vector2(_alongVector.x / h, _alongVector.y / h);
Vec2 u = Vec2(_alongVector.x / h, _alongVector.y / h);
// Compressed Interpolation mode
if (_compressedInterpolation)
@ -812,13 +812,13 @@ GLubyte LayerGradient::getEndOpacity() const
return _endOpacity;
}
void LayerGradient::setVector(const Vector2& var)
void LayerGradient::setVector(const Vec2& var)
{
_alongVector = var;
updateColor();
}
const Vector2& LayerGradient::getVector() const
const Vec2& LayerGradient::getVector() const
{
return _alongVector;
}

View File

@ -29,7 +29,7 @@ THE SOFTWARE.
#define __CCLAYER_H__
#include "2d/CCNode.h"
#include "2d/CCProtocols.h"
#include "base/CCProtocols.h"
#include "base/CCEventTouch.h"
#ifdef EMSCRIPTEN
#include "CCGLBufferedNode.h"
@ -270,7 +270,7 @@ public:
//
// Overrides
//
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
virtual void setContentSize(const Size & var) override;
/** BlendFunction. Conforms to BlendProtocol protocol */
@ -299,15 +299,15 @@ CC_CONSTRUCTOR_ACCESS:
bool initWithColor(const Color4B& color);
protected:
void onDraw(const Matrix& transform, bool transformUpdated);
void onDraw(const Mat4& transform, bool transformUpdated);
virtual void updateColor() override;
BlendFunc _blendFunc;
Vector2 _squareVertices[4];
Vec2 _squareVertices[4];
Color4F _squareColors[4];
CustomCommand _customCommand;
Vector3 _noMVPVertices[4];
Vec3 _noMVPVertices[4];
private:
CC_DISALLOW_COPY_AND_ASSIGN(LayerColor);
@ -345,7 +345,7 @@ public:
static LayerGradient* create(const Color4B& start, const Color4B& end);
/** Creates a full-screen Layer with a gradient between start and end in the direction of v. */
static LayerGradient* create(const Color4B& start, const Color4B& end, const Vector2& v);
static LayerGradient* create(const Color4B& start, const Color4B& end, const Vec2& v);
/** Whether or not the interpolation will be compressed in order to display all the colors of the gradient both in canonical and non canonical vectors
Default: true
@ -376,9 +376,9 @@ public:
/** Sets the directional vector that will be used for the gradient.
The default value is vertical direction (0,-1).
*/
void setVector(const Vector2& alongVector);
void setVector(const Vec2& alongVector);
/** Returns the directional vector used for the gradient */
const Vector2& getVector() const;
const Vec2& getVector() const;
virtual std::string getDescription() const override;
@ -397,7 +397,7 @@ CC_CONSTRUCTOR_ACCESS:
* @js init
* @lua init
*/
bool initWithColor(const Color4B& start, const Color4B& end, const Vector2& v);
bool initWithColor(const Color4B& start, const Color4B& end, const Vec2& v);
protected:
virtual void updateColor() override;
@ -406,7 +406,7 @@ protected:
Color3B _endColor;
GLubyte _startOpacity;
GLubyte _endOpacity;
Vector2 _alongVector;
Vec2 _alongVector;
bool _compressedInterpolation;
};

View File

@ -138,10 +138,10 @@ bool Menu::initWithArray(const Vector<MenuItem*>& arrayOfItems)
Size s = Director::getInstance()->getWinSize();
this->ignoreAnchorPointForPosition(true);
setAnchorPoint(Vector2(0.5f, 0.5f));
setAnchorPoint(Vec2(0.5f, 0.5f));
this->setContentSize(s);
setPosition(Vector2(s.width/2, s.height/2));
setPosition(Vec2(s.width/2, s.height/2));
int z=0;
@ -315,7 +315,7 @@ void Menu::alignItemsVerticallyWithPadding(float padding)
float y = height / 2.0f;
for(const auto &child : _children) {
child->setPosition(Vector2(0, y - child->getContentSize().height * child->getScaleY() / 2.0f));
child->setPosition(Vec2(0, y - child->getContentSize().height * child->getScaleY() / 2.0f));
y -= child->getContentSize().height * child->getScaleY() + padding;
}
}
@ -334,7 +334,7 @@ void Menu::alignItemsHorizontallyWithPadding(float padding)
float x = -width / 2.0f;
for(const auto &child : _children) {
child->setPosition(Vector2(x + child->getContentSize().width * child->getScaleX() / 2.0f, 0));
child->setPosition(Vec2(x + child->getContentSize().width * child->getScaleX() / 2.0f, 0));
x += child->getContentSize().width * child->getScaleX() + padding;
}
}
@ -413,7 +413,7 @@ void Menu::alignItemsInColumnsWithArray(const ValueVector& rows)
float tmp = child->getContentSize().height;
rowHeight = (unsigned int)((rowHeight >= tmp || isnan(tmp)) ? rowHeight : tmp);
child->setPosition(Vector2(x - winSize.width / 2,
child->setPosition(Vec2(x - winSize.width / 2,
y - child->getContentSize().height / 2));
x += w;
@ -514,7 +514,7 @@ void Menu::alignItemsInRowsWithArray(const ValueVector& columns)
float tmp = child->getContentSize().width;
columnWidth = (unsigned int)((columnWidth >= tmp || isnan(tmp)) ? columnWidth : tmp);
child->setPosition(Vector2(x + columnWidths[column] / 2,
child->setPosition(Vec2(x + columnWidths[column] / 2,
y - winSize.height / 2));
y -= child->getContentSize().height + 10;
@ -533,7 +533,7 @@ void Menu::alignItemsInRowsWithArray(const ValueVector& columns)
MenuItem* Menu::getItemForTouch(Touch *touch)
{
Vector2 touchLocation = touch->getLocation();
Vec2 touchLocation = touch->getLocation();
if (!_children.empty())
{
@ -542,9 +542,9 @@ MenuItem* Menu::getItemForTouch(Touch *touch)
MenuItem* child = dynamic_cast<MenuItem*>(*iter);
if (child && child->isVisible() && child->isEnabled())
{
Vector2 local = child->convertToNodeSpace(touchLocation);
Vec2 local = child->convertToNodeSpace(touchLocation);
Rect r = child->rect();
r.origin = Vector2::ZERO;
r.origin = Vec2::ZERO;
if (r.containsPoint(local))
{

View File

@ -30,7 +30,7 @@ THE SOFTWARE.
#include "2d/CCSprite.h"
#include "CCLabelAtlas.h"
#include "2d/CCLabel.h"
#include "2d/CCScriptSupport.h"
#include "base/CCScriptSupport.h"
#include "deprecated/CCString.h"
#include <stdarg.h>
#include <cstring>
@ -90,7 +90,7 @@ bool MenuItem::initWithTarget(cocos2d::Ref *target, SEL_MenuHandler selector )
bool MenuItem::initWithCallback(const ccMenuCallback& callback)
{
setAnchorPoint(Vector2(0.5f, 0.5f));
setAnchorPoint(Vec2(0.5f, 0.5f));
_callback = callback;
_enabled = true;
_selected = false;
@ -179,7 +179,7 @@ void MenuItemLabel::setLabel(Node* var)
{
if (var)
{
var->setAnchorPoint(Vector2::ANCHOR_BOTTOM_LEFT);
var->setAnchorPoint(Vec2::ANCHOR_BOTTOM_LEFT);
setContentSize(var->getContentSize());
addChild(var);
}
@ -483,7 +483,7 @@ void MenuItemSprite::setNormalImage(Node* image)
if (image)
{
addChild(image, 0, kNormalTag);
image->setAnchorPoint(Vector2(0, 0));
image->setAnchorPoint(Vec2(0, 0));
}
if (_normalImage)
@ -504,7 +504,7 @@ void MenuItemSprite::setSelectedImage(Node* image)
if (image)
{
addChild(image, 0, kSelectedTag);
image->setAnchorPoint(Vector2(0, 0));
image->setAnchorPoint(Vec2(0, 0));
}
if (_selectedImage)
@ -524,7 +524,7 @@ void MenuItemSprite::setDisabledImage(Node* image)
if (image)
{
addChild(image, 0, kDisableTag);
image->setAnchorPoint(Vector2(0, 0));
image->setAnchorPoint(Vec2(0, 0));
}
if (_disabledImage)
@ -935,7 +935,7 @@ void MenuItemToggle::setSelectedIndex(unsigned int index)
this->addChild(item, 0, kCurrentItem);
Size s = item->getContentSize();
this->setContentSize(s);
item->setPosition( Vector2( s.width/2, s.height/2 ) );
item->setPosition( Vec2( s.width/2, s.height/2 ) );
}
}

View File

@ -33,7 +33,7 @@ THE SOFTWARE.
// cocos2d includes
#include "2d/CCNode.h"
#include "2d/CCProtocols.h"
#include "base/CCProtocols.h"
NS_CC_BEGIN

View File

@ -23,16 +23,17 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
****************************************************************************/
#include "2d/CCMotionStreak.h"
#include "2d/CCTextureCache.h"
#include "2d/CCVertex.h"
#include "math/CCVertex.h"
#include "base/ccMacros.h"
#include "base/CCDirector.h"
#include "renderer/CCTextureCache.h"
#include "renderer/ccGLStateCache.h"
#include "renderer/CCGLProgram.h"
#include "renderer/CCGLProgramState.h"
#include "renderer/CCCustomCommand.h"
#include "renderer/CCRenderer.h"
#include "base/ccMacros.h"
#include "base/CCDirector.h"
NS_CC_BEGIN
@ -41,7 +42,7 @@ MotionStreak::MotionStreak()
, _startingPositionInitialized(false)
, _texture(nullptr)
, _blendFunc(BlendFunc::ALPHA_NON_PREMULTIPLIED)
, _positionR(Vector2::ZERO)
, _positionR(Vec2::ZERO)
, _stroke(0.0f)
, _fadeDelta(0.0f)
, _minSeg(0.0f)
@ -102,12 +103,12 @@ bool MotionStreak::initWithFade(float fade, float minSeg, float stroke, const Co
bool MotionStreak::initWithFade(float fade, float minSeg, float stroke, const Color3B& color, Texture2D* texture)
{
Node::setPosition(Vector2::ZERO);
setAnchorPoint(Vector2::ZERO);
Node::setPosition(Vec2::ZERO);
setAnchorPoint(Vec2::ZERO);
ignoreAnchorPointForPosition(true);
_startingPositionInitialized = false;
_positionR = Vector2::ZERO;
_positionR = Vec2::ZERO;
_fastMode = true;
_minSeg = (minSeg == -1.0f) ? stroke/5.0f : minSeg;
_minSeg *= _minSeg;
@ -118,9 +119,9 @@ bool MotionStreak::initWithFade(float fade, float minSeg, float stroke, const Co
_maxPoints = (int)(fade*60.0f)+2;
_nuPoints = 0;
_pointState = (float *)malloc(sizeof(float) * _maxPoints);
_pointVertexes = (Vector2*)malloc(sizeof(Vector2) * _maxPoints);
_pointVertexes = (Vec2*)malloc(sizeof(Vec2) * _maxPoints);
_vertices = (Vector2*)malloc(sizeof(Vector2) * _maxPoints * 2);
_vertices = (Vec2*)malloc(sizeof(Vec2) * _maxPoints * 2);
_texCoords = (Tex2F*)malloc(sizeof(Tex2F) * _maxPoints * 2);
_colorPointer = (GLubyte*)malloc(sizeof(GLubyte) * _maxPoints * 2 * 4);
@ -137,7 +138,7 @@ bool MotionStreak::initWithFade(float fade, float minSeg, float stroke, const Co
return true;
}
void MotionStreak::setPosition(const Vector2& position)
void MotionStreak::setPosition(const Vec2& position)
{
if (!_startingPositionInitialized) {
_startingPositionInitialized = true;
@ -154,7 +155,7 @@ void MotionStreak::setPosition(float x, float y)
_positionR.y = y;
}
const Vector2& MotionStreak::getPosition() const
const Vec2& MotionStreak::getPosition() const
{
return _positionR;
}
@ -373,7 +374,7 @@ void MotionStreak::reset()
_nuPoints = 0;
}
void MotionStreak::onDraw(const Matrix &transform, bool transformUpdated)
void MotionStreak::onDraw(const Mat4 &transform, bool transformUpdated)
{
getGLProgram()->use();
getGLProgram()->setUniformsForBuiltins(transform);
@ -385,7 +386,7 @@ void MotionStreak::onDraw(const Matrix &transform, bool transformUpdated)
#ifdef EMSCRIPTEN
// Size calculations from ::initWithFade
setGLBufferData(_vertices, (sizeof(Vector2) * _maxPoints * 2), 0);
setGLBufferData(_vertices, (sizeof(Vec2) * _maxPoints * 2), 0);
glVertexAttribPointer(GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, 0, 0);
setGLBufferData(_texCoords, (sizeof(Tex2F) * _maxPoints * 2), 1);
@ -403,7 +404,7 @@ void MotionStreak::onDraw(const Matrix &transform, bool transformUpdated)
CC_INCREMENT_GL_DRAWN_BATCHES_AND_VERTICES(1, _nuPoints*2);
}
void MotionStreak::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void MotionStreak::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
if(_nuPoints <= 1)
return;

View File

@ -26,8 +26,8 @@ THE SOFTWARE.
#ifndef __CCMOTION_STREAK_H__
#define __CCMOTION_STREAK_H__
#include "2d/CCProtocols.h"
#include "2d/CCTexture2D.h"
#include "base/CCProtocols.h"
#include "renderer/CCTexture2D.h"
#include "base/ccTypes.h"
#include "2d/CCNode.h"
#include "renderer/CCCustomCommand.h"
@ -73,9 +73,9 @@ public:
}
// Overrides
virtual void setPosition(const Vector2& position) override;
virtual void setPosition(const Vec2& position) override;
virtual void setPosition(float x, float y) override;
virtual const Vector2& getPosition() const override;
virtual const Vec2& getPosition() const override;
virtual void getPosition(float* x, float* y) const override;
virtual void setPositionX(float x) override;
virtual void setPositionY(float y) override;
@ -85,7 +85,7 @@ public:
* @js NA
* @lua NA
*/
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
/**
* @js NA
* @lua NA
@ -120,7 +120,7 @@ CC_CONSTRUCTOR_ACCESS:
protected:
//renderer callback
void onDraw(const Matrix &transform, bool transformUpdated);
void onDraw(const Mat4 &transform, bool transformUpdated);
bool _fastMode;
bool _startingPositionInitialized;
@ -128,7 +128,7 @@ protected:
/** texture used for the motion streak */
Texture2D* _texture;
BlendFunc _blendFunc;
Vector2 _positionR;
Vec2 _positionR;
float _stroke;
float _fadeDelta;
@ -139,11 +139,11 @@ protected:
unsigned int _previousNuPoints;
/** Pointers */
Vector2* _pointVertexes;
Vec2* _pointVertexes;
float* _pointState;
// Opengl
Vector2* _vertices;
Vec2* _vertices;
GLubyte* _colorPointer;
Tex2F* _texCoords;

View File

@ -36,10 +36,10 @@ THE SOFTWARE.
#include "base/CCEventDispatcher.h"
#include "base/CCEvent.h"
#include "base/CCEventTouch.h"
#include "2d/ccCArray.h"
#include "base/ccCArray.h"
#include "2d/CCGrid.h"
#include "2d/CCActionManager.h"
#include "2d/CCScriptSupport.h"
#include "base/CCScriptSupport.h"
#include "2d/CCScene.h"
#include "2d/CCComponent.h"
#include "2d/CCComponentContainer.h"
@ -81,11 +81,11 @@ Node::Node(void)
, _scaleY(1.0f)
, _scaleZ(1.0f)
, _positionZ(0.0f)
, _position(Vector2::ZERO)
, _position(Vec2::ZERO)
, _skewX(0.0f)
, _skewY(0.0f)
, _anchorPointInPoints(Vector2::ZERO)
, _anchorPoint(Vector2::ZERO)
, _anchorPointInPoints(Vec2::ZERO)
, _anchorPoint(Vec2::ZERO)
, _contentSize(Size::ZERO)
, _useAdditionalTransform(false)
, _transformDirty(true)
@ -135,7 +135,7 @@ Node::Node(void)
ScriptEngineProtocol* engine = ScriptEngineManager::getInstance()->getScriptEngine();
_scriptType = engine != nullptr ? engine->getScriptType() : kScriptTypeNone;
#endif
_transform = _inverse = _additionalTransform = Matrix::IDENTITY;
_transform = _inverse = _additionalTransform = Mat4::IDENTITY;
}
Node::~Node()
@ -277,7 +277,7 @@ float Node::getRotationSkewX() const
return _rotationZ_X;
}
void Node::setRotation3D(const Vector3& rotation)
void Node::setRotation3D(const Vec3& rotation)
{
if (_rotationX == rotation.x &&
_rotationY == rotation.y &&
@ -301,12 +301,12 @@ void Node::setRotation3D(const Vector3& rotation)
#endif
}
Vector3 Node::getRotation3D() const
Vec3 Node::getRotation3D() const
{
// rotation Z is decomposed in 2 to simulate Skew for Flash animations
CCASSERT(_rotationZ_X == _rotationZ_Y, "_rotationZ_X != _rotationZ_Y");
return Vector3(_rotationX,_rotationY,_rotationZ_X);
return Vec3(_rotationX,_rotationY,_rotationZ_X);
}
void Node::setRotationSkewX(float rotationX)
@ -410,13 +410,13 @@ void Node::setScaleY(float scaleY)
/// position getter
const Vector2& Node::getPosition() const
const Vec2& Node::getPosition() const
{
return _position;
}
/// position setter
void Node::setPosition(const Vector2& position)
void Node::setPosition(const Vec2& position)
{
if (_position.equals(position))
return;
@ -441,18 +441,18 @@ void Node::getPosition(float* x, float* y) const
void Node::setPosition(float x, float y)
{
setPosition(Vector2(x, y));
setPosition(Vec2(x, y));
}
void Node::setPosition3D(const Vector3& position)
void Node::setPosition3D(const Vec3& position)
{
_positionZ = position.z;
setPosition(Vector2(position.x, position.y));
setPosition(Vec2(position.x, position.y));
}
Vector3 Node::getPosition3D() const
Vec3 Node::getPosition3D() const
{
Vector3 ret;
Vec3 ret;
ret.x = _position.x;
ret.y = _position.y;
ret.z = _positionZ;
@ -466,7 +466,7 @@ float Node::getPositionX() const
void Node::setPositionX(float x)
{
setPosition(Vector2(x, _position.y));
setPosition(Vec2(x, _position.y));
}
float Node::getPositionY() const
@ -476,7 +476,7 @@ float Node::getPositionY() const
void Node::setPositionY(float y)
{
setPosition(Vector2(_position.x, y));
setPosition(Vec2(_position.x, y));
}
float Node::getPositionZ() const
@ -519,21 +519,21 @@ void Node::setVisible(bool var)
}
}
const Vector2& Node::getAnchorPointInPoints() const
const Vec2& Node::getAnchorPointInPoints() const
{
return _anchorPointInPoints;
}
/// anchorPoint getter
const Vector2& Node::getAnchorPoint() const
const Vec2& Node::getAnchorPoint() const
{
return _anchorPoint;
}
void Node::setAnchorPoint(const Vector2& point)
void Node::setAnchorPoint(const Vec2& point)
{
#if CC_USE_PHYSICS
if (_physicsBody != nullptr && !point.equals(Vector2::ANCHOR_MIDDLE))
if (_physicsBody != nullptr && !point.equals(Vec2::ANCHOR_MIDDLE))
{
CCLOG("Node warning: This node has a physics body, the anchor must be in the middle, you cann't change this to other value.");
return;
@ -543,7 +543,7 @@ void Node::setAnchorPoint(const Vector2& point)
if( ! point.equals(_anchorPoint))
{
_anchorPoint = point;
_anchorPointInPoints = Vector2(_contentSize.width * _anchorPoint.x, _contentSize.height * _anchorPoint.y );
_anchorPointInPoints = Vec2(_contentSize.width * _anchorPoint.x, _contentSize.height * _anchorPoint.y );
_transformUpdated = _transformDirty = _inverseDirty = true;
}
}
@ -560,7 +560,7 @@ void Node::setContentSize(const Size & size)
{
_contentSize = size;
_anchorPointInPoints = Vector2(_contentSize.width * _anchorPoint.x, _contentSize.height * _anchorPoint.y );
_anchorPointInPoints = Vec2(_contentSize.width * _anchorPoint.x, _contentSize.height * _anchorPoint.y );
_transformUpdated = _transformDirty = _inverseDirty = true;
}
}
@ -718,7 +718,7 @@ void Node::childrenAlloc(void)
_children.reserve(4);
}
Node* Node::getChildByTag(int tag)
Node* Node::getChildByTag(int tag) const
{
CCASSERT( tag != Node::INVALID_TAG, "Invalid tag");
@ -943,18 +943,18 @@ void Node::draw()
draw(renderer, _modelViewTransform, true);
}
void Node::draw(Renderer* renderer, const Matrix &transform, bool transformUpdated)
void Node::draw(Renderer* renderer, const Mat4 &transform, bool transformUpdated)
{
}
void Node::visit()
{
auto renderer = Director::getInstance()->getRenderer();
Matrix parentTransform = Director::getInstance()->getMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_MODELVIEW);
Mat4 parentTransform = Director::getInstance()->getMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_MODELVIEW);
visit(renderer, parentTransform, true);
}
void Node::visit(Renderer* renderer, const Matrix &parentTransform, bool parentTransformUpdated)
void Node::visit(Renderer* renderer, const Mat4 &parentTransform, bool parentTransformUpdated)
{
// quick return if not visible. children won't be drawn.
if (!_visible)
@ -969,7 +969,7 @@ void Node::visit(Renderer* renderer, const Matrix &parentTransform, bool parentT
// IMPORTANT:
// To ease the migration to v3.0, we still support the Matrix stack,
// To ease the migration to v3.0, we still support the Mat4 stack,
// but it is deprecated and your code should not rely on it
Director* director = Director::getInstance();
CCASSERT(nullptr != director, "Director is null when seting matrix stack");
@ -1008,9 +1008,9 @@ void Node::visit(Renderer* renderer, const Matrix &parentTransform, bool parentT
director->popMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_MODELVIEW);
}
Matrix Node::transform(const Matrix& parentTransform)
Mat4 Node::transform(const Mat4& parentTransform)
{
Matrix ret = this->getNodeToParentTransform();
Mat4 ret = this->getNodeToParentTransform();
ret = parentTransform * ret;
return ret;
}
@ -1338,7 +1338,7 @@ AffineTransform Node::getNodeToParentAffineTransform() const
return ret;
}
const Matrix& Node::getNodeToParentTransform() const
const Mat4& Node::getNodeToParentTransform() const
{
if (_transformDirty)
{
@ -1373,7 +1373,7 @@ const Matrix& Node::getNodeToParentTransform() const
// optimization:
// inline anchor point calculation if skew is not needed
// Adjusted transform calculation for rotational skew
if (! needsSkewMatrix && !_anchorPointInPoints.equals(Vector2::ZERO))
if (! needsSkewMatrix && !_anchorPointInPoints.equals(Vec2::ZERO))
{
x += cy * -_anchorPointInPoints.x * _scaleX + -sx * -_anchorPointInPoints.y * _scaleY;
y += sy * -_anchorPointInPoints.x * _scaleX + cx * -_anchorPointInPoints.y * _scaleY;
@ -1394,13 +1394,13 @@ const Matrix& Node::getNodeToParentTransform() const
// FIX ME: Expensive operation.
// FIX ME: It should be done together with the rotationZ
if(_rotationY) {
Matrix rotY;
Matrix::createRotationY(CC_DEGREES_TO_RADIANS(_rotationY), &rotY);
Mat4 rotY;
Mat4::createRotationY(CC_DEGREES_TO_RADIANS(_rotationY), &rotY);
_transform = _transform * rotY;
}
if(_rotationX) {
Matrix rotX;
Matrix::createRotationX(CC_DEGREES_TO_RADIANS(_rotationX), &rotX);
Mat4 rotX;
Mat4::createRotationX(CC_DEGREES_TO_RADIANS(_rotationX), &rotX);
_transform = _transform * rotX;
}
@ -1408,7 +1408,7 @@ const Matrix& Node::getNodeToParentTransform() const
// If skew is needed, apply skew and then anchor point
if (needsSkewMatrix)
{
Matrix skewMatrix(1, (float)tanf(CC_DEGREES_TO_RADIANS(_skewY)), 0, 0,
Mat4 skewMatrix(1, (float)tanf(CC_DEGREES_TO_RADIANS(_skewY)), 0, 0,
(float)tanf(CC_DEGREES_TO_RADIANS(_skewX)), 1, 0, 0,
0, 0, 1, 0,
0, 0, 0, 1);
@ -1416,9 +1416,9 @@ const Matrix& Node::getNodeToParentTransform() const
_transform = _transform * skewMatrix;
// adjust anchor point
if (!_anchorPointInPoints.equals(Vector2::ZERO))
if (!_anchorPointInPoints.equals(Vec2::ZERO))
{
// XXX: Argh, Matrix needs a "translate" method.
// XXX: Argh, Mat4 needs a "translate" method.
// XXX: Although this is faster than multiplying a vec4 * mat4
_transform.m[12] += _transform.m[0] * -_anchorPointInPoints.x + _transform.m[4] * -_anchorPointInPoints.y;
_transform.m[13] += _transform.m[1] * -_anchorPointInPoints.x + _transform.m[5] * -_anchorPointInPoints.y;
@ -1436,7 +1436,7 @@ const Matrix& Node::getNodeToParentTransform() const
return _transform;
}
void Node::setNodeToParentTransform(const Matrix& transform)
void Node::setNodeToParentTransform(const Mat4& transform)
{
_transform = transform;
_transformDirty = false;
@ -1445,12 +1445,12 @@ void Node::setNodeToParentTransform(const Matrix& transform)
void Node::setAdditionalTransform(const AffineTransform& additionalTransform)
{
Matrix tmp;
Mat4 tmp;
CGAffineToGL(additionalTransform, tmp.m);
setAdditionalTransform(&tmp);
}
void Node::setAdditionalTransform(Matrix* additionalTransform)
void Node::setAdditionalTransform(Mat4* additionalTransform)
{
if(additionalTransform == nullptr) {
_useAdditionalTransform = false;
@ -1465,13 +1465,13 @@ void Node::setAdditionalTransform(Matrix* additionalTransform)
AffineTransform Node::getParentToNodeAffineTransform() const
{
AffineTransform ret;
Matrix ret4 = getParentToNodeTransform();
Mat4 ret4 = getParentToNodeTransform();
GLToCGAffine(ret4.m,&ret);
return ret;
}
const Matrix& Node::getParentToNodeTransform() const
const Mat4& Node::getParentToNodeTransform() const
{
if ( _inverseDirty ) {
_inverse = _transform.getInversed();
@ -1492,9 +1492,9 @@ AffineTransform Node::getNodeToWorldAffineTransform() const
return t;
}
Matrix Node::getNodeToWorldTransform() const
Mat4 Node::getNodeToWorldTransform() const
{
Matrix t = this->getNodeToParentTransform();
Mat4 t = this->getNodeToParentTransform();
for (Node *p = _parent; p != nullptr; p = p->getParent())
{
@ -1509,59 +1509,59 @@ AffineTransform Node::getWorldToNodeAffineTransform() const
return AffineTransformInvert(this->getNodeToWorldAffineTransform());
}
Matrix Node::getWorldToNodeTransform() const
Mat4 Node::getWorldToNodeTransform() const
{
return getNodeToWorldTransform().getInversed();
}
Vector2 Node::convertToNodeSpace(const Vector2& worldPoint) const
Vec2 Node::convertToNodeSpace(const Vec2& worldPoint) const
{
Matrix tmp = getWorldToNodeTransform();
Vector3 vec3(worldPoint.x, worldPoint.y, 0);
Vector3 ret;
Mat4 tmp = getWorldToNodeTransform();
Vec3 vec3(worldPoint.x, worldPoint.y, 0);
Vec3 ret;
tmp.transformPoint(vec3,&ret);
return Vector2(ret.x, ret.y);
return Vec2(ret.x, ret.y);
}
Vector2 Node::convertToWorldSpace(const Vector2& nodePoint) const
Vec2 Node::convertToWorldSpace(const Vec2& nodePoint) const
{
Matrix tmp = getNodeToWorldTransform();
Vector3 vec3(nodePoint.x, nodePoint.y, 0);
Vector3 ret;
Mat4 tmp = getNodeToWorldTransform();
Vec3 vec3(nodePoint.x, nodePoint.y, 0);
Vec3 ret;
tmp.transformPoint(vec3,&ret);
return Vector2(ret.x, ret.y);
return Vec2(ret.x, ret.y);
}
Vector2 Node::convertToNodeSpaceAR(const Vector2& worldPoint) const
Vec2 Node::convertToNodeSpaceAR(const Vec2& worldPoint) const
{
Vector2 nodePoint = convertToNodeSpace(worldPoint);
Vec2 nodePoint = convertToNodeSpace(worldPoint);
return nodePoint - _anchorPointInPoints;
}
Vector2 Node::convertToWorldSpaceAR(const Vector2& nodePoint) const
Vec2 Node::convertToWorldSpaceAR(const Vec2& nodePoint) const
{
Vector2 pt = nodePoint + _anchorPointInPoints;
Vec2 pt = nodePoint + _anchorPointInPoints;
return convertToWorldSpace(pt);
}
Vector2 Node::convertToWindowSpace(const Vector2& nodePoint) const
Vec2 Node::convertToWindowSpace(const Vec2& nodePoint) const
{
Vector2 worldPoint = this->convertToWorldSpace(nodePoint);
Vec2 worldPoint = this->convertToWorldSpace(nodePoint);
return Director::getInstance()->convertToUI(worldPoint);
}
// convenience methods which take a Touch instead of Vector2
Vector2 Node::convertTouchToNodeSpace(Touch *touch) const
// convenience methods which take a Touch instead of Vec2
Vec2 Node::convertTouchToNodeSpace(Touch *touch) const
{
Vector2 point = touch->getLocation();
Vec2 point = touch->getLocation();
return this->convertToNodeSpace(point);
}
Vector2 Node::convertTouchToNodeSpaceAR(Touch *touch) const
Vec2 Node::convertTouchToNodeSpaceAR(Touch *touch) const
{
Vector2 point = touch->getLocation();
Vec2 point = touch->getLocation();
return this->convertToNodeSpaceAR(point);
}
@ -1608,7 +1608,7 @@ void Node::updatePhysicsBodyPosition(Scene* scene)
{
if (scene != nullptr && scene->getPhysicsWorld() != nullptr)
{
Vector2 pos = getParent() == scene ? getPosition() : scene->convertToNodeSpace(_parent->convertToWorldSpace(getPosition()));
Vec2 pos = getParent() == scene ? getPosition() : scene->convertToNodeSpace(_parent->convertToWorldSpace(getPosition()));
_physicsBody->setPosition(pos);
}
else
@ -1647,10 +1647,10 @@ void Node::setPhysicsBody(PhysicsBody* body)
// physics rotation based on body position, but node rotation based on node anthor point
// it cann't support both of them, so I clear the anthor point to default.
if (!getAnchorPoint().equals(Vector2::ANCHOR_MIDDLE))
if (!getAnchorPoint().equals(Vec2::ANCHOR_MIDDLE))
{
CCLOG("Node warning: setPhysicsBody sets anchor point to Vector2::ANCHOR_MIDDLE.");
setAnchorPoint(Vector2::ANCHOR_MIDDLE);
CCLOG("Node warning: setPhysicsBody sets anchor point to Vec2::ANCHOR_MIDDLE.");
setAnchorPoint(Vec2::ANCHOR_MIDDLE);
}
}

View File

@ -32,11 +32,11 @@
#include "base/ccMacros.h"
#include "base/CCEventDispatcher.h"
#include "base/CCVector.h"
#include "base/CCScriptSupport.h"
#include "base/CCProtocols.h"
#include "math/CCAffineTransform.h"
#include "math/CCMath.h"
#include "renderer/ccGLStateCache.h"
#include "2d/CCScriptSupport.h"
#include "2d/CCProtocols.h"
#include "CCGL.h"
NS_CC_BEGIN
@ -273,37 +273,37 @@ public:
/**
* Sets the position (x,y) of the node in its parent's coordinate system.
*
* Usually we use `Vector2(x,y)` to compose Vector2 object.
* Usually we use `Vec2(x,y)` to compose Vec2 object.
* This code snippet sets the node in the center of screen.
@code
Size size = Director::getInstance()->getWinSize();
node->setPosition( Vector2(size.width/2, size.height/2) )
node->setPosition( Vec2(size.width/2, size.height/2) )
@endcode
*
* @param position The position (x,y) of the node in OpenGL coordinates
*/
virtual void setPosition(const Vector2 &position);
virtual void setPosition(const Vec2 &position);
/**
* Gets the position (x,y) of the node in its parent's coordinate system.
*
* @see setPosition(const Vector2&)
* @see setPosition(const Vec2&)
*
* @return The position (x,y) of the node in OpenGL coordinates
* @code
* In js and lua return value is table which contains x,y
* @endcode
*/
virtual const Vector2& getPosition() const;
virtual const Vec2& getPosition() const;
/**
* Sets the position (x,y) of the node in its parent's coordinate system.
*
* Passing two numbers (x,y) is much efficient than passing Vector2 object.
* Passing two numbers (x,y) is much efficient than passing Vec2 object.
* This method is bound to Lua and JavaScript.
* Passing a number is 10 times faster than passing a object from Lua to c++
*
@code
// sample code in Lua
local pos = node::getPosition() -- returns Vector2 object from C++
local pos = node::getPosition() -- returns Vec2 object from C++
node:setPosition(x, y) -- pass x, y coordinate to C++
@endcode
*
@ -312,7 +312,7 @@ public:
*/
virtual void setPosition(float x, float y);
/**
* Gets position in a more efficient way, returns two number instead of a Vector2 object
* Gets position in a more efficient way, returns two number instead of a Vec2 object
*
* @see `setPosition(float, float)`
* In js,out value not return
@ -330,11 +330,11 @@ public:
/**
* Sets the position (X, Y, and Z) in its parent's coordinate system
*/
virtual void setPosition3D(const Vector3& position);
virtual void setPosition3D(const Vec3& position);
/**
* returns the position (X,Y,Z) in its parent's coordinate system
*/
virtual Vector3 getPosition3D() const;
virtual Vec3 getPosition3D() const;
/**
* Sets the 'z' coordinate in the position. It is the OpenGL Z vertex value.
@ -419,15 +419,15 @@ public:
*
* @param anchorPoint The anchor point of node.
*/
virtual void setAnchorPoint(const Vector2& anchorPoint);
virtual void setAnchorPoint(const Vec2& anchorPoint);
/**
* Returns the anchor point in percent.
*
* @see `setAnchorPoint(const Vector2&)`
* @see `setAnchorPoint(const Vec2&)`
*
* @return The anchor point of node.
*/
virtual const Vector2& getAnchorPoint() const;
virtual const Vec2& getAnchorPoint() const;
/**
* Returns the anchorPoint in absolute pixels.
*
@ -436,7 +436,7 @@ public:
*
* @return The anchor point in absolute pixels.
*/
virtual const Vector2& getAnchorPointInPoints() const;
virtual const Vec2& getAnchorPointInPoints() const;
/**
@ -498,11 +498,11 @@ public:
* Sets the rotation (X,Y,Z) in degrees.
* Useful for 3d rotations
*/
virtual void setRotation3D(const Vector3& rotation);
virtual void setRotation3D(const Vec3& rotation);
/**
* returns the rotation (X,Y,Z) in degrees.
*/
virtual Vector3 getRotation3D() const;
virtual Vec3 getRotation3D() const;
/**
* Sets the X rotation (angle) of the node in degrees which performs a horizontal rotational skew.
@ -643,7 +643,7 @@ public:
*
* @return a Node object whose tag equals to the input parameter
*/
virtual Node * getChildByTag(int tag);
virtual Node * getChildByTag(int tag) const;
/**
* Returns the array of the node's children
*
@ -923,13 +923,13 @@ public:
* AND YOU SHOULD NOT DISABLE THEM AFTER DRAWING YOUR NODE
* But if you enable any other GL state, you should disable it after drawing your node.
*/
virtual void draw(Renderer *renderer, const Matrix& transform, bool transformUpdated);
virtual void draw(Renderer *renderer, const Mat4& transform, bool transformUpdated);
virtual void draw() final;
/**
* Visits this node's children and draw them recursively.
*/
virtual void visit(Renderer *renderer, const Matrix& parentTransform, bool parentTransformUpdated);
virtual void visit(Renderer *renderer, const Mat4& parentTransform, bool parentTransformUpdated);
virtual void visit() final;
@ -1194,13 +1194,13 @@ public:
* Returns the matrix that transform the node's (local) space coordinates into the parent's space coordinates.
* The matrix is in Pixels.
*/
virtual const Matrix& getNodeToParentTransform() const;
virtual const Mat4& getNodeToParentTransform() const;
virtual AffineTransform getNodeToParentAffineTransform() const;
/**
* Sets the Transformation matrix manually.
*/
virtual void setNodeToParentTransform(const Matrix& transform);
virtual void setNodeToParentTransform(const Mat4& transform);
/** @deprecated use getNodeToParentTransform() instead */
CC_DEPRECATED_ATTRIBUTE inline virtual AffineTransform nodeToParentTransform() const { return getNodeToParentAffineTransform(); }
@ -1209,7 +1209,7 @@ public:
* Returns the matrix that transform parent's space coordinates to the node's (local) space coordinates.
* The matrix is in Pixels.
*/
virtual const Matrix& getParentToNodeTransform() const;
virtual const Mat4& getParentToNodeTransform() const;
virtual AffineTransform getParentToNodeAffineTransform() const;
/** @deprecated Use getParentToNodeTransform() instead */
@ -1218,7 +1218,7 @@ public:
/**
* Returns the world affine transform matrix. The matrix is in Pixels.
*/
virtual Matrix getNodeToWorldTransform() const;
virtual Mat4 getNodeToWorldTransform() const;
virtual AffineTransform getNodeToWorldAffineTransform() const;
/** @deprecated Use getNodeToWorldTransform() instead */
@ -1227,7 +1227,7 @@ public:
/**
* Returns the inverse world affine transform matrix. The matrix is in Pixels.
*/
virtual Matrix getWorldToNodeTransform() const;
virtual Mat4 getWorldToNodeTransform() const;
virtual AffineTransform getWorldToNodeAffineTransform() const;
@ -1241,36 +1241,36 @@ public:
/// @name Coordinate Converters
/**
* Converts a Vector2 to node (local) space coordinates. The result is in Points.
* Converts a Vec2 to node (local) space coordinates. The result is in Points.
*/
Vector2 convertToNodeSpace(const Vector2& worldPoint) const;
Vec2 convertToNodeSpace(const Vec2& worldPoint) const;
/**
* Converts a Vector2 to world space coordinates. The result is in Points.
* Converts a Vec2 to world space coordinates. The result is in Points.
*/
Vector2 convertToWorldSpace(const Vector2& nodePoint) const;
Vec2 convertToWorldSpace(const Vec2& nodePoint) const;
/**
* Converts a Vector2 to node (local) space coordinates. The result is in Points.
* Converts a Vec2 to node (local) space coordinates. The result is in Points.
* treating the returned/received node point as anchor relative.
*/
Vector2 convertToNodeSpaceAR(const Vector2& worldPoint) const;
Vec2 convertToNodeSpaceAR(const Vec2& worldPoint) const;
/**
* Converts a local Vector2 to world space coordinates.The result is in Points.
* Converts a local Vec2 to world space coordinates.The result is in Points.
* treating the returned/received node point as anchor relative.
*/
Vector2 convertToWorldSpaceAR(const Vector2& nodePoint) const;
Vec2 convertToWorldSpaceAR(const Vec2& nodePoint) const;
/**
* convenience methods which take a Touch instead of Vector2
* convenience methods which take a Touch instead of Vec2
*/
Vector2 convertTouchToNodeSpace(Touch * touch) const;
Vec2 convertTouchToNodeSpace(Touch * touch) const;
/**
* converts a Touch (world coordinates) into a local coordinate. This method is AR (Anchor Relative).
*/
Vector2 convertTouchToNodeSpaceAR(Touch * touch) const;
Vec2 convertTouchToNodeSpaceAR(Touch * touch) const;
/**
* Sets an additional transform matrix to the node.
@ -1280,7 +1280,7 @@ public:
* @note The additional transform will be concatenated at the end of getNodeToParentTransform.
* It could be used to simulate `parent-child` relationship between two nodes (e.g. one is in BatchNode, another isn't).
*/
void setAdditionalTransform(Matrix* additionalTransform);
void setAdditionalTransform(Mat4* additionalTransform);
void setAdditionalTransform(const AffineTransform& additionalTransform);
/// @} end of Coordinate Converters
@ -1312,7 +1312,7 @@ public:
#if CC_USE_PHYSICS
/**
* set the PhysicsBody that let the sprite effect with physics
* @note This method will set anchor point to Vector2::ANCHOR_MIDDLE if body not null, and you cann't change anchor point if node has a physics body.
* @note This method will set anchor point to Vec2::ANCHOR_MIDDLE if body not null, and you cann't change anchor point if node has a physics body.
*/
void setPhysicsBody(PhysicsBody* body);
@ -1359,9 +1359,9 @@ protected:
void detachChild(Node *child, ssize_t index, bool doCleanup);
/// Convert cocos2d coordinates to UI windows coordinate.
Vector2 convertToWindowSpace(const Vector2& nodePoint) const;
Vec2 convertToWindowSpace(const Vec2& nodePoint) const;
Matrix transform(const Matrix &parentTransform);
Mat4 transform(const Mat4 &parentTransform);
virtual void updateCascadeOpacity();
virtual void disableCascadeOpacity();
@ -1385,25 +1385,25 @@ protected:
float _scaleY; ///< scaling factor on y-axis
float _scaleZ; ///< scaling factor on z-axis
Vector2 _position; ///< position of the node
Vec2 _position; ///< position of the node
float _positionZ; ///< OpenGL real Z position
float _skewX; ///< skew angle on x-axis
float _skewY; ///< skew angle on y-axis
Vector2 _anchorPointInPoints; ///< anchor point in points
Vector2 _anchorPoint; ///< anchor point normalized (NOT in points)
Vec2 _anchorPointInPoints; ///< anchor point in points
Vec2 _anchorPoint; ///< anchor point normalized (NOT in points)
Size _contentSize; ///< untransformed size of the node
Matrix _modelViewTransform; ///< ModelView transform of the Node.
Mat4 _modelViewTransform; ///< ModelView transform of the Node.
// "cache" variables are allowed to be mutable
mutable Matrix _transform; ///< transform
mutable Mat4 _transform; ///< transform
mutable bool _transformDirty; ///< transform dirty flag
mutable Matrix _inverse; ///< inverse transform
mutable Mat4 _inverse; ///< inverse transform
mutable bool _inverseDirty; ///< inverse transform dirty flag
mutable Matrix _additionalTransform; ///< transform
mutable Mat4 _additionalTransform; ///< transform
bool _useAdditionalTransform; ///< The flag to check whether the additional transform is dirty
bool _transformUpdated; ///< Whether or not the Transform object was updated since the last frame
@ -1434,7 +1434,7 @@ protected:
bool _visible; ///< is this node visible
bool _ignoreAnchorPointForPosition; ///< true if the Anchor Vector2 will be (0,0) when you position the Node, false otherwise.
bool _ignoreAnchorPointForPosition; ///< true if the Anchor Vec2 will be (0,0) when you position the Node, false otherwise.
///< Used by Layer and Scene.
bool _reorderChildDirty; ///< children order dirty flag

View File

@ -82,7 +82,7 @@ void NodeGrid::onGridEndDraw()
}
}
void NodeGrid::visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated)
void NodeGrid::visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated)
{
// quick return if not visible. children won't be drawn.
if (!_visible)
@ -100,7 +100,7 @@ void NodeGrid::visit(Renderer *renderer, const Matrix &parentTransform, bool par
_transformUpdated = false;
// IMPORTANT:
// To ease the migration to v3.0, we still support the Matrix stack,
// To ease the migration to v3.0, we still support the Mat4 stack,
// but it is deprecated and your code should not rely on it
Director* director = Director::getInstance();
CCASSERT(nullptr != director, "Director is null when seting matrix stack");

View File

@ -54,7 +54,7 @@ public:
void setTarget(Node *target);
// overrides
virtual void visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated) override;
virtual void visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated) override;
protected:
NodeGrid();

View File

@ -25,14 +25,14 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
****************************************************************************/
#include "CCParallaxNode.h"
#include "2d/ccCArray.h"
#include "base/ccCArray.h"
NS_CC_BEGIN
class PointObject : public Ref
{
public:
static PointObject * create(Vector2 ratio, Vector2 offset)
static PointObject * create(Vec2 ratio, Vec2 offset)
{
PointObject *ret = new PointObject();
ret->initWithPoint(ratio, offset);
@ -40,7 +40,7 @@ public:
return ret;
}
bool initWithPoint(Vector2 ratio, Vector2 offset)
bool initWithPoint(Vec2 ratio, Vec2 offset)
{
_ratio = ratio;
_offset = offset;
@ -48,25 +48,25 @@ public:
return true;
}
inline const Vector2& getRatio() const { return _ratio; };
inline void setRatio(const Vector2& ratio) { _ratio = ratio; };
inline const Vec2& getRatio() const { return _ratio; };
inline void setRatio(const Vec2& ratio) { _ratio = ratio; };
inline const Vector2& getOffset() const { return _offset; };
inline void setOffset(const Vector2& offset) { _offset = offset; };
inline const Vec2& getOffset() const { return _offset; };
inline void setOffset(const Vec2& offset) { _offset = offset; };
inline Node* getChild() const { return _child; };
inline void setChild(Node* child) { _child = child; };
private:
Vector2 _ratio;
Vector2 _offset;
Vec2 _ratio;
Vec2 _offset;
Node *_child; // weak ref
};
ParallaxNode::ParallaxNode()
{
_parallaxArray = ccArrayNew(5);
_lastPosition = Vector2(-100,-100);
_lastPosition = Vec2(-100,-100);
}
ParallaxNode::~ParallaxNode()
@ -93,14 +93,14 @@ void ParallaxNode::addChild(Node * child, int zOrder, int tag)
CCASSERT(0,"ParallaxNode: use addChild:z:parallaxRatio:positionOffset instead");
}
void ParallaxNode::addChild(Node *child, int z, const Vector2& ratio, const Vector2& offset)
void ParallaxNode::addChild(Node *child, int z, const Vec2& ratio, const Vec2& offset)
{
CCASSERT( child != nullptr, "Argument must be non-nil");
PointObject *obj = PointObject::create(ratio, offset);
obj->setChild(child);
ccArrayAppendObjectWithResize(_parallaxArray, (Ref*)obj);
Vector2 pos = this->absolutePosition();
Vec2 pos = this->absolutePosition();
pos.x = -pos.x + pos.x * ratio.x + offset.x;
pos.y = -pos.y + pos.y * ratio.y + offset.y;
child->setPosition(pos);
@ -128,9 +128,9 @@ void ParallaxNode::removeAllChildrenWithCleanup(bool cleanup)
Node::removeAllChildrenWithCleanup(cleanup);
}
Vector2 ParallaxNode::absolutePosition()
Vec2 ParallaxNode::absolutePosition()
{
Vector2 ret = _position;
Vec2 ret = _position;
Node *cn = this;
while (cn->getParent() != nullptr)
{
@ -145,11 +145,11 @@ The positions are updated at visit because:
- using a timer is not guaranteed that it will called after all the positions were updated
- overriding "draw" will only precise if the children have a z > 0
*/
void ParallaxNode::visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated)
void ParallaxNode::visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated)
{
// Vector2 pos = position_;
// Vector2 pos = [self convertToWorldSpace:Vector2::ZERO];
Vector2 pos = this->absolutePosition();
// Vec2 pos = position_;
// Vec2 pos = [self convertToWorldSpace:Vec2::ZERO];
Vec2 pos = this->absolutePosition();
if( ! pos.equals(_lastPosition) )
{
for( int i=0; i < _parallaxArray->num; i++ )
@ -157,7 +157,7 @@ void ParallaxNode::visit(Renderer *renderer, const Matrix &parentTransform, bool
PointObject *point = (PointObject*)_parallaxArray->arr[i];
float x = -pos.x + pos.x * point->getRatio().x + point->getOffset().x;
float y = -pos.y + pos.y * point->getRatio().y + point->getOffset().y;
point->getChild()->setPosition(Vector2(x,y));
point->getChild()->setPosition(Vec2(x,y));
}
_lastPosition = pos;
}

View File

@ -53,7 +53,7 @@ public:
// prevents compiler warning: "Included function hides overloaded virtual functions"
using Node::addChild;
void addChild(Node * child, int z, const Vector2& parallaxRatio, const Vector2& positionOffset);
void addChild(Node * child, int z, const Vec2& parallaxRatio, const Vec2& positionOffset);
/** Sets an array of layers for the Parallax node */
void setParallaxArray( struct _ccArray *parallaxArray) { _parallaxArray = parallaxArray; }
@ -67,7 +67,7 @@ public:
virtual void addChild(Node * child, int zOrder, int tag) override;
virtual void removeChild(Node* child, bool cleanup) override;
virtual void removeAllChildrenWithCleanup(bool cleanup) override;
virtual void visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated) override;
virtual void visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated) override;
protected:
/** Adds a child to the container with a z-order, a parallax ratio and a position offset
@ -82,9 +82,9 @@ protected:
*/
virtual ~ParallaxNode();
Vector2 absolutePosition();
Vec2 absolutePosition();
Vector2 _lastPosition;
Vec2 _lastPosition;
struct _ccArray* _parallaxArray;
private:

View File

@ -30,16 +30,16 @@
#include "2d/CCParticleBatchNode.h"
#include "2d/CCTextureCache.h"
#include "2d/CCTextureAtlas.h"
#include "renderer/CCTextureAtlas.h"
#include "2d/CCGrid.h"
#include "2d/CCParticleSystem.h"
#include "2d/platform/CCFileUtils.h"
#include "platform/CCFileUtils.h"
#include "base/CCProfiling.h"
#include "base/ccConfig.h"
#include "base/ccMacros.h"
#include "base/base64.h"
#include "base/ZipUtils.h"
#include "renderer/CCTextureCache.h"
#include "renderer/CCGLProgramState.h"
#include "renderer/CCGLProgram.h"
#include "renderer/ccGLStateCache.h"
@ -121,7 +121,7 @@ bool ParticleBatchNode::initWithFile(const std::string& fileImage, int capacity)
// override visit.
// Don't call visit on it's children
void ParticleBatchNode::visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated)
void ParticleBatchNode::visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated)
{
// CAREFUL:
// This visit is almost identical to Node#visit
@ -141,7 +141,7 @@ void ParticleBatchNode::visit(Renderer *renderer, const Matrix &parentTransform,
_transformUpdated = false;
// IMPORTANT:
// To ease the migration to v3.0, we still support the Matrix stack,
// To ease the migration to v3.0, we still support the Mat4 stack,
// but it is deprecated and your code should not rely on it
Director* director = Director::getInstance();
CCASSERT(nullptr != director, "Director is null when seting matrix stack");
@ -383,7 +383,7 @@ void ParticleBatchNode::removeAllChildrenWithCleanup(bool doCleanup)
_textureAtlas->removeAllQuads();
}
void ParticleBatchNode::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void ParticleBatchNode::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
CC_PROFILER_START("CCParticleBatchNode - draw");

View File

@ -31,7 +31,7 @@
#define __CCPARTICLEBATCHNODE_H__
#include "2d/CCNode.h"
#include "2d/CCProtocols.h"
#include "base/CCProtocols.h"
#include "renderer/CCBatchCommand.h"
NS_CC_BEGIN
@ -91,13 +91,13 @@ public:
inline void setTextureAtlas(TextureAtlas* atlas) { _textureAtlas = atlas; };
// Overrides
virtual void visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated) override;
virtual void visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated) override;
using Node::addChild;
virtual void addChild(Node * child, int zOrder, int tag) override;
virtual void removeChild(Node* child, bool cleanup) override;
virtual void reorderChild(Node * child, int zOrder) override;
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
virtual Texture2D* getTexture(void) const override;
virtual void setTexture(Texture2D *texture) override;
/**

View File

@ -24,11 +24,12 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
****************************************************************************/
#include "CCParticleExamples.h"
#include "2d/CCParticleExamples.h"
#include "platform/CCImage.h"
#include "base/CCDirector.h"
#include "2d/CCTextureCache.h"
#include "firePngData.h"
#include "2d/platform/CCImage.h"
#include "base/firePngData.h"
#include "renderer/CCTextureCache.h"
NS_CC_BEGIN
//
@ -98,7 +99,7 @@ bool ParticleFire::initWithTotalParticles(int numberOfParticles)
this->_emitterMode = Mode::GRAVITY;
// Gravity Mode: gravity
this->modeA.gravity = Vector2(0,0);
this->modeA.gravity = Vec2(0,0);
// Gravity Mode: radial acceleration
this->modeA.radialAccel = 0;
@ -114,8 +115,8 @@ bool ParticleFire::initWithTotalParticles(int numberOfParticles)
// emitter position
Size winSize = Director::getInstance()->getWinSize();
this->setPosition(Vector2(winSize.width/2, 60));
this->_posVar = Vector2(40, 20);
this->setPosition(Vec2(winSize.width/2, 60));
this->_posVar = Vec2(40, 20);
// life of particles
_life = 3;
@ -203,7 +204,7 @@ bool ParticleFireworks::initWithTotalParticles(int numberOfParticles)
this->_emitterMode = Mode::GRAVITY;
// Gravity Mode: gravity
this->modeA.gravity = Vector2(0,-90);
this->modeA.gravity = Vec2(0,-90);
// Gravity Mode: radial
this->modeA.radialAccel = 0;
@ -215,7 +216,7 @@ bool ParticleFireworks::initWithTotalParticles(int numberOfParticles)
// emitter position
Size winSize = Director::getInstance()->getWinSize();
this->setPosition(Vector2(winSize.width/2, winSize.height/2));
this->setPosition(Vec2(winSize.width/2, winSize.height/2));
// angle
this->_angle= 90;
@ -307,7 +308,7 @@ bool ParticleSun::initWithTotalParticles(int numberOfParticles)
setEmitterMode(Mode::GRAVITY);
// Gravity Mode: gravity
setGravity(Vector2(0,0));
setGravity(Vec2(0,0));
// Gravity mode: radial acceleration
setRadialAccel(0);
@ -324,8 +325,8 @@ bool ParticleSun::initWithTotalParticles(int numberOfParticles)
// emitter position
Size winSize = Director::getInstance()->getWinSize();
this->setPosition(Vector2(winSize.width/2, winSize.height/2));
setPosVar(Vector2::ZERO);
this->setPosition(Vec2(winSize.width/2, winSize.height/2));
setPosVar(Vec2::ZERO);
// life of particles
_life = 1;
@ -411,7 +412,7 @@ bool ParticleGalaxy::initWithTotalParticles(int numberOfParticles)
setEmitterMode(Mode::GRAVITY);
// Gravity Mode: gravity
setGravity(Vector2(0,0));
setGravity(Vec2(0,0));
// Gravity Mode: speed of particles
setSpeed(60);
@ -431,8 +432,8 @@ bool ParticleGalaxy::initWithTotalParticles(int numberOfParticles)
// emitter position
Size winSize = Director::getInstance()->getWinSize();
this->setPosition(Vector2(winSize.width/2, winSize.height/2));
setPosVar(Vector2::ZERO);
this->setPosition(Vec2(winSize.width/2, winSize.height/2));
setPosVar(Vec2::ZERO);
// life of particles
_life = 4;
@ -520,7 +521,7 @@ bool ParticleFlower::initWithTotalParticles(int numberOfParticles)
setEmitterMode(Mode::GRAVITY);
// Gravity Mode: gravity
setGravity(Vector2(0,0));
setGravity(Vec2(0,0));
// Gravity Mode: speed of particles
setSpeed(80);
@ -540,8 +541,8 @@ bool ParticleFlower::initWithTotalParticles(int numberOfParticles)
// emitter position
Size winSize = Director::getInstance()->getWinSize();
this->setPosition(Vector2(winSize.width/2, winSize.height/2));
setPosVar(Vector2::ZERO);
this->setPosition(Vec2(winSize.width/2, winSize.height/2));
setPosVar(Vec2::ZERO);
// life of particles
_life = 4;
@ -628,7 +629,7 @@ bool ParticleMeteor::initWithTotalParticles(int numberOfParticles)
setEmitterMode(Mode::GRAVITY);
// Gravity Mode: gravity
setGravity(Vector2(-200,200));
setGravity(Vec2(-200,200));
// Gravity Mode: speed of particles
setSpeed(15);
@ -648,8 +649,8 @@ bool ParticleMeteor::initWithTotalParticles(int numberOfParticles)
// emitter position
Size winSize = Director::getInstance()->getWinSize();
this->setPosition(Vector2(winSize.width/2, winSize.height/2));
setPosVar(Vector2::ZERO);
this->setPosition(Vec2(winSize.width/2, winSize.height/2));
setPosVar(Vec2::ZERO);
// life of particles
_life = 2;
@ -737,7 +738,7 @@ bool ParticleSpiral::initWithTotalParticles(int numberOfParticles)
setEmitterMode(Mode::GRAVITY);
// Gravity Mode: gravity
setGravity(Vector2(0,0));
setGravity(Vec2(0,0));
// Gravity Mode: speed of particles
setSpeed(150);
@ -757,8 +758,8 @@ bool ParticleSpiral::initWithTotalParticles(int numberOfParticles)
// emitter position
Size winSize = Director::getInstance()->getWinSize();
this->setPosition(Vector2(winSize.width/2, winSize.height/2));
setPosVar(Vector2::ZERO);
this->setPosition(Vec2(winSize.width/2, winSize.height/2));
setPosVar(Vec2::ZERO);
// life of particles
_life = 12;
@ -845,7 +846,7 @@ bool ParticleExplosion::initWithTotalParticles(int numberOfParticles)
setEmitterMode(Mode::GRAVITY);
// Gravity Mode: gravity
setGravity(Vector2(0,0));
setGravity(Vec2(0,0));
// Gravity Mode: speed of particles
setSpeed(70);
@ -865,8 +866,8 @@ bool ParticleExplosion::initWithTotalParticles(int numberOfParticles)
// emitter position
Size winSize = Director::getInstance()->getWinSize();
this->setPosition(Vector2(winSize.width/2, winSize.height/2));
setPosVar(Vector2::ZERO);
this->setPosition(Vec2(winSize.width/2, winSize.height/2));
setPosVar(Vec2::ZERO);
// life of particles
_life = 5.0f;
@ -954,7 +955,7 @@ bool ParticleSmoke::initWithTotalParticles(int numberOfParticles)
setEmitterMode(Mode::GRAVITY);
// Gravity Mode: gravity
setGravity(Vector2(0,0));
setGravity(Vec2(0,0));
// Gravity Mode: radial acceleration
setRadialAccel(0);
@ -970,8 +971,8 @@ bool ParticleSmoke::initWithTotalParticles(int numberOfParticles)
// emitter position
Size winSize = Director::getInstance()->getWinSize();
this->setPosition(Vector2(winSize.width/2, 0));
setPosVar(Vector2(20, 0));
this->setPosition(Vec2(winSize.width/2, 0));
setPosVar(Vec2(20, 0));
// life of particles
_life = 4;
@ -1059,7 +1060,7 @@ bool ParticleSnow::initWithTotalParticles(int numberOfParticles)
setEmitterMode(Mode::GRAVITY);
// Gravity Mode: gravity
setGravity(Vector2(0,-1));
setGravity(Vec2(0,-1));
// Gravity Mode: speed of particles
setSpeed(5);
@ -1075,8 +1076,8 @@ bool ParticleSnow::initWithTotalParticles(int numberOfParticles)
// emitter position
Size winSize = Director::getInstance()->getWinSize();
this->setPosition(Vector2(winSize.width/2, winSize.height + 10));
setPosVar(Vector2(winSize.width/2, 0));
this->setPosition(Vec2(winSize.width/2, winSize.height + 10));
setPosVar(Vec2(winSize.width/2, 0));
// angle
_angle = -90;
@ -1166,7 +1167,7 @@ bool ParticleRain::initWithTotalParticles(int numberOfParticles)
setEmitterMode(Mode::GRAVITY);
// Gravity Mode: gravity
setGravity(Vector2(10,-10));
setGravity(Vec2(10,-10));
// Gravity Mode: radial
setRadialAccel(0);
@ -1187,8 +1188,8 @@ bool ParticleRain::initWithTotalParticles(int numberOfParticles)
// emitter position
Size winSize = Director::getInstance()->getWinSize();
this->setPosition(Vector2(winSize.width/2, winSize.height));
setPosVar(Vector2(winSize.width/2, 0));
this->setPosition(Vec2(winSize.width/2, winSize.height));
setPosVar(Vec2(winSize.width/2, 0));
// life of particles
_life = 4.5f;

View File

@ -42,21 +42,21 @@ THE SOFTWARE.
// cocos2d uses a another approach, but the results are almost identical.
//
#include "CCParticleSystem.h"
#include "2d/CCParticleSystem.h"
#include <string>
#include "CCParticleBatchNode.h"
#include "2d/CCParticleBatchNode.h"
#include "renderer/CCTextureAtlas.h"
#include "platform/CCFileUtils.h"
#include "platform/CCImage.h"
#include "base/ccTypes.h"
#include "2d/CCTextureCache.h"
#include "2d/CCTextureAtlas.h"
#include "base/base64.h"
#include "2d/platform/CCFileUtils.h"
#include "2d/platform/CCImage.h"
#include "base/ZipUtils.h"
#include "base/CCDirector.h"
#include "base/CCProfiling.h"
// opengl
#include "renderer/CCTextureCache.h"
#include "CCGL.h"
using namespace std;
@ -97,8 +97,8 @@ ParticleSystem::ParticleSystem()
, _isActive(true)
, _particleCount(0)
, _duration(0)
, _sourcePosition(Vector2::ZERO)
, _posVar(Vector2::ZERO)
, _sourcePosition(Vec2::ZERO)
, _posVar(Vec2::ZERO)
, _life(0)
, _lifeVar(0)
, _angle(0)
@ -120,7 +120,7 @@ ParticleSystem::ParticleSystem()
, _yCoordFlipped(1)
, _positionType(PositionType::FREE)
{
modeA.gravity = Vector2::ZERO;
modeA.gravity = Vec2::ZERO;
modeA.speed = 0;
modeA.speedVar = 0;
modeA.tangentialAccel = 0;
@ -257,7 +257,7 @@ bool ParticleSystem::initWithDictionary(ValueMap& dictionary, const std::string&
// position
float x = dictionary["sourcePositionx"].asFloat();
float y = dictionary["sourcePositiony"].asFloat();
this->setPosition( Vector2(x,y) );
this->setPosition( Vec2(x,y) );
_posVar.x = dictionary["sourcePositionVariancex"].asFloat();
_posVar.y = dictionary["sourcePositionVariancey"].asFloat();
@ -560,7 +560,7 @@ void ParticleSystem::initParticle(tParticle* particle)
// position
if (_positionType == PositionType::FREE)
{
particle->startPos = this->convertToWorldSpace(Vector2::ZERO);
particle->startPos = this->convertToWorldSpace(Vec2::ZERO);
}
else if (_positionType == PositionType::RELATIVE)
{
@ -573,7 +573,7 @@ void ParticleSystem::initParticle(tParticle* particle)
// Mode Gravity: A
if (_emitterMode == Mode::GRAVITY)
{
Vector2 v(cosf( a ), sinf( a ));
Vec2 v(cosf( a ), sinf( a ));
float s = modeA.speed + modeA.speedVar * CCRANDOM_MINUS1_1();
// direction
@ -679,10 +679,10 @@ void ParticleSystem::update(float dt)
_particleIdx = 0;
Vector2 currentPosition = Vector2::ZERO;
Vec2 currentPosition = Vec2::ZERO;
if (_positionType == PositionType::FREE)
{
currentPosition = this->convertToWorldSpace(Vector2::ZERO);
currentPosition = this->convertToWorldSpace(Vec2::ZERO);
}
else if (_positionType == PositionType::RELATIVE)
{
@ -702,9 +702,9 @@ void ParticleSystem::update(float dt)
// Mode A: gravity, direction, tangential accel & radial accel
if (_emitterMode == Mode::GRAVITY)
{
Vector2 tmp, radial, tangential;
Vec2 tmp, radial, tangential;
radial = Vector2::ZERO;
radial = Vec2::ZERO;
// radial acceleration
if (p->pos.x || p->pos.y)
{
@ -761,11 +761,11 @@ void ParticleSystem::update(float dt)
// update values in quad
//
Vector2 newPos;
Vec2 newPos;
if (_positionType == PositionType::FREE || _positionType == PositionType::RELATIVE)
{
Vector2 diff = currentPosition - p->startPos;
Vec2 diff = currentPosition - p->startPos;
newPos = p->pos - diff;
}
else
@ -832,7 +832,7 @@ void ParticleSystem::updateWithNoTime(void)
this->update(0.0f);
}
void ParticleSystem::updateQuadWithParticle(tParticle* particle, const Vector2& newPosition)
void ParticleSystem::updateQuadWithParticle(tParticle* particle, const Vec2& newPosition)
{
CC_UNUSED_PARAM(particle);
CC_UNUSED_PARAM(newPosition);
@ -967,13 +967,13 @@ bool ParticleSystem::getRotationIsDir() const
return modeA.rotationIsDir;
}
void ParticleSystem::setGravity(const Vector2& g)
void ParticleSystem::setGravity(const Vec2& g)
{
CCASSERT(_emitterMode == Mode::GRAVITY, "Particle Mode should be Gravity");
modeA.gravity = g;
}
const Vector2& ParticleSystem::getGravity()
const Vec2& ParticleSystem::getGravity()
{
CCASSERT(_emitterMode == Mode::GRAVITY, "Particle Mode should be Gravity");
return modeA.gravity;

View File

@ -27,7 +27,7 @@ THE SOFTWARE.
#ifndef __CCPARTICLE_SYSTEM_H__
#define __CCPARTICLE_SYSTEM_H__
#include "2d/CCProtocols.h"
#include "base/CCProtocols.h"
#include "2d/CCNode.h"
#include "base/CCValue.h"
#include "deprecated/CCString.h"
@ -45,8 +45,8 @@ class ParticleBatchNode;
Structure that contains the values of each particle
*/
typedef struct sParticle {
Vector2 pos;
Vector2 startPos;
Vec2 pos;
Vec2 startPos;
Color4F color;
Color4F deltaColor;
@ -63,7 +63,7 @@ typedef struct sParticle {
//! Mode A: gravity, direction, radial accel, tangential accel
struct {
Vector2 dir;
Vec2 dir;
float radialAccel;
float tangentialAccel;
} modeA;
@ -78,7 +78,7 @@ typedef struct sParticle {
}tParticle;
//typedef void (*CC_UPDATE_PARTICLE_IMP)(id, SEL, tParticle*, Vector2);
//typedef void (*CC_UPDATE_PARTICLE_IMP)(id, SEL, tParticle*, Vec2);
class Texture2D;
@ -192,7 +192,7 @@ public:
bool isFull();
//! should be overridden by subclasses
virtual void updateQuadWithParticle(tParticle* particle, const Vector2& newPosition);
virtual void updateQuadWithParticle(tParticle* particle, const Vec2& newPosition);
//! should be overridden by subclasses
virtual void postStep();
@ -202,8 +202,8 @@ public:
virtual void setAutoRemoveOnFinish(bool var);
// mode A
virtual const Vector2& getGravity();
virtual void setGravity(const Vector2& g);
virtual const Vec2& getGravity();
virtual void setGravity(const Vec2& g);
virtual float getSpeed() const;
virtual void setSpeed(float speed);
virtual float getSpeedVar() const;
@ -256,12 +256,12 @@ public:
inline void setDuration(float duration) { _duration = duration; };
/** sourcePosition of the emitter */
inline const Vector2& getSourcePosition() const { return _sourcePosition; };
inline void setSourcePosition(const Vector2& pos) { _sourcePosition = pos; };
inline const Vec2& getSourcePosition() const { return _sourcePosition; };
inline void setSourcePosition(const Vec2& pos) { _sourcePosition = pos; };
/** Position variance of the emitter */
inline const Vector2& getPosVar() const { return _posVar; };
inline void setPosVar(const Vector2& pos) { _posVar = pos; };
inline const Vec2& getPosVar() const { return _posVar; };
inline void setPosVar(const Vec2& pos) { _posVar = pos; };
/** life, and life variation of each particle */
inline float getLife() const { return _life; };
@ -432,7 +432,7 @@ protected:
//! Mode A:Gravity + Tangential Accel + Radial Accel
struct {
/** Gravity value. Only available in 'Gravity' mode. */
Vector2 gravity;
Vec2 gravity;
/** speed of each particle. Only available in 'Gravity' mode. */
float speed;
/** speed variance of each particle. Only available in 'Gravity' mode. */
@ -503,9 +503,9 @@ protected:
/** How many seconds the emitter will run. -1 means 'forever' */
float _duration;
/** sourcePosition of the emitter */
Vector2 _sourcePosition;
Vec2 _sourcePosition;
/** Position variance of the emitter */
Vector2 _posVar;
Vec2 _posVar;
/** life, and life variation of each particle */
float _life;
/** life variance of each particle */

View File

@ -30,7 +30,7 @@ THE SOFTWARE.
#include "2d/CCParticleSystemQuad.h"
#include "2d/CCSpriteFrame.h"
#include "2d/CCParticleBatchNode.h"
#include "2d/CCTextureAtlas.h"
#include "renderer/CCTextureAtlas.h"
#include "base/CCDirector.h"
#include "base/CCEventType.h"
#include "base/CCConfiguration.h"
@ -239,7 +239,7 @@ void ParticleSystemQuad::setTexture(Texture2D* texture)
void ParticleSystemQuad::setDisplayFrame(SpriteFrame *spriteFrame)
{
CCASSERT(spriteFrame->getOffsetInPixels().equals(Vector2::ZERO),
CCASSERT(spriteFrame->getOffsetInPixels().equals(Vec2::ZERO),
"QuadParticle only supports SpriteFrames with no offsets");
// update texture before updating texture rect
@ -265,7 +265,7 @@ void ParticleSystemQuad::initIndices()
}
}
void ParticleSystemQuad::updateQuadWithParticle(tParticle* particle, const Vector2& newPosition)
void ParticleSystemQuad::updateQuadWithParticle(tParticle* particle, const Vec2& newPosition)
{
V3F_C4B_T2F_Quad *quad;
@ -368,7 +368,7 @@ void ParticleSystemQuad::postStep()
}
// overriding draw method
void ParticleSystemQuad::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void ParticleSystemQuad::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
CCASSERT( _particleIdx == 0 || _particleIdx == _particleCount, "Abnormal error in particle quad");
//quad command
@ -523,7 +523,6 @@ void ParticleSystemQuad::listenBackToForeground(EventCustom* event)
bool ParticleSystemQuad::allocMemory()
{
CCASSERT( ( !_quads && !_indices), "Memory already alloced");
CCASSERT( !_batchNode, "Memory should not be alloced when not using batchNode");
CC_SAFE_FREE(_quads);

View File

@ -96,7 +96,7 @@ public:
* @js NA
* @lua NA
*/
virtual void updateQuadWithParticle(tParticle* particle, const Vector2& newPosition) override;
virtual void updateQuadWithParticle(tParticle* particle, const Vec2& newPosition) override;
/**
* @js NA
* @lua NA
@ -106,7 +106,7 @@ public:
* @js NA
* @lua NA
*/
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
/**
* @js NA

View File

@ -27,8 +27,8 @@ THE SOFTWARE.
#include "base/ccMacros.h"
#include "base/CCDirector.h"
#include "2d/CCTextureCache.h"
#include "2d/CCDrawingPrimitives.h"
#include "renderer/CCTextureCache.h"
#include "renderer/CCGLProgram.h"
#include "renderer/CCGLProgramState.h"
#include "renderer/ccGLStateCache.h"
@ -79,11 +79,11 @@ bool ProgressTimer::initWithSprite(Sprite* sp)
_vertexData = nullptr;
_vertexDataCount = 0;
setAnchorPoint(Vector2(0.5f,0.5f));
setAnchorPoint(Vec2(0.5f,0.5f));
_type = Type::RADIAL;
_reverseDirection = false;
setMidpoint(Vector2(0.5f, 0.5f));
setBarChangeRate(Vector2(1,1));
setMidpoint(Vec2(0.5f, 0.5f));
setBarChangeRate(Vec2(1,1));
setSprite(sp);
// shader state
@ -156,15 +156,15 @@ void ProgressTimer::setReverseProgress(bool reverse)
///
// @returns the vertex position from the texture coordinate
///
Tex2F ProgressTimer::textureCoordFromAlphaPoint(Vector2 alpha)
Tex2F ProgressTimer::textureCoordFromAlphaPoint(Vec2 alpha)
{
Tex2F ret(0.0f, 0.0f);
if (!_sprite) {
return ret;
}
V3F_C4B_T2F_Quad quad = _sprite->getQuad();
Vector2 min = Vector2(quad.bl.texCoords.u,quad.bl.texCoords.v);
Vector2 max = Vector2(quad.tr.texCoords.u,quad.tr.texCoords.v);
Vec2 min = Vec2(quad.bl.texCoords.u,quad.bl.texCoords.v);
Vec2 max = Vec2(quad.tr.texCoords.u,quad.tr.texCoords.v);
// Fix bug #1303 so that progress timer handles sprite frame texture rotation
if (_sprite->isTextureRectRotated()) {
CC_SWAP(alpha.x, alpha.y, float);
@ -172,15 +172,15 @@ Tex2F ProgressTimer::textureCoordFromAlphaPoint(Vector2 alpha)
return Tex2F(min.x * (1.f - alpha.x) + max.x * alpha.x, min.y * (1.f - alpha.y) + max.y * alpha.y);
}
Vector2 ProgressTimer::vertexFromAlphaPoint(Vector2 alpha)
Vec2 ProgressTimer::vertexFromAlphaPoint(Vec2 alpha)
{
Vector2 ret(0.0f, 0.0f);
Vec2 ret(0.0f, 0.0f);
if (!_sprite) {
return ret;
}
V3F_C4B_T2F_Quad quad = _sprite->getQuad();
Vector2 min = Vector2(quad.bl.vertices.x,quad.bl.vertices.y);
Vector2 max = Vector2(quad.tr.vertices.x,quad.tr.vertices.y);
Vec2 min = Vec2(quad.bl.vertices.x,quad.bl.vertices.y);
Vec2 max = Vec2(quad.tr.vertices.x,quad.tr.vertices.y);
ret.x = min.x * (1.f - alpha.x) + max.x * alpha.x;
ret.y = min.y * (1.f - alpha.y) + max.y * alpha.y;
return ret;
@ -217,12 +217,12 @@ void ProgressTimer::updateProgress(void)
}
}
void ProgressTimer::setAnchorPoint(const Vector2& anchorPoint)
void ProgressTimer::setAnchorPoint(const Vec2& anchorPoint)
{
Node::setAnchorPoint(anchorPoint);
}
Vector2 ProgressTimer::getMidpoint() const
Vec2 ProgressTimer::getMidpoint() const
{
return _midpoint;
}
@ -249,9 +249,9 @@ GLubyte ProgressTimer::getOpacity() const
return _sprite->getOpacity();
}
void ProgressTimer::setMidpoint(const Vector2& midPoint)
void ProgressTimer::setMidpoint(const Vec2& midPoint)
{
_midpoint = midPoint.getClampPoint(Vector2::ZERO, Vector2(1, 1));
_midpoint = midPoint.getClampPoint(Vec2::ZERO, Vec2(1, 1));
}
///
@ -275,12 +275,12 @@ void ProgressTimer::updateRadial(void)
// We find the vector to do a hit detection based on the percentage
// We know the first vector is the one @ 12 o'clock (top,mid) so we rotate
// from that by the progress angle around the _midpoint pivot
Vector2 topMid = Vector2(_midpoint.x, 1.f);
Vector2 percentagePt = topMid.rotateByAngle(_midpoint, angle);
Vec2 topMid = Vec2(_midpoint.x, 1.f);
Vec2 percentagePt = topMid.rotateByAngle(_midpoint, angle);
int index = 0;
Vector2 hit = Vector2::ZERO;
Vec2 hit = Vec2::ZERO;
if (alpha == 0.f) {
// More efficient since we don't always need to check intersection
@ -302,8 +302,8 @@ void ProgressTimer::updateRadial(void)
for (int i = 0; i <= kProgressTextureCoordsCount; ++i) {
int pIndex = (i + (kProgressTextureCoordsCount - 1))%kProgressTextureCoordsCount;
Vector2 edgePtA = boundaryTexCoord(i % kProgressTextureCoordsCount);
Vector2 edgePtB = boundaryTexCoord(pIndex);
Vec2 edgePtA = boundaryTexCoord(i % kProgressTextureCoordsCount);
Vec2 edgePtB = boundaryTexCoord(pIndex);
// Remember that the top edge is split in half for the 12 o'clock position
// Let's deal with that here by finding the correct endpoints
@ -315,7 +315,7 @@ void ProgressTimer::updateRadial(void)
// s and t are returned by ccpLineIntersect
float s = 0, t = 0;
if(Vector2::isLineIntersect(edgePtA, edgePtB, _midpoint, percentagePt, &s, &t))
if(Vec2::isLineIntersect(edgePtA, edgePtB, _midpoint, percentagePt, &s, &t))
{
// Since our hit test is on rays we have to deal with the top edge
@ -374,7 +374,7 @@ void ProgressTimer::updateRadial(void)
_vertexData[1].vertices = vertexFromAlphaPoint(topMid);
for(int i = 0; i < index; ++i){
Vector2 alphaPoint = boundaryTexCoord(i);
Vec2 alphaPoint = boundaryTexCoord(i);
_vertexData[i+2].texCoords = textureCoordFromAlphaPoint(alphaPoint);
_vertexData[i+2].vertices = vertexFromAlphaPoint(alphaPoint);
}
@ -401,9 +401,9 @@ void ProgressTimer::updateBar(void)
return;
}
float alpha = _percentage / 100.0f;
Vector2 alphaOffset = Vector2(1.0f * (1.0f - _barChangeRate.x) + alpha * _barChangeRate.x, 1.0f * (1.0f - _barChangeRate.y) + alpha * _barChangeRate.y) * 0.5f;
Vector2 min = _midpoint - alphaOffset;
Vector2 max = _midpoint + alphaOffset;
Vec2 alphaOffset = Vec2(1.0f * (1.0f - _barChangeRate.x) + alpha * _barChangeRate.x, 1.0f * (1.0f - _barChangeRate.y) + alpha * _barChangeRate.y) * 0.5f;
Vec2 min = _midpoint - alphaOffset;
Vec2 max = _midpoint + alphaOffset;
if (min.x < 0.f) {
max.x += -min.x;
@ -433,74 +433,74 @@ void ProgressTimer::updateBar(void)
CCASSERT( _vertexData, "CCProgressTimer. Not enough memory");
}
// TOPLEFT
_vertexData[0].texCoords = textureCoordFromAlphaPoint(Vector2(min.x,max.y));
_vertexData[0].vertices = vertexFromAlphaPoint(Vector2(min.x,max.y));
_vertexData[0].texCoords = textureCoordFromAlphaPoint(Vec2(min.x,max.y));
_vertexData[0].vertices = vertexFromAlphaPoint(Vec2(min.x,max.y));
// BOTLEFT
_vertexData[1].texCoords = textureCoordFromAlphaPoint(Vector2(min.x,min.y));
_vertexData[1].vertices = vertexFromAlphaPoint(Vector2(min.x,min.y));
_vertexData[1].texCoords = textureCoordFromAlphaPoint(Vec2(min.x,min.y));
_vertexData[1].vertices = vertexFromAlphaPoint(Vec2(min.x,min.y));
// TOPRIGHT
_vertexData[2].texCoords = textureCoordFromAlphaPoint(Vector2(max.x,max.y));
_vertexData[2].vertices = vertexFromAlphaPoint(Vector2(max.x,max.y));
_vertexData[2].texCoords = textureCoordFromAlphaPoint(Vec2(max.x,max.y));
_vertexData[2].vertices = vertexFromAlphaPoint(Vec2(max.x,max.y));
// BOTRIGHT
_vertexData[3].texCoords = textureCoordFromAlphaPoint(Vector2(max.x,min.y));
_vertexData[3].vertices = vertexFromAlphaPoint(Vector2(max.x,min.y));
_vertexData[3].texCoords = textureCoordFromAlphaPoint(Vec2(max.x,min.y));
_vertexData[3].vertices = vertexFromAlphaPoint(Vec2(max.x,min.y));
} else {
if(!_vertexData) {
_vertexDataCount = 8;
_vertexData = (V2F_C4B_T2F*)malloc(_vertexDataCount * sizeof(V2F_C4B_T2F));
CCASSERT( _vertexData, "CCProgressTimer. Not enough memory");
// TOPLEFT 1
_vertexData[0].texCoords = textureCoordFromAlphaPoint(Vector2(0,1));
_vertexData[0].vertices = vertexFromAlphaPoint(Vector2(0,1));
_vertexData[0].texCoords = textureCoordFromAlphaPoint(Vec2(0,1));
_vertexData[0].vertices = vertexFromAlphaPoint(Vec2(0,1));
// BOTLEFT 1
_vertexData[1].texCoords = textureCoordFromAlphaPoint(Vector2(0,0));
_vertexData[1].vertices = vertexFromAlphaPoint(Vector2(0,0));
_vertexData[1].texCoords = textureCoordFromAlphaPoint(Vec2(0,0));
_vertexData[1].vertices = vertexFromAlphaPoint(Vec2(0,0));
// TOPRIGHT 2
_vertexData[6].texCoords = textureCoordFromAlphaPoint(Vector2(1,1));
_vertexData[6].vertices = vertexFromAlphaPoint(Vector2(1,1));
_vertexData[6].texCoords = textureCoordFromAlphaPoint(Vec2(1,1));
_vertexData[6].vertices = vertexFromAlphaPoint(Vec2(1,1));
// BOTRIGHT 2
_vertexData[7].texCoords = textureCoordFromAlphaPoint(Vector2(1,0));
_vertexData[7].vertices = vertexFromAlphaPoint(Vector2(1,0));
_vertexData[7].texCoords = textureCoordFromAlphaPoint(Vec2(1,0));
_vertexData[7].vertices = vertexFromAlphaPoint(Vec2(1,0));
}
// TOPRIGHT 1
_vertexData[2].texCoords = textureCoordFromAlphaPoint(Vector2(min.x,max.y));
_vertexData[2].vertices = vertexFromAlphaPoint(Vector2(min.x,max.y));
_vertexData[2].texCoords = textureCoordFromAlphaPoint(Vec2(min.x,max.y));
_vertexData[2].vertices = vertexFromAlphaPoint(Vec2(min.x,max.y));
// BOTRIGHT 1
_vertexData[3].texCoords = textureCoordFromAlphaPoint(Vector2(min.x,min.y));
_vertexData[3].vertices = vertexFromAlphaPoint(Vector2(min.x,min.y));
_vertexData[3].texCoords = textureCoordFromAlphaPoint(Vec2(min.x,min.y));
_vertexData[3].vertices = vertexFromAlphaPoint(Vec2(min.x,min.y));
// TOPLEFT 2
_vertexData[4].texCoords = textureCoordFromAlphaPoint(Vector2(max.x,max.y));
_vertexData[4].vertices = vertexFromAlphaPoint(Vector2(max.x,max.y));
_vertexData[4].texCoords = textureCoordFromAlphaPoint(Vec2(max.x,max.y));
_vertexData[4].vertices = vertexFromAlphaPoint(Vec2(max.x,max.y));
// BOTLEFT 2
_vertexData[5].texCoords = textureCoordFromAlphaPoint(Vector2(max.x,min.y));
_vertexData[5].vertices = vertexFromAlphaPoint(Vector2(max.x,min.y));
_vertexData[5].texCoords = textureCoordFromAlphaPoint(Vec2(max.x,min.y));
_vertexData[5].vertices = vertexFromAlphaPoint(Vec2(max.x,min.y));
}
updateColor();
}
Vector2 ProgressTimer::boundaryTexCoord(char index)
Vec2 ProgressTimer::boundaryTexCoord(char index)
{
if (index < kProgressTextureCoordsCount) {
if (_reverseDirection) {
return Vector2((kProgressTextureCoords>>(7-(index<<1)))&1,(kProgressTextureCoords>>(7-((index<<1)+1)))&1);
return Vec2((kProgressTextureCoords>>(7-(index<<1)))&1,(kProgressTextureCoords>>(7-((index<<1)+1)))&1);
} else {
return Vector2((kProgressTextureCoords>>((index<<1)+1))&1,(kProgressTextureCoords>>(index<<1))&1);
return Vec2((kProgressTextureCoords>>((index<<1)+1))&1,(kProgressTextureCoords>>(index<<1))&1);
}
}
return Vector2::ZERO;
return Vec2::ZERO;
}
void ProgressTimer::onDraw(const Matrix &transform, bool transformUpdated)
void ProgressTimer::onDraw(const Mat4 &transform, bool transformUpdated)
{
getGLProgram()->use();
@ -518,7 +518,7 @@ void ProgressTimer::onDraw(const Matrix &transform, bool transformUpdated)
int offset = 0;
glVertexAttribPointer( GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, sizeof(V2F_C4B_T2F), (GLvoid*)offset);
offset += sizeof(Vector2);
offset += sizeof(Vec2);
glVertexAttribPointer( GLProgram::VERTEX_ATTRIB_COLOR, 4, GL_UNSIGNED_BYTE, GL_TRUE, sizeof(V2F_C4B_T2F), (GLvoid*)offset);
offset += sizeof(Color4B);
@ -551,7 +551,7 @@ void ProgressTimer::onDraw(const Matrix &transform, bool transformUpdated)
}
}
void ProgressTimer::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void ProgressTimer::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
if( ! _vertexData || ! _sprite)
return;

View File

@ -91,28 +91,28 @@ public:
* If you're using radials type then the midpoint changes the center point
* If you're using bar type the the midpoint changes the bar growth
* it expands from the center but clamps to the sprites edge so:
* you want a left to right then set the midpoint all the way to Vector2(0,y)
* you want a right to left then set the midpoint all the way to Vector2(1,y)
* you want a bottom to top then set the midpoint all the way to Vector2(x,0)
* you want a top to bottom then set the midpoint all the way to Vector2(x,1)
* you want a left to right then set the midpoint all the way to Vec2(0,y)
* you want a right to left then set the midpoint all the way to Vec2(1,y)
* you want a bottom to top then set the midpoint all the way to Vec2(x,0)
* you want a top to bottom then set the midpoint all the way to Vec2(x,1)
*/
void setMidpoint(const Vector2& point);
void setMidpoint(const Vec2& point);
/** Returns the Midpoint */
Vector2 getMidpoint() const;
Vec2 getMidpoint() const;
/**
* This allows the bar type to move the component at a specific rate
* Set the component to 0 to make sure it stays at 100%.
* For example you want a left to right bar but not have the height stay 100%
* Set the rate to be Vector2(0,1); and set the midpoint to = Vector2(0,.5f);
* Set the rate to be Vec2(0,1); and set the midpoint to = Vec2(0,.5f);
*/
inline void setBarChangeRate(const Vector2& barChangeRate ) { _barChangeRate = barChangeRate; }
inline void setBarChangeRate(const Vec2& barChangeRate ) { _barChangeRate = barChangeRate; }
/** Returns the BarChangeRate */
inline Vector2 getBarChangeRate() const { return _barChangeRate; }
inline Vec2 getBarChangeRate() const { return _barChangeRate; }
// Overrides
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void setAnchorPoint(const Vector2& anchorPoint) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
virtual void setAnchorPoint(const Vec2& anchorPoint) override;
virtual void setColor(const Color3B &color) override;
virtual const Color3B& getColor() const override;
virtual void setOpacity(GLubyte opacity) override;
@ -133,19 +133,19 @@ CC_CONSTRUCTOR_ACCESS:
bool initWithSprite(Sprite* sp);
protected:
void onDraw(const Matrix &transform, bool transformUpdated);
void onDraw(const Mat4 &transform, bool transformUpdated);
Tex2F textureCoordFromAlphaPoint(Vector2 alpha);
Vector2 vertexFromAlphaPoint(Vector2 alpha);
Tex2F textureCoordFromAlphaPoint(Vec2 alpha);
Vec2 vertexFromAlphaPoint(Vec2 alpha);
void updateProgress(void);
void updateBar(void);
void updateRadial(void);
virtual void updateColor(void) override;
Vector2 boundaryTexCoord(char index);
Vec2 boundaryTexCoord(char index);
Type _type;
Vector2 _midpoint;
Vector2 _barChangeRate;
Vec2 _midpoint;
Vec2 _barChangeRate;
float _percentage;
Sprite *_sprite;
int _vertexDataCount;

View File

@ -24,27 +24,27 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
****************************************************************************/
#include "base/CCConfiguration.h"
#include "2d/CCRenderTexture.h"
#include "base/ccUtils.h"
#include "platform/CCImage.h"
#include "platform/CCFileUtils.h"
#include "2d/CCGrid.h"
#include "base/CCEventType.h"
#include "base/CCConfiguration.h"
#include "base/CCConfiguration.h"
#include "base/CCDirector.h"
#include "2d/platform/CCImage.h"
#include "base/CCEventListenerCustom.h"
#include "base/CCEventDispatcher.h"
#include "renderer/CCGLProgram.h"
#include "renderer/ccGLStateCache.h"
#include "base/CCConfiguration.h"
#include "2d/ccUtils.h"
#include "2d/CCTextureCache.h"
#include "2d/platform/CCFileUtils.h"
#include "CCGL.h"
#include "base/CCEventType.h"
#include "2d/CCGrid.h"
#include "renderer/CCTextureCache.h"
#include "renderer/CCRenderer.h"
#include "renderer/CCGroupCommand.h"
#include "renderer/CCCustomCommand.h"
// extern
#include "base/CCEventListenerCustom.h"
#include "base/CCEventDispatcher.h"
#include "CCGL.h"
NS_CC_BEGIN
@ -306,7 +306,7 @@ void RenderTexture::setKeepMatrix(bool keepMatrix)
_keepMatrix = keepMatrix;
}
void RenderTexture::setVirtualViewport(const Vector2& rtBegin, const Rect& fullRect, const Rect& fullViewport)
void RenderTexture::setVirtualViewport(const Vec2& rtBegin, const Rect& fullRect, const Rect& fullViewport)
{
_rtTextureRect.origin.x = rtBegin.x;
_rtTextureRect.origin.y = rtBegin.y;
@ -383,7 +383,7 @@ void RenderTexture::clearStencil(int stencilValue)
glClearStencil(stencilClearValue);
}
void RenderTexture::visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated)
void RenderTexture::visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated)
{
// override visit.
// Don't call visit on its children
@ -401,7 +401,7 @@ void RenderTexture::visit(Renderer *renderer, const Matrix &parentTransform, boo
CCASSERT(nullptr != director, "Director is null when seting matrix stack");
// IMPORTANT:
// To ease the migration to v3.0, we still support the Matrix stack,
// To ease the migration to v3.0, we still support the Mat4 stack,
// but it is deprecated and your code should not rely on it
director->pushMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_MODELVIEW);
director->loadMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_MODELVIEW, _modelViewTransform);
@ -535,7 +535,7 @@ void RenderTexture::onBegin()
director->setProjection(director->getProjection());
#if CC_TARGET_PLATFORM == CC_PLATFORM_WP8
Matrix modifiedProjection = director->getMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_PROJECTION);
Mat4 modifiedProjection = director->getMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_PROJECTION);
modifiedProjection = CCEGLView::sharedOpenGLView()->getReverseOrientationMatrix() * modifiedProjection;
director->loadMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_PROJECTION,modifiedProjection);
#endif
@ -547,8 +547,8 @@ void RenderTexture::onBegin()
float widthRatio = size.width / texSize.width;
float heightRatio = size.height / texSize.height;
Matrix orthoMatrix;
Matrix::createOrthographicOffCenter((float)-1.0 / widthRatio, (float)1.0 / widthRatio, (float)-1.0 / heightRatio, (float)1.0 / heightRatio, -1, 1, &orthoMatrix);
Mat4 orthoMatrix;
Mat4::createOrthographicOffCenter((float)-1.0 / widthRatio, (float)1.0 / widthRatio, (float)-1.0 / heightRatio, (float)1.0 / heightRatio, -1, 1, &orthoMatrix);
director->multiplyMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_PROJECTION, orthoMatrix);
}
@ -654,7 +654,7 @@ void RenderTexture::onClearDepth()
glClearDepth(depthClearValue);
}
void RenderTexture::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void RenderTexture::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
if (_autoDraw)
{
@ -703,8 +703,8 @@ void RenderTexture::begin()
float widthRatio = size.width / texSize.width;
float heightRatio = size.height / texSize.height;
Matrix orthoMatrix;
Matrix::createOrthographicOffCenter((float)-1.0 / widthRatio, (float)1.0 / widthRatio, (float)-1.0 / heightRatio, (float)1.0 / heightRatio, -1, 1, &orthoMatrix);
Mat4 orthoMatrix;
Mat4::createOrthographicOffCenter((float)-1.0 / widthRatio, (float)1.0 / widthRatio, (float)-1.0 / heightRatio, (float)1.0 / heightRatio, -1, 1, &orthoMatrix);
director->multiplyMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_PROJECTION, orthoMatrix);
}

View File

@ -28,7 +28,7 @@ THE SOFTWARE.
#include "2d/CCNode.h"
#include "2d/CCSprite.h"
#include "2d/platform/CCImage.h"
#include "platform/CCImage.h"
#include "renderer/CCGroupCommand.h"
#include "renderer/CCCustomCommand.h"
@ -153,8 +153,8 @@ public:
};
// Overrides
virtual void visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated) override;
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
//flag: use stack matrix computed from scene hierarchy or generate new modelView and projection matrix
void setKeepMatrix(bool keepMatrix);
@ -163,7 +163,7 @@ public:
//fullRect: the total size of screen
//fullViewport: the total viewportSize
*/
void setVirtualViewport(const Vector2& rtBegin, const Rect& fullRect, const Rect& fullViewport);
void setVirtualViewport(const Vec2& rtBegin, const Rect& fullRect, const Rect& fullViewport);
public:
// XXX should be procted.
@ -224,8 +224,8 @@ protected:
void onSaveToFile(const std::string& fileName);
Matrix _oldTransMatrix, _oldProjMatrix;
Matrix _transformMatrix, _projectionMatrix;
Mat4 _oldTransMatrix, _oldProjMatrix;
Mat4 _transformMatrix, _projectionMatrix;
private:
CC_DISALLOW_COPY_AND_ASSIGN(RenderTexture);

View File

@ -41,7 +41,7 @@ Scene::Scene()
#endif
{
_ignoreAnchorPointForPosition = true;
setAnchorPoint(Vector2(0.5f, 0.5f));
setAnchorPoint(Vec2(0.5f, 0.5f));
}
Scene::~Scene()

View File

@ -26,14 +26,18 @@ THE SOFTWARE.
****************************************************************************/
#include "2d/CCSprite.h"
#include <string.h>
#include <algorithm>
#include "2d/CCSpriteBatchNode.h"
#include "2d/CCAnimation.h"
#include "2d/CCAnimationCache.h"
#include "2d/CCSpriteFrame.h"
#include "2d/CCSpriteFrameCache.h"
#include "2d/CCTextureCache.h"
#include "2d/CCDrawingPrimitives.h"
#include "2d/CCTexture2D.h"
#include "renderer/CCTextureCache.h"
#include "renderer/CCTexture2D.h"
#include "renderer/CCGLProgramState.h"
#include "renderer/ccGLStateCache.h"
#include "renderer/CCGLProgram.h"
@ -48,8 +52,6 @@ THE SOFTWARE.
#include "deprecated/CCString.h"
#include <string.h>
#include <algorithm>
NS_CC_BEGIN
@ -234,10 +236,10 @@ bool Sprite::initWithTexture(Texture2D *texture, const Rect& rect, bool rotated)
_flippedX = _flippedY = false;
// default transform anchor: center
setAnchorPoint(Vector2(0.5f, 0.5f));
setAnchorPoint(Vec2(0.5f, 0.5f));
// zwoptex default values
_offsetPosition = Vector2::ZERO;
_offsetPosition = Vec2::ZERO;
// clean the Quad
memset(&_quad, 0, sizeof(_quad));
@ -367,7 +369,7 @@ void Sprite::setTextureRect(const Rect& rect, bool rotated, const Size& untrimme
setVertexRect(rect);
setTextureCoords(rect);
Vector2 relativeOffset = _unflippedOffsetPositionFromCenter;
Vec2 relativeOffset = _unflippedOffsetPositionFromCenter;
// issue #732
if (_flippedX)
@ -399,10 +401,10 @@ void Sprite::setTextureRect(const Rect& rect, bool rotated, const Size& untrimme
float y2 = y1 + _rect.size.height;
// Don't update Z.
_quad.bl.vertices = Vector3(x1, y1, 0);
_quad.br.vertices = Vector3(x2, y1, 0);
_quad.tl.vertices = Vector3(x1, y2, 0);
_quad.tr.vertices = Vector3(x2, y2, 0);
_quad.bl.vertices = Vec3(x1, y1, 0);
_quad.br.vertices = Vec3(x2, y1, 0);
_quad.tl.vertices = Vec3(x1, y2, 0);
_quad.tr.vertices = Vec3(x2, y2, 0);
}
}
@ -505,7 +507,7 @@ void Sprite::updateTransform(void)
// If it is not visible, or one of its ancestors is not visible, then do nothing:
if( !_visible || ( _parent && _parent != _batchNode && static_cast<Sprite*>(_parent)->_shouldBeHidden) )
{
_quad.br.vertices = _quad.tl.vertices = _quad.tr.vertices = _quad.bl.vertices = Vector3(0,0,0);
_quad.br.vertices = _quad.tl.vertices = _quad.tr.vertices = _quad.bl.vertices = Vec3(0,0,0);
_shouldBeHidden = true;
}
else
@ -519,8 +521,8 @@ void Sprite::updateTransform(void)
else
{
CCASSERT( dynamic_cast<Sprite*>(_parent), "Logic error in Sprite. Parent must be a Sprite");
Matrix nodeToParent = getNodeToParentTransform();
Matrix parentTransform = static_cast<Sprite*>(_parent)->_transformToBatch;
Mat4 nodeToParent = getNodeToParentTransform();
Mat4 parentTransform = static_cast<Sprite*>(_parent)->_transformToBatch;
_transformToBatch = parentTransform * nodeToParent;
}
@ -554,10 +556,10 @@ void Sprite::updateTransform(void)
float dx = x1 * cr - y2 * sr2 + x;
float dy = x1 * sr + y2 * cr2 + y;
_quad.bl.vertices = Vector3( RENDER_IN_SUBPIXEL(ax), RENDER_IN_SUBPIXEL(ay), _positionZ );
_quad.br.vertices = Vector3( RENDER_IN_SUBPIXEL(bx), RENDER_IN_SUBPIXEL(by), _positionZ );
_quad.tl.vertices = Vector3( RENDER_IN_SUBPIXEL(dx), RENDER_IN_SUBPIXEL(dy), _positionZ );
_quad.tr.vertices = Vector3( RENDER_IN_SUBPIXEL(cx), RENDER_IN_SUBPIXEL(cy), _positionZ );
_quad.bl.vertices = Vec3( RENDER_IN_SUBPIXEL(ax), RENDER_IN_SUBPIXEL(ay), _positionZ );
_quad.br.vertices = Vec3( RENDER_IN_SUBPIXEL(bx), RENDER_IN_SUBPIXEL(by), _positionZ );
_quad.tl.vertices = Vec3( RENDER_IN_SUBPIXEL(dx), RENDER_IN_SUBPIXEL(dy), _positionZ );
_quad.tr.vertices = Vec3( RENDER_IN_SUBPIXEL(cx), RENDER_IN_SUBPIXEL(cy), _positionZ );
}
// MARMALADE CHANGE: ADDED CHECK FOR nullptr, TO PERMIT SPRITES WITH NO BATCH NODE / TEXTURE ATLAS
@ -583,7 +585,7 @@ void Sprite::updateTransform(void)
// draw
void Sprite::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void Sprite::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
// Don't do calculate the culling if the transform was not updated
_insideBounds = transformUpdated ? renderer->checkVisibility(transform, _contentSize) : _insideBounds;
@ -604,15 +606,15 @@ void Sprite::drawDebugData()
{
Director* director = Director::getInstance();
CCASSERT(nullptr != director, "Director is null when seting matrix stack");
Matrix oldModelView;
Mat4 oldModelView;
oldModelView = director->getMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_MODELVIEW);
director->loadMatrix(MATRIX_STACK_TYPE::MATRIX_STACK_MODELVIEW, _modelViewTransform);
// draw bounding box
Vector2 vertices[4] = {
Vector2( _quad.bl.vertices.x, _quad.bl.vertices.y ),
Vector2( _quad.br.vertices.x, _quad.br.vertices.y ),
Vector2( _quad.tr.vertices.x, _quad.tr.vertices.y ),
Vector2( _quad.tl.vertices.x, _quad.tl.vertices.y ),
Vec2 vertices[4] = {
Vec2( _quad.bl.vertices.x, _quad.bl.vertices.y ),
Vec2( _quad.br.vertices.x, _quad.br.vertices.y ),
Vec2( _quad.tr.vertices.x, _quad.tr.vertices.y ),
Vec2( _quad.tl.vertices.x, _quad.tl.vertices.y ),
};
DrawPrimitives::drawPoly(vertices, 4, true);
@ -742,7 +744,7 @@ void Sprite::setDirtyRecursively(bool bValue)
} \
}
void Sprite::setPosition(const Vector2& pos)
void Sprite::setPosition(const Vec2& pos)
{
Node::setPosition(pos);
SET_DIRTY_RECURSIVELY();
@ -815,7 +817,7 @@ void Sprite::setPositionZ(float fVertexZ)
SET_DIRTY_RECURSIVELY();
}
void Sprite::setAnchorPoint(const Vector2& anchor)
void Sprite::setAnchorPoint(const Vec2& anchor)
{
Node::setAnchorPoint(anchor);
SET_DIRTY_RECURSIVELY();
@ -996,15 +998,15 @@ void Sprite::setBatchNode(SpriteBatchNode *spriteBatchNode)
float y1 = _offsetPosition.y;
float x2 = x1 + _rect.size.width;
float y2 = y1 + _rect.size.height;
_quad.bl.vertices = Vector3( x1, y1, 0 );
_quad.br.vertices = Vector3( x2, y1, 0 );
_quad.tl.vertices = Vector3( x1, y2, 0 );
_quad.tr.vertices = Vector3( x2, y2, 0 );
_quad.bl.vertices = Vec3( x1, y1, 0 );
_quad.br.vertices = Vec3( x2, y1, 0 );
_quad.tl.vertices = Vec3( x1, y2, 0 );
_quad.tr.vertices = Vec3( x2, y2, 0 );
} else {
// using batch
_transformToBatch = Matrix::IDENTITY;
_transformToBatch = Mat4::IDENTITY;
setTextureAtlas(_batchNode->getTextureAtlas()); // weak ref
}
}

View File

@ -29,8 +29,8 @@ THE SOFTWARE.
#define __SPRITE_NODE_CCSPRITE_H__
#include "2d/CCNode.h"
#include "2d/CCProtocols.h"
#include "2d/CCTextureAtlas.h"
#include "base/CCProtocols.h"
#include "renderer/CCTextureAtlas.h"
#include "base/ccTypes.h"
#include <string>
#ifdef EMSCRIPTEN
@ -317,7 +317,7 @@ public:
/**
* Gets the offset position of the sprite. Calculated automatically by editors like Zwoptex.
*/
inline const Vector2& getOffsetPosition(void) const { return _offsetPosition; }
inline const Vec2& getOffsetPosition(void) const { return _offsetPosition; }
/**
@ -402,7 +402,7 @@ public:
* @js NA
* @lua NA
*/
virtual void setPosition(const Vector2& pos) override;
virtual void setPosition(const Vec2& pos) override;
virtual void setPosition(float x, float y) override;
virtual void setRotation(float rotation) override;
virtual void setRotationSkewX(float rotationX) override;
@ -417,10 +417,10 @@ public:
virtual void sortAllChildren() override;
virtual void setScale(float scale) override;
virtual void setPositionZ(float positionZ) override;
virtual void setAnchorPoint(const Vector2& anchor) override;
virtual void setAnchorPoint(const Vec2& anchor) override;
virtual void ignoreAnchorPointForPosition(bool value) override;
virtual void setVisible(bool bVisible) override;
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
virtual void setOpacityModifyRGB(bool modify) override;
virtual bool isOpacityModifyRGB(void) const override;
/// @}
@ -535,7 +535,7 @@ protected:
bool _dirty; /// Whether the sprite needs to be updated
bool _recursiveDirty; /// Whether all of the sprite's children needs to be updated
bool _shouldBeHidden; /// should not be drawn because one of the ancestors is not visible
Matrix _transformToBatch;
Mat4 _transformToBatch;
//
// Data used when the sprite is self-rendered
@ -556,8 +556,8 @@ protected:
bool _rectRotated; /// Whether the texture is rotated
// Offset Position (used by Zwoptex)
Vector2 _offsetPosition;
Vector2 _unflippedOffsetPositionFromCenter;
Vec2 _offsetPosition;
Vec2 _unflippedOffsetPositionFromCenter;
// vertex coords, texture coords and color info
V3F_C4B_T2F_Quad _quad;

View File

@ -28,15 +28,17 @@ THE SOFTWARE.
#include "2d/CCSpriteBatchNode.h"
#include <algorithm>
#include "2d/CCSprite.h"
#include "2d/CCGrid.h"
#include "2d/CCDrawingPrimitives.h"
#include "2d/CCTextureCache.h"
#include "2d/CCLayer.h"
#include "2d/CCScene.h"
#include "base/ccConfig.h"
#include "base/CCDirector.h"
#include "base/CCProfiling.h"
#include "renderer/CCTextureCache.h"
#include "renderer/CCGLProgramState.h"
#include "renderer/CCGLProgram.h"
#include "renderer/ccGLStateCache.h"
@ -46,8 +48,6 @@ THE SOFTWARE.
#include "deprecated/CCString.h" // For StringUtils::format
// external
#include <algorithm>
NS_CC_BEGIN
@ -132,7 +132,7 @@ SpriteBatchNode::~SpriteBatchNode()
// override visit
// don't call visit on it's children
void SpriteBatchNode::visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated)
void SpriteBatchNode::visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated)
{
CC_PROFILER_START_CATEGORY(kProfilerCategoryBatchSprite, "CCSpriteBatchNode - visit");
@ -156,7 +156,7 @@ void SpriteBatchNode::visit(Renderer *renderer, const Matrix &parentTransform, b
_transformUpdated = false;
// IMPORTANT:
// To ease the migration to v3.0, we still support the Matrix stack,
// To ease the migration to v3.0, we still support the Mat4 stack,
// but it is deprecated and your code should not rely on it
Director* director = Director::getInstance();
CCASSERT(nullptr != director, "Director is null when seting matrix stack");
@ -356,7 +356,7 @@ void SpriteBatchNode::reorderBatch(bool reorder)
_reorderChildDirty=reorder;
}
void SpriteBatchNode::draw(Renderer *renderer, const Matrix &transform, bool transformUpdated)
void SpriteBatchNode::draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated)
{
// Optimization: Fast Dispatch
if( _textureAtlas->getTotalQuads() == 0 )

View File

@ -32,9 +32,9 @@ THE SOFTWARE.
#include <vector>
#include "2d/CCNode.h"
#include "2d/CCProtocols.h"
#include "2d/CCTextureAtlas.h"
#include "base/CCProtocols.h"
#include "base/ccMacros.h"
#include "renderer/CCTextureAtlas.h"
#include "renderer/CCBatchCommand.h"
NS_CC_BEGIN
@ -134,7 +134,7 @@ public:
*/
virtual const BlendFunc& getBlendFunc() const override;
virtual void visit(Renderer *renderer, const Matrix &parentTransform, bool parentTransformUpdated) override;
virtual void visit(Renderer *renderer, const Mat4 &parentTransform, bool parentTransformUpdated) override;
using Node::addChild;
virtual void addChild(Node * child, int zOrder, int tag) override;
@ -143,7 +143,7 @@ public:
virtual void removeChild(Node *child, bool cleanup) override;
virtual void removeAllChildrenWithCleanup(bool cleanup) override;
virtual void sortAllChildren() override;
virtual void draw(Renderer *renderer, const Matrix &transform, bool transformUpdated) override;
virtual void draw(Renderer *renderer, const Mat4 &transform, bool transformUpdated) override;
virtual std::string getDescription() const override;
/** Inserts a quad at a certain index into the texture atlas. The Sprite won't be added into the children array.

View File

@ -24,7 +24,8 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
****************************************************************************/
#include "2d/CCTextureCache.h"
#include "renderer/CCTextureCache.h"
#include "2d/CCSpriteFrame.h"
#include "base/CCDirector.h"
@ -50,7 +51,7 @@ SpriteFrame* SpriteFrame::createWithTexture(Texture2D *texture, const Rect& rect
return spriteFrame;
}
SpriteFrame* SpriteFrame::createWithTexture(Texture2D* texture, const Rect& rect, bool rotated, const Vector2& offset, const Size& originalSize)
SpriteFrame* SpriteFrame::createWithTexture(Texture2D* texture, const Rect& rect, bool rotated, const Vec2& offset, const Size& originalSize)
{
SpriteFrame *spriteFrame = new SpriteFrame();
spriteFrame->initWithTexture(texture, rect, rotated, offset, originalSize);
@ -59,7 +60,7 @@ SpriteFrame* SpriteFrame::createWithTexture(Texture2D* texture, const Rect& rect
return spriteFrame;
}
SpriteFrame* SpriteFrame::create(const std::string& filename, const Rect& rect, bool rotated, const Vector2& offset, const Size& originalSize)
SpriteFrame* SpriteFrame::create(const std::string& filename, const Rect& rect, bool rotated, const Vec2& offset, const Size& originalSize)
{
SpriteFrame *spriteFrame = new SpriteFrame();
spriteFrame->initWithTextureFilename(filename, rect, rotated, offset, originalSize);
@ -71,16 +72,16 @@ SpriteFrame* SpriteFrame::create(const std::string& filename, const Rect& rect,
bool SpriteFrame::initWithTexture(Texture2D* texture, const Rect& rect)
{
Rect rectInPixels = CC_RECT_POINTS_TO_PIXELS(rect);
return initWithTexture(texture, rectInPixels, false, Vector2::ZERO, rectInPixels.size);
return initWithTexture(texture, rectInPixels, false, Vec2::ZERO, rectInPixels.size);
}
bool SpriteFrame::initWithTextureFilename(const std::string& filename, const Rect& rect)
{
Rect rectInPixels = CC_RECT_POINTS_TO_PIXELS( rect );
return initWithTextureFilename(filename, rectInPixels, false, Vector2::ZERO, rectInPixels.size);
return initWithTextureFilename(filename, rectInPixels, false, Vec2::ZERO, rectInPixels.size);
}
bool SpriteFrame::initWithTexture(Texture2D* texture, const Rect& rect, bool rotated, const Vector2& offset, const Size& originalSize)
bool SpriteFrame::initWithTexture(Texture2D* texture, const Rect& rect, bool rotated, const Vec2& offset, const Size& originalSize)
{
_texture = texture;
@ -100,7 +101,7 @@ bool SpriteFrame::initWithTexture(Texture2D* texture, const Rect& rect, bool rot
return true;
}
bool SpriteFrame::initWithTextureFilename(const std::string& filename, const Rect& rect, bool rotated, const Vector2& offset, const Size& originalSize)
bool SpriteFrame::initWithTextureFilename(const std::string& filename, const Rect& rect, bool rotated, const Vec2& offset, const Size& originalSize)
{
_texture = nullptr;
_textureFilename = filename;
@ -143,23 +144,23 @@ void SpriteFrame::setRectInPixels(const Rect& rectInPixels)
_rect = CC_RECT_PIXELS_TO_POINTS(rectInPixels);
}
const Vector2& SpriteFrame::getOffset() const
const Vec2& SpriteFrame::getOffset() const
{
return _offset;
}
void SpriteFrame::setOffset(const Vector2& offsets)
void SpriteFrame::setOffset(const Vec2& offsets)
{
_offset = offsets;
_offsetInPixels = CC_POINT_POINTS_TO_PIXELS( _offset );
}
const Vector2& SpriteFrame::getOffsetInPixels() const
const Vec2& SpriteFrame::getOffsetInPixels() const
{
return _offsetInPixels;
}
void SpriteFrame::setOffsetInPixels(const Vector2& offsetInPixels)
void SpriteFrame::setOffsetInPixels(const Vec2& offsetInPixels)
{
_offsetInPixels = offsetInPixels;
_offset = CC_POINT_PIXELS_TO_POINTS( _offsetInPixels );

View File

@ -29,7 +29,7 @@ THE SOFTWARE.
#define __SPRITE_CCSPRITE_FRAME_H__
#include "2d/CCNode.h"
#include "2d/CCProtocols.h"
#include "base/CCProtocols.h"
#include "base/CCRef.h"
#include "math/CCGeometry.h"
@ -64,7 +64,7 @@ public:
/** Create a SpriteFrame with a texture filename, rect, rotated, offset and originalSize in pixels.
The originalSize is the size in pixels of the frame before being trimmed.
*/
static SpriteFrame* create(const std::string& filename, const Rect& rect, bool rotated, const Vector2& offset, const Size& originalSize);
static SpriteFrame* create(const std::string& filename, const Rect& rect, bool rotated, const Vec2& offset, const Size& originalSize);
/** Create a SpriteFrame with a texture, rect in points.
It is assumed that the frame was not trimmed.
@ -74,7 +74,7 @@ public:
/** Create a SpriteFrame with a texture, rect, rotated, offset and originalSize in pixels.
The originalSize is the size in points of the frame before being trimmed.
*/
static SpriteFrame* createWithTexture(Texture2D* pobTexture, const Rect& rect, bool rotated, const Vector2& offset, const Size& originalSize);
static SpriteFrame* createWithTexture(Texture2D* pobTexture, const Rect& rect, bool rotated, const Vec2& offset, const Size& originalSize);
/**
* @js NA
* @lua NA
@ -94,14 +94,14 @@ public:
/** Initializes a SpriteFrame with a texture, rect, rotated, offset and originalSize in pixels.
The originalSize is the size in points of the frame before being trimmed.
*/
bool initWithTexture(Texture2D* pobTexture, const Rect& rect, bool rotated, const Vector2& offset, const Size& originalSize);
bool initWithTexture(Texture2D* pobTexture, const Rect& rect, bool rotated, const Vec2& offset, const Size& originalSize);
/** Initializes a SpriteFrame with a texture, rect, rotated, offset and originalSize in pixels.
The originalSize is the size in pixels of the frame before being trimmed.
@since v1.1
*/
bool initWithTextureFilename(const std::string& filename, const Rect& rect, bool rotated, const Vector2& offset, const Size& originalSize);
bool initWithTextureFilename(const std::string& filename, const Rect& rect, bool rotated, const Vec2& offset, const Size& originalSize);
// attributes
@ -117,9 +117,9 @@ public:
void setRect(const Rect& rect);
/** get offset of the frame */
const Vector2& getOffsetInPixels(void) const;
const Vec2& getOffsetInPixels(void) const;
/** set offset of the frame */
void setOffsetInPixels(const Vector2& offsetInPixels);
void setOffsetInPixels(const Vec2& offsetInPixels);
/** get original size of the trimmed image */
inline const Size& getOriginalSizeInPixels(void) const { return _originalSizeInPixels; }
@ -136,19 +136,19 @@ public:
/** set texture of the frame, the texture is retained */
void setTexture(Texture2D* pobTexture);
const Vector2& getOffset(void) const;
void setOffset(const Vector2& offsets);
const Vec2& getOffset(void) const;
void setOffset(const Vec2& offsets);
// Overrides
virtual SpriteFrame *clone() const override;
protected:
Vector2 _offset;
Vec2 _offset;
Size _originalSize;
Rect _rectInPixels;
bool _rotated;
Rect _rect;
Vector2 _offsetInPixels;
Vec2 _offsetInPixels;
Size _originalSizeInPixels;
Texture2D *_texture;
std::string _textureFilename;

View File

@ -27,17 +27,21 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
****************************************************************************/
#include "base/CCNS.h"
#include "base/ccMacros.h"
#include "2d/CCTextureCache.h"
#include "2d/CCSpriteFrameCache.h"
#include <vector>
#include "2d/CCSpriteFrame.h"
#include "2d/CCSprite.h"
#include "math/TransformUtils.h"
#include "2d/platform/CCFileUtils.h"
#include "deprecated/CCString.h"
#include "platform/CCFileUtils.h"
#include "base/CCNS.h"
#include "base/ccMacros.h"
#include "base/CCDirector.h"
#include <vector>
#include "renderer/CCTextureCache.h"
#include "math/TransformUtils.h"
#include "deprecated/CCString.h"
using namespace std;
@ -132,7 +136,7 @@ void SpriteFrameCache::addSpriteFramesWithDictionary(ValueMap& dictionary, Textu
spriteFrame->initWithTexture(texture,
Rect(x, y, w, h),
false,
Vector2(ox, oy),
Vec2(ox, oy),
Size((float)ow, (float)oh)
);
}
@ -147,7 +151,7 @@ void SpriteFrameCache::addSpriteFramesWithDictionary(ValueMap& dictionary, Textu
rotated = frameDict["rotated"].asBool();
}
Vector2 offset = PointFromString(frameDict["offset"].asString());
Vec2 offset = PointFromString(frameDict["offset"].asString());
Size sourceSize = SizeFromString(frameDict["sourceSize"].asString());
// create frame
@ -163,7 +167,7 @@ void SpriteFrameCache::addSpriteFramesWithDictionary(ValueMap& dictionary, Textu
{
// get values
Size spriteSize = SizeFromString(frameDict["spriteSize"].asString());
Vector2 spriteOffset = PointFromString(frameDict["spriteOffset"].asString());
Vec2 spriteOffset = PointFromString(frameDict["spriteOffset"].asString());
Size spriteSourceSize = SizeFromString(frameDict["spriteSourceSize"].asString());
Rect textureRect = RectFromString(frameDict["textureRect"].asString());
bool textureRotated = frameDict["textureRotated"].asBool();

View File

@ -36,7 +36,7 @@ THE SOFTWARE.
*/
#include "2d/CCSpriteFrame.h"
#include "2d/CCTexture2D.h"
#include "renderer/CCTexture2D.h"
#include "base/CCRef.h"
#include "base/CCValue.h"
#include "base/CCMap.h"

View File

@ -24,15 +24,17 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
****************************************************************************/
#include "2d/CCTMXLayer.h"
#include "2d/CCTMXXMLParser.h"
#include "2d/CCTMXTiledMap.h"
#include "2d/CCSprite.h"
#include "2d/CCTextureCache.h"
#include "2d/ccCArray.h"
#include "base/ccCArray.h"
#include "base/CCDirector.h"
#include "renderer/CCTextureCache.h"
#include "renderer/CCGLProgramState.h"
#include "renderer/CCGLProgram.h"
#include "base/CCDirector.h"
#include "deprecated/CCString.h" // For StringUtils::format
@ -83,7 +85,7 @@ bool TMXLayer::initWithTilesetInfo(TMXTilesetInfo *tilesetInfo, TMXLayerInfo *la
_layerOrientation = mapInfo->getOrientation();
// offset (after layer orientation is set);
Vector2 offset = this->calculateLayerOffset(layerInfo->_offset);
Vec2 offset = this->calculateLayerOffset(layerInfo->_offset);
this->setPosition(CC_POINT_PIXELS_TO_POINTS(offset));
_atlasIndexArray = ccCArrayNew(totalNumberOfTiles);
@ -176,7 +178,7 @@ void TMXLayer::setupTiles()
// XXX: gid == 0 --> empty tile
if (gid != 0)
{
this->appendTileForGID(gid, Vector2(x, y));
this->appendTileForGID(gid, Vec2(x, y));
}
}
}
@ -223,25 +225,25 @@ void TMXLayer::parseInternalProperties()
}
}
void TMXLayer::setupTileSprite(Sprite* sprite, Vector2 pos, int gid)
void TMXLayer::setupTileSprite(Sprite* sprite, Vec2 pos, int gid)
{
sprite->setPosition(getPositionAt(pos));
sprite->setPositionZ((float)getVertexZForPos(pos));
sprite->setAnchorPoint(Vector2::ZERO);
sprite->setAnchorPoint(Vec2::ZERO);
sprite->setOpacity(_opacity);
//issue 1264, flip can be undone as well
sprite->setFlippedX(false);
sprite->setFlippedY(false);
sprite->setRotation(0.0f);
sprite->setAnchorPoint(Vector2(0,0));
sprite->setAnchorPoint(Vec2(0,0));
// Rotation in tiled is achieved using 3 flipped states, flipping across the horizontal, vertical, and diagonal axes of the tiles.
if (gid & kTMXTileDiagonalFlag)
{
// put the anchor in the middle for ease of rotation.
sprite->setAnchorPoint(Vector2(0.5f,0.5f));
sprite->setPosition(Vector2(getPositionAt(pos).x + sprite->getContentSize().height/2,
sprite->setAnchorPoint(Vec2(0.5f,0.5f));
sprite->setPosition(Vec2(getPositionAt(pos).x + sprite->getContentSize().height/2,
getPositionAt(pos).y + sprite->getContentSize().width/2 ) );
int flag = gid & (kTMXTileHorizontalFlag | kTMXTileVerticalFlag );
@ -305,7 +307,7 @@ Sprite* TMXLayer::reusedTileWithRect(Rect rect)
}
// TMXLayer - obtaining tiles/gids
Sprite * TMXLayer::getTileAt(const Vector2& pos)
Sprite * TMXLayer::getTileAt(const Vec2& pos)
{
CCASSERT(pos.x < _layerSize.width && pos.y < _layerSize.height && pos.x >=0 && pos.y >=0, "TMXLayer: invalid position");
CCASSERT(_tiles && _atlasIndexArray, "TMXLayer: the tiles map has been released");
@ -329,7 +331,7 @@ Sprite * TMXLayer::getTileAt(const Vector2& pos)
tile->setBatchNode(this);
tile->setPosition(getPositionAt(pos));
tile->setPositionZ((float)getVertexZForPos(pos));
tile->setAnchorPoint(Vector2::ZERO);
tile->setAnchorPoint(Vec2::ZERO);
tile->setOpacity(_opacity);
ssize_t indexForZ = atlasIndexForExistantZ(z);
@ -340,7 +342,7 @@ Sprite * TMXLayer::getTileAt(const Vector2& pos)
return tile;
}
uint32_t TMXLayer::getTileGIDAt(const Vector2& pos, TMXTileFlags* flags/* = nullptr*/)
uint32_t TMXLayer::getTileGIDAt(const Vec2& pos, TMXTileFlags* flags/* = nullptr*/)
{
CCASSERT(pos.x < _layerSize.width && pos.y < _layerSize.height && pos.x >=0 && pos.y >=0, "TMXLayer: invalid position");
CCASSERT(_tiles && _atlasIndexArray, "TMXLayer: the tiles map has been released");
@ -359,7 +361,7 @@ uint32_t TMXLayer::getTileGIDAt(const Vector2& pos, TMXTileFlags* flags/* = null
}
// TMXLayer - adding helper methods
Sprite * TMXLayer::insertTileForGID(uint32_t gid, const Vector2& pos)
Sprite * TMXLayer::insertTileForGID(uint32_t gid, const Vec2& pos)
{
if (gid != 0 && (static_cast<int>((gid & kTMXFlippedMask)) - _tileSet->_firstGid) >= 0)
{
@ -399,7 +401,7 @@ Sprite * TMXLayer::insertTileForGID(uint32_t gid, const Vector2& pos)
return nullptr;
}
Sprite * TMXLayer::updateTileForGID(uint32_t gid, const Vector2& pos)
Sprite * TMXLayer::updateTileForGID(uint32_t gid, const Vec2& pos)
{
Rect rect = _tileSet->getRectForGID(gid);
rect = Rect(rect.origin.x / _contentScaleFactor, rect.origin.y / _contentScaleFactor, rect.size.width/ _contentScaleFactor, rect.size.height/ _contentScaleFactor);
@ -421,7 +423,7 @@ Sprite * TMXLayer::updateTileForGID(uint32_t gid, const Vector2& pos)
// used only when parsing the map. useless after the map was parsed
// since lot's of assumptions are no longer true
Sprite * TMXLayer::appendTileForGID(uint32_t gid, const Vector2& pos)
Sprite * TMXLayer::appendTileForGID(uint32_t gid, const Vec2& pos)
{
if (gid != 0 && (static_cast<int>((gid & kTMXFlippedMask)) - _tileSet->_firstGid) >= 0)
{
@ -485,12 +487,12 @@ ssize_t TMXLayer::atlasIndexForNewZ(int z)
}
// TMXLayer - adding / remove tiles
void TMXLayer::setTileGID(uint32_t gid, const Vector2& pos)
void TMXLayer::setTileGID(uint32_t gid, const Vec2& pos)
{
setTileGID(gid, pos, (TMXTileFlags)0);
}
void TMXLayer::setTileGID(uint32_t gid, const Vector2& pos, TMXTileFlags flags)
void TMXLayer::setTileGID(uint32_t gid, const Vec2& pos, TMXTileFlags flags)
{
CCASSERT(pos.x < _layerSize.width && pos.y < _layerSize.height && pos.x >=0 && pos.y >=0, "TMXLayer: invalid position");
CCASSERT(_tiles && _atlasIndexArray, "TMXLayer: the tiles map has been released");
@ -564,7 +566,7 @@ void TMXLayer::removeChild(Node* node, bool cleanup)
SpriteBatchNode::removeChild(sprite, cleanup);
}
void TMXLayer::removeTileAt(const Vector2& pos)
void TMXLayer::removeTileAt(const Vec2& pos)
{
CCASSERT(pos.x < _layerSize.width && pos.y < _layerSize.height && pos.x >=0 && pos.y >=0, "TMXLayer: invalid position");
CCASSERT(_tiles && _atlasIndexArray, "TMXLayer: the tiles map has been released");
@ -606,28 +608,28 @@ void TMXLayer::removeTileAt(const Vector2& pos)
}
//CCTMXLayer - obtaining positions, offset
Vector2 TMXLayer::calculateLayerOffset(const Vector2& pos)
Vec2 TMXLayer::calculateLayerOffset(const Vec2& pos)
{
Vector2 ret = Vector2::ZERO;
Vec2 ret = Vec2::ZERO;
switch (_layerOrientation)
{
case TMXOrientationOrtho:
ret = Vector2( pos.x * _mapTileSize.width, -pos.y *_mapTileSize.height);
ret = Vec2( pos.x * _mapTileSize.width, -pos.y *_mapTileSize.height);
break;
case TMXOrientationIso:
ret = Vector2((_mapTileSize.width /2) * (pos.x - pos.y),
ret = Vec2((_mapTileSize.width /2) * (pos.x - pos.y),
(_mapTileSize.height /2 ) * (-pos.x - pos.y));
break;
case TMXOrientationHex:
CCASSERT(pos.equals(Vector2::ZERO), "offset for hexagonal map not implemented yet");
CCASSERT(pos.equals(Vec2::ZERO), "offset for hexagonal map not implemented yet");
break;
}
return ret;
}
Vector2 TMXLayer::getPositionAt(const Vector2& pos)
Vec2 TMXLayer::getPositionAt(const Vec2& pos)
{
Vector2 ret = Vector2::ZERO;
Vec2 ret = Vec2::ZERO;
switch (_layerOrientation)
{
case TMXOrientationOrtho:
@ -644,19 +646,19 @@ Vector2 TMXLayer::getPositionAt(const Vector2& pos)
return ret;
}
Vector2 TMXLayer::getPositionForOrthoAt(const Vector2& pos)
Vec2 TMXLayer::getPositionForOrthoAt(const Vec2& pos)
{
return Vector2(pos.x * _mapTileSize.width,
return Vec2(pos.x * _mapTileSize.width,
(_layerSize.height - pos.y - 1) * _mapTileSize.height);
}
Vector2 TMXLayer::getPositionForIsoAt(const Vector2& pos)
Vec2 TMXLayer::getPositionForIsoAt(const Vec2& pos)
{
return Vector2(_mapTileSize.width /2 * (_layerSize.width + pos.x - pos.y - 1),
return Vec2(_mapTileSize.width /2 * (_layerSize.width + pos.x - pos.y - 1),
_mapTileSize.height /2 * ((_layerSize.height * 2 - pos.x - pos.y) - 2));
}
Vector2 TMXLayer::getPositionForHexAt(const Vector2& pos)
Vec2 TMXLayer::getPositionForHexAt(const Vec2& pos)
{
float diffY = 0;
if ((int)pos.x % 2 == 1)
@ -664,12 +666,12 @@ Vector2 TMXLayer::getPositionForHexAt(const Vector2& pos)
diffY = -_mapTileSize.height/2 ;
}
Vector2 xy = Vector2(pos.x * _mapTileSize.width*3/4,
Vec2 xy = Vec2(pos.x * _mapTileSize.width*3/4,
(_layerSize.height - pos.y - 1) * _mapTileSize.height + diffY);
return xy;
}
int TMXLayer::getVertexZForPos(const Vector2& pos)
int TMXLayer::getVertexZForPos(const Vec2& pos)
{
int ret = 0;
int maxVal = 0;

View File

@ -31,7 +31,7 @@ THE SOFTWARE.
#include "CCAtlasNode.h"
#include "2d/CCSpriteBatchNode.h"
#include "CCTMXXMLParser.h"
#include "2d/ccCArray.h"
#include "base/ccCArray.h"
NS_CC_BEGIN
class TMXMapInfo;
@ -102,16 +102,16 @@ public:
The Sprite can be treated like any other Sprite: rotated, scaled, translated, opacity, color, etc.
You can remove either by calling:
- layer->removeChild(sprite, cleanup);
- or layer->removeTileAt(Vector2(x,y));
- or layer->removeTileAt(Vec2(x,y));
*/
Sprite* getTileAt(const Vector2& tileCoordinate);
CC_DEPRECATED_ATTRIBUTE Sprite* tileAt(const Vector2& tileCoordinate) { return getTileAt(tileCoordinate); };
Sprite* getTileAt(const Vec2& tileCoordinate);
CC_DEPRECATED_ATTRIBUTE Sprite* tileAt(const Vec2& tileCoordinate) { return getTileAt(tileCoordinate); };
/** returns the tile gid at a given tile coordinate. It also returns the tile flags.
This method requires the the tile map has not been previously released (eg. don't call [layer releaseMap])
*/
uint32_t getTileGIDAt(const Vector2& tileCoordinate, TMXTileFlags* flags = nullptr);
CC_DEPRECATED_ATTRIBUTE uint32_t tileGIDAt(const Vector2& tileCoordinate, TMXTileFlags* flags = nullptr){
uint32_t getTileGIDAt(const Vec2& tileCoordinate, TMXTileFlags* flags = nullptr);
CC_DEPRECATED_ATTRIBUTE uint32_t tileGIDAt(const Vec2& tileCoordinate, TMXTileFlags* flags = nullptr){
return getTileGIDAt(tileCoordinate, flags);
};
@ -119,7 +119,7 @@ public:
The Tile GID can be obtained by using the method "tileGIDAt" or by using the TMX editor -> Tileset Mgr +1.
If a tile is already placed at that position, then it will be removed.
*/
void setTileGID(uint32_t gid, const Vector2& tileCoordinate);
void setTileGID(uint32_t gid, const Vec2& tileCoordinate);
/** sets the tile gid (gid = tile global id) at a given tile coordinate.
The Tile GID can be obtained by using the method "tileGIDAt" or by using the TMX editor -> Tileset Mgr +1.
@ -128,14 +128,14 @@ public:
Use withFlags if the tile flags need to be changed as well
*/
void setTileGID(uint32_t gid, const Vector2& tileCoordinate, TMXTileFlags flags);
void setTileGID(uint32_t gid, const Vec2& tileCoordinate, TMXTileFlags flags);
/** removes a tile at given tile coordinate */
void removeTileAt(const Vector2& tileCoordinate);
void removeTileAt(const Vec2& tileCoordinate);
/** returns the position in points of a given tile coordinate */
Vector2 getPositionAt(const Vector2& tileCoordinate);
CC_DEPRECATED_ATTRIBUTE Vector2 positionAt(const Vector2& tileCoordinate) { return getPositionAt(tileCoordinate); };
Vec2 getPositionAt(const Vec2& tileCoordinate);
CC_DEPRECATED_ATTRIBUTE Vec2 positionAt(const Vec2& tileCoordinate) { return getPositionAt(tileCoordinate); };
/** return the value for the specific property name */
Value getProperty(const std::string& propertyName) const;
@ -193,22 +193,22 @@ public:
virtual std::string getDescription() const override;
private:
Vector2 getPositionForIsoAt(const Vector2& pos);
Vector2 getPositionForOrthoAt(const Vector2& pos);
Vector2 getPositionForHexAt(const Vector2& pos);
Vec2 getPositionForIsoAt(const Vec2& pos);
Vec2 getPositionForOrthoAt(const Vec2& pos);
Vec2 getPositionForHexAt(const Vec2& pos);
Vector2 calculateLayerOffset(const Vector2& offset);
Vec2 calculateLayerOffset(const Vec2& offset);
/* optimization methods */
Sprite* appendTileForGID(uint32_t gid, const Vector2& pos);
Sprite* insertTileForGID(uint32_t gid, const Vector2& pos);
Sprite* updateTileForGID(uint32_t gid, const Vector2& pos);
Sprite* appendTileForGID(uint32_t gid, const Vec2& pos);
Sprite* insertTileForGID(uint32_t gid, const Vec2& pos);
Sprite* updateTileForGID(uint32_t gid, const Vec2& pos);
/* The layer recognizes some special properties, like cc_vertez */
void parseInternalProperties();
void setupTileSprite(Sprite* sprite, Vector2 pos, int gid);
void setupTileSprite(Sprite* sprite, Vec2 pos, int gid);
Sprite* reusedTileWithRect(Rect rect);
int getVertexZForPos(const Vector2& pos);
int getVertexZForPos(const Vec2& pos);
// index
ssize_t atlasIndexForExistantZ(int z);

View File

@ -34,7 +34,7 @@ NS_CC_BEGIN
TMXObjectGroup::TMXObjectGroup()
: _groupName("")
, _positionOffset(Vector2::ZERO)
, _positionOffset(Vec2::ZERO)
{
}

View File

@ -71,10 +71,10 @@ public:
CC_DEPRECATED_ATTRIBUTE ValueMap objectNamed(const std::string& objectName) const { return getObject(objectName); };
/** Gets the offset position of child objects */
inline const Vector2& getPositionOffset() const { return _positionOffset; };
inline const Vec2& getPositionOffset() const { return _positionOffset; };
/** Sets the offset position of child objects */
inline void setPositionOffset(const Vector2& offset) { _positionOffset = offset; };
inline void setPositionOffset(const Vec2& offset) { _positionOffset = offset; };
/** Gets the list of properties stored in a dictionary */
inline const ValueMap& getProperties() const { return _properties; };
@ -98,7 +98,7 @@ protected:
/** name of the group */
std::string _groupName;
/** offset position of child objects */
Vector2 _positionOffset;
Vec2 _positionOffset;
/** list of properties stored in a dictionary */
ValueMap _properties;
/** array of the objects */

View File

@ -31,7 +31,7 @@ THE SOFTWARE.
#include "CCTMXXMLParser.h"
#include "CCTMXTiledMap.h"
#include "base/ccMacros.h"
#include "2d/platform/CCFileUtils.h"
#include "platform/CCFileUtils.h"
#include "base/ZipUtils.h"
#include "base/base64.h"
#include "base/CCDirector.h"
@ -45,7 +45,7 @@ TMXLayerInfo::TMXLayerInfo()
: _name("")
, _tiles(nullptr)
, _ownTiles(true)
, _offset(Vector2::ZERO)
, _offset(Vec2::ZERO)
{
}
@ -348,7 +348,7 @@ void TMXMapInfo::startElement(void *ctx, const char *name, const char **atts)
float x = attributeDict["x"].asFloat();
float y = attributeDict["y"].asFloat();
layer->_offset = Vector2(x,y);
layer->_offset = Vec2(x,y);
tmxMapInfo->getLayers().pushBack(layer);
layer->release();
@ -361,7 +361,7 @@ void TMXMapInfo::startElement(void *ctx, const char *name, const char **atts)
{
TMXObjectGroup *objectGroup = new TMXObjectGroup();
objectGroup->setGroupName(attributeDict["name"].asString());
Vector2 positionOffset;
Vec2 positionOffset;
positionOffset.x = attributeDict["x"].asFloat() * tmxMapInfo->getTileSize().width;
positionOffset.y = attributeDict["y"].asFloat() * tmxMapInfo->getTileSize().height;
objectGroup->setPositionOffset(positionOffset);
@ -452,7 +452,7 @@ void TMXMapInfo::startElement(void *ctx, const char *name, const char **atts)
// Y
int y = attributeDict["y"].asInt();
Vector2 p(x + objectGroup->getPositionOffset().x, _mapSize.height * _tileSize.height - y - objectGroup->getPositionOffset().x - attributeDict["height"].asInt());
Vec2 p(x + objectGroup->getPositionOffset().x, _mapSize.height * _tileSize.height - y - objectGroup->getPositionOffset().x - attributeDict["height"].asInt());
p = CC_POINT_PIXELS_TO_POINTS(p);
dict["x"] = Value(p.x);
dict["y"] = Value(p.y);

View File

@ -30,7 +30,7 @@ THE SOFTWARE.
#define __CC_TM_XML_PARSER__
#include "math/CCGeometry.h"
#include "2d/platform/CCSAXParser.h"
#include "platform/CCSAXParser.h"
#include "base/CCVector.h"
#include "base/CCValue.h"
@ -112,7 +112,7 @@ public:
bool _visible;
unsigned char _opacity;
bool _ownTiles;
Vector2 _offset;
Vec2 _offset;
};
/** @brief TMXTilesetInfo contains the information about the tilesets like:

Some files were not shown because too many files have changed in this diff Show More