Jump to content
RealModScene
Sign in to follow this  
gavin_darkglider

Creating Custom Gizmo Scenes

Recommended Posts

So, I am hating xui tool at the moment, but this might just be my own stupidity. lol. I have my interface all worked out, but no matter what I do, I cant seem to figure out the skin side. The help section from Microsoft is vague at best, and says it is the hardest part of XUI tool. If anyone could upload a video on how to create skins in XUI, and not interfaces, that would be helpful. I am not talking about Aurora Skins, as there is a ton of info on that, but the skins for the custom interface. I have tried looking at other skins, but I just dont seem to get it. I can add the items I need to skin, but then when I save the skin and load it, I get a black canvas, all text blends into the background, buttons dont show up, etc. Any help guides on this would be appreciated, so I can get back to the coding part of the project.

  • Like 2

Share this post


Link to post
Share on other sites

So, I am hating xui tool at the moment, but this might just be my own stupidity. lol. I have my interface all worked out, but no matter what I do, I cant seem to figure out the skin side. The help section from Microsoft is vague at best, and says it is the hardest part of XUI tool. If anyone could upload a video on how to create skins in XUI, and not interfaces, that would be helpful. I am not talking about Aurora Skins, as there is a ton of info on that, but the skins for the custom interface. I have tried looking at other skins, but I just dont seem to get it. I can add the items I need to skin, but then when I save the skin and load it, I get a black canvas, all text blends into the background, buttons dont show up, etc. Any help guides on this would be appreciated, so I can get back to the coding part of the project.

have you checked out the samples bro? all of the stuff you are asking about, is in the samples of the xdk

 

edit:

they are located in the install dir..

C:\Program Files (x86)\Microsoft Xbox 360 SDK\Source\Samples\ui

and from the readme in sdk

25qbq08.png

Share this post


Link to post
Share on other sites

Yeah, i went through the help stuff, and it says something about clicking on a non existant button in the middle of the top of the screen, on a toolbar that doesnt seem to exist in the app. Or I just dont get what it is going on about. it would be helpful if they put images of the buttons they are talking about in the help file.

Share this post


Link to post
Share on other sites

Yeah, i went through the help stuff, and it says something about clicking on a non existant button in the middle of the top of the screen, on a toolbar that doesnt seem to exist in the app. Or I just dont get what it is going on about. it would be helpful if they put images of the buttons they are talking about in the help file.

Dude.. all of the samples are compileable lol.. just look at the code and the ui of the sample haha

Share this post


Link to post
Share on other sites

The GizmoHostScene has a fixed width and height, is this the reason, why changing the width and height properties in our custom gizmo scenes/skins doesn't affect? I would like to change our Dialog Sizes and also insert Dynamically XuiElements via Lua code? Is this possible?

Share this post


Link to post
Share on other sites

The GizmoHostScene has a fixed width and height, is this the reason, why changing the width and height properties in our custom gizmo scenes/skins doesn't affect? I would like to change our Dialog Sizes and also insert Dynamically XuiElements via Lua code? Is this possible?

I do believe it is like this:

The gizmo scene has a preset section of hight and width.. but the visuals inside are scaled within the section mate.. if you want that part bigger.. you have to adjust it manually within the xur of it.. and not your new module

  • Like 2

Share this post


Link to post
Share on other sites

yes, like i said, the GizmoHostScene works as the name says, as a host, and its width and height is preset. I would have to change the skin.

Well, giving size as parameters to GizmoUI.CreateInstance(table size) would be nice. Maybe also the buttons.

The Gizmo idea is really good, but currently, its limited setting custom properties.

Do you know, how to create XuiObjects Instances via Lua and position them correctly? I guess, its also not possible right now.

Share this post


Link to post
Share on other sites

The GizmoHostScene has a fixed width and height, is this the reason, why changing the width and height properties in our custom gizmo scenes/skins doesn't affect? I would like to change our Dialog Sizes and also insert Dynamically XuiElements via Lua code? Is this possible?

Dynamic XUIElements will never happen, now adding all of the elements to the scene, but hiding the ones you dont want visible, until you do is possible. ;) That is about as dynamic as you can get. Most .Net apps with forms are like this. And non .NET versions of VB were like this also. ;) Like MaesterRowen told me, Gizmo was not added for creating apps, but more for creating forms. The utility scripts are more of a basic script creator, and not really a programming language. He told me some of the things I was trying to do would have to be done in C++, and not in LUA, which would take it out of aurora completly, as there is not an option/API for creating/loading custom plugins with the required code, then there is no way to link that to the utility scripts..... At the moment at least, from what I can tell. Would be a cool feature though.... As well as create an unknown number of bugs, due to bad programming practices. lol.

Share this post


Link to post
Share on other sites

The GizmoHostScene has a fixed width and height, is this the reason, why changing the width and height properties in our custom gizmo scenes/skins doesn't affect? I would like to change our Dialog Sizes and also insert Dynamically XuiElements via Lua code? Is this possible?

Unfortunately, modifying the height or width of the host scene won't be possibly without modifying the skin.  The way the GizmoHostScene works is that your gizmo.xur is loaded into memory, and the root object is injected into the Dialog box.  The dialog box is then connected to your script via callbacks and listeners that help enable functionality outside of your gizmo.xur, like setting command functions or command text.

The Dialog Box itself is something that is sized and created by the skin creator.

 

As for dynamic xui controls.  The best thing to do is create all the controls you want and show/hide like gavin said.   By doing this, the load time might be slightly slower on the gizmo scene, but once running it wont be subject to flickering or control creation times and will just work.   Note that in Aurora, we don't have any instances of dynamically creating controls.  It's just too complex when we enable custom skins and visuals to link it all up and make it work.  Its best to let the skinner decide what controls will exist and where.

 

There are plenty of methods available for hiding and showing controls, or moving them around once they are created.   

Share this post


Link to post
Share on other sites

Sizing: Well thats what i found out. The only way you can solve this, is to provide several gizmo UIs with selected sizes.

1) 640*800

2) 768*1028

3) 720*1200

4) 1080*1920

That would still need an Aurora Update. At the end you decide, but thats just my first idea.

Dynamic content: That solution wouldn't be a real dynamic UI. It's still defining elements.

What i actually need is to create listelements for a ListContainer.

The container is empty. The listelements are generated of a table.

One solution is the MenuSystem.lua.

But its limited. It generates a list dynamically, which is just fine, its a popuplist.

The twist is, i cant define the height of a list element, i cant define a list element as a group of different elements like image, label, another info label, and position them freely. Thats what is possible with Gizmo. I dont know how to combine both functionality (dynamic content and content layouting), and i actually dont know how to hide and show elements yet.

Share this post


Link to post
Share on other sites

Sizing: Well thats what i found out. The only way you can solve this, is to provide several gizmo UIs with selected sizes.

1) 640*800

2) 768*1028

3) 720*1200

4) 1080*1920

That would still need an Aurora Update. At the end you decide, but thats just my first idea.

Dynamic content: That solution wouldn't be a real dynamic UI. It's still defining elements.

What i actually need is to create listelements for a ListContainer.

The container is empty. The listelements are generated of a table.

One solution is the MenuSystem.lua.

But its limited. It generates a list dynamically, which is just fine, its a popuplist.

The twist is, i cant define the height of a list element, i cant define a list element as a group of different elements like image, label, another info label, and position them freely. Thats what is possible with Gizmo. I dont know how to combine both functionality (dynamic content and content layouting), and i actually dont know how to hide and show elements yet.

I don't think we'll offer different gizmo sizes at the end of the day.  I think it is best that you work within the size structure we currently have.   You can use multiple tabs, or multiple scenes if you need to.

If you REALLY need a scene that big, i recommend creating a custom skin.

Share this post


Link to post
Share on other sites

Example:

I actually don't prefer using 40% of the screen to look at Screenshots. The Screenshots were shot at Full Screen, the whole screen has been used, therefore you would want to use the whole screen again, to view the screenshot. I even believe this is a convention. (Here is the Suggestion btw.)

Using Tabs is also no solution at all. It always depends on the Content, which you want to display. If it's too large, then it needs more space.

If i would create my custom skin, i wouldn't be able to support an Aurora Version, but only certain skins. Its alot easier to provide different Gizmo sizes, if it's not the only one solution.

I would try to prevent global differences or dependencies in the Utility Scripts. But that's just my idea.

Share this post


Link to post
Share on other sites

Example:

I actually don't prefer using 40% of the screen to look at Screenshots. The Screenshots were shot at Full Screen, the whole screen has been used, therefore you would want to use the whole screen again, to view the screenshot. I even believe this is a convention. (Here is the Suggestion btw.)

Using Tabs is also no solution at all. It always depends on the Content, which you want to display. If it's too large, then it needs more space.

If i would create my custom skin, i wouldn't be able to support an Aurora Version, but only certain skins. Its alot easier to provide different Gizmo sizes, if it's not the only one solution.

I would try to prevent global differences or dependencies in the Utility Scripts. But that's just my idea.

I understand what you are saying.. but can you not create a custom gizmo with those resolutions, and it be supported on multiple skins?

All in all.. yeah, a person can make a custom skin, with the resolutions.. it wouldnt be hard really.. lemme play around with some stuff and i will post back what i find..

Share this post


Link to post
Share on other sites

If i would create my custom Skin, it would only work with my skin

If aurora does provide different gizmo scenes on demand, ski creators will automatically include the gizmos so the script would always work in every aurora version in every skin. You see the high gain?

I also wouldnt want to patch a skin with my script, i guess it isnt even possible.

Share this post


Link to post
Share on other sites

If i would create my custom Skin, it would only work with my skin

If aurora does provide different gizmo scenes on demand, ski creators will automatically include the gizmos so the script would always work in every aurora version in every skin. You see the high gain?

I also wouldnt want to patch a skin with my script, i guess it isnt even possible.

It isnt possible yet, and not in the next release either. That being said, there is some cool stuff coming for both skins, and other stuff as well(Always is). I dont see any solutions to what you are asking coming anytime soon, other than using custom skins.

  • Like 1

Share this post


Link to post
Share on other sites

If i would create my custom Skin, it would only work with my skin

If aurora does provide different gizmo scenes on demand, ski creators will automatically include the gizmos so the script would always work in every aurora version in every skin. You see the high gain?

I also wouldnt want to patch a skin with my script, i guess it isnt even possible.

PM me your script mate.. i'll see what i can work out on my end.. lol.. as i dont know what you are trying to achieve per-say.. but if i have an actual source to look at, or atleast it in action on my end.. i will see what i come up with ;-)

and FYI.. the "HIGH GAIN" you speak of.. isn't all that much per-say lol.. as HDTV's are really cheap these days.. but again.. as i said.. i dont know what you are trying to achieve.. so once you send me a working copy.. i will get to work on it mate

Edit: for the more knowledgeable peeps.. we can designate what frame we transfer to when swapping, so having the diff size gizmo sections pre-planned and set to a frame section, we could have XXX script call the 480p section, 720 section, 1080 section.. but.. how it would go is another situation that would have to be up to the dev's lol

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...