Scene editor interface opinion?

Jan 5, 2008 at 11:03 PM
Edited Jan 5, 2008 at 11:10 PM
What do you think about the interface for the terrain editing system and environment ( Sky, Sun with LensFlares, Fog, Water, Rain/Snow ) settings?
Look here:

http://www.youtube.com/watch?v=VC7s3Mqi27w YouTube

Or you can download the video with a better resolution here: http://www.bigupload.com/d=6XM0I3LNXE
Jan 5, 2008 at 11:30 PM
That is very impressive! The interface looks clean and intuitive. I can't wait to see this in action.
Jan 6, 2008 at 2:03 AM
It does indeed look very impressive!

Nice work.

Jan 6, 2008 at 2:06 AM


shawmishrak wrote:
That is very impressive! The interface looks clean and intuitive. I can't wait to see this in action.

Is any of that interfacing with the engine right now?


Thanks.

No, not yet because I am trying to implement some basic features first, like mouse selection and moving, rotating and scaling an object. Defining a Scene format and an easy to understand scene loading and saving system, importing assets into the project and a few more things that is not dependent of the engine. Then I will have to clean the code, because it is a mess right now. rssss
Mouse selection is done, but moving the selected object it is working with a few bugs, like for example another not selected object moving with along with the selected one. You can see this here: http://www.youtube.com/watch?v=sMoBzc6uE1s. This is giving me a big headache!
The scene loading and saving is almost done also.
Anyway, things are getting done.

Do you have any suggestion for the Editor?

Jan 6, 2008 at 2:57 AM
For inspirational purposes you could take a look at some of these commercial game editors
if you can get your hands on one of these:

Neverwinter Nights 1 & 2 - Toolset
Morrowind & Oblivion - The Elder Scrolls Construction Set 3 & 4
Farcry - Sandbox

Good job so far.
Jan 6, 2008 at 12:01 PM
For me it looks like the selection isn't cleared when you deselect it. You should try to add some debug text which tells you which object is selected, or maybe have some events for the selected property changed, and then see if it's invoked properly.
Jan 7, 2008 at 7:01 AM
Well, thanks but I managed to make it work. Look: http://www.youtube.com/watch?v=j-b-dATVto8
Jan 7, 2008 at 8:28 AM
What was the error?
Jan 7, 2008 at 4:09 PM


Sturm wrote:
What was the error?


When I release the mouse, I was passing the same values to all models( selected and unselected ), because I had a piece of the code in the wrong place. rssss
Jan 7, 2008 at 7:39 PM
So I finally got some time to have a look at the vids. Before I go on I have to admit that I'm a VS fan, I simply think it's the best dev environment I've ever encountered, and I always have a hard time understanding why someone would wish to create their own rather than integrating, this specially holds true with the release of the free 2008 shell.

Ok now back to the editor:

  • When starting the editor you show a create/load form, why did you choose this instead of opening the main window and then let the user use the menu.
  • The first entry in the list should be selected by default, there is no reason to first select it then click load
  • The Project and Scene explorers should be on seperate tabs
  • I do not see the use of the scene tabs (tabPage4), that should other tabs show?
  • Why did you choose to not to use a propertygrid for fps/model count information? (The top right window)
  • When initially loading the scene the properties show information which is not obvious where is related.
  • I think that the scene node should be expanded and the node should be selected to indicate that it's the properties displayed
  • I think that the View menu should disable the diffenret panels (Properties/environment/etc) but not the panel themself, similar to VS
  • Terrain Editor tab should behave similar to the toolbox in VS as you very often want the editor and properties visible at the same time
  • The Environment tab does not use the propertygrid, is there a special reason for this?
  • How do you envision custom properties to be propergated to the current layout (If I create a custom terrain with custom properties, or a custom entity)
  • The triggers, are they more like events similar to the events tab when using VS (If selecting a form you'll get both properties and events but on seperate tabs)

Just some comments, generally I think it's very good and impresive work, but I lack a good uniform UX experience.
Jan 7, 2008 at 7:56 PM
When starting the editor you show a create/load form, why did you choose this instead of opening the main window and then let the user use the menu.
- Well, because it allows the user to choose the five last opened projects at the beggining. It also allows the user to create a new project if he wants, and this will create a few files and directories.

The first entry in the list should be selected by default, there is no reason to first select it then click load

- It is. The video doesn't show that, but I double click on the item to load instead of clicking on the load button. You can choose either way.


When initially loading the scene the properties show information which is not obvious where is related.

- That info are from the scene. But this is changing and not finished. It is not hard to add or remove more info ovethere.


PropertyGrid is great, but it allows you to enter any value inside of it. I have to be making several tests to see if the value entered has the correct format. And that is one of the reason why I am changing to have specific panels for some setting and only letting the propertygrid for selected objects. And I want also to allow the editor to show any dynamic property create by the user and show inside a specific panel dynamicly.

About the other questions, I don't have time to answer right now, because I have to go to work.
Jan 7, 2008 at 8:13 PM

xnasorcerer wrote:
- Well, because it allows the user to choose the five last opened projects at the beggining. It also allows the user to create a new project if he wants, and this will create a few files and directories.


I find it annoying that programs do not follow the default windows experience. Open the main application screen and then let the user decide what they wish to do. This is seen in most programs Office/IE/VS, and I do not feel that we should diviate from this unless we have a proven customer requirement for this.


xnasorcerer wrote:
- It is. The video doesn't show that, but I double click on the item to load instead of clicking on the load button. You can choose either way.


The problem is that it does not show this, it should at least show a semi dimmed selection bar over the currently selected item, currently nothing is shown.


xnasorcerer wrote:
- That info are from the scene. But this is changing and not finished. It is not hard to add or remove more info ovethere.


What I meant was that the scene node over in the Scene Explorer should be marked as selected, this is not the case at the moment.


xnasorcerer wrote:
PropertyGrid is great, but it allows you to enter any value inside of it. I have to be making several tests to see if the value entered has the correct format. And that is one of the reason why I am changing to have specific panels for some setting and only letting the propertygrid for selected objects. And I want also to allow the editor to show any dynamic property create by the user and show inside a specific panel dynamicly.


The propertygrid does not allow any value to be entered into a field, you can set the type of value allowed, also you can define that specials controls should be use, such as the ColorPicker or FilePicker or a custom TexturePicker. You can easily see this, just try to set the icon for a Windows.Form in VS, you can only select valid icons.
Jan 8, 2008 at 4:33 AM
Edited Jan 8, 2008 at 5:06 AM


Sturm wrote:

I find it annoying that programs do not follow the default windows experience. Open the main application screen and then let the user decide what they wish to do. This is seen in most programs Office/IE/VS, and I do not feel that we should diviate from this unless we have a proven customer requirement for this.


Well, the way VS works when you open it, is showing a starting page at start that shows the last 6 opened projects and it has a place to browse for a created project and another for creating new one. Isn't that the windows experience? Also, even microsoft changes the default windows experience from time to time. Look at Vista or at the new office. And the default windows experience is changing with the new WPF.
But if you want things like the Office interface, I also can do it:Office Interface with XNA

Ok, open the main application screen, and then the user will need to go to the File Menu, and choose to open or create a new project and this is how VS works ( VS IDE ). And since the user will have to do one of those 3 things, or browse for a project, or open one of those last opened, or create a new project, I just copy the VS. Perhaps I should had make it just like the Start Page of VS with the green and white colors?



xnasorcerer wrote:
- It is. The video doesn't show that, but I double click on the item to load instead of clicking on the load button. You can choose either way.


The problem is that it does not show this, it should at least show a semi dimmed selection bar over the currently selected item, currently nothing is shown.


I don't see your problem here. If I am telling you that is there is because it is. I could even press the enter key on the keyboard and it would work. Do I need to demonstrate also that a menu will popup if I click on one of the menustrip items for you to believe that it is there also?



xnasorcerer wrote:
- That info are from the scene. But this is changing and not finished. It is not hard to add or remove more info ovethere.


What I meant was that the scene node over in the Scene Explorer should be marked as selected, this is not the case at the moment.


You are right! It is not because they are not linked yet.


The propertygrid does not allow any value to be entered into a field, you can set the type of value allowed, also you can define that specials controls should be use, such as the ColorPicker or FilePicker or a custom TexturePicker. You can easily see this, just try to set the icon for a Windows.Form in VS, you can only select valid icons.


You are right on this also. It allows any value to be entered into a field but then gives an error message. It makes the test after validating.
And I know that I can add specials controls. Just look at my videos again and you will see a few of those special controls like a ColorPicker, FilePicker inside of the Editor already.


Sturm wrote:
I do not see the use of the scene tabs (tabPage4), that should other tabs show?


I am also trying to implement dynamic script into the editor, and the tabs will be the place for adding the script editor. I already had something almost done with my old project. I just need to copy and past some codes and continue from there.
Also, please make up your mind! I also think that this is the new default windows way, using tabcontrols. Look again at the VS IDE! ;)


Sturm wrote:
Why did you choose to not to use a propertygrid for fps/model count information? (The top right window)


Why? Because the properties showed overthere on the PropertyGrid wil change and the use select an object and that information will disappear.


Sturm wrote:
I think that the View menu should disable the diffenret panels (Properties/environment/etc) but not the panel themself, similar to VS


Once again, make up your mind. lol rsrsrs. :) I don't see the point of hidding only individual panels would increase the produtivite with the editor. The point of hidding a the entire panel is to increase the work area.


Sturm wrote:
The Environment tab does not use the propertygrid, is there a special reason for this?


Yes, because it is more easy to understand and to find since they are all basic features for almost all games. I've work with a few game engines for a few years and not many of them was using the propertygrid in any case.



Sturm wrote:
How do you envision custom properties to be propergated to the current layout (If I create a custom terrain with custom properties, or a custom entity)


Using certain reserved tags before each custom properties. Each tag would tell the editor the control it should use to show them.
Jan 8, 2008 at 5:18 AM

Perhaps I should had make it just like the Start Page of VS with the green and white colors?


Mine's blue. :)

Sorry, I couldn't resist.

Honestly, I couldn't care less about the "standard Windows experience." It changes with each version of Windows, and with each version of each application. Every application team at Microsoft does their own thing, apparently.

Visual Studio is nice, but I wouldn't claim it's the best interface. I'm in favor of whatever makes our editor the easiest to use, not whatever the standard is.
Jan 8, 2008 at 7:00 AM
I'm not going to ague about this anymore, if you all think that this is a better interface than using a standard controls (Such as Visual3D.Net and Crytek does) then fine.
Jan 8, 2008 at 4:14 PM
I dont use editors much, but as long as its obvious how to use it I dont care exactly how its done. We need to agree on it though. How about a quick poll of everyone?
Jan 9, 2008 at 4:37 AM
Edited Jan 10, 2008 at 2:48 PM


mikelid109 wrote:
I dont use editors much, but as long as its obvious how to use it I dont care exactly how its done. We need to agree on it though. How about a quick poll of everyone?


Good Idea! A poll!

Meanwhile, I just want to show one more thing: Move and Rotate Gizmos
Jan 9, 2008 at 8:02 AM
Nice work reminds me a bit about XSI's. Could you make it so that when selecting arrows at the end that that locks the selection, also it would be nice if you could make the Gizmo resizeable.
Jan 9, 2008 at 4:09 PM
Very nice!
Jan 9, 2008 at 7:56 PM
Thanks.
he idea is to scale them based on the camera position to always have the same size, no matter where its position.
Also, I started to trying to lock the axis by clicking on the the arrows, but I didn't manage to make it work, so I change to lock by click on a toolbar button.

There is a scale gizmo also, but it is not working right yet. When I click on a object, it scales down a lot and I almost can not see it. So, I need to fix this first before going for locking the axis by the arrows.

I wasn't basing this on XSI, but on 3dsMax. :)
Jan 9, 2008 at 9:19 PM
The issue can be that when you are zoomed out the Gizmo will take up a lot of screen space, compared to the object selected, and might offuscate the object. It might not be possible to zoom in as the object has to be rotated/scaled compared to other objects further away.
Jan 11, 2008 at 7:34 PM


Sturm wrote:
The issue can be that when you are zoomed out the Gizmo will take up a lot of screen space, compared to the object selected, and might offuscate the object. It might not be possible to zoom in as the object has to be rotated/scaled compared to other objects further away.


Sturm, my problem is that I don't know how to get the actual size of the the selected model before scaling it. So, when using the scale gizmo and clicking on a model, its size starts to scaling from 0. And this makes the model so little. kkk
Jan 11, 2008 at 7:36 PM
You don't have to scale the Gizmos depending on the model selected. You should make the Gizmo scaleable, so that the user can scale the gizmo when selected from the menu or something.
Jan 11, 2008 at 7:43 PM
Well, that is not the problem that I have now. I am talking about the model that we would want to scale, not the gizmo. Lets say that I import a fbx model, but it looks small on that scene. I click on the scale gizmo and when I click on the fbx model, his size goes to 0 and starts to scaling from there. The right right way would be to get his actual size and scaling from that size, not from 0. Do you know how can I get the actual model size?
Jan 11, 2008 at 8:03 PM
Using the QSEngine simply ask the entity, but I guess you are still usig your own, If you didn't do anything then the scale should be 1.
Jan 12, 2008 at 4:01 AM
Thanks. But once again it is fixed. ;) Look: gizmos moving, rotating and scaling

Now you can see 3 gizmos, moving, rotating and scaling. The gizmos now scales based on its distance to the camera. And at the end you can see the "moving to the camera" function working. ;)

I am now going to start to implement the editor into QuickStart. Is there anything that I should know?
Jan 12, 2008 at 4:40 AM
Could you explain what the error was?
Jan 12, 2008 at 5:15 AM


Sturm wrote:
Could you explain what the error was?


Yes. I was setting the first value of scaling to "0" in a wrong place and that was messing with the code.
Mar 2, 2008 at 3:11 PM
Very nice :)

One question, when is this editor ready to be implemented within the QSE Engine?
Coordinator
Mar 3, 2008 at 6:02 PM
It is tough to say. Sorcerer said he would be busy awhile with other projects that are paying the bills, so the editor is being passed to another for a little while. No word yet on when we might have this integrated.
Mar 3, 2008 at 7:05 PM

LordIkon wrote:
It is tough to say. Sorcerer said he would be busy awhile with other projects that are paying the bills, so the editor is being passed to another for a little while. No word yet on when we might have this integrated.


I see... just curious, is the editor available then as the cs files or as a compiled executable?
Also, I had some Ideas for the editor, which I implemented in the meantime into my tools collection, like a MenuScreen Designer, so that it eases and speeds up the development of game screens, and which is easily extensible(sp?). I'd be glad to port it to this Editor, however I'd need to know if you agree with this.
Mar 3, 2008 at 8:56 PM
I don't believe the editor is available at all, outside of YouTube movies. At least I haven't seen any versions of it.

We don't really have menu functionality yet in the engine, but if that's something you want to tackle then by all means go for it. :)
Coordinator
Mar 3, 2008 at 11:43 PM
XNA sorcerer could likely give you the code. He volunteered it for this project. Then again it is still his, so he may not want to. You should try emailing him about it.
Mar 4, 2008 at 2:42 PM
Alright then, I try mailing him :)

I know it's not that big fancy stuff with the menus, but it's hard to come up with something like you did already and since you're profis and I'm not, it's really hard for me to do like "uber-shaders" or something like that ;)
But I think, Menus is at least a start.
Mar 15, 2008 at 5:43 PM
Edited Mar 15, 2008 at 5:50 PM
I offered my help to adribeiro who has taken over xnasorcerer the scene editor project.
Mar 15, 2008 at 7:29 PM
We need to get something checked into the source tree, so we can all take a look at it and decide on a roadmap for the editor.
Mar 16, 2008 at 1:25 PM
you're absolutely right