assimp / assimp

The official Open-Asset-Importer-Library Repository. Loads 40+ 3D-file-formats into one unified and clean data structure.
https://www.assimp.org
Other
10.92k stars 2.91k forks source link

Question about new sample assets #278

Closed jonnenauha closed 10 years ago

jonnenauha commented 10 years ago

I'm currently implementing Ogre binary mesh support for Assimp. Main bulk of the work is done now (https://github.com/jonnenauha/assimp/commit/4b16b182be7e3055b23d31bed24c7130753d85a2) and I would like to add a few Ogre binary meshes to <assimp>/test/models.

I would like to use Ogre3D SDK shipped samples there but am unsure how you handle this sort of thing and where I should put them. Seems there is a models and a models-nonbsd folders in there. Ogre3D (https://bitbucket.org/sinbad/ogre) has MIT license so I recon I can copy assets from its repo to the Assimp repo? And they should go under <assimp>/test/models/models-nonbsd/Ogre/Ogre3D-SDK? I should also include the license file (https://bitbucket.org/sinbad/ogre/src/36847e1339e321bb8586ef8f7bc10da7f7f75fb3/COPYING?at=default) from their repo to that folder and add a link from where they were copied from?

The actual files would be copied from https://bitbucket.org/sinbad/ogre/src/36847e1339e321bb8586ef8f7bc10da7f7f75fb3/Samples/Media/models/ I'm not sure yet which ones I will use, but probably a few (or one) with geometry, skeleton, animations and materials (with textures) so they will test the whole importers functionality.

I can also use the official OgreXmlConverter and put XML versions (.mesh.xml) that the importer already supports there. I think this would be a good idea as the current XML meshes in the samples are exported via Blenders unofficial ogre exporter which does not support all Ogre XML things and does some aspects a bit wonky (UV coords at least).

Waiting for your (core devs) response before pushing anything. I hope we can get these test assets in :)

P.S. If you are not in a huge rush with 3.1 I can probably nail the binary skeleton serializer down quite soon, if you want this stuff included in the release. Geometry (and materials) already works from binary.

acgessler commented 10 years ago

Yes, I think nonbsd is the way to go. Please add in the license file. I think BSD and MIT are almost interchangeable, but since we have the folder we should also be using it instead of making such assumptions.

Usually I tried to limit the size of the sample files to max ~5MB per file format (less for binary formats, more for easily compressible and diffable text formats). Sometimes I reduced the resolution of the textures to make it fit.

Go ahead, looking forward to get this in!

jonnenauha commented 10 years ago

Thanks. The xml based files tend to get a tad big with Ogre, especially skeletons with animations.

I'm now quite familiar with the current Ogre test assets, having been using them non stop while working on the new implementation. There are a lot of duplicates in terms of functionality. I see no point in having many files that test exactly the same feature set in the importer. I will cleanup the current Ogre related files so its a minimal set.

I'll drop any textures down to 256x256 as .jpeg. I'll try to cope with a single texture.

Is there any automatic tests that run through the test files, should I be updating some kind of unit tests in my pull request?

jonnenauha commented 10 years ago

Now that I look into it seems /test/regression auto runs the whole models folder. I will check this out later today that the tests pass. So far I've been running/viewing all the files manually with the Assimp viewer.