[TEST] Custom Resolution build (based on 3.3.0 / 3.3.1)

Started by Crimson Wizard, Thu 19/09/2013 18:05:19

Previous topic - Next topic

Knox

Quote from: Crimson Wizard on Fri 06/12/2013 22:46:19
There were not much changes recently, mostly updates for safer play on Linux and minor bug fixes, I do not think there's any urgency in this. What do you have in mind?
Oh, wait...sorry I meant to post this in the AGS 3.4.0 Early Alpha [many limits removed] thread!
--All that is necessary for evil to triumph is for good men to do nothing.

Ali

A little post-AdventureX update...

I built a small choose-your own adventure using this build, and aside from the issues in my previous post it worked pretty much perfectly. Rescaling from full HD to suit the projector resolution was just a matter of typing in the right numbers. It also ran pretty well, only slowing down when there were a lot of large 32-bit sprites. I did note that the slowdown was stronger when the sprite appeared as a GUI background, rather than a character or a room object...

Of the issues I've mentioned, I think the ones which affect the player's experience are the most significant
    - Un-smooth scaling makes lots of fonts difficult to read. Bitmap fonts was suggested as a possible solution?
    - Character scaling needs more gradations to produce an acceptable effect - it's far too jerky when working on a large scale.
    - The lack of V-sync means tearing is very distracting when full-screen.

And I picked up a couple of minor points, which may be to do with the beta:

    - In view create Subfolder option collapses the tree only when the selected folder is not called New Folder.
    - When the Output panel fills a whole window (instead of being clipped to the bottom) it is not possible to double-click on an error and jump to the script. In fact, it isn't possible to select the script from the tree either. I have to click onto another panel and click back.

Anyway, thanks to CW for bundling this together in time for me to use it at AdventureX. Really appreciated!

Crimson Wizard

Quote from: Ali on Tue 10/12/2013 00:32:08
Anyway, thanks to CW for bundling this together in time for me to use it at AdventureX. Really appreciated!

I am very curious to see what have you done with this build, is this project available somewhere? :)

Ali

I'm not going to release it publicly, because it's still a WIP and it's not really designed for a single player. But I'd be happy to send the project via wetransfer if you could PM me an email address?

I haven't used character scaling in this project, but I would add it in to illustrate the issue I'm talking about.

Crimson Wizard

I wasn't sure what do you mean when said that you "used it at AdventureX". Did you displayed it there? I have a pretty vague idea about the event itself, sorry ;).
Well, I won't insist, just being curious. Email is ikm_spb at yahoo.com.

Ali

Most of the stuff at AdventureX is playable games, bit my but was more of a show/presentation. So it's kind of like powerpoint, but an adventure game. Will send it over and hopefully you'll see what I mean!

EDIT: It's on it's way. Hopefully it will be informative!

Calin Leafshade

#66
I get the following crash with this build every time I close it.

---------------------------
Illegal exception
---------------------------
An exception 0xC0000005 occurred in ACWIN.EXE at EIP = 0x77753770 ; program pointer is +9904, ACI version , gtags (0,0)

AGS cannot continue, this exception was fatal. Please note down the numbers above, remember what you were doing at the time and post the details on the AGS Technical Forum.



Most versions of Windows allow you to press Ctrl+C now to copy this entire message to the clipboard for easy reporting.

An error file CrashInfo.dmp has been created. You may be asked to upload this file when reporting this problem on the AGS Forums. (code 0)
---------------------------
OK   
---------------------------


I am using the Lua plugin so I suspect it may be a plugin issue.


EDIT:

Also it would appear that AGS assumes that a custom res is a high res. I'm using 320x180 and it messes up some of the GUI sizes and the sprite import settings.. nothing major but annoying.

Crimson Wizard

#67
Quote from: Calin Leafshade on Tue 24/12/2013 12:38:45
Also it would appear that AGS assumes that a custom res is a high res. I'm using 320x180 and it messes up some of the GUI sizes and the sprite import settings.. nothing major but annoying.
There was such error, but I think I fixed it after second release (unless I actually forgot to reupload the fixed version, or correct the dl link :-X). Which archive did you download?


I think I'll work on this feature properly as soon as 3.3.0 is out.


Crimson Wizard

#69
Quote from: Calin Leafshade on Tue 24/12/2013 13:32:32
I used this one: http://www.mediafire.com/download/119ya58148yv6vu/CustomRes_Beta10.7z
Heh, I have two different links on 1st page and on 3rd. And I don't remember which is correct.
Try this one: http://www.mediafire.com/download/6yk5jmo1xlurfah/CustomRes_Beta10.7z


EDIT: Hmm, this one seem to be the last one; but I quickly tried it with one low-res game and it definitely scales the fonts although it should not...
Sorry, I'll check this soon.

Calin Leafshade

#70
Sprites still import at tyhe wrong res too. (I've no idea what that means. A pixel isnt a pixel?)

EDIT: Also in the room editor:



EDIT AGAIN: This also seems to affect GetTextWidth and other similar functions

Also affects the SpriteFont plugin. Scratch that, might be the DrawString method fucking me up.

Crimson Wizard

#71
I fixed couple of condition bugs in the engine, but I cannot find what's wrong in the editor yet.
http://www.mediafire.com/download/mdm2dlt21g6mcz8/AGS_CustomRes_Beta10_fix_26dec2013.7z

The effect as on your screenshot takes place when the sprite is tagged as "hires" in lowres game (same occurs in 3.2.1 I think).

EDIT: Ohh, I seem to have fixed both engine & editor error (text size and sprite resolutions) with this fix (it was in the shared code).
Please tell if this works.


UPD:
Releasing source code for this build in the form of patches. Patches has to be applied on top of certain commit of "feature_display_resolution" branch in our repository (this info included in the archive).
http://www.mediafire.com/download/769hg8p3995xbic/patch_temp_customres_beta10.7z
I remind that the code is temporary, and may be tad "dirty".

David Ostman

#72
I never had the issue with importing sprites that Calin had (they've always been imported fine) and now with the latest fix all the sprites are coming up as half size. Fonts are all right, though.

Before fix: http://imgur.com/wJotwrJ

After fix:  http://imgur.com/rsqxlBk

Re-importing the sprites doesn't help, but maybe there's something really obvious I've missed?

Crimson Wizard

Quote from: David Ostman on Thu 26/12/2013 14:44:37
I never had the issue with importing sprites that Calin had (they've always been imported fine) and now with the latest fix all the sprites are coming up as half size.
Can you tell which game resolution you have?
The sprite has a "resolution" property, which may be confusing. Do you have it set to 320x200 or higher?
Does this error affect editor or engine, or both?

David Ostman

Quote from: Crimson Wizard on Thu 26/12/2013 15:12:39
Can you tell which game resolution you have?
I'm using a custom resolution of 640x360.
Quote from: Crimson Wizard on Thu 26/12/2013 15:12:39
The sprite has a "resolution" property, which may be confusing. Do you have it set to 320x200 or higher?
Ah yeah, that might just be it then. They are all at 640x400, 640x480, 800x600. Setting them to 320x200, 320x240 seems to make them the right size in game.

However importing new sprites they always come in tagged as 640x400, 640x480, 800x600.
Quote from: Crimson Wizard on Thu 26/12/2013 15:12:39
Does this error affect editor or engine, or both?
When the sprites have the "resolution" property of...
640x400, 640x480, 800x600 they appear half size in engine, but normal in editor.
320x200, 320x240 they appear normal size in engine, but twice as big in editor.

Crimson Wizard

#75
Quote from: David Ostman on Thu 26/12/2013 15:31:04
Quote from: Crimson Wizard on Thu 26/12/2013 15:12:39
The sprite has a "resolution" property, which may be confusing. Do you have it set to 320x200 or higher?
Ah yeah, that might just be it then. They are all at 640x400, 640x480, 800x600. Setting them to 320x200, 320x240 seems to make them the right size in game.
I forgot to ask, what is the size of sprite (average)?
I was thinking that if the sprite is designed for low-res (320x200/240) then it will be scaled up for hi-res (which is what seem to happen).
However I do not think they should be scaled down in any case... but I can be mistaken here, I need to look more into this.
This will be more clear if I know the original size of sprite image.

Quote from: David Ostman on Thu 26/12/2013 15:31:04
However importing new sprites they always come in tagged as 640x400, 640x480, 800x600.
This is becase your game is hi-res (640x360 counts as one, because lo-res is only 320x2** in AGS logic).


Quote from: David Ostman on Thu 26/12/2013 15:31:04
When the sprites have the "resolution" property of...
640x400, 640x480, 800x600 they appear half size in engine, but normal in editor.
320x200, 320x240 they appear normal size in engine, but twice as big in editor.
This blew my mind :(.
I need to make a test game in 3.2.1 and compare with custom resolutions build.

Crimson Wizard

Duh! Revising my code made me wonder what I was thinking.
Fixed again. Now your sprites should look correctly.
http://www.mediafire.com/download/31qq2883hg6i5c5/AGS_CustomRes_Beta10_fix_27dec2013.7z

There's a problem with sprites of different resolutions in wide-screen games: for example if you tag sprite as made for 320x200 and your game is 640x360, then the sprite will appear stretched horizontally. I guess AGS logic just never truly supported such resolution combinations. This should be revised in future. At the moment try to keep your sprites tagged with "hires" option for hires games.

Reupload source patches too: http://www.mediafire.com/download/pdmzddcczl2afai/patch_temp_customres_beta10.7z

Calin Leafshade

What distinction does ags make between sprites for different game resolutions?

Surely a pixel is a pixel, regardless of res. That stuff should be removed.

Crimson Wizard

#78
Quote from: Calin Leafshade on Fri 27/12/2013 18:53:50
What distinction does ags make between sprites for different game resolutions?
I can only guess this was made for easier changing resolution of your WIP project, or importing graphics to projects with different resolution (so that you won't have to rescale graphics manually).

David Ostman

Quote from: Crimson Wizard on Fri 27/12/2013 08:40:10
Duh! Revising my code made me wonder what I was thinking.
Fixed again. Now your sprites should look correctly.
http://www.mediafire.com/download/31qq2883hg6i5c5/AGS_CustomRes_Beta10_fix_27dec2013.7z
This sorted my issue perfectly. Thank you for looking into it! :) Sorry for not getting back to you earlier with answers, but these Holidays have kept me away from forums until now.

SMF spam blocked by CleanTalk