cocos2d-x authors & contributors

(ordered by the join in time)

Core Developers:
    Ricardo Quesada
    XiaoMing Zhang (Minggo)
    JianHua Chen (James)
    Zhe Wang (Walzer)
    Qingkui Hu (samuele3hu)
    Huabing Xu (dabingnn)
    Bo Yu (boyu0)


Developers:
    Rolando Abarca
        Javascript Binding and testjs
        
    Squallium
        Added ccFPSImages entity as linked resource on linux eclipse project setting.
        Added CocosDenshion dependency to libextension project for eclipse project of linux.
        
    longlene
        Improve android project creation script
        
    simpliplant
        Hardware keyboard support
    
    liuyq
        CCTextureAtlas::updateQuad modify for the memcpy hot spot.
        
    frranck 
        adding norwegian language
    
    varlucian
        fix the bug that OnEnterTransitionDidFinish was called twice when a node is added in onEnter.
        
    carlomorgantinizynga
        CCLabelTTF supports for shadow and stroke
        Adding CCLabelTTF::createWithFontDefinition.
        New label support.
        
    James Gregory (j4m3z0r, Zynga)
        Maintainer of Emscripten port.
        Initial Emscripten port.
        Use browser font rendering instead of FreeType.
        Add destructor to CCGLBufferedNode.
        Asynchronous Image loading for Emscripten
        
    DarraghCoy
        Fix a potential crash SimpleAudioEngineOpenSL::playEffect
        Fix some bugs with Set class
        Add ccDrawSolidCircle
        Add Rect::unionWithRect
        Fix a memory leak in Set::removeAllObjects.

    silverscania
        Pass correct parameter to glPixelStorei when creating a texture

    FlagellumDei
        Center the window correctly on windows

    ggggamer
        fixed memory leak of preloadEffect on windows

    CodeSnooker
        Added Method to create a CCMenuItemToggle from a CCArray with a target selector

    wagaf-d
        Move ccpX functions to CCPoint methods and operators

    sergey-shambir
        Added CC_DISABLE_COPY macro
        Added __attribute__(__format__()) for CCLog and CCString
        Refactoring network extension and fixing unlikely memory leaks.
        Adding PUT/DELETE methods for CCHttpRequest.
        Adding project part for QtCreator.
        Implemented pitch, pan and gain.
        Using SDL backend instead of glfw for Linux.

    savdalion 
        Added example for russian language in TestCpp
        Added const modifier for classes CCArray, CCObject
        Deprecated method fixes

    rodrigogolive
        Fix broke linux build

    kdejongh
        Fix for spaces at the beginning of wrapped lines on Android

    martell
        use tinyxml2 to replace libxml2
        Added Mingw-crt Support without breaking VS SDK

    mchinen
        fix emulator issue for OpenGL ES 2.0 on Android
        Fix missing protocol method warning for iOS 6.0 addition

    DenizPiri
        use CCLOG to implement print() function in LUA

    nickveri
    nickkwalee
        added some missing function for setting integer shader uniforms in CCGLProgram

    biteforest
        fix cc scale9 sprite bug

    Jimmy Sambuo
        fix the bug that SimpleAudioEngine::playEffect() and playBackgroundMusic() play twice on linux

    DarraghCoy
        fix for loading custom fonts on iOS when referenced from a CCB file
        Fix CCUserDefault.cpp compiling on Android.
        Fixing CCFileUtils 'createXXXXWithContentsOfFile' path lookup issue.
        Add CCDirector::popToSceneStackLevel(int level).
        Fixing a bug that custom font can't be loaded correctly if using full path of filename on android.

    Waiter
        fix an error that OpenSLEngine can't load resources from SD card
        add CCRemoveSelf action
        Fixing a bug that CCLabelTTF setString crash on android.

    billy1380
        make CCLens3d support concave effect.
        Adding 64bit target for Mac project.

    benjamesward
        add Portuguese and Arabic language support
        Fixed linebreaks on Mac OSX

    Victor K(fnz)
        fix memory leak of CCTextureCache::addImageAsync() on iOS

    tks2shimizu
        add CCFloat, CCDouble and CCBool
        Add append function for String class
        Adding String::componentsSeparatedByString function for splitting string.

    chenium
        fix a bug that CCRenderTexture can not work when coming to foreground on Android

    9re(Taro Kobayashi)
        add Japanese language support

    mingulov
        improve the speed of accessing to files from apk

    sburavtsov
        fix for correct unscheduling and instance destruction of extensions/network/HttpClient.cpp

    wenbin wang
        add error handler when read image data using libjpeg
        add korean language support
        fix getDeviceModel bug in android CocosDenshion

    Horcruxes
        fix the bug that CCArray::createWithContentsOfFile() may not read file data on iOS

    Hu Kaiou
        contribute the new version of libcurl to support both armv7 & armv7s on iOS
        fix some memory leak

    ByungChoi
         modify linux makefiles to fix compiling errors

    edbartley
         update MSVS and MAC projects to use project-relative path
         CCControl* should not respond to touches if the control is not visible
         Some improvements for CCScrollView and CCTableView.
         Touch priority can't be set to the value specified by a call to CCMenu::setTouchPriority(int).
         CCTableView crashes if a CCTableViewDelegate is not provided.
         Fixing a bug that _realOpacity isn't assigned in CCLayerColor::initWithColor.
         CCScrollView TouchPriority Fix
         Add encrypted PVR.CCZ support to ZipUtils + Tests
         Fix for broken of ccArrayGetIndexOfObject after merging this commit(076f38c).

    Weeds (Andre Rudlaff)
        Used fontconfig to enhance font rendering on linux.
        Fixed a bug about missing horizontal alignment for Custom TTF fonts on linux.
        Fixed a bug that the truetype fonts from resource directory can't be found on linux.
        Fixed the size calculations for true type fonts (especially for italic fonts).
        Added a very simple greedy line break algorithmfor true type labels.
        Fixed font rendering crash for certain fonts on linux.
        Fixed potential crash in CCScheduler::removeHashElement.
        Fixed potential crash in CCSaxParser.
        Added kResolutionFixedHeight and kResolutionFixedWidth resolution policy.
        Use pthread mutex and condition variable instead of pthred semaphore to load image asynchronizely.
        Fixed crash in HttpClient request on 64Bit.

    Nat Weiss (iphonegamekit.com)
        author of Mac port
        add TMX polygon parsing
        Properly resets the tile's Y flipping

    XiaoLong Zhang (Chukong Inc)
    Mike McGary (Zynga)
    Di Wu (Zynga China)
        CCBReader and cpp reflection mechanic

    Angus Comrie
        contributes cocos2d-x port of CCControlExtension.

    Yannick Loriot
        author of CCControlExtension in cocos2d-iphone.

    Surith Thekkiam (folecr, Zynga)
        contribute for Android module building
        Simpler, correct handling of spritesheet sources for CCScale9Sprite.
        Clean up linked libraries for android.
        JavaScript debugger improved and bugfixed.
        Fix flags for debugger server socket.
        Fix flags for debugger server socket.
        When user has built with JS Debugger support ScriptingCore will handle necessary runtime changes.

    Nicolas Gramlich (nicolasgramlich, Zynga)
        fixed CCDirector to use CCLabelBMFont instead of CCLabelTTF
        added CCBReader (CCBI format)
        Added cleanup and reset methods to ScriptingCore.
        Fixed a bug in ScriptingCore::evalString not setting the outval.
        Updated .classpath of Android project to latest ADT 22 build tool compatibility.

    Rohan Kuruvilla (rohankuruvilla, Zynga)
        Improvements to JS Bindings.
        Synchronizing CCBReader to version 5.
        Adding OpenGL Bindings to Javascript.
        Fixing a bug that nested ccb-files are not positioned correctly.
        Fixing a bug that crash when loading valid project.

    Jianfeng Zou (NetDragon Inc)
        contributes CCListView and CCTextureWatcher.

    dducharme
        author of blackberry port

    ImperialPenguin
        Added TTF support for blackberry port.

    HuaXu Cai (Kongzhong Corporation)
        author of linux port

    ciaranj
        add a build file that correctly generates LuaCocos2d.cpp
        add a lua template
        add particle systems to lua bindings
        use ant to generate LuaCocos2d.cpp and lua projects

    Marat Yakupov (moadib)
        Adds ability of simulating android enter/resume background on win32
        Adds ability of simulating android back/menu key on win32
        Adds support for multiple background music sources to CocosDenshion for Blackberry

    Eli Yukelzon (reflog)
        add a helper method to draw filled polygons
        improvements to CCUserDefaults

    ZhuoShi Shun
        contribute the lua binding of CocosDenshion

    Jirka Fajfr
    Chris Calm
        authors of CCTexturePVR

    RuiXiang Zhou (NetDragon)
    XiDi Peng (NetDragon)
    AiYu Ye (NetDragon)
        authors of lua binding

    Max Aksenov
        author and maintainer of Airplay port

    Giovanni Zito
    Francis Styck
        authors of Marmalade port

    Mat Hopwood( Marmalade official engineer )
        Marmalade support for gles20 branch

    Carlos Sessa
        implement the accelerometer module for Android port

    James Chen(dumganhar)
        author of Bada port

    Erawppa
        implement CCNotificationCenter

    YuLei Liao(dualface)
        contribute the factor of lua binding

    jreitman
        fix the bug of asynchronous loading resources for iOS

    Nat Weiss
        minor enhancements to the Cocos2D-X codebase and Android build scripts

    Qingyun Huang (greathqy)
        implement CCHttpRequest

    donaldalanmorrison
        fix some warnings and memory leaks

    Yinghui Peng(mustime)
        use OpenSL ES to play effects
        add TestLua sample

    Dongyang Cai(John-cdy)
        add automatically test tools

    Sergey Vikhirev(BorMor)
        Remove retina specific methods and logic.

    johnangel
        OpenGL framebuffer access violation fix.
        Enable Windows XP support in Visual Studio 2012 Update 1.

    Peter Farkas (fape)
        contributes Marmalade port for gles20 branch
        add Hungarian language support
        fixed compilation errors after adding support of webp image format.

    Tomoaki Shimizu (tks2shimizu)
        Adding randomObject to CCDictionary.

    Igor Zavorotkin (ivzave)
        Adding lua support for linux platform.

    Jozef Prídavok (jpridavok)
        Adding CCEditBox implementation for Mac OSX.

    tiantian20007
        Fixing a crash for call runAnimation() in CCBAnimationManagerDelegate::completedAnimationSequenceNamed.
        Fixing a bug that CCControl's touch priority is not set correctly; m_nDefaultTouchPriority is never used.
        Fixing a syntax error for RENDER_IN_SUBPIXEL macro.
        Implement CCDictionary::writeToFile().
        Fixing a bug that unused spriteframes also need to be removed when purgeCachedData.
        Adding a method to get duration of timeline for CCBAnimationManager class, it's easy for getting duration of animation in JSB.

    xyhl515
        Fixed a bug that CCControlSwitch::setOn(isOn,false) doesn't work.
        Adds VS2012 Express template installing support.
        Fixing a logical error in CCDrawNode::drawPolygon.
        Fixing a bug that Jsb function getCPBody return type is not right.

    DarraghCoy
        Fix for unaligned memory access crash in CCBReader::readFloat().

    Sergej Tatarincev (SevInf)
        Making ScriptingCore.cpp compiled fine with C++11 on iOS.
        Using shared NodeLoaderLibrary in CCBReader bindings.
        CCEditBox iOS enchantments/bugfixes.
        Support variable cell sizes in CCTableView.

    ThePickleMan
        Adding 'rotationIsDir' property to ParticleSystem.

    Jianghua (jxhgzs)
        Adding an additional transform for CCNode.

    giginet
        Fix CCRepeat#create is recieved bad argument on Lua binding.

    neokim
        Adds 'setFont' and 'setAnchorPoint' to CCEditBox.
        Workaround for some problems due to UITextField of CCEditBoxImplIOS is attached as a view above OpenGL view.

    Sam Clegg (sbc100)
        Author of Native Client port.
        Refactor linux build system and fix many warnings.
        Fixing a bug where missing packages would cause the script to exit on linux.
        Adding 'make run' target for linux projects.
        Stripping newlines from log message and fixing linux library location.
        Fixing a bug that CCPhysicsSprite was overriding only some of the getPosition methods.
        Adding a macro USE_BOX2D to check whether to enable Box2D for linux and nacl port.
        Adding Travis build support for linux and NaCl.
        Logging assert messages to the console.
        Renaming CCScriptSupport::executeAssert to CCScriptSupport::handleAssert.
        Adding Native Client support for develop branch (cocos2d-x 3.0) and some warnings fixes.
        Cleanup travis build scripts.
        Refactoring emscripten building script.

    Peter Young (young40)
        Implements setVisible() for CCEditBox.
        Fixing a bug that event will not be sent to server when paramMap parameter of logEvent function is nil in plugin-x.

    csy1988525
        Fixing a bug about display result is wrong when invoking CCControlButton:: setHighlighted.
        fixed a bug when button's parent is hided, the button still can responce to clicked event.

    Asad ur Rehman (AsadR)
        Adding CCNotificationCenter::removeAllObservers(CCObject *target).

    jedy
        Fix of CCNode.h's document with doxygen 1.8.3 can't be generated.

    whitegfx
        Implementation of kEditBoxInputFlagSensitive setting for CCEditBoxImplIOS.

    Zecken (gelldur)
        Fixing a profiling compilation error in CCParticleBatchNode.
        Fixing linking errors for TestCPP with libcurl on linux.

    flamingo (flaming0)
        Null pointer check in order to prevent crashes.
        Updating spine-runtime to EsotericSoftware/spine-runtimes@5f90386.

    rtissera (Romain TISSERAND)
        Adding missing JNIEXPORT / JNICALL declarations.
        Fix iOS 4.3 JPEG loading issue.

    Yodesoft
        Improving font rendering performance for linux platform.
        Reducing function call in nativeInitBitmapDC to improve performance.
        Refactoring writable path to "<user's home>/.config/<app name>" for linux platform.

    sjchao
        Fixing a display bug when a scrollView nested in another scrollView.

    Éloi Rivard (azmeuk)
        Linux OpenAL support.
        Added some guards to prevent Eclipse to compile twice the same class.
        Linux Eclipse projects updates
        Refactored emscripten-build.sh, it's no longer need to be edited to make emscripten work.
        Creation of CCDeprecated-ext.h
        Use of a single emscripten HTML template file.
        Added some guards in fileutils. Fixed a bug in emscripten file utils.
        Added emscripten keyboard support
        Clang support for Linux
        Multiple emscripten template support. Emscripten multiple resolutions support.
        Toplevel Makefile refactoring

    elmiro
        Correction of passed buffer size to readlink and verification of result return by readlink.

    harikrishnar (Hari Krishna)
        Wrong logic in CCArray::initWithObjects.
        Fixing a bug that button should not get respond if its parent is invisable.

    rogerzanoni
        Fixing a linking error that libpthread and libGL libraries need to be linked on linux.
        Fixing a compiling error of [-Werror=array-bounds] when compiling Box2dTestBed.

    zhanghaojie
        Fixing a bug that anchorPoint property of CCScale9Sprite doesn't work in CCBReader.

    MarkEHenderson (Mark Henderson)
        Fixing of variable initialization in SpriteBatchNode.

    akira-cn
        Adding response for back and menu keypad event for Android.

    lgb (Oleg)
        Fixing a compilation error for BlackBerry PlayBook.
        Comparing float number by using epsilon and absolute difference.

    jotel (Jaroslaw Lewandowski)
        Fixing a bug that wrong type of argument signature is used in setAccelerometerIntervalJNI function.
        Fix for broken of ccArrayGetIndexOfObject after merging this commit(076f38c).
        Explicitly initialising CCAcceleration structure.
        Add support to save/retrieve CCData into/from CCUserDefault.
        Text Shadows fix
        Solving 'black screen' on android.

    MarcelBloemendaal
        Adding secureTextEntry property to CCTextFieldTTF.

    brawsome
        Adding new macro CCB_MEMBERVARIABLEASSIGNER_GLUE_WEAK to CCBMemberVariableAssigner.h.
        Adding CCLOG before original path is returned in CCFileUtils::fullPathForFileName to aid in debugging.
        Optmization to ccArrayGetIndexOfObject.

    sunzhuoshi
        Adding support for javascript bytecode.
        Fixing bad js constant names.

    ptekchand (Pranav Tekchand)
        Supporting negative node scales for CCScrollView.

    coolengineer (Hojin Choi)
        Refactoring callback selector for HttpResponse.

    djh-
        Fixing a bug that displayed color of CCDrawNode is incorrect when VAO is disabled.

    acai (beingstudio)
        Fix of null pointer access in CCBAnimationManager::getRunningSequenceName.

    metalgit92
        Adding const qualification to some CCNode's getters

    Clarinexus
        Fixing a bug that setColor and setOpacity of CCControlButton and CCScale9Sprite are broken.

    Xander84
        Fixing a bug in CCBValue::getByteValue.
        
    smshuja
        Fixing a bug that pointQueryFirst returns invalid Shape when a shape is not found in JSB.
        Fixing a bug that New PivotJoint can't access 4 parameters like in html5 version.
        Fixing a bug that Pivotjoint constructor and pointQueryFirst in Space class will return false instead of invalid shape object.
        
    Carsten Sandtner (casarock)
        Adding XMLHttpRequest support for JSB.
        
    Lee, Jae-Hong (pyrasis)
        Maintainer of tizen port.

    lumendes
        Updating spine-runtime to EsotericSoftware/spine-runtimes@5f90386.
        
    sunxiaoyu
        Refactoring CCEditBox to add UITextField only when keyboard was opened, remove it when keyboard was closed.
        
    edwardzhou (Edward Zhou)
        Correcting the type detecting order for Lua CCBProxy::getNodeTypeName.
        Casting variables to their own type, and print warning info if no corresponding lua callback function instead of crash.
        fix of WebSocket url parse error for 'ws://domain.com/websocket' pattern.

    musikov
        Fixing a bug that missing precision when getting strokeColor and fontFillColor
        
    hawkwood (Justin Hawkwood)
        Fixing a bug that EditBox doesn't show any text if it's initialized with text.
        
    wtyqm (zhang peng)
        Fixing a bug that ccbRootPath wasn't passed to sub ccb nodes.
        
    smilingpoplar (YangLe)
        Fixing a bug that CCScale9Sprite doesn't support rotated spriteframe in atlas.
        
    xxuejie
        Add namespace prefix to selector macros
        
    hannon235 (Chris)
        Fixing a bug that the submenu of ExtensionTest in TestCpp can't scroll.
        Implements a socket.io client extension and adds a test case.
        
    pktangyue
        Fixing a bug that CCScale9Sprite::setInsetLeft/XXX can't work for rotated sprite frame.
        Fixing a bug that Color and Opacity of Scale9Sprite will not be changed when it's added to NodeRGBA and run with FadeIn/Out actions.
        Adding *.xccheckout to gitignore.
        
    jllust
        Fixing a bug that CCLabelBMFont crashes in glDrawElements of CCTextureAtlas::drawNumberOfQuads sometimes.
        
    Sam Gross (colesbury)
        Ignoring formatting specifiers in JavaScript log messages.
        Make bindings-generator supports to bind std::function argument.
        
    James Munro (jdmunro)
        Added JSB support for ccpDistanceSQ.
        
    Rafael (rafaelx)
        A warning fix of AL_INVALID_NAME and AL_INVALID_OPERATION in SimpleAudioEngineOpenAL.cpp.
        
    metalbass
        Fixing an issue that sigslot::_connection_base# (from 0 to 8) don't have virtual destructors.
        
     thp
         Port Cocos2D-X to Qt 5
         
    Nako Sung (nakosung)
        Fixing a bug that wrong logic when pass an empty std::vector to WebSocket::init.
        Exposing cc.RemoveSelf to JS.
        exposed AssetsManager to javascript and added multiple-assetsManager support
        
    dotsquid
        Fixed the crash caused by improper deletion of VBOs and VAO in ParticleSystemQuad.
        
    maciekczwa
        Fixing a bug that stroke color with channel color values other than 255 doesn't take effect on android.
        
    zcgit
        a potential bug fix in Layer::init.
        
    gkosciolek
        Fixing a bug that observers with the same target and name but different sender are the same observer in NotificationCenter.

    xbruce
        Fixing a bug that crash appears when extending cc.ScrollView in JS.
        Fixing a bug that cc.registerTargettedDelegate doesn't support pure js object as its target.
        
    elwinarens (Elwin Arens)
        Minor spelling changes in description of CCScene.h
        
    signmotion (Andrey Syrokomsky)
        Fixed some compiling-warnings (MSVC2012).
        
    michaelcontento
        [Android] use onWindowFocusChanged(bool) instead of onResume()/onPause()
        Prevent nullptr access in AssetsManager
        [Android] re-introduce Cocos2dxHelper.runOnGLThread(Runnable)
        [Android] added EGL_RENDERABLE_TYPE to OpenGL attributes
        
    bmanGH
        Use gl caching functions in TexturePVR::createGLTexture()
        
    metadao
        make create_project.py more pythonic and fix some typoes
        
    timothyqiu
        Project creator: use absolute path for json config files
        Documentation fixes
        A better way to locate project creator
        
    rablwupei
        Fixed a memory leak in ScriptingCore::runScript()
        Fixed a memory leak in Spine.
        Added support of passing array to cc.Sequence.create and cc.Spawn.create.
        Fixed a bug that sys.localStorage.getItem() does not support non-ascii string.
        Fixed a memory leak in XMLHttpRequest.
    
    Keita Obo (ktaobo)
        Avoid unnecessary object duplication for Scale9Sprite.
        
    jimmystar
        Fixed a bug that cc.Scheduler.schedule(target, func) without repeat argument couldn't repeat schedule forever on device.
        
    XiaoLongHan (kpkhxlgy0)
        Fixed a bug that outside of keyboard can't be responded to close keyboard when using EditBox。
    
Retired Core Developers:
    WenSheng Yang
        Author of windows port, CCTextField,
        Designer of CCApplication/CCEGLView/platform structure.
        He's working together with 2dx core team but leading FishingJoy game

    Bin Zhang
        core-team member but put himself in FishingJoy game since 2012.

    RongHong Huang (flyingpaper)
        Author of cocos2d-xna and spent all his time on wp7.
        


Cocos2d-x can not grow so fast without the active community.
Thanks to all developers who report & trace bugs, discuss the engine usage in forum & QQ groups!
Special thanks to Ricardo Quesada for giving us lots of guidances & suggestions.