Is there a way to change character graphics based on border region?

  • #2, by NigecTuesday, 07. January 2014, 09:31 11 years ago
    AGS in its early days just used walk on action areas to down scale but it looked kinda odd and harsh


    Doesn't the "Activate Pixel Effect" compensate for this?

    Key Killer

    637 Posts


  • #3, by afrlmeTuesday, 07. January 2014, 12:37 11 years ago
    It wouldn't look very fluid/natural as Nige mentioned... & there are also options in the main game tab for retro/pixel based games.

    * Activate pixel effect [enabled]
    * Minification filter [nearest neighbor]
    * Magnification filter [nearest neighbor]

    what you are wanting to do would be done by either creating a new character (better method) for each of the 3 sizes or via multiple outfits containing the character at different sizes in which you can switch between using either:

    * Character > Change Character
    * Character > Change Outfit

    For automatically having it change between characters you could set up action areas on the way system for each scene where you can dictate what should happen when a character enters or leaves each area.

    It's a lot more work for you than using the normal scaling system & as mentioned would probably look very unnatural when having it snap between different character sizes.

    Imperator

    7285 Posts

  • #4, by afrlmeTuesday, 07. January 2014, 17:15 11 years ago
    Oops, I did not know you can't save images or look at them in fullscreen in the browser here. You might not be able to see what I mean, since the browser scales the images.


    right click image & open link in new tab (open original image in a new tab) grin

    hmm... so why not add varied line strokes or just remove the black outline from the character & use a more subtle outline color or none at all? (just a suggestion mind) will save you a lot of time as opposed to using multiple characters/outfits, action areas & all the rest of the time consuming stuff!

    Imperator

    7285 Posts

  • #5, by AlexTuesday, 07. January 2014, 17:34 11 years ago
    maybe you could use the character animation index.
    instead of one animation for each direction (e.g. 0, 90, 180 and 270 degrees), create multiple animations. e.g.
    walk right (0 degrees): animation with character at 100%
    walk right (0 degrees): animation with character at 50%
    walk right (0 degrees): animation with character at 150%
    walk up (90 degrees): animation with character at 100%
    walk up (90 degrees): animation with character at 50%
    walk up (90 degrees): animation with character at 150%
    and so on...

    in action areas in your scene you can set the character animation index depending how large your character should be. if you set it to 0 the animation for character with 100% scale will be shown, with 1 the character will be shown at 50% and with 2 the character will be shown at 150%.

    Great Poster

    378 Posts

  • #6, by afrlmeTuesday, 07. January 2014, 18:28 11 years ago
    hmm the method Alex mentioned is a good method to use instead of multiple characters/outfits, well at least for the general character animations such as walking, talking, standing etc.

    Imperator

    7285 Posts

  • #7, by esmeraldaWednesday, 08. January 2014, 09:11 11 years ago
    I tried using the animation index once but it wouldn't work properly. No matter when or which number of the index I set, the animations were changing randomly. In the end I gave up and used different outfits.
    @ Alex: can you please explain how to use the index - or what I did wrong? The threat I started (about a year ago) was called "animation index"

    Key Killer

    530 Posts

  • #8, by afrlmeThursday, 09. January 2014, 13:30 11 years ago
    I'm not sure if animation index includes manually triggered character animations or just the ones automatically triggered by the engine itself such as the talk, walk, standing & random animations.

    Long story short: you are only allowed to create one animation for each direction for the automatically triggered character animations but you can technically add more even though it will always trigger the first one for current direction, unless you increase/decrease the animation index.

    I haven't actually tested it so I can't confirm if what what Esmeralda is saying is a bug or possibly something she did wrong on her end.

    Imperator

    7285 Posts

  • #9, by AlexThursday, 09. January 2014, 15:33 11 years ago
    The animation index should work for all character animations which are automatically started by the engine (walk, talk, standing). I'll have a look at it and create an example and report back in the next few days.

    Great Poster

    378 Posts

  • #10, by AlexWednesday, 15. January 2014, 01:57 11 years ago
    I made an example where I created 2 animations for each animation direction. The order in this list is important. If the animation index is 0 the first fitting animation for a direction will be started (right walk, up walk, ...). If the animation index is 1 the second fitting animation will be started (right walk 2, up walk2, ...). To make sure the order of your animations for the same direction is correct you should reload your project and check the list order (because the internal order value will be modified on save to make sure the animations are sorted by direction first).

    Unfortunately there is a bug for the last animation (in my case "down walk" with 270 degrees) where the animation index selects the wrong animation (I fixed this for the next release). Other than that it works fine.

    Great Poster

    378 Posts