Models in character won't show

Instead of using tools, I’m welding a model to the hand and parenting it to the character. I have changed the LocalTransparencyModifier for every part in the model, but I am unable to see it once I enter first person. The model only shows once I parent it to the workspace instead of the character.


This video also unintentionally shows another issue I’ve been facing, which is custom proximity prompts sometimes not showing even though they should be.

proximityprompt script:

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local playerGUI = player.PlayerGui
local ObjectInteract = playerGUI:WaitForChild("ObjectInteract")
local ObjectFrame = ObjectInteract:WaitForChild("Frame")
local ActionText = ObjectFrame:WaitForChild("ActionText")
local TextBox = ObjectFrame:WaitForChild("TextBox")
for i, v in pairs(workspace:GetDescendants()) do
	if v:IsA("ProximityPrompt") then
		if v.Style == Enum.ProximityPromptStyle.Custom then
			v.PromptShown:Connect(function()
				ObjectInteract.Enabled = true
				ObjectInteract.Adornee = v.Parent
				ActionText.Text = v.ActionText
				TextBox.Text = v.KeyboardKeyCode.Name
			end)
			v.PromptHidden:Connect(function()
				ObjectInteract.Enabled = false
				ObjectInteract.Adornee = nil
				ActionText.Text = ""
			end)
		end
	end
end

Even if you changed the local transparency there is probably the default roblox script interfering and overwriting the transparency modifier in renderstep perhaps.

I have researched another module Realism, they were able to get around by overloading the function in the module. I suggest you take a look at it.

2 Likes

Put Transparency change into a .RenderStepped connection, don’t forget to :Disconnect() it when the model is getting destroying (example ahead)

local function turnOpaque()
    ...
end

local con = game["Run Service"].RenderStepped:Connect(turnOpaque)

model.Destroying:Once(function()
    con:Disconnect()
    con = nil
end)
1 Like