stride3d / stride3d/stride

regression: Silk.NET 2.23 fails to import certain gltf files

Open
#3,246 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area-Asset
Dominant language
C#
Stars
7.8k
Forks
1.2k
Avg merge
2d 17h
Merged PRs (30d)
49

Description

Release Type/Version: Any past chore: Update Silk.Net from 2.22.0 to 2.23.0

Platform(s): Any

Describe the bug
This archive Resources.zip contains a gltf and bin file that crashes the importer with a System.ExecutionEngineException here https://github.com/stride3d/stride/blob/master/sources/tools/Stride.Importer.3D/MeshConverter.cs#L191
It doesn't crash for all gltfs though as importing the file in blender and exporting it back from there to then import in the engine fixes the issue.

To Reproduce
Steps to reproduce the behavior:

  1. Extract the archive to your resource directory
  2. Import Map2_geometry.gltf

Expected behavior
It imports correctly.

Additional context
This worked fine prior to the commit linked above.
This likely comes from changes in assimp, changing some of the settings we fork over to assimp might help, but I doubt it.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at sources/tools/Stride.Importer.3D/MeshConverter.cs around line 191 and reproduce the crash by extracting Resources.zip and importing Map2_geometry.gltf. Compare behavior before and after the linked Silk.NET 2.22.0 to 2.23.0 update, then verify that the supplied glTF imports correctly without affecting files that already work.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
computer-graphics, game-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
67/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.