Pixel Perfect Collition

Ramiro

Now with an army of Mecha-Ralphs!
Veteran
Joined
Aug 5, 2015
Messages
860
Reaction score
366
First Language
Spanish
Pixel Perfect Collition
version 1.0.1​
 ​
What is this?

This script is a scripter's tool to allow to check pixel perfect collitions between pixels.

It's actually just a snipper than adds two methods to the Sprite's prototype.

What is Perfect pixel collition?

Is a way to check if two sprites "Touch" each other..

You can see an example here:



Do you see? they are not touching each other (even if both rects are touching)



If they touch, you'll know.

Downloads:

(Both links the master latest available version)

Bugs and limitations

At the moment it is rather simple, it doesn't check if the sprite's scale has changed or rotated sprites.

Those are features for next versions.

1.0.1 - Now it has to be a little faster, because it calculates less times per check.

Faq

How to use it?

In short terms:

spriteA.collidesWith(spriteB, tolerance=1); // means alpha 1 or bigger triggers touchTerms of Use

As almost all of my plugins, there are released under CC0 or Apache 2.0.

If you are worried about, don't worry you can use them in both commertial and non commertial games.

In this case, under Apache 2.0, it means you have to say 'thanks Ramiro' on a readme or your credits.

You can choose CC0 if Apache 2.0 license isn't available in your country.

Hope you enjoy.
 
Last edited by a moderator:

Tsukihime

Veteran
Veteran
Joined
Jun 30, 2012
Messages
8,230
Reaction score
3,075
First Language
English
From the screenshot, it looks like it supports transparent pixels. Is that the case?


If so, that would be very useful.
 
Last edited by a moderator:

Ramiro

Now with an army of Mecha-Ralphs!
Veteran
Joined
Aug 5, 2015
Messages
860
Reaction score
366
First Language
Spanish
From the screenshot, it looks like it supports transparent pixels. Is that the case?

If so, that would be very useful.
That is the whole idea, it also has alpha tolerance if you like to use AA sprites...

Those features are exaplained in detail if you open the help inside the plugin parameters.

but basically:

spriteA.collidesWith(spriteB, tolerance=1); // means alpha 1 or bigger triggers touchEDIT: Now the algorythm should run a bit faster...
 
Last edited by a moderator:

Nova Toby

Veteran
Veteran
Joined
Mar 14, 2012
Messages
31
Reaction score
7
First Language
English
Primarily Uses
Can you explain a little more simply how to use this?  I have a basic Action Battle System in place but need to have better collision detection. For instance if the 'Player' collides with an enemy she gets damaged and knocked back and also if the players 'sword' sprite collides with an enemy then the enemy gets damaged and knocked back.

So basically I need to know how to use this plug in to have event commands triggered when two sprites collide (one of which could be the player sprite)
 

Ramiro

Now with an army of Mecha-Ralphs!
Veteran
Joined
Aug 5, 2015
Messages
860
Reaction score
366
First Language
Spanish
It's just a function you may call from any sprite:

if script call [ actorSprite.collidesWith(enemySprite) ]  comment: this happens when the two sprites collide  >else  comment: they are not colliding  >endIt doesn't work if you rotate those sprites, so you may have to do each rotated frame of the weapon as a different sprite in order of it to work, for example.

This has to be used with another plugins, it may be quite hard to use it with just events unless you know how to get the event's sprite (wich is a bit complicated without accessing directly at Spriteset_Map)
 

Lecode

(─‿‿─)
Veteran
Joined
Dec 18, 2013
Messages
490
Reaction score
647
First Language
French
Primarily Uses
N/A
I'll use this tool. Thanks Ramiro.
 
Last edited by a moderator:

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

buinguyenhoangtho wrote on fizzly's profile.
Hello @fizzly, i would like to use your asset/ resource for my project ( is maybe commercial ). May i have your permission? Thanks you !
Working on breaking the limits of RPGMaker! :cool:
I have 470+ hours on RMMV but have only made a demo game, is this normal? :kaoswt: (I lose motivation a lot plus I use a 32gb laptop, so..)
I like Iron Maiden.
Benku wrote on Magnus0808's profile.
Hey man you helped me out a long time ago with a plugin i was wondering if you can help me out one more time since its literally the last thing i need help with if not is cool but id figured id ask you one more soild.

Forum statistics

Threads
95,427
Messages
929,080
Members
125,660
Latest member
AphoticAmaranth
Top