That’s what I mean, how do I do that to make transparency parts the way to stop from people moving their camera trough transparency and as well even invisible part of Transparency 1?
That’s a property that the glass material has, a trick many people use is instead of glass use SmoothPlastic, as it looks very similar to the Glass material, yet some reflectance properties change a little and it doesn’t have that glossy surface, but that’s as good as it gets
I fixed it by editing the Popper module script, first, you have to test the game, then go into game.Players > LocalPlayer > PlayerScripts > PlayerModule, then copy that module. once done, stop the play test and go into game.StarterPlayer > StarterPlayerScripts and paste the module that you copied before. now, if you open up PlayerModule > CameraModule > ZoomController > Popper and scroll down to line 124, you will see a function called canOcclude, delete the function, copy-paste the function below
Code
local function canOcclude(part)
-- Occluders must be:
-- 1. Opaque
-- 2. Interactable
-- 3. Not in the same assembly as the subject
if FFlagUserPoppercamLooseOpacityThreshold then
return
part.Transparency < 1 and
part.CanCollide and
subjectRoot ~= (part:GetRootPart() or part) and
not part:IsA('TrussPart')
else
return
part.Transparency < 1 and
part.CanCollide and
subjectRoot ~= (part:GetRootPart() or part)
end
end
He means (Mark His Post As A Solution Only If Helped You With Your problem) if someone, gives you a solution to your problem and aids you into fixing it. Those who went out of their way to help you out with your! Issue by providing you with a helpful, explanation on how to fix or helps you, with your problem. The post has to be marked as a solution! That should be the one that is most useful to people, who have a similar problem. that as a solution. then responding with the fix and! Marking that as a solution. That’s actually helpful to anyone searching for similiar issues.
As well the (Solution) is on the right. Corner by the like button:
Thanks for the solution, @sozzly
I wanted to have invisible colliders made from Parts to encapsulate my higher poly meshes that don’t have colliders and could prevent the camera from going through them this way.
Just reporting that the function looks different now, but works this way, with that one line changed I commented out after return:
local function canOcclude(part)
-- Occluders must be:
-- 1. Opaque
-- 2. Interactable
-- 3. Not in the same assembly as the subject
return
--getTotalTransparency(part) < 0.25 and
getTotalTransparency(part) <= 1 and
part.CanCollide and
subjectRoot ~= (part:GetRootPart() or part) and
not part:IsA("TrussPart")
end
By the way, can this cause problems later?
By adding the PlayerModule/CameraModule and also PlayerModule/ControlModule to your game under StarterPlayerScripts it will use the current versions of those modules for ever.
What if Roblox improves something in those? How do you know when you have to update them again?
Isn’t there a simpler or more proper way to prevent the camera from going through invisible colliders?