Organization
This section is organized in four main categories called Configurators, Blockly, TypeScript, Rete and General Topics. Each section shows different ways you can use our platform. We also explain the strengths, weaknesses and limitations of each of the approaches. General Topics section contains information that is common accross editors or is relevant to the platform itself.
3D Model Configurators
Configurators give you access to various 3D models and can be used to create unique parametric representations with just a few button clicks. These configurators are tuned for each specific model and thus are very intuitive. Often they also include some specific 3D interactions that help you shape your designs intuitively. While using these configurators you can not import other models or combine multiple parametric models in the same space. You can, though, export your models into industry standard file types and import them into 3rd party software. STEP, IGES, STL and GLTF are all supported. If you want to combine multiple parametric models in a single 3D environment consider using our parametric editors - Rete, Blockly or Monaco for TypeScript.
Rete
Rete editor is the simplest and most suitable for beginners, but powerful and versatile enough to be loved by professional computational designers. Parametric design industry has settled on this form of scripting, thus it will be familiar to people who use tools such as Grasshopper, Dynamo, Blender Nodes and alike. It allows to compose scripts that define parametric relationships in a linear flow. Where data travels from component to component through simple inputs and outputs. Rete is also reactive editor, which means that you do not need to hit "Run" button every time the script changes. Each interaction with your editor triggers a 3D scene to respond automatically, thus you see changes immediately. This makes it easy to code and grasp the modeling process.
Blockly
Blockly is meant for programmers who want to be able to create complex 3D models without writing code. This editor also enables you to create time-based simulations or games. Scripting in blockly means you compose blocks by relating them through variables, inputs, outputs and functions. Blockly is not a reactive editor, which means that scripts do not re-compute automatically by adding new components or changing configuration inputs. You always need to click Run button to see a preview of what you have created in 3D space. Blockly is also a great tool for teaching programming to children, as it is very intuitive and easy to learn and it resembles real code more than Rete scripts.
Monaco
Monaco for TypeScript editor is meant for professional programmers. It gives the biggest freedom to our users by fully exposing BabylonJS game engine, Havok physics engine and BabylonJS GUI capabilities. All capabilities of our platform are exposed via bitbybit global variable. This means that you can create your own 3D experiences from scratch. You can also use Monaco to create your own custom editors. Monaco as Blockly is not a reactive editor, which means that you do need to hit "Run" button for your 3D scene to update to changes.
API Documentation
All editors are based on the same algorithms that we have created for you. This means that most of the functionality overlaps between editors. While Each editor shines for it's own specific use cases, sometimes the same things are possible to implement accross all of the editors. You can access explanation of full API surface at docs.bitbybit.dev