I think I found a fix. The cage deformer beta feature broke it for me. I recommend disabling for the time being if if you plan on using the plugin.
Thank you! Also I already said this in another comment but I found a way to fix it for myself at least. The cage deformation beta seems to break it so disabling that and restarting studio should do the trick.
Do You have a tutorial for this
-Also Really Cool
it sadly just didnt work for me idk if i’m just stupid but rip
Make sure you don’t have the cage mesh deformer beta enabled.
For some reason it breaks this plugin.
Amazing plugin!
I was wondering: is there a way to implement this in a script? I’d like to use this “technology” to creare AoE vfx for when a player casts a skill, however if I try to move the plane where the player is, it won’t deform to match the terrain’s shape.
You can use this function directly from the plugin:
function UpdatePlane(Plane)
local Success = {}
local Failure = {}
for _,Point in pairs(Plane:GetChildren()) do
if Point:IsA("Bone") then
if Point:GetAttribute("OriginalPosition") == nil then
Point:SetAttribute("OriginalPosition",Point.Position/Plane.Size)
end
Point.Position = Point:GetAttribute("OriginalPosition")*Plane.Size
local RayResults = workspace:Raycast(Point.WorldPosition,Plane.CFrame.UpVector*-Plane:GetAttribute("RayRange"),RayParams)
if RayResults then
table.insert(Success,Point)
Point.WorldPosition = RayResults.Position+RayResults.Normal*Plane:GetAttribute("Offset")
else
table.insert(Failure,Point)
end
end
end
if #Success > 0 then
for _,Point in pairs(Failure) do
local Nearest = nil
local NearestDist = math.huge
for _,Point2 in pairs(Success) do
local Dist = (Point:GetAttribute("OriginalPosition")*Plane.Size-Point2:GetAttribute("OriginalPosition")*Plane.Size).Magnitude
if Dist < NearestDist then
NearestDist = Dist
Nearest = Point2
end
end
Point.WorldPosition = Nearest.WorldPosition
end
end
end
This is what is used to place the plane onto surfaces. Let me know if you run into any issues with it!
Thank you SO much!! I appreciate it, you are so nice. I will let you know!
Is there a script that will create a custom plane?
Such as 1.5x1.5 or 3x3 etc.
And how to implement it?
To my knowledge, creating custom planes is impossible without external software. So no, there are none.
maybe make a version that makes the decals, parts when the user leaves the plugin
I would like to know if there is a way to improve the “Displacement” of the decals.
The left one is the decal at the highest resolution,and the right one is at the lowest resolution.
While I don’t expect this to be perfect,both of them still do clip through stairs a little bit,and if viewed from the side they aren’t even aligned to the ground properly.
I was thinking of much more complex methods of doing this,but I don’t know just how complex could they be before they take up too much performance.
Hi, I dont know if anyone else has had this issue, however, when I try to select the plane, all the bone parts go back to their original position and do not follow the wrap i’ve put them in.
Sometimes I seem to be getting an issue where either the top or the bottom half just straight up disappears.
The bones still exist, their position is just… corrupted?
I’m able to send both client- and server side code in DMs if you could assist me, because this might just be my issue.
My guess is that you could move the bones closest to the edge of a part onto the edge of the part…
From what I can understand this seems very interesting. Though it seems the videos are not working so I can’t quite see what this is. I don’t know if it’s on my end or not.
Here is a screenshot:
Hey I was just wandering… Could you add a 100x100 plane? It may be laggy, but it would be so cool. Or you could just tell me how you made the plane?
The videos seem to be corrupt, they don’t seem to want to play. How is this plugin used exactly?
It projects an image using mesh bones
I know this topic’s old but i added a bit to the plugin
DecalPlacement.rbxmx (376.9 KB)
byyy a bit i mean i added a possibility to remove all data after baking, aswell as some code changes