Just to add, the final design of the `pyglet.model` module is very similar
to `pyglet.image`, in that you can do `pyglet.model.load('file.gltf',
batch=optional_batch)`. The pyglet.resource module also has
`pyglet.resource.model(file, batch)`. In additional, the `model` module
uses the same `codec` design that the image and media modules do. This
means anyone can write a decoder for specific format, and add it at runtime
with `pyglet.model.add_decoders(module)`.
On Thursday, July 26, 2018 at 9:21:01 PM UTC+9, Benjamin Moran wrote:
>
> Hi everyone,
>
> I finally got back to working on the GLTF decoder, it's it's just about
> done. I have a few more things to finish up after that, and I can merge
> this in. Tests also need to be written as well. Writing the GLTF decoder
> has clarified a few things, so I'm feeling fairly happy about it. It will
> be a fairly simple implementation to start, but things can be expanded in
> the future as we move to GL3+ (which I've also been working on :) ).
>
>
> On Tuesday, May 30, 2017 at 12:38:12 PM UTC+9, Benjamin Moran wrote:
>>
>> Hi all,
>>
>> This is one thing that was often talked about in the past, but noone ever
>> got around to implementing. It would be great to implement for some future
>> release.
>> I've done some tinkering around with this, and after some thought I think
>> I have a decent idea on how it might fit in. (I'm going with the working
>> name "model" for the module, but name suggestions are welcome!).
>>
>> Creating a 3D models would be different from Sprites, since it involves
>> loading one or more files from disk. For this reason, it seems to me that
>> it makes the most sense to shape this this after the current "image"
>> module. Just as there are different codecs for handling different image
>> formats, we would have different parsers for a few different 3D model
>> formats. You would do something like:
>> my_model = pyglet.model.load("thing.obj")
>> The file extension would be used to determine which parser to use, just
>> as the image module does. (There is already some example code in /contrib
>> for loading obj files, so a parser would be easy to create). Extending
>> pyglet.resource to use this loader would be trivial.
>>
>> The main thing to do is to figure out internal classes for the abstract
>> representation of the data. For example, instead of ImageData that's
>> returned from the image codecs, we would have VertexData, MaterialData,
>> etc. The 3D model class would constructed from this, in the same way the
>> Sprite class is constructed from an image and positional data.
>>
>> I'd love to hear feedback on this.
>> -Ben
>>
>
--
You received this message because you are subscribed to the Google Groups
"pyglet-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/pyglet-users.
For more options, visit https://groups.google.com/d/optout.