[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

Ok so I did a few tests, and if I unpin the stack window and place it at the bottom, and have the output window pinned as well, I can finally see the message window when there are errors...however (for me anyways), the output window and call stack tabs then disappear and I have to go back and reselect then in Window>Output/Call Stack.

--All that is necessary for evil to triumph is for good men to do nothing.

Crimson Wizard

Quote from: Knox on Fri 08/08/2014 15:30:23
Ok so I did a few tests, and if I unpin the stack window and place it at the bottom, and have the output window pinned as well, I can finally see the message window when there are errors...however (for me anyways), the output window and call stack tabs then disappear and I have to go back and reselect then in Window>Output/Call Stack.
I think it is better to report this to tzachs. Panels are his work, and I doubt this is specific to Custom Resolutions build.

UnusualCadence

I've been playing with the new resolutions - very impressed with it indeed! AGS looks quite beautiful in 1080p :) It seems to be very flexible and robust scaling upwards and downwards, so you have my full thanks for making headway on one of the biggest things holding AGS back!

Are there any major bottlenecks I should be aware of in terms of rendering at higher resolutions? I'm assuming that the D3D9 mode is hardware accelerated, and graphics cards these days shouldn't have any issues... but all the same, there might be something I'm unaware of.

Calin Leafshade

The main issue is the size of the sprite cache. Large sprites take up a lot of memory and this can thrash the cache.

The other major issue that all user drawing (i.e on custom surfaces) is not hardware accelerated and is thus really slow.

Another minor issue is the lack of sub-pixel rendering so you cant move things very smoothly.

UnusualCadence

Does setting the Sprite Cache option in winsetup to it's highest setting help with the thrashing? 100mb of memory doesn't seem so unfair to reserve these days.
Playing around with some walking animations and jerky movement is apparent with MovementLinkedToAnimations set to True (and looks weird if set to false!). Not the end of the world or anything, might even be diminished with adjusting the delay per frame. Either way, big improvement!

Knox

QuoteI think it is better to report this to tzachs. Panels are his work, and I doubt this is specific to Custom Resolutions build.
Ok, I'll check it with tzachs. Thanks!

@Calin: We can increase the sprite cache by setting the cachemax in the acsetup.cfg file to something larger, right? Or is it more complicated than that?
--All that is necessary for evil to triumph is for good men to do nothing.

Crimson Wizard

#186
Quote from: Knox on Sun 17/08/2014 16:09:00
@Calin: We can increase the sprite cache by setting the cachemax in the acsetup.cfg file to something larger, right? Or is it more complicated than that?
The bigger problem is that AGS does not provide normal means to precache animations. This may slow game down when the specific animation starts to play for the first time if animation is long and sprites have high resolution. That's happening because AGS actually loading sprites on fly from the file.

The workaround is to force AGS load sprites before they are actually used in game. I never experimented with this myself, but I think that this may require doing some dummy operation over sprite, like reading a random pixel from it, or something.
If you look at "Anna's Quest" game, it does sprite precaching before the game start, although it seems that alot of sprites are processed at once, and it's taking inconveniently long time. I believe it is possible to do more optimal precaching by processing only those sprites that may be needed in current room or a sequence of rooms.

SMF spam blocked by CleanTalk