-
Notifications
You must be signed in to change notification settings - Fork 476
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
Project Architecture #40
Comments
Does the plan include outputting animated elements (models) as glTF? |
That's the plan. We'll work towards full export support as we go. However, right now we're focusing on project architecture so we can break out some of this work and hopefully clean up integration points. Hopefully we can get that done relatively soon. After that I believe @MSblgross and I will be focusing our efforts on getting full glTF 2.0 support for import. I plan on moving back to export after import is fully featured. However, work can be done in parallel on supporting the remaining export features. If you or anyone else want to help out it would be greatly appreciated! I know @bghgary and the folks at @sketchfab have worked on animation export from Unity in their projects. Gary's involved already and it would be great to see if Sketchfab wants to contribute. https://github.com/bghgary/glTF-Tools-for-Unity |
We're still trying to decide on the final namespaces for the project before we merge #50 I have a proposal here and I could use some feedback from the community. Example of the proposed namespaces: using UnityEngine;
using GLTF;
using UnityGLTF.Extensions;
namespace UnityGLTF {
class GLTFComponent {
public GLTF.Scene Scene;
public GLTF.Math.Vector3 GLTFVector;
public GLTF.Serialization.GLTFParser GLTFParser;
}
} Another issue is splitting this repo into two. Ideally the GLTF folder would be split off into its own repository. It would be responsible for the same things that glTF-CSharp-Loader is doing, but with optimized hand written JSON serialization/deserialization rather than automatically generated from the spec's JSON schema and serialized/deserialized using reflection which is considerably slower (See #10). It would also have a name like So to recap, the decisions we need to make are the following:
|
Is it possible to generate the optimized JSON serialization/deserialization code? If so, I'm thinking we can modify glTF-CSharp-Loader to generate this optimized code instead of relying on reflection.
Ideally, I think I would separate the serialization/deserialization from the classes that define the schema. I prefer a namespace with the word Schema on it (e.g. GLTF.Schema) for the schema. The glTF-CSharp-Loader uses glTFLoader.Schema. The serialization/deserialization code can use extension functions in a namespace with the word Serialization (e.g. GLTF.Serialization). |
Some of our meeting notes from today (@robertlong, @stevenvergenz, @sbtron, @bghgary, and @MSblgross in attendance) We decided on the following:
|
…s and names, ensuring correct file types. Fixes KhronosGroup#41, Fixes KhronosGroup#40
Notes from our meeting with @MSblgross, @stevenvergenz, and Ken Wolfe.
If there are other changes you'd like to see to the architecture of the project please let us know. Ideally after making these large architectural changes we can get to a versioned, pre-alpha release and a more stable place for anyone trying to use UnityGLTF.
The text was updated successfully, but these errors were encountered: