I’ve just take a look at the SDK Repo. Really appreciate you guys still keep it up to date, I still like to use the SDK to develop even after a lot of “up and down” with Netbean development recently. But there are hopes:
- Netbean 11 seems a very first good release under the name of Apache.
- It have dedicated Gradle plugin which work pretty well, can start new project with need libraries in seconds, (feels like NodeJs somehow)
- I saw the current SDK did have migrated to Netbean 11 by @MeFisto94 . Congrat
But some plugins need to be fixed and migrated to Netbean 11 also. I can’t find where these things are pointed out beside of Issues tab in Github, even there are many issues listed already, I still think a big refactor needed to make the way to future. Just want to open a discussion here if it’s suitable:
In general
- The structure of the repo is way too complex. It contain many projects that either outdate or not really related to the core. We should keep only the core elements: viewer, composer, project template and assets. This split is very important for me, i will explain below.
- Make things abstract: abstract importer plugin, State plugin, Node plugin, Gizmo plugin, Build pipeline plugin
- We should improve build script, may be ultilize Gradle more, eg: use Gradle plugin to build Netbean module ( GitHub - SGGames/gradle-nbm-plugin: A Gradle plugin to build NetBeans modules and RCP applications. ) , break build script in to serveral maintainable sub-scripts for each modules
- Nifty Editor is out dated → Move to another repo
- Cinematic Plugin is out dated. → Move to another repo
- Each importers should be in one repo
- Each build tool which platform specific like android or ios should be in one repo
- Have new way to manage plugins xml repository, connect to update center, seem like recently jME update center link is broken
Detail components:
- Improve SceneComposer, better UI and UX: split components about Transform toolset, Light, Effect, Physics into different TopComponent
- Improve Importer, each of it has dynamic configurable UI to setup configuration before importing happen and better error handling
- Improve ObjectProperties: corporate with RxJava and Meta widget concepts so very dynamic and flexible to edit, replace Node Properties of Netbean which very complex and un intuitive.
- Improve Scripting: Create Groovy to add editor components on the fly, which can interact with Scene graph nodes or other component.
I will try to do these below in my own fork first. I have my own code base with a lot of improvement over old version of the SDK and engine (version 3.0). If I try to merge it to current master branch at once will be a big diff with many changes… so I try to prevent my self doing a hard fork with the current version of SDK, need the repositories split.
Want to know what you guys think?