I thought I'd let people know what I'm working on with a little video of the current program state.
The program is a Project Organizer for projects using the Orx engine. The goal is to have Pey(I'll let you find out why it's named that) be able to create a project structure for your new projects and give you a visual way to look through and organize your ini files.
Goals for v2.0:
*reimplement data storage in Orx's structure
*code skeleton generation (also known as export game)
*previews on properties generated by orx(graphics possibly remapped to QPixmap)
*click on property key generates preview instead of object key(allowing multiple previews without overlapping)
*add multiple properties(resources) at once
Tasks done:
☑ objects and properties addable
☑ drag and drop objects for inheritance
☑ texture visible in preview area
☑ internal data storage
☑ basic keyboard shortcuts
☑ removing of objects/properties
☑ support duplicating objects/properties
☑ inserting of object templates
☑ Save/load project file
delayed till issues resolved(seems some resources required more work than I thought):find common "resource" fields in Orx and try to make visual representation of objects.
I've written this in Qt and C++, so it should be easily portable to whatever platform you choose.
http://www.dailymotion.com/video/xc4h1h_pey-orx-project-organizer_tech
v1.0
_____________
Linux 64 & Windows 32:
http://projects.eyecreate.org/projects/pey/files
Site:
http://eyecreate.orx-project.org
Comments
I'm really looking forward to seeing more of it! Nice work, eyecreate!
And... err... I have to admit I'm totally clueless about the name! ^^
I wanted to see if I could figure out why Orx was named such, and though I'd do a Google for "define:orx". the first thing, besides Orx itself, that came up was a french commune by that name. So I scrolled down Wikipedia's list of communes nearby and the one Pey stuck out to me. I felt it fit as it was also three letters and the first P could stand for project. :laugh: Well, I guess there isn't much else about it.
I see that you'll be able to preview textures, is this done in the orx engine or just qt? Something that'd be really cool is if you could preview animations and animation chains. I guess it could be hard to implement if it's all done in qt.
http://www.dailymotion.com/video/xc4ytq_pey-keyboard-shortcuts_tech
When do you plan to have a alpha/beta so we can play around with it, Eyecreate?
btw, I wanted to share with you one of my personal favorite code pieces from Pey which I'll post below:
Anyways, enough of that, I should be working! :laugh:
I can't wait to try this out!
Current builds are for Windows(32?) and Linux 64. Details on requirements and some quick help info is in the README file in the archives.
Without further delay, the files await:
Windows:
http://www.box.net/shared/36parss3um
Linux 64:
http://www.box.net/shared/q9c6e04yy7
Just to let you know, there is no loading/saving or templates as they all require working INI parsing, which is the last thing before v1.0. Hope this satisfies those who are curious.
EDIT:Just for people to know, I actually have linked/used Orx's engine itself in this build.(even though it really isn't being used yet) This will allow some interesting things to develop.
Hopefully I'll get some time to look at it this week end.
First of all, in the windows beta download that you provided, I can't seem to find any readme file; so, I've been using the application a little blindly.
Secondly, when saving projects, the INI file doesn't seem to be created (is it supposed to be?). Am I not using it right? All I've done is create a few objects with properties and attempt to save them; so, I'm not sure if I did things correctly.
Anyway, thanks for putting so much effort into this so far!
Yes, as stated at the bottom of the beta post, saving doesn't work, the method to save/load is currently "blacked out" by comments. I know it's a rather important part to actually put Pey to use, but the saving/loading required me implementing some functions in the Orx engine that didn't exist yet, so that had to come first.(Orx didn't have a function to iterate through structure nodes) I just finished coding that this morning and inserted in into my now customized Orx engine, so sometime soon, saving/loading should start coming along.
One thing that I noticed was that once I had created a first object, I couldn't create new independent objects. I.e. they would always be children to another object. I could move them to the root after though.
Something that I would love to see in future versions was a way to create several graphic objects given a bunch of files (through the file browser or something similar). It would make it really easy to create animations.
A bug (?) I noticed was that if I dragged an object to the properties side, that object would be removed. If I only had one object and dragged that to the properties side, they program crashed.
Anyway, keep up the great work
2.Due to the way the selection works in the treeview for objects, I'd have to have the code ask you if you wanted the item "top level" but thought there wouldn't be too much need for it when it can be just dropped to that position, plus it would add more things that would ask questions all the time.(I've tried to keep the interface clean so that you can add/remove things without multiple boxes asking you questions. The best way I could think would be add another shortcut key to move an item up(making the move action both mouse and keyboard accessible).
3.Not sure if you are talking about multiple properties when multiple files selected or make an animation out of multiple files when selected.
4.I thought it was odd when you mentioned that it was behaving as such, because I thought I specifically coded it so that objects were contained in their own widget. I tried it on my computer, and couldn't duplicate it(I did find dragging a singular object when it is the only one there and letting it go right away crashes it, though. This happens on both OSes) I tried it on my Win7 VM, and I duplicated it, but I don't understand why it disobeys my acceptDrops=False. I'll take a deeper look later, but it may be an upstream bug in QT on Windows.
Glad you liked the rest, I've really felt torn at times when designing how the program is supposed to work, as I've never really known if what I was doing with the interface was going to make the program hard to use or too clumsy. I feel it currently isn't too bad imho, most of the issues are small things, so I guess it's better than large issues.
I meant more like: you select a few files in a browser and then creates a object for each of them, similar to: .
I like the minimalistic interface. I think that just showing the basic everyday functions and hiding very specific things in perhaps a different view or under some sort of context sensitive view.
v1.0 beta 2
_____________
Linux 64:
http://www.box.net/shared/eom1m2rxyy
Windows 32:
http://www.box.net/shared/aylon0xav2
Also I wanted to apologize for not having integrated the code you sent me. I completely forgot last week end as I was focused on the iPhone port. I'll do it during the week and keep you informed.
One thing I've noticed: I have Pey installed in its own independant folder, outside of any orx project. When I use the file browser to select a path, the path that appears in the end is absolute. It would be very handy if the paths were instead relative to the emplacement of the .ini file that's being edited. Same goes for the default folder when the file browser opens.
Anyway, I really like where this is going. The lack of an undo function at this point is perharps the only major drawback of editing ini files with Pey. I shall try it out when making improvements on DragonCube and give you some more feedback : )
An undo function is something from the start I had wanted to implement, but since it requires a hook into an item changes, and some changes have no good hook for(dragging objects on the left, the only way to detect what happened is actually to look for "selection changed", I believe)so it's a little tricky, hence why it isn't there yet.
One cool thing is that these "distraction projects" I mentioned above(GSoC and mystery project), no matter which one succeeds(or both) the code will most likely be reused into Pey, which will yield some awesome features, so keep an eye out, as I have plans for Pey's future.
I'm really looking forward the next steps for Pey. I'm sure a lot of people will appreciate this tool.
Btw, do you want me to open a FTP account on orx's website for you so that you can easily publish things related to Pey?
http://docs.google.com/View?id=dcx3nsnj_75gqdrcrcc
Some of the stuff, especially related to diagrams and what-not were added last minute and are not a final representation of the format.(it is a proposal after all)
An ftp would be great, as I could then keep my Pey files, which are related to Orx, in one place.
Looking forward to seeing what you'll do with this in the long run. You've certainly got a nice start going.
Looking forward to some Pey new features.
How did GSoC go?
blog.eyecreate.org
Pardon if it's slow, it's a low end server and it has minecraft running too.(That thing always takes over 50% available ram)
I promise I will open source it one day, but not now. the code now is mess up.
you could simply put the .ini into the demo folder to see the whole structure of the config, Or modify the editor's .ini to set the project's base path.
Besides, for it is based on qt, To open it in xp, it seems to need
a patch or plugin to be installed to the windows. But this patch won't be required if vs 2008 have been installed.
moreover it is Chinese version, but I think it won't affect your use. we will release English version very soon.
Thank you,enjoy it..
https://forum.orx-project.org/uploads/legacy/fbfiles/files/qt_pey_like_editor.zip