I brought out an old project that dates back to when I started with Babylon 10 years ago. I totally started this project from scratch by going to the essentials and ease of use for the grip.
The work is still in progress, I wanted to present the progress of this new project (or rather old, I don’t really know if it’s new or old)
The approach of this editor is divide into tabs which each have their specific task. Here are most of the tabs in images :
The Zones tab to create zones that contain what you want. A land or a body of water or just a sky. As well as decorative objects, teleportation portals, sound zones, script triggers, collision walls to block certain passages and others.
I also forgot to show the toolsBox of the project manager which allows access to the terrain editor and the script editor that I plan to do with Google-Blockly to make script creation easy for beginners
The terrain editor allows you to create terrains of different sizes (64x64, 128x128, 256x256, 512x512, 1024x1024 and 2048x2048 which is the maximum that corresponds to the mixMaterial textures (larger terrain would create images that are too large and therefore pixelation) So you can paint up to 8 diffuse textures, raise mountains, dig rivers, create holes and even create ramps to make gentle slopes.
This terrain can then be exported to the editor in the areas tab. Each zone created can use the terrain made with this editor of terrain.
The project advances. I finished the editor at 99%. But there is still all the game part that the editor generates to do by getting the data from the editor.
Soon I will make that when we create a project, a game demo is created to simplify the handling of the editor.
Glad to see you’re back in the game. And I think reviving this old project was a good idea. I’m eager to see what will come out of it once the game part will be implemented. And then, please, don’t forget to make your SAVES
When you log in, you come to a character editor to either create new characters with their appearance or enter the game with characters you have created. Again a 3D world with a fixed camera can be created instead of a background image.
Then we arrive on the game with the scene exactly like what is done in the editor.
At the moment there is not much in the world. just some elements for testing (there are things that are not visible like the sound area or the portals.
Soon I will start creating a real scene and modifying the terrain to create the mountains, rivers…)
There is still a lot of work: creating a real scene, modeling, creating a new character with more animations, because this one is for testing. Create script editor, battle system, trading system and many other things.
The script editor is finished. I just have to add/finish all the commands of script.
The editor is quite simple, but it allows autocompletion, real-time error reporting and others.
I had logically planned to add another code editor per block, but after some work on it, I realize that it doesn’t make things any easier more for the user. So I dropped this second block editor. In addition, there are too many blocks to create which makes the work tedious.
The script editor is 100% custom. I use Codemirror + jshint to recover errors. But no typeScript, no esbuild-wasm.
The programming code is specific and comes with script commands to simplify in conjunction with the game. But Babylon code can also be used for more experienced users.
I made some improvement of the project manager and many corrections/additions in the editor. I also started to create the demo with 4 terrains, including a terrain for the Login scene, a terrain for the character creation and the other two terrains for the game linked by portals.
I just wanted today to show the result of the improvement of the project manager with the banner that I made entirely in css, including background a degrade, a text with a specific font which also has a degrade + a shadow and a clarification.
I also added empty lines on the project list rather than an all-white background.
Then in the list of tools I changed the icons to make it all clearer.
I hope soon to show the terrains with the scenery.
I have a little less advanced his last two weeks. I undertook to redo the floor of my carpentry workshop, so I have more than 2 to 3 hours of time on my editor per day at the moment.
I reviewed the particle editor to add the ability to add sub-emitters. It wasn’t easy, but I’m glad I succeeded.
The tabs had to be added dynamically when creating a sub-transmitter and to keep the interface for each tab added while making the modifications affect the active sub-transmitter. It was also necessary that the canvas always be displayed above each tab.
Of course, sub-emitters don’t work with GPU particles, so there are two ways to create particle systems with a ‘create single emitter’ button and another ‘create multi emitter’ button. for a CPU or GPU system
When you change the tab to see a sub-transmitter, only this sub-transmitter is played to edit each sub-transmitter independently. And when we return to the primary transmitter (the first tab), we can see the whole being played.
The editor of particles uses the BABYLON.ParticleHelper for saving to a json file.