Hi! I recently purchased this plugin to try to have a system of multiple paint colors that can overwrite each other and have tags, and I’ve encountered an issue that may be a bug? If not, then I may be doing something wrong.
Basically, I have a material meant for floors using your node that’s set up like this:
Using this material, I seem to be able to paint multiple colors that are able to overwrite each other (which is the behavior I want) and erase them using the Paint Stroke node’s erase mode.
This is all done in the first person example template (the blueprint version) and I have the character modified to be able to select from one of three different projectiles that are modified from the default first person example projectile; red paint, blue paint, and water (essentially an eraser). Those each look like this:
With the only difference between them being the brush stroke color, the collision tag, and erase mode being enabled for the “water” ball. Red and Blue have Red and Blue as their collision tags respectively and have the brush colors to match (pure red and pure blue), and the water projectile has no collision tag, is set to pure white for the brush color, and has erase mode turned on.
When using the projectiles (the player is set up to switch between them using the 1-3 keys) red and blue are properly able to paint the surface and overwrite one another, and the eraser is properly able to erase both red and blue paint visually.
However, the player is also set up with an alt-fire that runs multiple Paint Query nodes, and checks for the Red & Blue tags and returns whether the resulting spot is Red or Blue. It works by running two paint queries on the same location using a Sequence node and then a branch connected to the boolean output of each query that when returning true triggers a print string to let me know what the result is; if both return false, nothing is printed. The problem lies in that if I overwrite or erase existing paint, and then Paint Query the spot that has been overwritten, the query results still return true for the tag matching the original paint stroke at that location.
Additionally, if I erase a spot where both colors have been, or overwrite one color with another, the Paint Queries I have set up in the trace return that the area retains the tags of BOTH colors of paint.
Am I doing something wrong here? It there a different or intended method of removing / erasing tags that I’m not seeing or is this a bug?