AssetCreator (further as BBAC) is a new addition to the family of 3D gamedev tools for GameMaker used internally in our team BlueBurn (BBP, PushEd). Using this tool you can easily manage game assets created in third-party programs and export them into formats compatible with GameMaker: Studio 1.4 and GameMaker Studio 2.
Stage of development
BBAC is currently in a very early stage of development, but it already is making our GM3D gamedev life easier. Here is a list of its current features:
- Import models using Assimp (OBJ, FBX, COLLADA, ...)
- Import of GameMaker: Studio 1.4 d3d / mod models
- Automatic calculation of tangent and bitangent vectors for tangent-space normal mapping
- Flip texture UV coordinates, change location, rotation, scale; vertex colour blending
- Export to obj, d3d / mod
- Import and export of our custom bbmod format that allows for configurable vertex buffer formats (for both GM:S1.4 and GMS2)
- Move code base to C++ (where it makes sense)
- Brushes - create simple models from blocks, ellipsoids, etc.
- Join multiple meshes into single model
- Collision shapes
- Asset format that will contain all asset info - mesh, material, collision shape, etc.
To add resources required for loading and rendering of BBMOD files into your project, use Catalyst, the open-source package manager for GameMaker Studio 2:
catalyst install blueburn-cz/bbmod
The workflow and controls are pretty intuitive and straight forward. Untill we create a tutorial in some proper format, please, referr to the following text or post your questions here or on our Discord.
- After starting BBAC, a simple project browser shows up. These are custom project files (*.bbproj) that will be shared between all of our future tools. Create new or open an existing project here.
- To import resources into the project, right click into the content browser and select import mesh / texture. A little window with options will pop up. After selecting the file to import and setting the options up, click import.
- Drag and drop mesh from the Content Browser into the viewport to instantiate it. You can instantiate multiple meshes, but at the end only one of them (the selected one) can be exported at time!
- You can now modify the mesh using the Details panel on the right or the tools at the top of the screen.
- When you're done, use Ctrl + E to export the selected model. A little window will pop up, where you can specify the output path and file format, vertex format for BBMODs and whether you want to apply the current transformation etc. After setting this up, click export.
- Exported d3d / mod models can be rendered in GM:S1.4 right away using d3d_model_load and d3d_model_draw without any additional setup.
- To load a BBMOD file, use script b_bbmod_load from the BBMOD Catalyst package. It will create a new vertex buffer (and a matching vertex format, if not given as an argument). This vertex buffer can be then rendered using vertex_submit. Before the vertex_submit, you should first set a shader that accepts the vertex format. You can create your own shaders using included shader template.
- Updated Assimp to v5.0.0
- Fixed list of supported file formats
- Loading of 3rd-party formats using Assimp
- Fixed *.obj loader issues
- Fixed bug where indices used to access vertices were used to access normals when saving BBMODs
- First public release
All constructive feedback is welcome!
If you experience any issues with BBAC or you have an idea on how to improve it, please, do not hesitate and let us know!