Supported Geometry Features
Here is the list of features of the ByMe rendering engine:
- Vertices: A vertex should have three floating-point coordinates.
- Triangles: A triangle can be defined by listing the vertices it uses (non-indexed geometry) or by providing the indices of the vertices creating the triangle (indexed geometry).
- Indices: An index should be an unsigned int on 8, 16 or 32 bits. It is used for indexed geometry. We support triangle strip and triangle fan modes as well as regular mode.
- UVs: An UV should be a couple of floats. We support mainly one channel for all the materials. The only exception is a second UV channel for lightmaps / ambient occlusion maps. If a second UV channel is present it will be used only for AO.
- Normal: A normal should have three floating-point coordinates and a vector length of 1.
Other features described in some 3D formats are unsupported in the ByMe platform since they do not make sense in the platform's use-cases. These are most noticeably tangents, vertex colors, and weights / joints for animation.
The ByMe platform supports several input formats for geometries and materials. The exact list of features and parameters supported depends on the format. In general, if a feature is present in the engine and available in the format, then ByMe takes it into account.
Supported Input Workflows
The level of support provided by the ByMe platform is the intersection of three aspects:
- Is the input format supported?
- Is the authoring tool and exporter supported?
- Is every geometric feature of the format supported?
Each is detailed hereafter.
The resulting level of support is of course the lowest common factor.
List of Input Formats
|OBJ + MTL||OBJ + MTL||Any version|
|GLB / GLTF||GLTF version 2.0||As .glb or .gltf + .bin + textures. Self embedded GLTFs are not supported.|
|DAE||Other DAE dialects||Not directly supported: requires conversion to a natively supported format|
Supported Authoring Tools and Exporters
|Tool||Export format to ByMe||Support|
|Solidworks 2018||Native interoperability||Validated using 3DCloudByMe Solidworks Plug-in|
|3dsmax 2016 x64||DAE (OpenCollada)||Qualified using http://www.opencollada.org|
|3dsmax 2016 x64||GLB / GLTF version 2.0||Compatible using https://doc.babylonjs.com/resources/3dsmax_to_gltf|
|Blender 2.79b||DAE (OpenCollada)||Compatible|
|Blender 2.79b||OBJ + MTL||Compatible|
|Blender 2.79b||GLB / GLTF version 2.0||Compatible using https://doc.babylonjs.com/resources/blender_to_gltf|
|Maya 2019||GLB / GLTF version 2.0||Compatible using https://doc.babylonjs.com/resources/maya|
Supported Geometry Features by format
Meshes and Primitives
|3 points faces||Full|
|4 points faces||Partial|
|>4 points faces||None|
|Level of details||Ignored|
In >4 points faces, concave polygons may be altered by the conversion process
In Shadow casting and Ray tracing, shadows and reflections are already computed by 3DVIA's planner. They cannot be forced by the models data.
GLTF / GLB Formats
Meshes and Primitives
In Texture coordinates, only TEXTCOORD_0 and TEXTCOORD_1 are taken into account.
All material textures are applied to the texture coordinates of index 0.
The texture coordinates of index 1 can additionally reference the occlusion map.
DAE (Open Collada)
In Material Binding, only "technique_common" tag is taken into account
In Triangles, supported inputs are:
In Polygons, concave polygons may be altered by the conversion process