diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6ea6ac5b..71d5fb25 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -61,43 +61,6 @@ jobs: name: Windows path: ./Dev/Plugin/Assets/Effekseer/Plugins - webgl_1-38: - name: WebGL Build with emsdk 1.38 - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - name: Cache emsdk - id: cache - uses: actions/cache@v4 - with: - path: ./emsdk - key: ${{ runner.os }}-emsdk-1_38-v1 - - - name: install emsdk 1.38 - if: steps.cache.outputs.cache-hit != 'true' - run: | - git clone https://github.com/emscripten-core/emsdk.git -b 3.1.19 --depth 1 - cd emsdk - ./emsdk install sdk-fastcomp-tag-1.38.11-64bit - cd .. - - - run: sh scripts/clone_dependencies.sh - - run: | - ./emsdk/emsdk activate sdk-fastcomp-tag-1.38.11-64bit - source ./emsdk/emsdk_env.sh - cd ./Dev/Cpp/webgl - mkdir build138 - cd build138 - emcmake cmake -DCMAKE_BUILD_TYPE=Release .. - make - cp libEffekseerUnity.bc ../../../Plugin/Assets/Effekseer/Plugins/WebGL/ - - name: Upload math result for webgl - uses: actions/upload-artifact@v4 - with: - name: WebGL_1-38 - path: ./Dev/Plugin/Assets/Effekseer/Plugins - webgl_2-0-19: name: WebGL Build with emsdk 2.0.19 runs-on: ubuntu-latest @@ -212,7 +175,7 @@ jobs: merge: name: merge runs-on: ubuntu-latest - needs: [android, mac_ios, windows, webgl_1-38,webgl_2-0-19,webgl_3-1-8,webgl_3-1-38] + needs: [android, mac_ios, windows, webgl_2-0-19,webgl_3-1-8,webgl_3-1-38] steps: - uses: actions/checkout@v4 - name: Download Android @@ -234,12 +197,6 @@ jobs: name: Windows path: Windows - - name: Download webgl 1.38 - uses: actions/download-artifact@v4.1.7 - with: - name: WebGL_1-38 - path: WebGL_1-38 - - name: Download webgl 2.0.19 uses: actions/download-artifact@v4.1.7 with: @@ -266,7 +223,6 @@ jobs: mv mac_iOS/iOS/libEffekseerUnity.a Dev/Plugin/Assets/Effekseer/Plugins/iOS/libEffekseerUnity.a rm -rf Dev/Plugin/Assets/Effekseer/Plugins/EffekseerUnity.bundle cp -f -r mac_iOS/EffekseerUnity.bundle Dev/Plugin/Assets/Effekseer/Plugins/ - mv WebGL_1-38/WebGL/libEffekseerUnity.bc Dev/Plugin/Assets/Effekseer/Plugins/WebGL/ mv WebGL_2-0-19/WebGL/2.0.19-64bit/libEffekseerUnity.bc Dev/Plugin/Assets/Effekseer/Plugins/WebGL/2.0.19-64bit/ mv WebGL_3-1-8/WebGL/3.1.8-64bit/libEffekseerUnity.bc Dev/Plugin/Assets/Effekseer/Plugins/WebGL/3.1.8-64bit/ mv WebGL_3-1-38/WebGL/3.1.38-64bit/libEffekseerUnity.bc Dev/Plugin/Assets/Effekseer/Plugins/WebGL/3.1.38-64bit/ @@ -289,4 +245,4 @@ jobs: uses: actions/upload-artifact@v4 with: name: Effekseer.unitypackage - path: dist \ No newline at end of file + path: dist diff --git a/Dev/CMakeLists.txt b/Dev/CMakeLists.txt index 11f54544..9914b513 100644 --- a/Dev/CMakeLists.txt +++ b/Dev/CMakeLists.txt @@ -7,9 +7,9 @@ endif() if(APPLE) cmake_policy(SET CMP0114 NEW) if(BUILD_FOR_IOS OR BUILD_FOR_IOS_SIM) - set(CMAKE_OSX_DEPLOYMENT_TARGET "10.0" CACHE STRING "Minimum OS X deployment version" FORCE) + set(CMAKE_OSX_DEPLOYMENT_TARGET "14.0" CACHE STRING "Minimum iOS deployment version" FORCE) else() - set(CMAKE_OSX_DEPLOYMENT_TARGET "10.13" CACHE STRING "Minimum OS X deployment version" FORCE) + set(CMAKE_OSX_DEPLOYMENT_TARGET "11.0" CACHE STRING "Minimum macOS deployment version" FORCE) endif() endif() @@ -41,6 +41,7 @@ if(SANITIZE_ENABLED) endif() if(BUILD_FOR_IOS OR BUILD_FOR_IOS_SIM) + set(BUILD_TOOLS OFF CACHE INTERNAL "" FORCE) set(USE_OPENGLES3 ON CACHE INTERNAL "" FORCE) set(BUILD_UNITYPLUGIN_FOR_IOS ON CACHE INTERNAL "" FORCE) else() @@ -53,4 +54,4 @@ add_subdirectory(Cpp) if(BUILD_FOR_IOS OR BUILD_FOR_IOS_SIM) target_compile_options(Effekseer PUBLIC -fembed-bitcode) target_compile_options(EffekseerRendererCommon PUBLIC -fembed-bitcode) -endif() \ No newline at end of file +endif() diff --git a/Dev/Cpp/android/jni/Android.mk b/Dev/Cpp/android/jni/Android.mk index 693f34bb..3146fa26 100644 --- a/Dev/Cpp/android/jni/Android.mk +++ b/Dev/Cpp/android/jni/Android.mk @@ -70,19 +70,24 @@ LOCAL_SRC_FILES += \ $(LIB_SRC_PATH)/Effekseer.Vector2D.cpp \ $(LIB_SRC_PATH)/Effekseer.Vector3D.cpp \ $(LIB_SRC_PATH)/Effekseer.WorkerThread.cpp \ - $(LIB_SRC_PATH)/ForceField/ForceFields.cpp \ + $(LIB_SRC_PATH)/ForceField/Effekseer.ForceFields.cpp \ $(LIB_SRC_PATH)/IO/Effekseer.EfkEfcFactory.cpp \ $(LIB_SRC_PATH)/Material/Effekseer.CompiledMaterial.cpp \ $(LIB_SRC_PATH)/Material/Effekseer.MaterialCompiler.cpp \ $(LIB_SRC_PATH)/Material/Effekseer.MaterialFile.cpp \ - $(LIB_SRC_PATH)/Model/Model.cpp \ - $(LIB_SRC_PATH)/Model/ModelLoader.cpp \ - $(LIB_SRC_PATH)/Model/ProceduralModelGenerator.cpp \ - $(LIB_SRC_PATH)/Model/SplineGenerator.cpp \ - $(LIB_SRC_PATH)/Noise/CurlNoise.cpp \ + $(LIB_SRC_PATH)/Model/Effekseer.Model.cpp \ + $(LIB_SRC_PATH)/Model/Effekseer.ModelLoader.cpp \ + $(LIB_SRC_PATH)/Model/Effekseer.ProceduralModelGenerator.cpp \ + $(LIB_SRC_PATH)/Model/Effekseer.PointCacheGenerator.cpp \ + $(LIB_SRC_PATH)/Model/Effekseer.SplineGenerator.cpp \ + $(LIB_SRC_PATH)/Noise/Effekseer.CurlNoise.cpp \ + $(LIB_SRC_PATH)/Parameter/Effekseer.Collisions.cpp \ + $(LIB_SRC_PATH)/Parameter/Effekseer.Easing.cpp \ + $(LIB_SRC_PATH)/Parameter/Effekseer.GpuParticlesParameter.cpp \ + $(LIB_SRC_PATH)/Parameter/Effekseer.KillRules.cpp \ $(LIB_SRC_PATH)/Parameter/Effekseer.Parameters.cpp \ - $(LIB_SRC_PATH)/Parameter/Easing.cpp \ - $(LIB_SRC_PATH)/Parameter/Rotation.cpp \ + $(LIB_SRC_PATH)/Parameter/Effekseer.Rotation.cpp \ + $(LIB_SRC_PATH)/Parameter/Effekseer.Trigger.cpp \ $(LIB_SRC_PATH)/SIMD/Mat43f.cpp \ $(LIB_SRC_PATH)/SIMD/Mat44f.cpp \ $(LIB_SRC_PATH)/SIMD/Utils.cpp \ @@ -94,30 +99,31 @@ LOCAL_SRC_FILES += \ $(LIB_SRC_PATH)/GLSLGenerator/ShaderGenerator.cpp \ $(LIB_SRC_PATH)/Common/ShaderGeneratorCommon.cpp -LIB_SRC_PATH := $(LOCAL_PATH)/../../Effekseer/Dev/Cpp/EffekseerRendererCommon +LIB_SRC_PATH := $(LOCAL_PATH)/../../Effekseer/Dev/Cpp/EffekseerRendererCommon/EffekseerRendererCommon LOCAL_SRC_FILES += \ $(LIB_SRC_PATH)/GraphicsDeviceCPU.cpp \ $(LIB_SRC_PATH)/TextureLoader.cpp \ $(LIB_SRC_PATH)/ModelLoader.cpp \ $(LIB_SRC_PATH)/VertexBuffer.cpp \ + $(LIB_SRC_PATH)/EffekseerRenderer.CommonUtils.cpp \ + $(LIB_SRC_PATH)/EffekseerRenderer.DDSTextureLoader.cpp \ + $(LIB_SRC_PATH)/EffekseerRenderer.GpuParticles.cpp \ $(LIB_SRC_PATH)/EffekseerRenderer.ModelRendererBase.cpp \ + $(LIB_SRC_PATH)/EffekseerRenderer.PngTextureLoader.cpp \ $(LIB_SRC_PATH)/EffekseerRenderer.Renderer.cpp \ $(LIB_SRC_PATH)/EffekseerRenderer.Renderer_Impl.cpp \ $(LIB_SRC_PATH)/EffekseerRenderer.RenderStateBase.cpp \ $(LIB_SRC_PATH)/EffekseerRenderer.RibbonRendererBase.cpp \ $(LIB_SRC_PATH)/EffekseerRenderer.RingRendererBase.cpp \ $(LIB_SRC_PATH)/EffekseerRenderer.SpriteRendererBase.cpp \ - $(LIB_SRC_PATH)/EffekseerRenderer.TrackRendererBase.cpp \ - $(LIB_SRC_PATH)/EffekseerRenderer.CommonUtils.cpp \ - $(LIB_SRC_PATH)/EffekseerRenderer.DDSTextureLoader.cpp \ - $(LIB_SRC_PATH)/EffekseerRenderer.PngTextureLoader.cpp \ - $(LIB_SRC_PATH)/EffekseerRenderer.TGATextureLoader.cpp + $(LIB_SRC_PATH)/EffekseerRenderer.TGATextureLoader.cpp \ + $(LIB_SRC_PATH)/EffekseerRenderer.TrackRendererBase.cpp -LIB_SRC_PATH := $(LOCAL_PATH)/../../Effekseer/Dev/Cpp/EffekseerRendererGL/EffekseerRenderer +LIB_SRC_PATH := $(LOCAL_PATH)/../../Effekseer/Dev/Cpp/EffekseerRendererGL/EffekseerRendererGL LOCAL_SRC_FILES += \ $(LIB_SRC_PATH)/EffekseerRendererGL.DeviceObject.cpp \ $(LIB_SRC_PATH)/EffekseerRendererGL.GLExtension.cpp \ - $(LIB_SRC_PATH)/EffekseerRendererGL.GPUTimer.cpp \ + $(LIB_SRC_PATH)/EffekseerRendererGL.GpuTimer.cpp \ $(LIB_SRC_PATH)/EffekseerRendererGL.MaterialLoader.cpp \ $(LIB_SRC_PATH)/EffekseerRendererGL.ModelRenderer.cpp \ $(LIB_SRC_PATH)/EffekseerRendererGL.Renderer.cpp \ diff --git a/Dev/Cpp/android/jni/Application_arm64-v8a.mk b/Dev/Cpp/android/jni/Application_arm64-v8a.mk index 36ee73f5..dc89140d 100644 --- a/Dev/Cpp/android/jni/Application_arm64-v8a.mk +++ b/Dev/Cpp/android/jni/Application_arm64-v8a.mk @@ -1,5 +1,5 @@ APP_OPTIM := release -APP_PLATFORM := android-18 +APP_PLATFORM := android-21 APP_STL := c++_static APP_ABI := arm64-v8a APP_CPPFLAGS := -std=c++17 diff --git a/Dev/Cpp/android/jni/Application_armeabi-v7a.mk b/Dev/Cpp/android/jni/Application_armeabi-v7a.mk index 6fe1db98..1a57e73d 100644 --- a/Dev/Cpp/android/jni/Application_armeabi-v7a.mk +++ b/Dev/Cpp/android/jni/Application_armeabi-v7a.mk @@ -1,5 +1,5 @@ APP_OPTIM := release -APP_PLATFORM := android-18 +APP_PLATFORM := android-21 APP_STL := c++_static APP_ABI := armeabi-v7a APP_CPPFLAGS := -std=c++17 diff --git a/Dev/Cpp/android/jni/Application_x86.mk b/Dev/Cpp/android/jni/Application_x86.mk index ec2c12e3..ef6c8816 100644 --- a/Dev/Cpp/android/jni/Application_x86.mk +++ b/Dev/Cpp/android/jni/Application_x86.mk @@ -1,5 +1,5 @@ APP_OPTIM := release -APP_PLATFORM := android-18 +APP_PLATFORM := android-21 APP_STL := c++_static APP_ABI := x86 APP_CPPFLAGS := -std=c++17 diff --git a/Dev/Cpp/android/jni/Application_x86_64.mk b/Dev/Cpp/android/jni/Application_x86_64.mk index 9d4303e4..6591a857 100644 --- a/Dev/Cpp/android/jni/Application_x86_64.mk +++ b/Dev/Cpp/android/jni/Application_x86_64.mk @@ -1,5 +1,5 @@ APP_OPTIM := release -APP_PLATFORM := android-18 +APP_PLATFORM := android-21 APP_STL := c++_static APP_ABI := x86_64 APP_CPPFLAGS := -std=c++17 diff --git a/Dev/Cpp/common/EffekseerPlugin.cpp b/Dev/Cpp/common/EffekseerPlugin.cpp index 34ba7ac0..e179af8d 100644 --- a/Dev/Cpp/common/EffekseerPlugin.cpp +++ b/Dev/Cpp/common/EffekseerPlugin.cpp @@ -36,7 +36,7 @@ #else -#include +#include #endif diff --git a/Dev/Cpp/graphicsAPI/EffekseerPluginGraphicsGL.cpp b/Dev/Cpp/graphicsAPI/EffekseerPluginGraphicsGL.cpp index 964f2e87..52bc7a64 100644 --- a/Dev/Cpp/graphicsAPI/EffekseerPluginGraphicsGL.cpp +++ b/Dev/Cpp/graphicsAPI/EffekseerPluginGraphicsGL.cpp @@ -5,7 +5,7 @@ #ifdef __EFFEKSEER_FROM_MAIN_CMAKE__ #else -#include +#include #endif #include "../common/EffekseerPluginMaterial.h" diff --git a/Dev/Cpp/renderer/EffekseerRendererImplemented.cpp b/Dev/Cpp/renderer/EffekseerRendererImplemented.cpp index 6fd7fbcd..de3e509e 100644 --- a/Dev/Cpp/renderer/EffekseerRendererImplemented.cpp +++ b/Dev/Cpp/renderer/EffekseerRendererImplemented.cpp @@ -156,7 +156,7 @@ void ModelRenderer::Rendering(const efkModelNodeParam& parameter, const efkModel void ModelRenderer::EndRendering(const efkModelNodeParam& parameter, void* userData) { - if (m_matrixes.size() == 0) + if (matrixes_.size() == 0) return; if (parameter.ModelIndex < 0) return; @@ -353,19 +353,19 @@ void ModelRenderer::EndRendering(const efkModelNodeParam& parameter, void* userD renderer_->GetRenderState()->Update(false); renderer_->DrawModel(model, - m_matrixes, - m_uv, - m_alphaUV, - m_uvDistortionUV, - m_blendUV, - m_blendAlphaUV, - m_blendUVDistortionUV, - m_flipbookIndexAndNextRate, - m_alphaThreshold, - m_colors, - m_times, - customData1_, - customData2_); + matrixes_, + uv_, + alphaUv_, + uvDistortionUv_, + blendUv_, + blendAlphaUv_, + blendUvDistortionUv_, + flipbookIndexAndNextRate_, + alphaThreshold_, + colors_, + times_, + customData1_, + customData2_); renderer_->EndShader(shader); diff --git a/Dev/Cpp/renderer/EffekseerRendererRenderState.cpp b/Dev/Cpp/renderer/EffekseerRendererRenderState.cpp index 50354d4a..43a2c8f5 100644 --- a/Dev/Cpp/renderer/EffekseerRendererRenderState.cpp +++ b/Dev/Cpp/renderer/EffekseerRendererRenderState.cpp @@ -7,5 +7,5 @@ RenderState::RenderState() {} RenderState::~RenderState() {} -void RenderState::Update(bool forced) { m_active = m_next; } +void RenderState::Update(bool forced) { active_ = next_; } } // namespace EffekseerRendererUnity \ No newline at end of file diff --git a/Dev/Cpp/webgl/Build_1.38.11.bat b/Dev/Cpp/webgl/Build_1.38.11.bat deleted file mode 100644 index 90783493..00000000 --- a/Dev/Cpp/webgl/Build_1.38.11.bat +++ /dev/null @@ -1,11 +0,0 @@ -@echo off - -call emsdk activate sdk-fastcomp-tag-1.38.11-64bit - -rem emscripten configuration -call emcmake cmake -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release - -rem build -mingw32-make - -copy libEffekseerUnity.bc ..\..\Plugin\Assets\Effekseer\Plugins\WebGL\ diff --git a/Dev/Cpp/webgl/CMakeLists.txt b/Dev/Cpp/webgl/CMakeLists.txt index 7be28cfb..d03382bb 100644 --- a/Dev/Cpp/webgl/CMakeLists.txt +++ b/Dev/Cpp/webgl/CMakeLists.txt @@ -1,7 +1,5 @@ - -project(Effekseer) - -cmake_minimum_required(VERSION 3.10) +project(Effekseer) +cmake_minimum_required(VERSION 3.15) string(APPEND CMAKE_EXE_LINKER_FLAGS " -s WASM=1") @@ -52,5 +50,5 @@ list(REMOVE_ITEM effekseer_src "${PROJECT_SOURCE_DIR}/../../Effekseer/Dev/Cpp/Ef set(CMAKE_STATIC_LIBRARY_SUFFIX ".bc") set(CMAKE_SHARED_LIBRARY_SUFFIX ".bc") -add_library(EffekseerUnity SHARED ${effekseer_src} ) +add_library(EffekseerUnity SHARED ${effekseer_src}) target_compile_features(EffekseerUnity PUBLIC cxx_std_17) diff --git a/Dev/Effekseer b/Dev/Effekseer index d03c52e5..46607770 160000 --- a/Dev/Effekseer +++ b/Dev/Effekseer @@ -1 +1 @@ -Subproject commit d03c52e54b05d990dd19ba9d6a958c5341d7d091 +Subproject commit 466077708cf6b73e9c77f9870c9e80d90d7ebde3 diff --git a/Dev/Plugin/Assets/Effekseer/Editor/EffekseerPluginSwitcher.cs b/Dev/Plugin/Assets/Effekseer/Editor/EffekseerPluginSwitcher.cs index 92c5cdb5..15c4baac 100644 --- a/Dev/Plugin/Assets/Effekseer/Editor/EffekseerPluginSwitcher.cs +++ b/Dev/Plugin/Assets/Effekseer/Editor/EffekseerPluginSwitcher.cs @@ -17,7 +17,13 @@ public class EffekseerPluginSwitcher #elif UNITY_2021_2_OR_NEWER static readonly string bcPath = "WebGL/2.0.19-64bit/libEffekseerUnity.bc"; #else - static readonly string bcPath = "WebGL/libEffekseerUnity.bc"; + static readonly string bcPath = string.Empty; +#endif + static readonly bool webglSupported = +#if UNITY_2021_2_OR_NEWER + true; +#else + false; #endif static EffekseerPluginSwitcher() @@ -37,7 +43,7 @@ static public void Run() var processed = new List(); foreach (var importer in importers) { - var enabled = importer.assetPath.Contains(bcPath); + var enabled = webglSupported && importer.assetPath.Contains(bcPath); importer.SetCompatibleWithPlatform(BuildTarget.WebGL, enabled); processed.Add(importer.assetPath + " : " + enabled.ToString()); } diff --git a/Dev/Plugin/Assets/Effekseer/Plugins/WebGL/libEffekseerUnity.bc.meta b/Dev/Plugin/Assets/Effekseer/Plugins/WebGL/libEffekseerUnity.bc.meta deleted file mode 100644 index d4cbe5b2..00000000 --- a/Dev/Plugin/Assets/Effekseer/Plugins/WebGL/libEffekseerUnity.bc.meta +++ /dev/null @@ -1,32 +0,0 @@ -fileFormatVersion: 2 -guid: b46c2e1f95c3b2b4586d9f6c6ed494d2 -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - - first: - WebGL: WebGL - second: - enabled: 1 - settings: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/ci/build_webgl138_plugin.sh b/ci/build_webgl138_plugin.sh deleted file mode 100644 index 3345d7f6..00000000 --- a/ci/build_webgl138_plugin.sh +++ /dev/null @@ -1,13 +0,0 @@ -cd `dirname $0` -source ~/emsdk/emsdk_env.sh -cd ../Dev/Cpp/webgl - -mkdir build138 -cd build138 -emsdk activate sdk-1.38.11-64bit -emcmake cmake .. -make -mkdir ../../../Plugin/Assets/Effekseer/Plugins/WebGL/1.38.11-64bit/ -cp libEffekseerUnity.bc ../../../Plugin/Assets/Effekseer/Plugins/WebGL/1.38.11-64bit/ - -