Commit Graph

128 Commits

Author SHA1 Message Date
halx99 adce3298de Fix lua build [ci build] 2021-05-24 19:18:15 +08:00
HALX99 a42f9ac25c
Renaming refactor (#353) [ci build] 2021-05-18 16:40:30 +08:00
halx99 6aea443282 Fix cmake issue [ci build]
Avoid cause check_include_file return unexpected result.
2021-05-11 23:48:15 +08:00
halx99 9aebfd4b0d Improve cmake scripts
a. rename project 'plainluac' to 'luac'
b. add executable project 'lua'
c. unify cmake runtime directory to bin
2021-03-13 18:18:40 +08:00
halx99 108399ede3 Unify CC_COMPAT_GL to control renderer backend
win32: google angle
mac: NSGL
ios: GLES
2020-12-02 03:03:05 -08:00
halx99 520cc31f1b Add cmake option -DLUA_ENGINE=luajit to switch lua engine to luajit [ci build] 2020-11-07 10:36:22 +08:00
halx99 863bd35676 Finish #244 2020-10-25 16:25:08 +08:00
halx99 975ef2ff61 Lock name 2020-10-24 21:57:36 +08:00
halx99 c3625b5774 fix android build 2020-10-23 16:36:24 +08:00
halx99 b8834bc086 Finsih rename 2020-10-22 10:58:10 +08:00
halx99 cdaed31389 fix lua build on android 2020-10-19 19:56:48 +08:00
halx99 919d48d68e Finish cpp and lua template to use env var 'COCOS2DX_ROOT' to avoid copy whole engine source when new project. 2020-10-19 18:33:10 +08:00
HALX99 90ecc475f0
Refactor modules (#238) 2020-10-17 16:32:16 +08:00
halx99 1975ad1f94 Add CMake -DCC_FORCE_USE_GLES to control whether force use gles on win32,iOS 2020-08-28 12:57:00 +08:00
halx99 a8af2a9344 Improve engine CMakeLists.txt for ios
benefit: Now engine can build without ios.toolchain.cmake,
because we solvoe follow issues:
a. fix cmake try_compile failed with arm device without
b. fix try_compile/compile will failed with device on armv7
c. fix thread local storage require:
   1. deployment target >= 9.0 (arm64)
   2. deployment target == 10.x (armv7)
2020-08-24 15:31:45 +08:00
halx99 3c7ede5859 Make core lib can be build as dll, fix link issue for external 2020-08-18 12:36:44 +08:00
halx99 67ef8bb624 Improve shared library for android, remove mojoal,sdl2, still use OpenAL.framework on apple platform, alsoft on other platforms. 2020-08-17 18:45:14 +08:00
halx99 b179975add Adapte zlib licensed AL library: mojoal 2020-08-14 18:58:44 +08:00
halx99 79dc84e3d7 fix ci android build issue. 2020-08-12 18:53:33 +08:00
halx99 5dc9e92fb7 fix android build issues 2020-08-03 20:31:47 +08:00
halx99 b142167560 Huge changes, move spine,dragonbones,cocostudio to extensions folder, future make all extensions pluginable 2020-08-03 17:51:40 +08:00
halx99 005ec45f0a fix option order 2020-07-31 11:22:42 +08:00
halx99 594767290d Add CMAKE option CC_USE_ALSOFT_ON_APPLE to use kcat openal-soft on apple platform, by default currently OFF 2020-07-31 00:06:59 +08:00
HALX99 39f3dd6586
Remove unused src 2020-03-05 20:47:11 +08:00
halx99 a2eb8507bb [v4] spine v3.8 2020-01-05 03:09:32 +08:00
halx99 98a3bd35f0 Remove tinyxml, integrate dragonbones. 2019-11-24 23:15:56 +08:00
minggo 5acc952a17
fix iOS build issue (#20292) 2019-11-05 15:23:54 +08:00
coulsonwang 8126cfafd5 add defualt ios deloyment target (#20282)
* add defualt ios deloyment target
2019-11-01 17:07:52 +08:00
Andy Duplain 1a04787287 Rework CMake Xcode support. (#20205)
- Build using C++17 by default.
- Simplified customization of Xcode project via cmake.
- Add documentation to demonstrate how to use the customization.

- NOTE: I believe we could compile with bitcode enabled if the box2d
        library was compiled using bitcode.
2019-10-22 13:42:56 +08:00
coulsonwang de3f252794 generate project for cocos2d (#20056) 2019-08-26 10:01:50 +08:00
minggo 67d43ca591
Update CMakeLists.txt 2019-07-04 09:48:45 +08:00
minggo 23a21ef298
Remove jsb related (#19729)
* remove jsb related codes
* update 3rd party
2019-05-24 00:00:51 -07:00
Arnold e1675ae67b Enable navmesh (#19530)
* enable flags

* impl debug draw

* run tests

* remove comments

* fix mac compile error

* review fix
2019-03-20 14:34:35 +08:00
Arnold fe497933f8 3d support: some test cases works
* hack to make sprite3d test work

* support cull face

* support setting front face winding

* convert depth compare function type

* clean codes

* remove usage of glprogramstate

* pass needed information to Material::draw()

* add 3d textures

* enable animation

* 3D: compile on windows  (#179)

* exclude source files from extensions/

* enable assets and 3D

* run on windows

* update comments

* use std::vector instead of raw pointer void *

* compile on mac

* revert cmake

* fix bufferdata

* add todos

* remove dirty flag from uniform buffer

* argument type const &

* enable more tests

* update shader

* save: failed to compile

* pass compilation

* fix type convert

* save stage

* save stage 2

* remove VertexData & IndexBuffer & VertexBuffer

* comment out _meshCommand

* comment bindPredefinedVertexAttribs()

* fix xcode project file

* simple refactor

* remove unused files

* revert sprite3d testcase position

* revert change

* remove ProgramGL::bindPredefinedVertexAttribs()

* add header <string>

* fix uniform size
2019-01-30 09:35:17 +08:00
leda 4f0ef25c6f sync cmake changes into metal-support (#19335)
* sync #19327

* sync #19329
2019-01-23 09:55:55 +08:00
minggo 8d9bd925c9
metal support for cocos2d-x (#19305)
* remove deprecated files

* remove some deprecated codes

* remove more deprecated codes

* remove ui deprecated codes

* remove more deprecated codes

* remove deprecated codes in ccmenuitem

* remove more deprecated codes in ui

* remove more deprecated codes in ui

* remove more deprecated codes in ui

* remove more deprecated codes

* remove more deprecated codes

* remove more deprecated codes

* remove vr related codes and ignore some modules

* remove allocator

* remove some config

* 【Feature】add back-end project file

* [Feature] add back-end file

* add pipeline descriptor and shader cache

* [Feature] support sprite for backend

* [Feature] remove unneeded code

* [Feature] according to es2.0 spec, you must use clamp-to-edge as  texture wrap mode, and no mipmapping for non-power-of-two texture

* [Feature] set texture wrap mode to clamp-to-edge, and no mipmapping for non-power-of-two texture

* [Feature] remove macro define to .cpp file

* [Feature] add log info

* [Feature] add PipelineDescriptor for TriangleCommand

* [Feature] add PipelineDescriptor object as member of TriangleCommand

* [Feature] add getPipelineDescriptor method

* add renderbackend

* complete pipeline descriptor

* [Feature] add viewport in RenderCommand

* set viewport when rendrering

* [Feature] occur error when using RendererBackend, to be fixed.

* a workaround to fix black screen on macOS 10.14 (#19090)

* add rendererbackend init function

* fix typo

* [Feature] modify testFile

* [BugFix] modify shader path

* [Feature] set default viewport

* fix projection

* [Feature] modify log info

* [BugFix] change viewport data type to int

* [BugFix] add BindGroup to PipelienDescriptor

* [BugFix] change a_position to vec3 in sprite.vert

* [BugFix] set vertexLayout according to V3F_C4B_T2F structure

* [Feature] revert a_position to vec4

* [Feature] renderer should not use gl codes directly

* [Feature] it's better not use default value parameter

* fix depth test setting

* rendererbackend -> renderer

* clear color and depth at begin

* add metal backend

* metal support normalized attribute

* simplify codes

* update external

* add render pass desctriptor in pipeline descriptor

* fix warnings

* fix crash and memeory leak

* refactor Texture2D

* put pipeline descriptor into render command

* simplify codes

* [Feature] update Sprite

* fix crash when closing app

* [Feature] update SpriteBatchNode and TextureAtlas

* support render texture(not finish)

* [Feature] remove unused code

* make tests work on mac

* fix download-deps path error

* make tests work on iOS

* [Feature] support ttf under normal label effect

* refactor triangle command processing

* let renderer handle more common commands

* refactor backend

* make render texture work

* [Feature] refactor backend for GL

* [Feature]Renaming to make it easy to understand

* [Feature] change warp mode to CLAMP_TO_EDGE

* fix ghost

* simplify visit render queue logic

* support progress timer without rial mode

* support partcile system

* Feature/update label (#149)

* [BugFix] fix compile error

* [Feature] support outline effect in ios

* [Feature] add shader file

* [BugFix] fix begin and end RenderPass

* [Feature] update CustomCommand

* [Feature] revert project.pbxproj

* [Feature] simplify codes

* [BugFix] pack AI88 to RGBA8888 only when outline enable

* [Feature] support shadow effect in Label

* [Feature] support BMFont

* [Feature] support glow effect

* [Feature] simplify shader files

* LabelAtlas work

* handle blend function correctly

* support tile map

* don't share buffer in metal

* alloc buffer size as needed

* support more tilemap

* Merge branch 'minggo/metal-support' into feature/updateLabel

* minggo/metal-support:
  support tile map
  handle blend function correctly
  LabelAtlas work
  Feature/update label (#149)
  support partcile system

# Conflicts:
#	cocos/2d/CCLabel.cpp
#	cocos/2d/CCSprite.cpp
#	cocos/2d/CCSpriteBatchNode.cpp
#	cocos/renderer/CCQuadCommand.cpp
#	cocos/renderer/CCQuadCommand.h

* render texture work without saving file

* use global viewport

* grid3d works

* remove grabber

* tiled3d works

* [BugFix] fix label bug

* [Feature] add updateSubData for buffer

* [Feature] remove setVertexCount

* support depth test

* add callback command

* [Feature] add UITest

* [Feature] update UITest

* [Feature] remove unneeded codes

* fix custom command issue

* fix layer color blend issue

* [BugFix] fix iOS compile error

* [Feature] remove unneeded codes

* [Feature] fix updateVertexBuffer

* layerradial works

* add draw test back

* fix batch issue

* fix compiling error

* [BugFix] support ETC1

* [BugFix] get the correct pipelineDescriptor

* [BugFix]  skip draw when backendTexture nullptr

* clipping node support

* [Feature] add shader files

* fix stencil issue in metal

* [Feature] update UILayoutTest

* [BugFix] skip drawing when vertexCount is zero

* refactor renderer

* add set global z order for stencil manager commands

* fix warnings caused by type

* remove viewport in render command

* [Feature] fix warnings caused by type

* [BugFix] clear vertexCount and indexCount for CustomComand when needed

* [Feature] update clear for CustomCommand

* ios use metal

* fix viewport issue

* fix LayerColorGradient crash

* [cmake] transport to android and windows (#160)

* save point 1

* compile on windows

* run on android

* revert useless change

* android set CC_ENABLE_CACHE_TEXTURE_DATA to 1

* add initGlew

* fix android crash

* add TODO new-renderer

* review update

* revert onGLFWWindowPosCallback

* fix android compiling error

* Impl progress radial (#162)

* progresstimer add radial impl

* default drawType to element

* dec invoke times of createVertexBuffer (#163)

* support depth/stencil format for gl backend

* simplify progress timer codes

* support motionstreak, effect is wrong

* fix motionstreak issue

* [Feature] update Scissor Test (#161)

* [Feature] update Scissor Test

* [Feature] update ScissorTest

* [Feature] rename function

* [Feature] get constant reference if needed

* [Feature] show render status (#164)

* improve performance

* fix depth state

* fill error that triangle vertex/index number bigger than buffer

* fix compiline error in release mode

* fix buffer conflict between CPU and GPU on iOS/macOS

* Renderer refactor (#165)

* use one vertes/index buffer with opengl

* fix error on windows

* custom command support index format config

* CCLayer: compact vertex data structure

* update comment

* fix doc

* support fast tilemap

* pass index format instead

* fix some wrong effect

* fix render texture error

* fix texture per-element size

* fix texture format error

* BlendFunc type refactor, GLenum -> backend::BlendFactor  (#167)

* BlendFunc use backend::BlendFactor as inner field

* update comments

* use int to replace GLenum

* update xcode project fiel

* rename to GLBlendConst

* add ccConstants.h

* update xcode project file

* update copyright

* remove primitive command

* remove CCPrimitive.cpp/.h

* remove deprecated files

* remove unneeded files

* remove multiple view support

* remove multiple view support

* remove the usage of frame buffer in camera

* director don't use frame buffer

* remove FrameBuffer

* remove BatchCommand

* add some api reference

* add physics2d back

* fix crash when close app on mac

* improve render texture

* fix rendertexture issue

* fix rendertexture issue

* simplify codes

* CMake support for mac & ios (#169)

* update cmake

* fix compile error

* update 3rd libs version

* remove CCThread.h/.cpp

* remove ccthread

* use audio engine to implement simple audio engine

* remove unneeded codes

* remove deprecated codes

* remove winrt macro

* remove CC_USE_WIC

* set partcile blend function in more elegant way

* remove unneeded codes

* remove unneeded codes

* cmake works on windows

* update project setting

* improve performance

* GLFloat -> float

* sync v3 cmake improvements into metal-support (#172)

* pick: modern cmake, compile definitions improvement (#19139)

* modern cmake, use target_compile_definitions partly

* simplify macro define, remove USE_*

* modern cmake, macro define

* add physics 2d macro define into ccConfig.h

* remove USE_CHIPMUNK macro in build.gradle

* remove CocosSelectModule.cmake

* shrink useless define

* simplify compile options config, re-add if necessary

* update external for tmp CI test

* un-quote target_compile_options value

* add "-g" parameter only when debug mode

* keep single build type when generator Xcode & VS projecy

* update external for tmp CI tes

* add static_cast<char>(-1), fix -Wc++11-narrowing

* simplify win32 compile define

* not modify code, only improve compile options

# Conflicts:
#	.gitignore
#	cmake/Modules/CocosConfigDepend.cmake
#	cocos/CMakeLists.txt
#	external/config.json
#	tests/cpp-tests/CMakeLists.txt

* modern cmake, improve cmake_compiler_flags (#19145)

* cmake_compiler_flags

* Fix typo

* Fix typo2

* Remove chanages from Android.mk

*  correct lua template cmake build (#19149)

* don't add -Wno-deprecated into jsb target

* correct lua template cmake build

* fix win32 lua template compile error

* prevent cmake in-source-build friendly (#19151)

* pick: Copy resources to "Resources/" on win32 like in linux configuration

* add "/Z7" for cpp-tests on windows

* [cmake] fix iOS xcode property setting failed (#19208)

* fix iOS xcode property setting failed

* use search_depend_libs_recursive at dlls collect

* fix typo

* [cmake] add find_host_library into iOS toolchain file (#19230)

* pick: [lua android] use luajit & template cmake update (#19239)

* increase cmake stability ,  remove tests/CMakeLists.txt (#19261)

* cmake win32 Precompiled header (#19273)

* Precompiled header

* Fix

* Precompiled header for cocos

* Precompiled header jscocos2d

* Fix for COCOS2D_DEBUG is always 1 on Android (#19291)

Related #19289

* little build fix, tests cpp-tests works on mac

* sync v3 build related codes into metal-support (#173)

* strict initialization for std::array

* remove proj.win32 project configs

* modern cmake, cmake_cleanup_remove_unused_variables (#19146)

* Switch travis CI to xenial (#19207)

* Switch travis CI to xenial

* Remove language: android

* Set language: cpp

* Fix java problem

* Update sdkmanager

* Fix sdkmanger

* next sdkmanager fix

* Remove xenial from android

* revert to sdk-tools-{system}-3859397

* Remove linux cmake install

* Update before-install.sh

* Update .travis.yml

* Simplify install-deps-linux.sh, tested on Ubuntu 16.04 (#19212)

* Simplify install-deps-linux.sh

* Cleanup

* pick: install ninja

* update cocos2d-console submodule

* for metal-support alpha release, we only test cpp

* add HelloCpp into project(Cocos2d-x) for tmp test

* update extenal metal-support-4

* update uniform setting

* [Feature] update BindGroup

* [Feature] empty-test

* [Feature] cpp-test

* [Feature] fix GL compiler error

* [Feature] fix GL crash

* [Feature] empty-test

* [Feature] cpp-tests

* [feature] improve frameRate

* [feature] fix opengl compile error

* [feature] fix opengl compile error

* [BugFix] fix compute maxLocation error

* [Feature] update setting unifrom

* [Feature] fix namespace

* [Feature] remove unneeded code

* [Bugfix] fix project file

* [Feature] update review

* [texture2d] impl texture format support  (#175)

* texture update

* update

* update texture

* commit

* compile on windows

* ddd

* rename

* rename methods

* no crash

* save gl

* save

* save

* rename

* move out pixel format convert functions

* metal crash

* update

* update android

* support gles compressed texture format

* support more compress format

* add more conversion methods

* ss

* save

* update conversion methods

* add PVRTC format support

* reformat

* add marco linux

* fix GL marcro

* pvrtc supported only by ios 8.0+

* remove unused cmake

* revert change

* refactor Texture2D::initWithData

* fix conversion log

* refactor Texture2D::initWithData

* remove some OpenGL constants for PVRTC

* add todo

* fix typo

* AutoTest works on mac/iOS by disable part cases, sync v3 bug fix (#174)

* review cpp-tests, and fix part issues on start auto test

* sync png format fix: Node:Particle3D abnormal texture effects #19204

* fix cpp-tests SpritePolygon crash, wrong png format (#19170)

* fix wrong png convert format from sRGB to Gray

* erase plist index if all frames was erased

* test_A8.png have I8 format, fix it

* [CCSpriteCache] allow re-add plist & add testcase (#19175)

* allow re-add plist & add testcase

* remove comments/rename method/update testcase

* fix isSpriteFramesWithFileLoaded & add testcase

* remove used variable

* remove unused variable

* fix double free issues when js/lua-tests exit on iOS (#19236)

* disable part cases, AutoTest works without crash on mac

* update cocos2dx files json, to test cocos new next

* fix spritecache plist parsing issue (#19269)

* [linux] Fix FileUtils::getContents with folder (#19157)

* fix FileUtils::getContents on linux/mac

* use stat.st_mode

* simplify

* [CCFileUtils] win32 getFileSize (#19176)

* win32 getFileSize

* fix stat

* [cpp test-Android]20:FileUtils/2 change title (#19197)

* sync #19200

* sync #19231

* [android lua] improve performance of lua loader (#19234)

* [lua] improve performance of lua loader

* remove cache fix

* Revert "fix spritecache plist parsing issue (#19269)"

This reverts commit f3a85ece4307a7b90816c34489d1ed2c8fd11baf.

* remove win32 project files ref in template.json

* add metal framework lnk ref into cpp template

* test on iOS, and disable part cases

* alBufferData instead of alBufferDataStatic for small audio file on Apple (#19227)

* changes AudioCache to use alBufferData instead of alBufferDataStatic

(also makes test 19 faster to trigger openal bugs faster)

The original problem: CrashIfClientProvidedBogusAudioBufferList
https://github.com/cocos2d/cocos2d-x/issues/18948
is not happening anymore, but there's still a not very frequent issue
that makes OpenAL crash with a call stack like this.
AudioCache::readDataTask > alBufferData > CleanUpDeadBufferList

It happes more frequently when the device is "cold", which means after
half an hour of not using the device (locked).

I could not find the actual source code for iOS OpenAL, so I used the
macOS versions:
https://opensource.apple.com/source/OpenAL/OpenAL-48.7/Source/OpenAL/oalImp.cpp.auto.html

They seem to use CAGuard.h to make sure the dead buffer list
has no threading issues. I'm worried because the CAGuard code I found
has macos and win32 define but no iOS, so I'm not sure. I guess the
iOS version is different and has the guard.

I could not find a place in the code that's unprotected by the locks
except the InitializeBufferMap() which should not be called more than
once from cocos, and there's a workaround in AudioEngine-impl for it.

I reduced the occurence of the CleanUpDeadBufferList crash by moving
the guard in ~AudioCache to cover the alDeleteBuffers call.

* remove hack method "setTimeout" on audio

* AutoTest works on iOS

* support set ios deployment target for root project

* enable all texture2d cases, since Jiang have fixed

* add CCTextureUtils to xcode project file (#176)

* add leak cases for SpriteFrameCache (#177)

* re-add SpriteFrameCache cases

* update template file json

* Update SpriteFrameCacheTest.cpp

* fix compiling error
2019-01-18 15:08:25 +08:00
leda 48cce75be4
remove un-elegant prebuilt feature in cmake (#19109)
* remove unclearly cmake prebuilt feature

* reduce useless code

* add project info print
2018-10-12 12:36:17 +08:00
leda 98120fb9d8
refactor cmake on use libs (#19054)
* link external build by modern cmake

* use "--whole-archive" for part android spec

* update travis

* update CI, add cmake tests on win32
2018-09-24 20:16:04 -07:00
leda 391f30a3f3 beauty cmake format, reduce duplicate defines (#18799)
* reduce cmake module duplicate

* make module use more clear, correct cmake style

* keep default physics option

* delete the modules distributed with cmake

* unify the cmake files format

* use AndroidNdkModules at cmake sys modules

* add cmake comments for win

* update cocos2dx files list, manually
2018-05-02 15:33:01 +08:00
leda 86ea3a8aee cmake add collect headers list, unify the logic of source add (#18722)
* fix mistake for ios lua template

* auto select headers depend on sources

* change cmake "cocos_build_app" from macro to function

* fix cmake dll repeat copy

* update travis srcipt

* add header list for cocos lib

* add header list in cmake files

* re-add include dir Classes

* improve template cpp var name

* remove func get_headers_by_sources

* cmake add simulator header list

* make source and header collect more clear

* improve macos app pkg

* improve ios pkg, run failed

* revert the ios pak logic, keep older

* expand var APP_BIN_DIR scope

* fix use sqlite3 error on linux

* fix win32 compile error

* remove multi-add mistake

* try to fix python install issue on travis

* fix js-tests build on android

* uninstall old python in travis

* add travis  python print info

* fix command ll to ls -l

* remove useless link

* PYTHON_BIN adapt homebrew python
2018-03-14 13:51:29 +08:00
leda 50ecf00115 cmake support win32 ,and support generate&use prebuilt libs (#18683)
* fix win32 prebuilt error, and set cmake as default android native build

* cpp-template support msvc

* add msvc version check

* add -D_USRLUASTATIC, fix lua lib cmake compile error

* fix cpp-empty-test res copy dir, add function needed

* improve msvc res copy

* refactor cmake copy dll logic

* fix cpp-tests compile error

* refactor copy dll temp

* refactor win32 exe using dlls

* js-project compile support cmake using msvc

* improve res mark for win32

* update the way of lua project res mark

* add D_USRLUASTATIC for lua project

* unify RELEASE Release to Release, add CMAKE_CONFIGURATION_TYPES

* improve VS shows targets, add folder

* improve mac/ios res mark

* reduce useless comments

* unify cpp src include variable

* refactor cpp test project  package logic

* improve pkg app logic

* start support prebuilt libs for cpp project using cmake

* improve prebuilt libs generate

* expand js/lua support prebuilt libs on mac

* adapt IDE generate libs path

* start do prebuilt for android

* improve the way of using external libs for prebuilt

* prebuilt libs support cpp-empty-test on android studio

* cpp-tests prebuilt libs, and remove useless

* start to improve libs using, to adapt prebuilt

* improve cpp tests prebuilt on android

* prebuilt support lua & js test on android

* prebuilt support cpp&js template

* rename prebuilt variabl, detail androd config

* finish android support prebuilt using cmake

* fix cmake script run in windows error

* reduce variable name length

* improve the way of win32 use dlls to adapt prebuilt

* loosen pick js/lua engine lib condition

* self review and start check linux build

* unify compile option location

* strict copy dlls condition

* improve libs link order

* start redo the way of copy dlls

* unify dlls copy logic

* fix linux res copy error

* update cmake copy file path in linux

* make prebuilt dir if needed, and divide Debug and Release dir

* cmake win32 divide Debug and Release dir well

* comment Lua Template project, for the unfinished lua simulator support

* add simulator cmake file

* start support simulator

* simulator support cmake build on macOS

* fix simulator compile error on win32

* add simulator prebuilt support

* improve mark cocos app macro

* improve cmake template project format

* improve cmake app files format

* fix format improve mistake

* detail cmake readme

* improve readme, useless comments

* add game.rc to template project

* check travis openssl version

* try update travis openssl

* upgrade travis openssl

* change openssl link

* change to upgrade openssl

* re install python with upgrade openssl

* add comment for macro and func, improve variable name
2018-03-08 09:47:57 +08:00
leeda edee97278f V3 android cmake support, add mac/ios support (#18646)
* CMake build improvements

* android cmake support

* Enable proguard for cocos2d

* examples & test cmake support

* add android build type param to gradle.properties file

* less warnings

* update all android configs to recomended settings

* fix network cmake error

* fix js-tests cmake error

* android build config, add cmake

* android build config, add cmake

* add lua share lib

* android lua cmake build fix

* fix

* luajit test

* run fail, still

* fix js-warning

* correct lua main include

* lua test project cmake support android

* try to add lua-template cmake support

* lua template fix

* js_tests support cmake on android

* js-tests improve

* cmake support js-template

* test to realise prebuild

* cmake improve, no feature

* improve templates cmake

* refactor cmake struct

* correct cpp-tests cmake

* cpp-templates cmake improve

* typo fix

* cmake struct refator

* change default option

* adapt new project struct

* uniform cmake test style

* add_dependencies to support make -j

* little struct improve

* little fix

* adapt cmake bin dir

* little improve about cmake version

* change build all tests condition

* add source_group for Xcode

* add mark source files

* add more mark source code

* add template project to test

* add macos info.plist template

* add pak macos for all project

* lua test icon fix

* not consider lua project for now

* modify pak method

* add another ios toolchain

* add ios system library

* update ios toolchain, and reduce ios compile errors

* reduce error

* make ios engine lib compile pass

* cpp-empty-test ios bundle

* cpp-tests ios support

* js-tests ios support

* templates project support ios

* fix the way of lua-tests package

* try to fix lua-template on macOS

* comment lua-template sim file

* improve display on xcode

* update cmake readme

* check android compile again

* fix android compile error

* fix linux cmake res error

* update deps version, for cmake

* fix lua_template linux compile error

* close android cmake support for now

* review template android share library name

* change PROP_BUILD_TOOLS_VERSION version to 27.0.1

* change android compile version

* make `PROP_APP_PLATFORM` back, add comments for android native build

* Revert "make `PROP_APP_PLATFORM` back, add comments for android native build"

This reverts commit 272ddc19886891b9502cde070753a870c0fdb588.
2018-02-08 09:24:33 +08:00
minggo 56baabfe50
update glfw to 3.2.1 (#18434) 2017-11-02 15:25:12 +08:00
CocosRobot d07794052f Update license to 2017 (#17362)
* Typo: CopyRight -> Copyright

* Copyright update: chukong-inc.com -> Chukong Technologies Inc.

* [js files] Copyright update: 2014 -> 2014-2017

* [cpp files] Copyright update: 2014 -> 2014-2017

* Copyright update: 2015 -> 2015-2017

* [js files] Copyright update: 2014 -> 2014-2017

* Copyright update: 2016 -> 2016-2017

* Copyright update: 2013 -> 2013-2017

* Copyright update: 201?-201? -> 201?-2017

* License year fixes.

* Liscene year fix in CCRay.cpp

* Updates license years in CCGLProgramState.h & CCGLProgramStateCache.h
2017-02-14 14:36:57 +08:00
James Chen b1f2a056b2 Refactor WebSocket to support SSL (wss) (#17172)
* Refactors WebSocket:
1. Supports wss protocol
2. Uses only one libwebsockets context, multiple wsi instances to avoid multi-thread issues
3. Uses lws_create_vhost to create multiple virtual host, different protocols works

* Adds openssl include path to xcode project configuration.

* mac doesn’t depend on curl

* ca file path should be full path.

* More bug fixes like which in https://github.com/cocos2d/cocos2d-x/pull/6986

* Remove curl dependence for mac

* Updates Andorid.mk

* [win32] Adds wss support for win32, and updates openssl, libcurl, libwebsockets libraries.

* Updates external/config.json to 118.

* [win32] Updates cocos/2d/libcocos2d.vcxproj to fix compilation error while building in release mode.

* Linux support websocket ssl connection.

* Updates external/config.json

* Updates install-deps-linux.sh

* Adds dependence of binutils, print ld version

* Updates travis scripts.

* Updates travis scripts.

* Updates travis script, don’t output log while extracting.

* update before-install.sh

* updates before-install.sh

* updates before-install.sh

* don’t output log for installing software.

* Updates config.json to 120.
2017-01-19 13:55:14 +08:00
Furkan Üzümcü 5b83fa1ac0 Fix LNK4098 and LNK2001 warnings (#16372)
* Fix LNK4098 warnings

Fixes these two warnings:
```
warning: LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library
warning: LNK4098: defaultlib 'LIBCMT' conflicts with use of other libs; use /NODEFAULTLIB:library
```

* Fix LNK2001 error

The `version` library is not linked for MSVC compiler and it produces these errors when compiling with MSVC 19.
```
cocos2dInternal.lib(CCApplication-win32.cpp.obj) : error LNK2001: unresolved external symbol _GetFileVersionInfoSizeW@8
cocos2dInternal.lib(CCApplication-win32.cpp.obj) : error LNK2001: unresolved external symbol _GetFileVersionInfoW@16
cocos2dInternal.lib(CCApplication-win32.cpp.obj) : error LNK2001: unresolved external symbol _VerQueryValueW@16
```

This commit fixes that problem
2016-08-22 15:50:17 +08:00
minggo 6778ebf451 Merge pull request #15853 from ricardoquesada/vr_squashed
Squashed commit of the following:
2016-06-17 10:15:20 +08:00
Ricardo Quesada 180c2f1e9a Squashed commit of the following:
VR support for cocos2d-x

commit 087aff0aec24b81418fa2678ce0cae2d4c1e2e01
Merge: b32d329 fc44d0d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Jun 15 11:26:33 2016 -0700

    Merge branch 'v3' into vr

commit b32d329f9331a4f9bbbbf946b88b31db7559934d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Jun 15 11:25:27 2016 -0700

    fix: dont' include oculus files

commit 816928c6a8782984830aa92de5bed038c1306cdc
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Jun 15 10:57:26 2016 -0700

    fix: missing guard in header

commit 2abd4eb5a1fc961c2cbae9b00809b5e6409740db
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Jun 15 10:43:49 2016 -0700

    removed VR engines... should be part of package manager

commit 583179755d1c66c02e898297230d0f882e629b98
Merge: 12f4f71 b6d6bb0
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Jun 15 10:42:37 2016 -0700

    Merge branch 'vr' of github.com:ricardoquesada/cocos2d-x into vr

commit 12f4f71aca4fa15231976a7727faf40648d62313
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Jun 15 10:42:12 2016 -0700

    fix: new VR API... easier to enable/disable different VR renderers

commit b6d6bb087f54cbd272fbfb9e1cf1cd6bba776ffa
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 14 20:48:04 2016 -0700

    fix: compiles and runs on win10

commit e73aa8902118377abbd2192c757104c4531d2a9e
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 14 20:27:06 2016 -0700

    fix: vr works again

commit 5615e276507edf8602f043f3130204a89dbaba69
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 14 18:55:18 2016 -0700

    fix: compiles on windows

commit 494061ee4da8fbc5616f83efb64b2c0c3932778e
Merge: 284910b fd3b6d4
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 14 17:13:47 2016 -0700

    Merge branch 'v3' into vr

commit 284910b204ee0dd76d949ea8f2b2f6b1b72e533f
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 14 17:12:25 2016 -0700

    android vr: better performance

commit aa8328e8029143dd7c6c724f38915f0fb3b64abe
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Jun 13 16:10:14 2016 -0700

    fix: low pass filter in accel and magnet

commit f6d9b622abff5abb95ad60fa7139f3ce1ec9caab
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Jun 13 15:43:00 2016 -0700

    fix: removes debugging info

commit 2004f0ce5605dad70ff8656a058073181346f083
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Jun 13 14:54:32 2016 -0700

    fix: kind of works on android! yeah!

commit d6dcb6a3410fda053f0d6fbc00af817a13a86d3b
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Jun 10 09:44:53 2016 -0700

    logging

commit 7e5d6ad52d39642c111e7b690173338af4e94092
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 7 22:53:07 2016 -0300

    android head tracking

    compiles, doesn't work yet... how to debug java code?

commit cbf5f6482aa0ae002a7dc40045ef3ffdbe192e26
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 7 19:45:41 2016 -0300

    reading sensor from android

    not compiling yet

commit 6ee0a3c2c43f8e8a603bfce9fddb0cce5ce79415
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Jun 7 11:45:06 2016 -0300

    compiles on android... finally

commit fb728da756ca7ee94b316c113e2239a77d9f4b53
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Jun 6 18:15:12 2016 -0300

    fix: compile vr android files only on android

commit 90db6daef382d142bb60207d2b16936dd66ee245
Merge: 2e56f03 cc936af
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon Jun 6 12:15:56 2016 -0300

    Merge pull request #11 from songchengjiang/riq_vr

    daydream VR platform supporting

commit cc936afac44518a00b90ec3133aaac5d00f0b91f
Author: songchengjiang <moses_jc@sina.com>
Date:   Mon Jun 6 10:38:27 2016 +0800

    remove VR 3rdparty dependence

commit 5f7a1a9c80f84cc915763ad6f52ffc524dd59309
Author: songchengjiang <moses_jc@sina.com>
Date:   Mon Jun 6 10:34:37 2016 +0800

    remove VR 3rdparty dependence

commit 3f72ecde2a259357a137bec1e99e731a2e78df84
Author: songchengjiang <moses_jc@sina.com>
Date:   Mon Jun 6 10:28:43 2016 +0800

    remove VR 3rdparty dependence

commit 2e56f032d1daced1b66b984acacc6f5007f5ecc3
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri Jun 3 10:45:44 2016 -0300

    fix: started android support

commit 1910c9c488ee4315110081b60438aa1b7c1011f2
Author: songchengjiang <moses_jc@sina.com>
Date:   Thu Jun 2 15:58:34 2016 +0800

    add CCVRGvrRenderer and CCVRGvrHeadTracker framework

commit 96200eedea9234287153d71b4f198077cc49389a
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue May 31 13:07:44 2016 -0300

    fix: little fixes

commit a2eb8114b2969beca83762ba829c8cb809b1615a
Merge: 20a74e0 5fddebc
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue May 31 12:12:59 2016 -0300

    Merge pull request #10 from songchengjiang/riq_vr

    bugs fixed

commit 5fddebcae997db9e1a4108413d73b0d057a61e83
Author: songchengjiang <moses_jc@sina.com>
Date:   Fri May 27 15:57:30 2016 +0800

    parameter corrected

commit 925aad012ae513ebeeec682b003123a3c543759f
Merge: 9b5e02f 20a74e0
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Fri May 27 15:46:13 2016 +0800

    Merge branch 'vr' of https://github.com/ricardoquesada/cocos2d-x into riq_vr

    Conflicts:
    	cocos/2d/CCScene.cpp

commit 9b5e02fa7c9fcdd15cfea99769560ed30b976e9e
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Fri May 27 14:36:31 2016 +0800

    fixed ProjectionMatrix error on oculus platform
    fixed ScrollView error on oculus platform

commit 3c63ead1943d1cf8aa3c0fd722a4b3834db323b1
Author: songchengjiang <moses_jc@sina.com>
Date:   Fri May 27 10:51:46 2016 +0800

    bugs fixed

    mobile VR platforms:
    fixed ProjectionMatrix  error
    fixed culling error of ScrollView

commit 20a74e064708e6bf9d15cc5551d1f86af9d24010
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 20 09:22:45 2016 -0300

    fix: setAdditionalTransform support reference

commit 8341df82a02683b8e4ae02654e90617a2e5ced6d
Merge: 83751de 469d38d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed May 18 07:38:49 2016 -0700

    Merge pull request #8 from songchengjiang/riq_vr

    Finished VR integration of SKDs based on VRProtocol

commit 469d38d778cd5f947098a08d8fd14ca6f32b0502
Author: songchengjiang <moses_jc@sina.com>
Date:   Wed May 18 15:32:32 2016 +0800

    fix bug of deepoon's headtracking

commit 83751deac133910c24321ddaddff93bf736de884
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue May 17 09:41:17 2016 -0700

    fix: Scene inverts the eye matrix

commit 41ae41969a71fd5b07396faac78e777c4afbe5c4
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue May 17 06:54:34 2016 -0700

    fix: inversed matrix for camera

commit 049dee721356a47b19f5e51a0face6a5a1647095
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Tue May 17 15:51:57 2016 +0800

    add headtracker of oculus

commit 3f6478352a4baebc684105156389655edbac7e6f
Author: songchengjiang <moses_jc@sina.com>
Date:   Tue May 17 14:22:56 2016 +0800

    add headtracker of SKDs

    gearvr/deepoon/cardboard

commit 59df985b72adf0dbb5a4c66c80ae7299b16ae909
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon May 16 22:12:23 2016 -0700

    fix: head tracker works

commit 306c59da0175708c96b5757f5f27afd6a6592fe3
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon May 16 17:55:43 2016 -0700

    fix: adds missing methods to `VRIHeadTracker`

commit 91100b8a86d78801fbcd08e99427d6a6363ad69b
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Mon May 16 14:17:21 2016 +0800

    Rename Oculus's files

commit 01ef6215de936a8d8bb15f9ec195cb81b2b4b18f
Author: songchengjiang <moses_jc@sina.com>
Date:   Mon May 16 11:41:56 2016 +0800

    Rename files based on riq's changes

commit 734efbb045064d24df095c5b8fc604ef2aab1dea
Merge: 91449c9 769a883
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Mon May 16 09:57:57 2016 +0800

    Merge branch 'riq_vr' of https://github.com/songchengjiang/cocos2d-x into riq_vr

    Conflicts:
    	build/cocos2d_libs.xcodeproj/project.pbxproj
    	cocos/vr/CCVRGeneric.cpp
    	cocos/vr/CCVRGenericHeadTracker.h

commit 91449c9d23e357549cb1aeae6d1454274def1aab
Merge: d3e4550 a33faaf
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Mon May 16 09:54:44 2016 +0800

    Merge branch 'vr' of https://github.com/ricardoquesada/cocos2d-x into riq_vr

    Conflicts:
    	build/cocos2d_libs.xcodeproj/project.pbxproj
    	cocos/platform/CCGLView.cpp

commit a33faafa1a2b6cffdc32d87f3c1c321f46f94789
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat May 14 00:57:54 2016 -0700

    fix: adds head tracker

commit ea348cf72d3e54dc3864571bff1405909dbb65c9
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 13 18:40:32 2016 -0700

    fix: removes red background

commit 113c7debe9a35fc142183a9012cac40063e17efe
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 13 18:39:31 2016 -0700

    fix: centers image

commit 769a883c93f4f7c6191462626845f01d6f8596fe
Author: songchengjiang <moses_jc@sina.com>
Date:   Fri May 13 20:36:19 2016 +0800

    Merge branch 'vr' of https://github.com/ricardoquesada/cocos2d-x into riq_vr

commit d3e45501cd2cada87735390a407fbd44e61cd84e
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Fri May 13 17:52:46 2016 +0800

    update win32 project for VR

commit ba0fdb8b8e1efaf8fdf88e044e701fb5bedb4839
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu May 12 23:21:50 2016 -0700

    fix: no hardcoded values

    code is simpler, fixed a few bugs

commit b30596cdae4cdcf39d960a39661a79200b27c7a8
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu May 12 21:50:18 2016 -0700

    fix: simplified distortion

commit 37b184f084e7b50bac9a5a3c59a87f8f03440b53
Author: songchengjiang <songcheng.jiang@chukong-inc.com>
Date:   Fri May 13 09:39:34 2016 +0800

    finished VR rendering of Oculus

commit f7d74cd0a2479541c0546d0ec41fe4f867405fcc
Author: songchengjiang <moses_jc@sina.com>
Date:   Thu May 12 10:00:43 2016 +0800

    Finished GearVR and Deepoon VR rendering integration

commit 776fb4fd7420f1c14403eb476df1e9716362f1e5
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed May 11 16:56:57 2016 -0700

    fix: distortion working... with too many hardcoded values

    time to "un-hardcode" the values

commit 0584773cca88c5b3dee72821830841f617cfb21c
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue May 10 19:49:07 2016 -0700

    feat: distortion WIP

commit 9b5ef01776eaa617dd4677c3824e50c1f9da41c6
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue May 10 15:49:17 2016 -0700

    fix: simpler

    one texture that holds both left and right eye

commit bfff504c499c253a0c36b342e6b5bcb0edf4fed7
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Mon May 9 10:50:43 2016 -0700

    fix: Camera code is cleaner

commit fcf730bc2afc6c4552787273577e1942088c2e42
Author: songchengjiang <moses_jc@sina.com>
Date:   Mon May 9 16:43:58 2016 +0800

    support cardboard VR rendering

commit f88b834b70fbfb28db0c8442e68984c61192d7cc
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 6 21:16:10 2016 -0700

    fix: proj fixes. works ok in any resolution

commit f980a616837b0f259d9564e622c78e0f4869ed53
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 6 19:08:47 2016 -0700

    fix: renders ok in any device

commit 4799ad32ea38ddd217e80e868c3d9021c03e88ce
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu Apr 28 16:46:30 2016 -0700

    fix: renders something

    fix: passing camera to scene

    adds a way to return user camera

    fix: stereo rendering works

    fix: viewport left is correct

    fix: scissor is not needed...

    fix: works!

    fix: minor fixes

    fix: new approach... almost working

    fix: camera is moved

    whitespace fixes

    fix: whitespaces

    fix: new line

commit c137a53aba227cf2e2a1809b55cb9b3da25d432b
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 27 18:56:41 2016 -0700

    fix: VR refactor... still WIP

commit 16fde77d71b8309e982bf6fa4f4ee0acea5fc0d1
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Tue Apr 26 22:21:21 2016 -0700

    feat: VR, initial commit
2016-06-15 11:33:25 -07:00
Adrien de Sentenac dac9be5016 Various CMake improvements
- Added c++_shared (LLVM) to Android toolchain options. Fixed AndroidNdkGdb.cmake.
- Fixed includes when not using prebuilt libs. Added option to use sources in external when not using prebuilt libs.
- Added option in CMake to be able build Box2D without using it as physics library in cocos2d-x (similar to what is done in the Visual Studio solution).
2016-06-14 10:20:57 -04:00
Xpol Wan e7864cdb89 Removed unnecessary search paths. 2016-03-22 16:04:12 +08:00