-
Notifications
You must be signed in to change notification settings - Fork 15
Home
by Timo Wiren
This is a reboot of Aether3D game engine. API Documentation: http://twiren.kapsi.fi/doc_v0.7/html/
There is a converter for FBX and OBJ meshes in Tools. Once they have been built, they can be used in command line like follows:
convert_obj 0 mesh.obj
produces mesh.ae3d with vertex format containing a position, texcoord, normal, tangent and color.
convert_obj 1 mesh.obj
produces mesh.ae3d with vertex format containing a position, texcoord and normal.
Blender exporter is in Tools/io_export_aether3d.py. Install it into Blender and it's in export menu.
Aether3D supports skinned animation from .fbx files. It's sampled at 24 FPS.
Shader shader;
shader.Load( FileSystem::FileContents( "unlit.vsh" ), FileSystem::FileContents( "unlit.fsh" ), "unlitVert", "unlitFrag", FileSystem::FileContents("unlit.hlsl"), FileSystem::FileContents( "unlit.hlsl" ), FileSystem::FileContents("unlit_vert.spv"), FileSystem::FileContents("unlit_frag.spv") );
Shader source code is loaded from file system objects that can be filled from files, .pak files or data. Because the renderer supports OpenGL, Vulkan, Metal and D3D12, there are parameters for all shading languages. If you don't want to support a particular language, just provide an empty string for FileContents. In case of Metal, shaders should be put into your Xcode project and Shader::Load
is given a vertex and fragment shader's name.