Sisyphus's Forum Posts

  • I'm trying to work out if canvas size should be set at all? What shader would be best for upscaling in C2? I thik the Somebody scale shader would be fine to stretch, but the game first needs upscaling evenly by x2 or x3, etc.

    I don't use shaders, so can't advice anything, however something like "On Start of layout -> Set Canvas Size (OriginalWindowWidth*2 x OriginalWindowHeight*2) & Set Layout Scale to 2 & Set Fullscreen Scalling to Low Quality" + Point sampling + Pixel Rounding: On + Scale shader may work... If it's not, then Set Canvas Size is not what you need.

  • Ahh, is canvas resizing not the same as using a shader to accomplish it?

    Set canvas size

    If a fullscreen mode is in use, this effectively changes the size of the Window size project property, which adjusts the size of the viewport.

    Set Canvas Size just changes the window size property which adjusts the size of viewport, it doesn't stretch the game. As i understand, you want to stretch it

    doubling the resolution to x2 (or tripling to x3, quad with x3, etc) and resizing the height by 1.2 to create old-skool rectangular pixels? Like how they aspect correct in SCUMMVM by doing a scale and changing 320x200 to 320x240 after the scaling

    You can't stretch the game from 320x200 to 320x240, you can only change the viewport with Set Canvas Size action.

  • Is GPU scaling still expensive to use?

    Nope, but rendering is. Anyway, canvas resizing will not help, you need another way, maybe shaders or effect, or maybe you can try to resize everything in your game to make it look as needed.

  • maybe doing an extra *1.2 on the height might work?

    Well, it will maybe look how you want it to, but the performance will be really bad, imagine this on 4k display, your game will render on 8k or more, then stretch to screen size. I guess it's not possible in c2 to render the game in one resolution and then stretch it to another resolution, other than screen resolution.

  • >

    > > Did this happen?

    > >

    > Yeah, System > Set Canvas Size

    >

    What's the correct way of doubling the resolution to x2 (or tripling to x3, quad with x3, etc) and resizing the height by 1.2 to create old-skool rectangular pixels? Like how they aspect correct in SCUMMVM by doing a scale and changing 320x200 to 320x240 after the scaling?

    Dunno, i use Fullscreen scaling: Low Quality + 1280x720 canvas size to make my games render faster on these WQHD and 4k mobile phones, same thing as TS requested. Maybe something like Fullscreen scaling: Low Quality + OriginalWindowWidth*2 x OriginalWindowHeight*2 will double the resolution, but not sure about stretch after the scaling.

  • Did this happen?

    Yeah, System > Set Canvas Size

  • Well, you can use any other condition not just empty, and there'll be even more lags. But it doesn't matter how laggy the project is, the actions never can be skipped, if you are having your actions skipped then you should report this as a bug for sure. You can check my .capx above with a heavy and laggy function, it frozes the game for 5-10 seconds, but no following actions are skipped and no wrong values.

  • blackhornet He just wanted to show, how not to use Wait 0

  • lennaert Yes, the second event is not firing because with wait(0) x sets to 2 after the event, great example.

    For everyone, who get confused over the skipped actions, no matter the framerate, actions can't be skipped, i made a .capx demonstrating this. The heavy and laggy function is called and increase "var2" variable by one for 8797899 times (to hang the game for 5-10 seconds), then another function is called and set "var3" variable to "var2", and both values are always equal to 8797899, no action is skipped, no bad values written, when a function is called, the game hangs and the following actions are not even happening before it finishes (If you not using actions that don't give a result immediately, like destroying object, but even if using, this action will not be skipped, it will fire, but the system can destroy objects only in the end of tick, that's why you need to use Wait(0) after them to fire the following actions after destroy.).

    .capx

  • lennaert Yeah, when you need to postpone actions till the end of event sheet it's okay, but what about skipped actions mentioned by ? Have you ever noticed this?

  • Can you please explain, how firing actions in the end of the event sheet can avoid skipping? When you developing your games you put "Wait 0" everywhere? Really? I can't even find any info about skipped actions on the forums. Can you show where it's discussed?

    The skipping is not directly mentioned in the manual but the performance and optimization is, and its suggesting the slow downs might skip 1 action or the actions might not perform as well as they should. And thats why Wait 0 was implemented.

    I've re-read all Ashley's tutorials and blog posts about performance and optimisation and events. No suggestions or anything else about action skip. I really think that if a thing like action skip is possible Ashley would have written something about it anywhere, but there's not a word about it.

    Because 1 condition in blank its another maybe 0.001 % tick delay based on the amount of conditions and actions we have in our event sheet, and on large scale games that 0.001% can get pretty high stacking.

    Can't get your point here, blank condition is the same as Every Tick condition, it's even stated in Ashley's blog post.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • For those, who getting confused over "Wait 0" thing.

    Tutorial by Ashley

    Wait 0 thread

    winkr7 Basically, "Wait 0 seconds" postpones the following actions until the end of the event sheet.

    when you have multiple actions on the same condition and the system might skip or write a bad value or half of a value instead the real one.

    C2 event sheet is read from top to bottom... but sometimes it might skip 1 action or 2

    This is not okay, sounds more like a bug. Then it might skip the "Wait 0" action too, lol. There's nothing in the manual or tutorials about skipped actions because of a framerate or anything else.

  • Report this here, and you'll get an answer. It's broken for a long time, but still no reports.

  • I can't reproduce on IPhone 6s (non-Plus). Can you test chrome for ios? Just to be sure that it's WKWebView bug.

  • Problem Description

    OR block as a sub-event is not working properly.

    Attach a Capx

    Here you go

    Description of Capx

    4 Sprites, 1 Global variable.

    Steps to Reproduce Bug

    • Open project, start preview, or preview with debugger.
    • See nothing spinning, and "var" is not changing.

    Observed Result

    OR block not working, but it will work if I don't pick "Sprite" before "OR" block, or don't use "OR" block as a sub event.

    Expected Result

    If "Sprite" is visible and "Sprite2" or "Sprite3" is overlapping "Sprite" (visible one) then add 1 to Global variable "var" and rotate "Sprite4".

    Affected Browsers

    • Chrome: (YES)
    • FireFox: (YES)
    • Internet Explorer: (YES)

    Operating System and Service Pack

    Windows 10

    Construct 2 Version ID

    r221