Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Spine Pixi Runtime #2305

Closed
10 tasks done
badlogic opened this issue Jun 7, 2023 · 4 comments
Closed
10 tasks done

Spine Pixi Runtime #2305

badlogic opened this issue Jun 7, 2023 · 4 comments
Assignees

Comments

@badlogic
Copy link
Collaborator

badlogic commented Jun 7, 2023

See #2299

TODO

  • Code review
  • Assets should be copied to the example dir via examples/export/runtimes.sh.
  • Add license header to all files where needed.
  • Formatting
  • Add JSDocs to public API
  • Check if batching actually works as intended, specifically with (dark) tint, and benchmark
  • Add support for PMA atlases if necessary
  • More examples
  • Documentation page
  • Release to NPM
badlogic added a commit that referenced this issue Jul 12, 2023
badlogic added a commit that referenced this issue Jul 12, 2023
jordo added a commit to winterpixelgames/spine-runtimes that referenced this issue Aug 4, 2023
commit 26c02da
Merge: 0ce2ab6 0022763
Author: Jordan Schidlowsky <jordanschidlowsky@gmail.com>
Date:   Thu Aug 3 15:57:49 2023 -0600

    Merge remote-tracking branch 'upstream/4.1' into feature4.1/godot-performance-improvements

commit 0ce2ab6
Author: Jordan Schidlowsky <jordanschidlowsky@gmail.com>
Date:   Thu Aug 3 12:11:51 2023 -0600

    Performance improvement using SNAME, caches for find_bone find_slot, temporary string buffer support.

commit 0022763
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Thu Aug 3 16:11:04 2023 +0200

    [godot] Fix artifact download urls in upload-to-s3-mono job

commit a08f511
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Thu Aug 3 13:54:42 2023 +0200

    [godot] FIx Windows C# build, last attempt.

commit 433182e
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Thu Aug 3 13:18:02 2023 +0200

    [ue] Update example project to UE 5.2

commit 83fab4a
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Thu Aug 3 13:09:51 2023 +0200

    [ue] USpineWidget now reports its desired size.

commit 3ae685f
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Wed Aug 2 18:36:58 2023 +0200

    License header update in LICENSE file in top directory.

commit 1a6ccff
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Wed Aug 2 18:21:49 2023 +0200

    [unity] URP Shaders: Increased UPM package version for preceding commit c9952ef.

commit c5afe7b
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Wed Aug 2 18:11:51 2023 +0200

    [unity] Updated license headers of Spine Timeline UPM package to 2023 licenses as well (were not covered by script).

commit c9952ef
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Wed Aug 2 16:58:47 2023 +0200

    [unity] URP Shaders: Fixed a shader compile error in "URP/Spine/Sprite" shader on old Unity versions 2019.X.

commit baa12f9
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 31 13:31:42 2023 +0200

    [godot] Invoke build_assemblies.py via python directly instead of relying on hash bang for GH action on Windows.

commit 4047f1b
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 31 13:29:16 2023 +0200

    Updated license headers.

commit 61835fa
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 31 13:04:22 2023 +0200

    [godot] Fix runtime license header.

commit 3c40309
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 31 11:25:19 2023 +0200

    [godot] Fix v4 template build script with C# support.

commit a0c986e
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 31 11:13:58 2023 +0200

    [godot] Remove self-hosted runner.

commit 8c1504a
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 31 10:58:42 2023 +0200

    [godot] Don't setup Godot dependencies on self-hosted runner.

commit 254458a
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 31 10:55:13 2023 +0200

    [godot] Use self-hosted label instead of runner name.

commit 9b7ee42
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 31 10:51:06 2023 +0200

    [godot] Add self-hosted macOS runner for debugging GH workflow.

commit 84cfc40
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 31 10:08:10 2023 +0200

    [flutter] 4.1.5 release

commit 0645ba3
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 31 10:07:13 2023 +0200

    [flutter] Revert change to native bindings, so we stay compatible with old Dart versions.

commit 083ee14
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 31 10:02:42 2023 +0200

    [flutter] Upgrade dependencies to latest.

commit e05a437
Author: misaki-eymard <misaki.eymard@gmail.com>
Date:   Mon Jul 31 15:55:12 2023 +0900

    Corrected an incorrect comment and deleted unnecessary nodes in ControlledSpineboy_Blueprint

commit 261f9f6
Author: エマール美咲 <misaki.eymard@gmail.com>
Date:   Sun Jul 30 16:11:25 2023 +0900

    Corrected an incorrect comment in Raptor_Blueprint.

commit 373a163
Author: Andrew Wilson <andx_roo@live.com>
Date:   Sat Jul 29 15:55:45 2023 -0400

    Add CMake Target Exporting & option to disable testing in the build (EsotericSoftware#2329)

    * Fix cmake install

    * Option to build without testing

    * Add target exporting and SpineConfig.cmake

    * Revert relative install paths to Spine preferred ones

commit cd1935d
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Fri Jul 28 11:36:05 2023 +0200

    [godot] Install Dotnet 6 in each job.

commit 41cadcd
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jul 25 11:36:20 2023 +0200

    [godot] Artifact upload names must be unique, added tag and mono qualifiers.

commit 297113a
Merge: 0e16aaf 5eca100
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jul 25 11:25:28 2023 +0200

    Merge branch '4.1' of https://github.com/esotericsoftware/spine-runtimes into 4.1

commit 0e16aaf
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jul 25 11:25:20 2023 +0200

    [godot] Run glue generator in headless mode.

commit 5eca100
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Mon Jul 24 20:34:58 2023 +0200

    [unity] URP shaders: Fixed DoF effect ignoring written depth when Decal feature is enabled. Closes EsotericSoftware#2283.

commit 80f5973
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 24 12:39:55 2023 +0200

    [godot] Fix Linux C# build.

commit 0b1909a
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 24 11:01:43 2023 +0200

    [godot] Pass mono flag to buildscripts from workflow.

commit b18a92a
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 24 10:52:24 2023 +0200

    [godot] Remove debug logging job. You can get the same info when expanding the undiscoverable little arrows in the job logs.

commit 4cdde96
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 24 10:48:06 2023 +0200

    [godot] Manual dispatch for Godot 4 workflow.

commit 5facf4a
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 24 10:44:27 2023 +0200

    [godot] More GitHub workflow debugging.

commit 44d766c
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 24 10:40:50 2023 +0200

    [godot] More GitHub workflow debugging.

commit caafb9b
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 24 10:37:32 2023 +0200

    [godot] More GitHub workflow debugging.

commit 1dec42d
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jul 24 10:33:37 2023 +0200

    [godot] Add debugging output to Godot GH workflow

commit 8a3182a
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Fri Jul 21 16:21:09 2023 +0200

    [godot] Add C# build to workflow.

commit 49e901f
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Fri Jul 21 15:32:51 2023 +0200

    [godot] Unify 4.x builds into a single workflow, with an orchestrating workflow in spine-godot-v4-all.yml

commit b405686
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Fri Jul 21 14:42:45 2023 +0200

    [godot] More C# build work.

commit e59b15c
Merge: 157b938 76d220b
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Fri Jul 21 11:07:21 2023 +0200

    Merge branch '4.1' into godot-csharp

commit 76d220b
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Thu Jul 20 18:03:31 2023 +0200

    [unity] Fixed Spine Timeline not ending at clip end when last clip on track. Restores behaviour as named and documented. Closes EsotericSoftware#2318.

commit 157b938
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jul 19 18:21:37 2023 +0200

    [godot] Fix macOS build, add assemblies to .app.

commit 8900377
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Wed Jul 19 17:56:18 2023 +0200

    [unity] Improved robustness of SkeletonGraphic regarding deleting submesh renderer objects and enabling/disabling render separation.

commit 7b37dd5
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Wed Jul 19 17:53:07 2023 +0200

    [unity] Fixed disabling SkeletonGraphic outside bounds of RectMask2D displaying SkeletonSubmeshGraphic incorrectly. Closes EsotericSoftware#2324.

commit e525c77
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jul 19 17:53:01 2023 +0200

    [godot] Rework v4 build scripts to support optionally support C#.

commit bdb9e13
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jul 19 11:56:34 2023 +0200

    [godot] Add mono flag to 4.x build.

commit 39a957c
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Wed Jul 19 11:37:19 2023 +0200

    [unity] SkeletonRenderTexture: automatically assigning RenderQuadMaterial upon component reset.

commit 8d04c7a
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jul 18 14:51:57 2023 +0200

    [pixi] Clean-up and extend examples

commit deb4117
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jul 18 14:50:02 2023 +0200

    [flutter] release 4.1.4

commit 04317b8
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jul 18 14:48:34 2023 +0200

    [flutter] Update changelog

commit 7dbf0a6
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jul 18 14:47:52 2023 +0200

    [flutter] Fix WASM compilation, closes EsotericSoftware#2321

commit 9b9d02a
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jul 18 14:00:45 2023 +0200

    [c][cpp] Don't set CMake install dir to "./", closes EsotericSoftware#2320.

commit 0ca3c8e
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Mon Jul 17 16:43:11 2023 +0200

    [unity] Fixed a Timeline SpineAnimationStateClip related bug introduced in commit d4cc163. Closes EsotericSoftware#2316.

commit 5308ddb
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Fri Jul 14 15:11:16 2023 +0200

    [godot] Add build/pack-template.sh to zip up the template files for development.

commit 15b61f3
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Fri Jul 14 13:46:20 2023 +0200

    [godot] Fix compilation error in SpineSprite, add 4.1 GitHub workflow.

commit 66aeb0e
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Fri Jul 14 13:21:00 2023 +0200

    [godot] Update build to 4.0.3 stable.

commit 6fafd96
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jul 12 15:15:56 2023 +0200

    [pixi] License headers, see EsotericSoftware#2305

commit 2ba7133
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jul 12 15:13:40 2023 +0200

    [pixi] Assets for examples, see EsotericSoftware#2305

commit 045e155
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jul 12 15:00:38 2023 +0200

    [ts] Release 4.1.36

commit 9ce4b14
Merge: cb0f78b d4cc163
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jul 12 14:41:56 2023 +0200

    Merge branch '4.1' of https://github.com/esotericsoftware/spine-runtimes into 4.1

commit cb0f78b
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jul 12 14:41:48 2023 +0200

    [phaser] Add Origin mixin, don't call updateSize() on changes to scale.

commit d4cc163
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Tue Jul 11 17:39:57 2023 +0200

    [unity] Fixed Timeline SpineAnimationStateClip ignoring seek and loop. Closes EsotericSoftware#2316. Removed redundant multiple skeleton updates when multiple animations are started.

commit f759199
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jul 11 13:47:20 2023 +0200

    [ts] Release 4.1.35

commit 90b6b6f
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jul 11 13:46:03 2023 +0200

    [ts] 4.1.34 release, broken.

commit 0672c6c
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jul 11 09:10:28 2023 +0200

    [phaser] Bounds providers return zero bounds in case there are no attachments to calculate the bounds with.

commit ccc4133
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Tue Jul 4 18:36:42 2023 +0200

    [unity] Fixed Timeline preview speed-scale applied twice in Unity 2019 and newer versions. Closes EsotericSoftware#2312.

commit 5635f31
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Mon Jul 3 20:55:19 2023 +0200

    [unity] Fixed URP shaders compile error on Unity 2023.1. Closes EsotericSoftware#2311.

commit b210ff5
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Fri Jun 30 15:27:40 2023 +0200

    [ts] Release 4.1.33

commit dd9d7e5
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jun 28 10:33:54 2023 +0200

    [ts] Fix formatting issue detected by build.

commit 6f8896e
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jun 28 10:30:47 2023 +0200

    [ts] Include Phaser in iife build.

commit ad528c3
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jun 28 09:46:52 2023 +0200

    [ts] Fix up package.json

commit ea2d072
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jun 27 15:27:41 2023 +0200

    [pixi] Fix index.html

commit 0f118ba
Merge: 8fb691c f3379d4
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jun 27 15:11:10 2023 +0200

    Merge branch '4.1' of https://github.com/esotericsoftware/spine-runtimes into 4.1

commit 8fb691c
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jun 27 15:10:53 2023 +0200

    [pixi] Clean-up and improvements.

commit f3379d4
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Tue Jun 27 15:08:45 2023 +0200

    [unity] Increased package version number for preceding commit 3d2b6e5.

commit 3d2b6e5
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Tue Jun 27 15:06:53 2023 +0200

    [unity] Fixed import infinite loop when Spine Preferences `Default Shader` does not exist. Closes EsotericSoftware#2310.

commit 7698f5f
Merge: d75f2d1 99260f8
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jun 27 14:49:37 2023 +0200

    Merge branch 'spine-pixijs' of https://github.com/miltoncandelero/spine-runtimes into miltoncandelero-spine-pixijs

commit d75f2d1
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Tue Jun 20 17:33:12 2023 +0200

    [unity] Fixed URP 2D Shaders example scene: previous commit 79be6d4 included accidental additions of SkeletonRenderTexture components, reverted partial changes.

commit 8a8e64b
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Tue Jun 20 11:54:37 2023 +0200

    [ts] Release 4.1.32

commit 74719c1
Author: Nathan Sweet <nathan.sweet@gmail.com>
Date:   Mon Jun 19 17:17:17 2023 +0200

    Link to Spine Wen PlayerUpdate README.md

commit 403ff46
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jun 19 12:40:50 2023 +0200

    [flutter] Update CHANGELOG

commit aa54d8e
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jun 19 12:39:55 2023 +0200

    [flutter] Release 4.1.3

commit 4c4771f
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jun 19 12:37:46 2023 +0200

    [flutter] Upgrade and require Flutter 3.5.10

commit a2e3870
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Wed Jun 14 16:00:10 2023 +0200

    [unity] Minor: Increased package version for previous commit.

commit ad614dc
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Wed Jun 14 15:56:32 2023 +0200

    [unity] Added `updateSeparatorPartScale` property to `SkeletonGraphic` to let render separator parts follow scale.

commit cbe0e54
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Tue Jun 13 17:11:33 2023 +0200

    [unity] Added `SkeletonGraphic.MeshScale` property to allow access to calculated mesh scale.

commit 723f689
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Tue Jun 13 16:34:16 2023 +0200

    [unity] Added SkeletonGraphic example component variants for "4 Object Oriented Sample" for canvas coord conversion.

commit 41a9790
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Mon Jun 12 14:27:55 2023 +0200

    Fix SkeletonBounds::getPolygon() for latest Clang on macOS.

commit 2d9bdb0
Author: Harald Csaszar <harald.csaszar@pixelcloudgames.com>
Date:   Fri Jun 9 19:05:22 2023 +0200

    [unity] Fixed scene preview conflict between Timeline and SkeletonAnimation animation. Closes EsotericSoftware#2307.

commit d81ea2d
Merge: b775800 9be78db
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jun 7 14:32:07 2023 +0200

    Merge branch '4.1' of https://github.com/esotericsoftware/spine-runtimes into 4.1

commit b775800
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jun 7 14:31:59 2023 +0200

    [sdl] Closes EsotericSoftware#2304, misnamed function declaration spSkeletonDrawable_dispose

commit 9be78db
Author: Jordan Schidlowsky <323868+jordo@users.noreply.github.com>
Date:   Wed Jun 7 05:52:43 2023 -0600

    Support audio path in SpineEventData (EsotericSoftware#2303)

commit 468985b
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jun 7 13:52:03 2023 +0200

    [ue] Fix compilation error with Clang, closes EsotericSoftware#2301.

commit 0332054
Author: Mario Zechner <badlogicgames@gmail.com>
Date:   Wed Jun 7 13:25:39 2023 +0200

    [ue] Fix permissions of setup script.

commit 8082dfc
Author: Jordan Schidlowsky <jordanschidlowsky@gmail.com>
Date:   Tue Jun 6 06:10:07 2023 -0600

    Support audio path in SpineEventData

commit 99260f8
Author: eCode <miltoncandelero@gmail.com>
Date:   Sat Jun 3 13:11:56 2023 -0300

    docs: add polygon packed atlas to the demo

    thanks to warmanw#5604 on discord for the file

commit 4876dba
Author: eCode <miltoncandelero@gmail.com>
Date:   Sat Jun 3 13:05:21 2023 -0300

    feat: add support for pixijs

commit bf864c7
Merge: da5b318 0a14457
Author: Jason Knight <jason@winterpixel.com>
Date:   Tue Nov 29 14:01:17 2022 -0600

    Merge branch 'upstream-4.1' into winterpixel-main

commit da5b318
Author: Jordan Schidlowsky <jordanschidlowsky@gmail.com>
Date:   Fri Nov 25 14:02:09 2022 -0600

    fix incorrect ordering issue when applying custom materials to slot nodes

commit 000d22c
Merge: 718643a 8c35338
Author: Brian Semrau <brian@winterpixel.com>
Date:   Thu Nov 24 16:02:30 2022 -0500

    Merge remote-tracking branch 'upstream/4.1' into winterpixel-main

commit 718643a
Merge: 2b743bd d839643
Author: Brian Semrau <brian@winterpixel.com>
Date:   Tue Oct 25 16:03:10 2022 -0400

    Merge remote-tracking branch 'upstream/4.1' into winterpixel-main

commit 2b743bd
Author: Jordan Schidlowsky <jordanschidlowsky@gmail.com>
Date:   Thu Oct 13 12:37:04 2022 -0600

    Adding .o to ignore

commit 6ad70aa
Author: Brian Semrau <brian@winterpixel.com>
Date:   Wed Oct 12 13:59:32 2022 -0400

    Allow building by just adding to a modules folder
@davidetan
Copy link
Collaborator

This 0ac67cf should address PMA.

@davidetan
Copy link
Collaborator

davidetan commented Mar 26, 2024

I've quickly tried Darktint and Pixi 8.

  • Darktint doesn't seem to work. It must be manually enabled passing a DarkTintMesh factory, but doing so breaks PIXI.

  • Pixi 8 doesn't work (probably expected since Pixi 7 is declard as a peer dependency). It simply fails to start complaining about dynamic requires.

@davidetan
Copy link
Collaborator

DarkTint actually works, but it has to be enable manually.
With 098fc08, we changed this. DarkTintMesh is automatically used if at least a slot has dark color, so DarkTint renderer is registered by the runtime at import.
User can still decide to pass the default Mesh Renderer during Spine object creation.

@davidetan
Copy link
Collaborator

davidetan commented May 7, 2024

Check if batching actually works as intended, specifically with (dark) tint, and benchmark

Batching works, both normally and with dark tint.

Care should to set PIXI.Mesh.BATCHABLE_SIZE at a reasonable size (default is 100) because reasonable sized meshes in Spine easily reach this number.
For example, raptor example body has 314 vertices, and consequently breaks rendering in three batch unless PIXI.Mesh.BATCHABLE_SIZE is increased.

Benchmarks

On a 13-inch, 2018 MacBook Pro with:

  • CPU: 2,3 GHz Quad-Core Intel Core i5
  • GPU: Intel Iris Plus Graphics 655 1536 MB
  • Memory: 16 GB 2133 MHz LPDDR3

Using raptor-pro - it uses default Mesh Renderer (no dark tint).
Setting PIXI.Mesh.BATCHABLE_SIZE = 158; (158 * 2 = 316 > 314 raptor vertices).

We can get:

  • Up to 24 raport in 1 draw calls
  • Up to 49 raport in 2 draw calls
  • Up to 73 raport in 3 draw calls
  • Up to 98 raport in 4 draw calls

Using raptor-pro - and passing the Dark Tint Renderer has the very same result as above.

Blending modes
Using blending modes interrupt batching as explained in Pixi doc.

Caveats on using Dark Tint Renderer
DarkTintRenderer of spine-pixi is a subclass of Pixi BatchRenderer. This implies that using it will break batching since webgl has to switch shader.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

3 participants
@badlogic @davidetan and others