Amazing engine

I’ve been playing with Urho for a few days now, and I want to say that it’s absolutely great. While being able to do almost everything I ever wanted, it’s written in C++ (imo the only language suitable for games), and it’s free. The way classes are named, the way it has it’s own STL replacement ? I simply love this engine.
What I can’t understand is why I never heard of it before? Why the community is that small? It’s in active development and is very solid. I think it deserves more attention.
And I started to feel like I want to contribute to it.
Of course I can’t do anything serious now that I’m not very familiar with Urho’s internals, so I’ve started with something I can do. I think that the editor is one of the key selling points of the engine, and in some way it’s face, so I’ve tried to improve it’s user interface. Of course I quickly found out that things I want to do will require an extensive rewrite, so now I’m here asking you, where could I put my energy in a more effective way?
I’m asking about current development direction, what are the features planned for the next major release, what things require more work? Or maybe it will be better if I focus on the editor improvement? I’m an graphic designer, so I could draw a better buttons and stuff, and revamp the UI to be more slick and modern?
Tell me what you think, and again thanks to the creator and all contributors for making this engine.

Hi and wellcome to our forum.

Forum started near two year ago - 16 Jan 2014.
Prior to that was a small group in the Now a lot of help, and some users write articles on other sites, I know Russian users who use the engine and place articles about engine in serious IT-sites.
You can help the project to find new users - tell about engine in twitter or social network.

If you are a graphic designer, you can draw several design for the user interface.
So far there are no plans or roadmap. It all depends on user requests and contributions of all participants.
If you want to help, you need to determine their capabilities and skills and use them to help the project.

I’m a programmer too.
To get a little bit more familiar with the code I’ve started small and added theme switching support, but I couldn’t figure out how to reload it without restarting the editor or deleting and recreating all the UI elements. Also it looks like one can’t add multiple xml’s to expand/override the default style, for example. It’s seems that I have to make a full copy even if the only change is the path to the texture.
There are many other changes that I wanted to implement what will require complex code changes due to the way it’s done right now. I’m thinking about starting over writing it in C++, but I’m afraid it will take too much (probably unnecessary) work before I get something useful. That’s why I’m here. I wanted to hear if there are more important things I can do. The problem at the moment is that I’m not familiar with Urho enough to work on it’s core. And I don’t really know how I can help there, too.

I don’t really like social networks, to be honest, but I’ll definitely mention it on my blog once I get something to brag about.

Hi rikorin.

And I don’t really know how I can help there, too
You may look into topics from feature request forum part with filter: [editor’s feature]

I do not know exactly but I guessing what If editor will be written on c++ it will be great, because in this case we got powerful language, native performance and do not needed every time add bindings for workaround functions. Also I think in case growing up abilities(and heavy InEditor tools) of editor I guessing this only one best way - use C++ for editor. AngelScript we may use as InEditor script language but not for editor, it very slow as and lua. And of course the main problem what editor’s UI and behavior must be more user friendly and customizable and sensitive, need more tool and helpers for doing work in editor in WYSIWYG(What You See Is What You Get) manner.

Hi, codingmonkey,
I’m totally agree with you. And it’s also easier to do. Writing and debugging complex scripts is a pain. I’ve never used Find in files that much before :slight_smile:
The problem is it’ll take a lot of time to just recreate the existing functionality of the editor. Some parts will be pretty straightforward to port, though.
Anyway, I think I’ll start working in that direction, as it’s my favorite part anyway.

The problem is it’ll take a lot of time to just recreate the existing functionality of the editor
Yes it take some time, but before your eyes is an excellent example ) (urho’s editor on AngelScript)
I think what need start from major things and going deeper.
Also you are absolutely free in your imagination how to realize editor stuff. But great examples is an Unreal editor may be even unity.
You need try to think from artist’s point of view and help to this imaginably artist doing game staff in editor more fast and easy.

Yeah, that’s the greatest part.

Being an artist I think I know that pretty well.

Anyway, I’m started working already, I’ll post updates as I get something to show.

Anyway, I’m started working already, I’ll post updates as I get something to show.
Good, but I want to mention one thing: it will be great if editor’s code style are mirrored represent the engine code style.
For what reason? Well, I guess few reason for that:

  • Friendly “first review” for other contributors, and more chances to work on this editor with incorporate with others. This is a huge work actually and I guessing it’s pretty heavy for one person.
  • Has a chance sometime to be “main” editor of urho engine and release with master brunch (of course if “core team” gives agreement for this)

see this: … tions.html

I thought it goes without saying :3

May be help as start point:
Or 06_InGameEditor

There’s actually no reason that a C++ editor would need to be part of the Urho repo. Actually doing just the opposite ensures that no project’s scope gets too large. Urho itself is (just) the runtime.

Once (if) a dominant and excellent editor project would emerge, we would be sure to advertise it in the documentation, while deprecating the script-based one, which is to some degree an engine API use example, though also useful.

May be 2 separate projects:
Urho3DPlayer - runtime game launcher
UrhoEditor - only for game editing with advanced functionality.

I personally would prefer it to be a part of Urho3D, because I don’t want to manage separate project.
Well, let’s first see if I manage to make something solid.

Hey welcome to the forums dude and good luck with that! Improving the built-in editor would be nice but if you decide to go 360 and for the C++ route, you can also check out Xu Jing and Aster’s Particle Editor, which is made using QT and a great starting point and reference, in my opinion. :slight_smile:


Hi, thanks. I’m writing it in C++. I’d prefer to avoid using Qt (ever) and better focus on improvement of Urho’s default UI. I also want to make it to the master someday.
I’ve forked Urho and will be committing my progress, but for now there is nothing to see.

Do you have some kind images or sketches for your editor UI ? something like base blocking stage for level editing.

Nothing to share at this point.

I’ve decided to make the editor standalone. It will be easier for me that way. Now I can change the code style a bit. It’s really hard to breath without space within parentheses. :slight_smile:
Oh, and I’ve called it Aquarium :slight_smile:

From your profile I can tell why you like the engine so much :wink:

And why is that, I wonder? :slight_smile:

In fact I was writing my own engine for the game I’m working on, but then I remembered the gold words: “make games, not engines” and so I went to google to find something good (funnily I’ve started writing the editor instead).
I did the same search like a year ago, but I couldn’t find anything fitting my requirements. Existing engines (written in C++) are all huge and ugly, and they lack features too. Urho3d has almost everything I need ? it’s a game engine, not a rendering engine like Ogre (which is too big and full of legacy code), so I don’t have to waste my time writing I/O and stuff like that. I also like the way it’s organized.
Well, most people would probably pick Unity, but I hate it :slight_smile: