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

Add specVersion field to VRM extensions #162

Merged
merged 2 commits into from
Feb 1, 2019
Merged

Conversation

yutopp
Copy link
Contributor

@yutopp yutopp commented Feb 1, 2019

Resolve #161.

@yutopp yutopp added this to the v0.50 milestone Feb 1, 2019
@yutopp yutopp requested a review from ousttrue February 1, 2019 11:00
@yutopp yutopp force-pushed the feature/add_schema_version branch from 0f9a41d to 6c2da97 Compare February 1, 2019 11:04
@walf443
Copy link
Contributor

walf443 commented Feb 1, 2019

How about just version or specVersion for naming?

@yutopp
Copy link
Contributor Author

yutopp commented Feb 1, 2019

Thank you for your comments. specVersion sounds good to me.

@walf443
Copy link
Contributor

walf443 commented Feb 1, 2019

I see. version is already exist, So it cannot to use for it https://github.com/dwango/UniVRM/blob/master/specification/0.0/schema/vrm.meta.schema.json#L9

@saturday06
Copy link
Contributor

saturday06 commented Feb 1, 2019

スキーマのバージョンをVRMファイルに含めるなら、glTFのスキーマファイルも半年に一度くらいの頻度で更新されるようなのでそれもspecificationのディレクトリに同梱して頂きたいです。

@yutopp
Copy link
Contributor Author

yutopp commented Feb 1, 2019

お、なぜでしょうか。

この変更はVRM拡張領域に対する規格の情報の追加というだけで、glTF本体への言及はこのリポジトリには不要だと思うのです。

@yutopp
Copy link
Contributor Author

yutopp commented Feb 1, 2019

Renamed. thx @walf443

@saturday06
Copy link
Contributor

saturday06 commented Feb 1, 2019

この変更はVRM拡張領域に対する規格の情報の追加というだけで、glTF本体への言及はこのリポジトリには不要だと思うのです。

VRMには紆余曲折あったのだと思いますが、exporterVersion ではなく specVersion として値をVRMに保存するということは、いままでバージョン管理がされていなかったVRMのバージョンを管理して、例えば非互換な変更が入ったらバージョンを上げる、のような管理をするようになったのだと思っています。

また、あるVRMの specVersion が策定された際、ベースとなるglTF2.0のjson schemaは、そのspecVersion が策定された日付時点のglTF2.0のjson schemaだとします。

そのとき、例えばVRMに同梱された specVersion を見た人が対応するjson schemaファイルを参照したい場合があると思います。

VRM拡張部分はこのレポジトリを見ればわかりますが、glTF2.0のスキーマファイルも半年に一度くらいの頻度で更新されているため、ある specVersion が策定された時点のglTF2.0部分のスキーマファイルを参照するにはglTFのKhoronosのレポジトリを、 specVersion が策定された日付をヒントに追いかける必要があります。

その手間を防ぎ、VRMの specVersion に対応するjson schemaと、それに対応するglTF2.0のjson schemaを明示するため、glTF2.0のjson schemaをこのレポジトリに同梱していただきたいという要望をあげさせていただきました。

と、さっきまで思っていたのですが「glTF 2.0 のjson schemaは常に最新版を参照するものとする」としておけば問題ないかもしれないと思いなおしています。が、いちおう上記の可能性もご一考いただけると助かります。

@yutopp
Copy link
Contributor Author

yutopp commented Feb 1, 2019

glTFのasset.versionの値が2.0である以上,このバージョンにおけるglTF側の変更はドキュメントの更新や完全に使われていない要素の削除などに留まっているはずで,schemaの制約は変わらないと思います.
ですので,asset.versionが指定するバージョンにおけるglTFの仕様は常に最新版を参照するということで問題ないと思います.

@saturday06
Copy link
Contributor

承知しました。対応ありがとうございます!

@yutopp yutopp merged commit 48c1e94 into master Feb 1, 2019
@yutopp yutopp deleted the feature/add_schema_version branch February 1, 2019 17:37
@yutopp yutopp changed the title Add schemaVersion field to VRM extensions Add specVersion field to VRM extensions Feb 12, 2019
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