Need help with making gui only be seen thru another gui or part

i want dot to be only available to see thru another part or surface gui like this

Zrzut ekranu 2024-11-09 154922

and not like this after moving camera out of part
Zrzut ekranu 2024-11-09 154855

Have you considered Parallax-ing the GUI?
If you’re looking for the behavior in this video, then this post will help you:

What I used in the video was Fake_Bobcat’s marvellous ‘Parallax Corrected Surface GUIs’ Module, which you may find here (if you plan to publish your experience, you may check out the author’s credit policy in that same post):

  • I placed it in ReplicatedStorage.
  • After that, made a Script under the Part I want to get the parallax into, and set its RunContext property to Client.
  • I wrote a simple code using the Module to project my GUI:
local ReplicatedStorage = game:GetService("ReplicatedStorage")

local part = script.Parent
local decalId = string.format("rbxassetid://%s", tostring(123456789)) -- Replace the number in this line with your Decal/Image's ID.

local ParallaxWindows = require(ReplicatedStorage.ParallaxWindows) -- Edit this to wherever you placed the Module.
local ParallaxWindow = ParallaxWindows.new()

local frameOffset = Vector3.new(-15, -2.5, 0) -- Personalize this to your taste.

local frame = ParallaxWindow:AddFrame(part, Enum.NormalId.Front) -- Set the Enum.NormalId to the face of the Part to render the Decal/Image.
ParallaxWindow:UpdateFrameSettings(frame, { ["Image"] = decalId, ["PosOffset"] = frameOffset, })

game:GetService("RunService").RenderStepped:Connect(function()
	ParallaxWindow:Step()
end)

Let me know if that helps.

1 Like

i tried to make parralax way earlier and its very buggy on viewmodel, but thanks, i found solution alr but forgot to post it

1 Like

my posts goes appreciated. My time was not wasted :happy2: :happy2: (even though he didnt end up using it)

2 Likes