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

[WIP] glTF asset loading #908

Closed
wants to merge 0 commits into from
Closed

[WIP] glTF asset loading #908

wants to merge 0 commits into from

Conversation

ykafia
Copy link
Contributor

@ykafia ykafia commented Nov 9, 2020

PR Details

Implementation of a glTF asset loader for Stride using the SharpGLTF libraries.

Description

  • Adding more IVertex C# struct definitions for the may different kind of mesh data
  • Creating a parser from glTF to Stride
  • Implementing the necessary Asset importer classes for glTF

Related Issue

#603

Motivation and Context

With FBX being a cumbersome proprietary file format and assimp not being complete, glTF imposed itself as a feature complete opensource 3D scene file specification, game engine friendly. Stride depends on Assimp to load glTF, but the current implementation doesn't handle glTF 2.0 which includes skinning and animations.

Types of changes

  • Docs change / refactoring / dependency upgrade
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist

  • My change requires a change to the documentation.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

@CLAassistant
Copy link

CLAassistant commented Nov 9, 2020

CLA assistant check
All committers have signed the CLA.

public override bool Equals(object obj)
{
if (obj is null) return false;
return obj is VertexPositionNormalTextureSkinning && this.Equals(obj);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this.Equals(obj) recurses upon itself indefinitely afaik since obj is still of type object, use this instead:

public override bool Equals(object obj) => obj is VertexPositionNormalTextureSkinning vpnts && this.Equals(vpnts);

@xen2 xen2 marked this pull request as draft November 10, 2020 23:11
@xen2
Copy link
Member

xen2 commented Nov 10, 2020

I assume this PR is still in progress (no gltf code yet) so I converted it to draft.

@ykafia
Copy link
Contributor Author

ykafia commented Nov 11, 2020

Yes, but even though there will be gltf code i'd prefer to keep it as a draft as long as i haven't figured everything out. I'm taking a pause from the skinning part to invest my time on the importing side.

@ykafia ykafia closed this Mar 5, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants