FRAME - A modular Panda3D game editor

FRAME

The FRee Adaptable and Modular Editor for Panda3D.

Fond of Godot, Unity or Unreal engine? They all have awesome editors to create games and you wish Panda3D would have one too? Then this project may be just the one for you!

While still in early development, the ambitions of this editor are high and it will take time to get anywhere close to existing editors of other engines but, now is the time to try and test, let me know which features you want to see in it!

It won’t be a direct clone of other engines editors as it will:

  • Respect Panda3Ds workflow freedom
  • Be adaptable to fit your team
  • Be modular, add/remove sub-editors as needed

Features

As you can add and remove editors the features are listed on a per sub-editor basis.

FRAME

These features are specific to the FRAME itself.

  • Create a project filled with template files representing a basic Panda3D application including setup for deployment
  • Store page for adding/removing/updating editors and other assets

Scene Editor

This editor is for creating scenes/levels

  • Adding and Removing Objects like Models, collision solids, lights, cameras, etc.
  • Edit Objects position, rotation and scale using standard shortcuts (as e.g. in blender)
  • Load custom shaders for previewing right in the engine
  • export to project specific json file or as bam file
  • ability to add custom exporters
  • extensive, branching undo/redo history handling

Dedicated Forum topic:

GUI Editor

The editor for creating UIs

  • support for all DirectGUI widgets
  • support for most widget properties
  • export to project specific json file or python script
  • extensive, branching undo/redo history handling

Dedicated Forum topic:

Logic Editor

Connect everything together in this editor

  • Adding and removing logic nodes
  • Nodes for event handling and function calling
  • Basic math nodes
  • Basic Boolean logic nodes

Install and Run

Currently there are no pre-built packages available. Plans are to package and distribute this editor once it's possible to built a simple game with it. In the meantime, let me know where you would like to see this being distributed. You can easily run it from source in the meantime.

Grab the latest version from:

installing Editors

On first run, there will be no editors installed!

Head to the Store page within FRAME (first loading that page may take some time!) and install the desired editors. The installation process will currently make the application freeze as long as it's installing the package.
This part is being worked on.

News

Since I'm actively working on FRAME and it's sub-editors, I will post updates about every week on mastodon, so make sure to follow me there to not miss out new features.

FAQ

Why have you created the editor?

There are many different reasons. One of them is personal interest, having an editor to simplify creating my own games. Another reason was the general interest in editors from parts of the community and the lack of actual "game" editors.

Why don't you work on [existing editor XYZ]

Most of the other editors have different goals and ways to achieve those. I wanted to create an editor which will only depend on panda3d and pip packages based on panda3d so that it will be able to run on whatever platform Panda3D runs. Also most other editors are scene editors without, extending them to be game editors (e.g. including GUI and logic editors, asset management and more) may be very hard.

Will it have a multiplayer game template

There will be templates for such games as well as others in the future but they are not available yet.

Can you implement Feature ABC of Engine XYZ

Depends, if it fits in the editor and Panda3D supports it, chances are high it may get implemented someday.
6 Likes

I’m impressed–both by the expansiveness of this project and by your work on it! This is looking pretty good thus far, I do think! :slight_smile:

Thank you very much I hope I can keep up the pace with implementing new stuff.

At the moment my plans are to create a very basic game and see how far I come within about a week.

1 Like

Indeed! Strength and motivation to you for it! :slight_smile:

That seems like a good idea, to me: Not only a nice (and hopefully fun!) way to take the measure of your progress, but also a test for the system, I imagine. :slight_smile:

Alright, after successfully finding lots of bugs and useful features in the game project I’ve tried doing with the FRAME over the last week, I can tell, it does go in the right direction since I was able to create an actual playable game with some parts being simpler to do in the editor than writing all the code by hand but, the FRAME isn’t there quite yet (as expected). It needs polishing indeed and some of the ideas and bugs are now put up on github on the respective editor repositories.

I’ll try and tackle them as soon and as fast as possible but there will probably also come more bugs and feature requests in the future. But that only means the FRAME will get better as a whole.

Some of the issues are also tagged as “good first issues” which probably only require editing a handful of lines at most.
So, if anyone’s interested in helping me make this editor the go to editor for Panda3D, grab the source and join me in this journey!

2 Likes

Honestly, that sounds like rather good progress, to me! :slight_smile:

The FRAME now has a rather full roadmap for its beta and first official release, check it out at Panda3D FRAME · GitHub

Don’t hesitate to share your thoughts here and feel free to add issues for features you’d like to see added to the project.
I’d love to hear from you all!

2 Likes

Wow, you have quite an extensive plan there, it seems! Well, good luck with your path along that roadmap, then! I hope that it goes well! :slight_smile:

Thank you for your kind words and yes, there’s quite a lot in it but I’m confident that I can get all of it done. I hope this will be useful for more people than just me in the end ^^

1 Like

I imagine that it might well be!

An editor is something that people have asked after a number of times over the years, I think. And after all, having such a thing available may well encourage people to take up the engine who might otherwise dislike or be daunted by its by-default code-heavy approach.

Indeed, I would say that having a decent editor available could be a valuable thing. :slight_smile:

Yes, the wish for an editor has been out there for a long time now. It’s not easy to create something that’ll fit for Panda3D though since it’s so multi purpose not only in where it can be used but also in how it can be used, so the editor should not be limiting.
That’s probably where most other editors struggle, they are just nice scene editors, but there’s so much more to Panda.

1 Like

Indeed; and I quite like the modular approach that you seem to have taken. :slight_smile: