Development branch with support for custom resolutions

Started by markus, Fri 08/07/2011 09:56:14

Previous topic - Next topic

markus

Hi everyone!

Just to present myself very briefly... I'm Markus, and I work with Theo, a guy some of you might have bumped in to here on the forum, on a game called The Journey Down at the company SkyGoblin.

We've had a need for custom resolutions in AGS (in our case 720p) and have just started work on adding support for this. We've also created a repository over at Gitorious from where you can check out the source and binaries for yourselves. At first, we thought of contributing to the Linux branch which is already being worked on over at Gitorious, but after inspecting it a bit we concluded that it wasn't really focused on getting to work on Windows, so based ours directly on the latest SVN version of the official version. We'll do our best to keep any changes easy to reintegrate (if they should turn out to be of use), but since we're still getting to know the code, we won't promise that nothing breaks. Anyone interested in pitching in, either in contributing or doing code reviews, is welcome to do so!

I've written a bit more about this on our development blog over att http://www.skygoblin.com. Either check that out for further information or go directly https://gitorious.org/skygoblinags/ to have a look at the project yourself. If we're doing something we shouldn't by publishing this, let us know!

mode7

Let me be the first to say thanks for this. A lot of people have been waiting for this. Still I wonder if AGS will be able to sustain a acceptable framerate at these kind of resolutions.

Igor Hardy

Excellent! Thanks very much. I'll be looking into what you've done with great interest, but more like in August.

RickJ

markus,

Thanks for taking this on, it's something that's been needed for some time.   

Over the past year I've noticed the price of all-in-one touch screen PC's has fallen to the $600-$700 range.   AGS would be a great tool for creating kiosk type games/applications for these platforms provided that it could populate the entire screen area with content.  Your efforts are certainly an important step in being able to run AGS in native monitgor resolutions and aspect rations.

Please allow me to pass along a related and interesting idea I've had for quite some time.  During game development It would be useful to have a game window larger than the actual game background so that debug or development aid type GUIs could reside in these areas instead of obscuring the game play area.  Perhaps you could give some thought to this as you go through the process.  Who knows it may not require as much effort as it seems? 

Thanks

tzachs

Thumbs up for you, markus, that's definitely one of the most wanted missing features of AGS currently.
And also thumbs up for RickJ's suggestion (not just for debug GUIs, it can also be used to see rooms bigger than the screen)...

Gurok

I was getting (I think) the equivalent of a class cast exception when trying to adjust the width/height of custom resolutions. It worked okay if I changed the whole resolution, but changing each part caused an error so I added the following at about line 146 of "GeneralSettings.cs":

                    if (e.ChangedItem.Parent != null && e.ChangedItem.Parent.Label == AGS.Types.Settings.PROPERTY_RESOLUTION_CUSTOM)
                    {
                        if (e.ChangedItem.Label == e.ChangedItem.Parent.GridItems[0].Label)
                            HandleGameResolutionChange(new Size((int) e.OldValue, ((Settings)gameSettings.SelectedObject).CustomResolution.Height), ((Settings)gameSettings.SelectedObject).CustomResolution);
                        else
                            HandleGameResolutionChange(new Size(((Settings)gameSettings.SelectedObject).CustomResolution.Width, (int) e.OldValue), ((Settings)gameSettings.SelectedObject).CustomResolution);
                    }
                    else
/* This was the default before I changed things... */
                        HandleGameResolutionChange((Size)e.OldValue, ((Settings)gameSettings.SelectedObject).CustomResolution);

Any way I could commit this to your git thingy?
[img]http://7d4iqnx.gif;rWRLUuw.gi

kingstone

Hey Gurok, good job spotting this!
Quote from: Gurok on Sun 04/09/2011 05:56:47
Any way I could commit this to your git thingy?
In order to commit this you can either create a merge request through Gitorious or we can give you direct write access to skygoblinags, either way you prefer.

dbuske

Will this be released for other Ags game makers?
What if your blessings come through raindrops
What if your healing comes through tears...

kingstone

Quote from: dbuske on Sun 15/04/2012 19:33:28
Will this be released for other Ags game makers?
Hey dbuske!

The custom resolution patch is already available for AGS game makers to use, but it is not part of the official build so you will have to get it from https://gitorious.org/skygoblinags/.

If you're interested in the work we're doing with our cross-platform engine Gobby right now, you should have a look at Markus' article here: http://www.skygoblin.com/2012/wrapping-up-the-tech/

DazJ

Sounds excellent!

It would be great to know how to use this .git file thing (I am a complete noob when it comes to this stuff). If I can up the game resolution then that'd be great! :D

kingstone

Quote from: DazJ on Wed 18/04/2012 14:18:03It would be great to know how to use this .git file thing (I am a complete noob when it comes to this stuff). If I can up the game resolution then that'd be great! :D
1 - Download and install Git for Windows on your computer.
2 - Start Git Bash from the start menu.
3 - Use cd to go to the directory where you want to put the repository.
4 - Type "git clone git://gitorious.org/skygoblinags/skygoblinags.git" in the console window and press enter.

You should now have the custom resolution version of AGS cloned to your computer. Just unzip bin/LatestEditor.zip and you're ready to go.

Good luck!  :)

Monsieur OUXX

I hope the custom-resolution AGS will allow me to run my game In directX9 instead of only DirectDraw5 on my netbook.
So far, the engine fails to init the device at startup, and I suspect it's because of the awkward resolution (1024x640 or something like that).

 

Joseph DiPerla

Was this just an editor modification, or were there changes to the engine as well? If the latter is the case, I would love to see this feature implemented into JJS' ports.
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

AJA

The engine's modified too. And it's really not finished as it is.

The least you would have to do is set some default settings in the engine when they're not found in the ini file. If you build a 720p game and delete the acsetup.cfg, everything will break. The setup program shows the resolution as "1024x768" and the graphic filters do nothing. Also, opening a "normal" AGS game into the editor breaks things as well even if you don't modify the resolution. And mouse sensitivity is all over the place in full screen, at least with 720p resolution. I've hack-fixed that in my own slightly modified build which is not available for download right now.

So, this isn't really ready to be merged into more "official" versions. It's more of a quickish hack at this point. But I'm using it anyway for an upcoming game. :P No big problems so far, apart from the missing cfg file issue.

No idea how/if it works in DirectDraw mode, though.

kingstone

Good job AJA, let me know if you want to merge your code into the SkygoblinAGS respository!

I just found a zip-archieve of the 720p build on our server, so if you don't want to bother with Gitorious you can download the editor and engine from here:

SkyGoblinAGS Download: http://www.skygoblin.com/AGS720p.com (4,75MB)

In other news (excuse me for going a little off-topic here) we just finished the gold master build of The Journey Down and will begin pushing it onto online-stores ASAP.
What online game stores do you guys prefer? Where would you like to see TJD available for purchase?

Snarky


timofonic

Why not merging this to the main AGS branch? Well..

I mean the JJS branch, the de facto official one ;)

kingstone

Tim: Do you mean JJS' Android branch? I have no idea how far apart we are code-wise and I'm too busy with the launch of the journey down to check on that right now. Don't hesitate to dig into the code and play around with it if you have the time!  :)

In unrelated new, I friggin love the bluecup smileys  (laugh)

timofonic

Quote from: kingstone on Thu 10/05/2012 11:29:15
Tim: Do you mean JJS' Android branch? I have no idea how far apart we are code-wise and I'm too busy with the launch of the journey down to check on that right now. Don't hesitate to dig into the code and play around with it if you have the time!  :)

In unrelated new, I friggin love the bluecup smileys  (laugh)

It could be quite nice if someone helps him on the task at least...

Also, JJS' opinion about adding it would be highly appreciated. After all, it's his branch so maybe he has different interests.

JJS

Well, the focus of my ports is on being compatible with existing games. If a new official version (3.2.2 or whatever) would come out I would of course accommodate to it but I feel uncomfortable about making possibly compatibility breaking changes that only exist in my version and not in the official branch.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

SMF spam blocked by CleanTalk