Hi Guys,
I would like to introduce you to a new model format which is ideal for beginners:
https://bztsrc.gitlab.io/model3d
Of course a format alone won't do any good to you, so it comes with a complete ecosystem which has your back covered on all fronts:
- has a very capable, multiplatform converter utility which can import virtually all formats that your designers might think of (glTF, COLLADA, FBX, 3DS, etc. even Minecraft Schematics, Magicavoxel and Qubicle images). It can modify the models (scaling, rotating, right-hand/left-hand conversions) and it optimizes them (like reordering of polygons to minimize material context switches), and it saves into a storage efficient representation.
- there's a WebGL polyfil so you can include those in the documentation, right into your game's webpage.
- the stb-style, dependency-free and single header SDK for C and C++ is Open Source, MIT licensed, and easy to use. It has one function to load the said representation into an easily parseable in-memory structure, which you can can feed to the GPU's VBO and EBO lists directly. If you wish, postprocessing is done for you: voxels converted to triangle mesh, smooth normal vectors generation, skeletal transformation matrix calculation etc. It is well tested under Windows, Linux, MacOSX (with gcc, Clang and MSVC). There's an API function to generate the animation pose for a specific animation and timestamp.
Features include, but not limited to: skeletal animation, voxel images, procedural textures and surfaces, spline surfaces, NURBS, optional stream compression…
Check it out!
bzt