1145 Commits

Author SHA1 Message Date
ds5678
fca21ad09c Add crop functionality to DirectBitmap 2025-10-10 01:45:01 -07:00
ds5678
3124e0599a Fix an exception when calling GetPacking
This also refactors classes to use extension properties for ISpriteAtlasData and ISpriteRenderData
2025-10-10 01:41:19 -07:00
ds5678
1362f35200 Fix an issue with UV dimension being ignored
Resolves #1930
Resolves #1512
2025-10-09 21:28:40 -07:00
ds5678
5cf6fbad22 Disable changes from #1954 2025-10-09 18:06:10 -07:00
ds5678
b328be9ec6 Use BinaryPrimitives instead of BitConverter 2025-10-09 16:45:07 -07:00
ds5678
e70e206184 Texture3D decoding support
Resolves #1886
2025-10-06 23:43:24 -07:00
ds5678
39f9ea7592 Improve texture export performance 2025-10-06 02:59:42 -07:00
ds5678
58d0496f3c Save button for audio assets
Resolves #1950
2025-10-05 20:12:53 -07:00
ds5678
ff19979be9 Assume Unity version is stripped if it can't be parsed instead of throwing an exception
Resolves #1947
2025-10-05 13:10:16 -07:00
Jason McNew
cf22d78101
Avoid copying uncompressed file data to large byte[] arrays (#1954)
* Avoid copying uncompressed bundle files to large byte[].

* Move dependency check logic to SmartStream, and copy if not compatible.

Style cleanups per feedback.

* Tie the original FileStream lifecycle to any surviving partials.

* Ensure FileStream isn't finalized while we're calling Dispose() on it.

* Hold a ref to FIleStream and let the finalizer close it.

Co-authored-by: Jeremy Pritts <49847914+ds5678@users.noreply.github.com>

* Cache FileStream.SafeFileHandle getter to avoid unnecessary Seek().

See OSFileStreamStrategy.cs.

---------

Co-authored-by: Jeremy Pritts <49847914+ds5678@users.noreply.github.com>
2025-10-05 03:49:57 -07:00
ds5678
506c4e3cf7 Fix InvalidCastException during ILSpy decompilation
Resolves #1958
2025-10-05 03:06:25 -07:00
ds5678
6b429fa7d8 Add message box confirming that a user consents to folder deletion
Resolves #1283
2025-10-04 15:29:03 -07:00
ds5678
7a728e3479 Dictionary improvements 2025-10-03 12:11:59 -07:00
Dawi Alotaibi
a22b511abb
Add a class filter for the assets (#1949)
* added a class filter for the assets

* addressing PR commets

* fix formatting

* fix formatting

* address comments

* add Localization for "All"
2025-10-01 10:06:20 -07:00
Raytwo
4cccff3d5a
Implement texture unswizzling for Switch platform (#1948)
* Experimental unswizzling port

* Remove unused helper

* Fix wrong field usage

* Remove unused methods

* Properly check for swizzling

* Update Source/AssetRipper.SourceGenerated.Extensions/SwitchSwizzle.cs

Co-authored-by: Jeremy Pritts <49847914+ds5678@users.noreply.github.com>

* Update Source/AssetRipper.SourceGenerated.Extensions/SwitchSwizzle.cs

Co-authored-by: Jeremy Pritts <49847914+ds5678@users.noreply.github.com>

* Inline IsSwitchSwizzled

* Rename boolean for clarity

* Turn SwitchSwizzle into a static class

* Return on unsupported format

* Fix nullable accesses

* Apply recommended change

* Update Source/AssetRipper.SourceGenerated.Extensions/SwitchSwizzle.cs

Co-authored-by: Jeremy Pritts <49847914+ds5678@users.noreply.github.com>

---------

Co-authored-by: Jeremy Pritts <49847914+ds5678@users.noreply.github.com>
2025-09-30 16:03:07 -07:00
ds5678
9e60805e1a Bump project version to 1.3.4
Updated the `<Version>` property in `Directory.Build.props`
from `1.3.3` to `1.3.4`. This version increment prepares
the project for a new release, ensuring the updated version
is reflected in the build and associated outputs.
2025-09-21 21:57:58 -07:00
ds5678
65afadabb3 Fix the face count and level count issues in the new crunch decoder 2025-09-21 21:48:45 -07:00
ds5678
61da5e9348 Refactor tests and improve code quality
- Updated test dependencies: replaced `coverlet.collector` with `NUnit.Analyzers` for enhanced test analysis.
- Refactored `TypeSignatureNameTests` to use instance setup and improved assertions with `Is.EqualTo`.
- Simplified `AssetEqualityTests` by directly using `AssetEqualityComparer` in assertions.
- Made `FileStreamTests` static and removed unused setup code.
- Improved `RangeTests` by grouping assertions and using `Assert.EnterMultipleScope`.
- Standardized random data generation with `TestContext.CurrentContext.Random`.
- Removed unused `RandomStructEnumerable` class.
- Refactored `DefaultJsonWalkerTests` and `DefaultYamlWalkerTests` for better readability and performance.
- Removed redundant code in `VertexDataBlobTests` and simplified equivalence assertions.
- General cleanup: removed unused namespaces, improved formatting, and aligned with modern C# conventions.
2025-09-21 15:33:59 -07:00
ds5678
6ec94c23bb Remove InternalsVisibleTo from AssetRipper.Yaml 2025-09-21 14:20:12 -07:00
ds5678
fe32ffbbab Replace references to SharpZipLib with SharpCompress 2025-09-21 01:56:37 -07:00
ds5678
d8a5557478 Convert FileSystem::GetUniqueName into an instance method
Related: #1581
2025-09-21 00:19:04 -07:00
ds5678
9793a943a6 Redirect references from TemporaryFileStorage to LocalFileSystem
Related: #1581
2025-09-21 00:06:50 -07:00
ds5678
98759280e0 Prevent an issue with files called maindata 2025-09-20 23:52:56 -07:00
ds5678
b258459e63 Fix an issue with scene path resolution that was affecting version bumping across the 5.3 boundary 2025-09-20 23:42:14 -07:00
ds5678
3617cca123 Fix bug in translated crunch 2025-09-20 23:02:07 -07:00
ds5678
062e0a661e Rename LibraryConfiguration to FullConfiguration 2025-09-18 22:07:02 -07:00
ds5678
7b1f9668c6 Move export configuration to AssetRipper.Export 2025-09-18 22:05:00 -07:00
ds5678
71222f0a8e Setting to disable export of unreadable assets
Resolves #1876
2025-09-18 21:54:11 -07:00
ds5678
1cceb28bc1 Support padding after assets
Resolves #1932
2025-09-18 14:32:41 -07:00
ds5678
3fdd215f35 Replace native crunch decoding with new managed libraries
Resolves #448
2025-09-17 19:43:48 -07:00
ds5678
27227a0e2b Update NuGet dependencies to latest patch versions
Updated `System.Text.Json` to version `9.0.9` in `AssetRipper.GUI.Localizations.SourceGenerator.csproj` to incorporate bug fixes, performance improvements, or security updates.

Updated `Microsoft.AspNetCore.OpenApi` to version `9.0.9` in `AssetRipper.GUI.Web.csproj` to address similar improvements, ensuring compatibility and stability.
2025-09-17 16:57:12 -07:00
ds5678
591b4f4dfc Update AssetRipper.CIL to version 1.2.1
Upgraded the `<PackageReference>` for the `AssetRipper.CIL` package from version 1.2.0 to 1.2.1. This update ensures the project benefits from the latest bug fixes, features, or improvements introduced in the newer version.
2025-09-17 16:55:05 -07:00
ds5678
389da40830 Support Unity 6.2 and 6.3 2025-09-17 16:53:53 -07:00
ds5678
4072e1f22e Remove carriage return line endings 2025-09-17 16:40:26 -07:00
ds5678
c7fb822f71 Move AssemblyDumper to this repository 2025-09-17 16:40:02 -07:00
ds5678
5971480fa2 Use collection expressions 2025-09-17 09:57:47 -07:00
ds5678
2346035026 Remove unnecessary csproj properties
* IsTrimmable
* ImplicitUsings
* AppendTargetFrameworkToOutputPath
2025-09-17 09:44:05 -07:00
ds5678
0d60120c08 Update to AsmResolver 6 beta 4 2025-09-13 15:26:51 -07:00
Jeremy Pritts
85172b7393
File system improvements (#1936)
* WIP file system improvements

* Switch to a hierarchial virtual file system

* EnumerateFiles and EnumerateDirectories

* Change import code to use FileSystem

* Use FileSystem when loading assemblies

* Use FileSystem in MonoManager initialization

* Remove set method for PlatformGameStructure::RootPath

* Renaming cleanup
2025-09-13 15:17:41 -07:00
ds5678
65c60195ab Check if the destination state index is within bounds 2025-09-11 15:19:56 -07:00
ds5678
c9d7d218e5 Update version to 1.3.3 in Directory.Build.props
Bump the version number from 1.3.2 to 1.3.3 in the
Directory.Build.props file to reflect the latest changes.
2025-09-09 08:58:10 -07:00
ds5678
d594f7a4f3 Fix an error affecting animator controllers 2025-09-08 12:43:54 -07:00
Jeremy Pritts
01787539de Revert "Use NuGet central package management"
This reverts commit d26e81f74e83ca1294bee8c263c3419ad4aa2f38.
2025-09-07 16:40:25 -07:00
ds5678
2583cf9fcd Improve error handling for shader export
Related: #1927
2025-09-06 19:14:11 -07:00
YoshiRulz
d26e81f74e Use NuGet central package management 2025-09-06 19:04:44 -07:00
ds5678
18b54c2339 Improve C# decompilation
Updated the `AssetRipper.ICSharpCode.Decompiler` package
from version `10.0.0.8115-preview1` to `10.0.0.8144-preview2`
in both `AssetRipper.Export.PrimaryContent.csproj` and
`AssetRipper.Export.UnityProjects.csproj` files.
2025-08-29 22:39:27 -07:00
ds5678
486409a8d9 Add support for APK+ files 2025-08-25 20:03:25 -07:00
dependabot[bot]
04e300687b Bump NUnit3TestAdapter to 5.1.0
---
updated-dependencies:
- dependency-name: NUnit3TestAdapter
  dependency-version: 5.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: NUnit3TestAdapter
  dependency-version: 5.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: NUnit3TestAdapter
  dependency-version: 5.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: NUnit3TestAdapter
  dependency-version: 5.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: NUnit3TestAdapter
  dependency-version: 5.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-19 13:07:58 -07:00
ds5678
e809ea1989 Do not throw an exception for warnings when writing assemblies
Resolves #1891
2025-08-18 11:33:33 -07:00
dependabot[bot]
d17b899e37 Bump NUnit3TestAdapter from 5.0.0 to 5.1.0
---
updated-dependencies:
- dependency-name: NUnit3TestAdapter
  dependency-version: 5.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 08:40:32 -07:00