[BEHAVIOR] Chipmunk Physics

From the Asset Store
Simple yet very life-like rag doll made with Physics!
  • nelostic

    There are two things:

    collision groups. When two instances are in the same group they won't collide. It's just a number.

    Collision layers. It's a series of 1's and 0's, one for each 32 layers. Two objects will only collide if they share a one in the same position.

    the Mnk

    It adds collision filtering, and a lot more joints as well as other improvements, as well as various differences.

  • hank You!

    Group 0 Don't Work!

    Group 1 is Work!

    This is Amazing!

    pensive-bose-5555d4.netlify.com

    epic-goldberg-bcaf43.netlify.com

  • have construct 3 vrrsion ?

  • inkfalcon

    Nope.

  • Hi,

    Can someone tell me how to use hexadecimal with layers to get all 32? I only know they are A to F, but don't know how to use them. Thanks

    R0J0hound

  • This is an awesome plug in. Thanks.

  • megatronx

    The hexadecimal digits each are four bits. So you can use them for four layers. See the key here, but you can find it elsewhere as hexidecimal to binary. In total you can have 32 layers or 8 hexadecimal digits. In the layout editor it's convenient to use hex to set the layers. In the event editor you can do it too, or you can take an existing mask and modify it with construct's bitset expression.

    0 0000
    1 0001
    2 0010
    3 0011
    4 0100
    5 0101
    6 0110
    7 0111
    8 1000
    9 1001
    A 1010
    B 1011
    C 1100
    D 1101
    E 1110
    F 1111
  • megatronx

    The hexadecimal digits each are four bits. So you can use them for four layers. See the key here, but you can find it elsewhere as hexidecimal to binary. In total you can have 32 layers or 8 hexadecimal digits. In the layout editor it's convenient to use hex to set the layers. In the event editor you can do it too, or you can take an existing mask and modify it with construct's bitset expression.

    0 0000
    1 0001
    2 0010
    3 0011
    4 0100
    5 0101
    6 0110
    7 0111
    8 1000
    9 1001
    A 1010
    B 1011
    C 1100
    D 1101
    E 1110
    F 1111

    Thanks for reply. I've automated mine based on Z position variable, and right now I go trough loops checking that Z and Height and adding 0 or 1 to a string in between Z and a height. If I'd have 32 layers, how could I have it automated like that? Could I create a string with 32 digits or do I need to use letters instead?

    As an example how would 23 or 30 look like?

    Best!

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • R0J0hound Would you mind just giving me few examples of how those would look like in the plugin gui itself?

    Would it be something like 0100A00B?

    Thanks

  • Hi,

    Sorry for the late reply.

    Probably the simplest is to use a 32 character binary number of 1's and 0's. Each digit is a layer that you can make the object be in or not in.

    For example:

    1110 1010 1010 1111 1000 0100 1100 1011

    Then to input it into the layers property you need to first convert it to hex using google, or windows calculator.

    Here's one possible converter:

    convertbinary.com/binary-to-hexadecimal

    That binary number turns into this:

    EAAF84CB

  • Hi,

    Sorry for the late reply.

    Probably the simplest is to use a 32 character binary number of 1's and 0's. Each digit is a layer that you can make the object be in or not in.

    For example:

    1110 1010 1010 1111 1000 0100 1100 1011

    Then to input it into the layers property you need to first convert it to hex using google, or windows calculator.

    Here's one possible converter:

    https://www.convertbinary.com/binary-to-hexadecimal/

    That binary number turns into this:

    EAAF84CB

    Hey

    Thanks for reply. So, for simplicity I'd rather stick with binary, but does your plugin gui alows for 32 digits to be input, or I need to do it some other way?

  • In the layout editor it only takes hex numbers. In events you use decimal numbers but you can use the set bit expression.

  • In the layout editor it only takes hex numbers. In events you use decimal numbers but you can use the set bit expression.

    Ok, i get it. tried 32 decimals in event sheet and they are working. THanks for that.

    And a few more:

    Can one object have, lets say, only 8 binaries and another 16, and all binaries above 8 would be ignored by obj with only 8 when on collision with obj with 16?

    Not completely related to the topic, but once binaries are set in the plugin, I'd like to explod that strings in to single numbers for events, so take 110011 and turn it in to vsr=1 var =1 var =0 etc. Do you know how I could do that?

    Also do you know how could I replace single or more digits in decimal string for your plugin? I might have knew that some time ago, but forgotten! Would be both 0001 to 0011, and also moving them so 0011 move to 0110 and then 1100 for example.

    EDIT

    I tested answers to my own questions.

    1 no, each has to have same no of digits

    2 can do that with system action

    3 haven't tried that yet

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)