A 빔 개체는 둘 사이의 텍스트를 그리면 두 개체를 연결합니다.
표시하려면 빔이 Workspace 의 하위인 빔 하위 개체여야 하고 Attachment0 및 Attachment1 속성이 2>Class.Workspace2> 에 설정된 하위 속성과 함께 하위 개체여야
빔 모양은 아래에 나열된 속성 범위를 사용하여 사용자 정의할 수 있습니다. 또한 시각적 개체를 위해 빔 가이드를 참조하십시오.
곡선 컬럼
빔은 4개의 제어 점으로 구성된 큐빅 베츠리 곡선을 사용하도록 구성됩니다. 이를 통해 직선 선형 곡선이 아닌 곡선을 변경하여 빔의 길이를 변경할 수 있습니다. Class.Beam.CurveSize0|
- P0 — 빔의 시작; 위치의 Attachment0 .
- P3 — 빔의 끝; Attachment1의 위치
코드 샘플
-- create attachments
local att0 = Instance.new("Attachment")
local att1 = Instance.new("Attachment")
-- parent to terrain (can be part instead)
att0.Parent = workspace.Terrain
att1.Parent = workspace.Terrain
-- position attachments
att0.Position = Vector3.new(0, 10, 0)
att1.Position = Vector3.new(0, 10, 10)
-- create beam
local beam = Instance.new("Beam")
beam.Attachment0 = att0
beam.Attachment1 = att1
-- appearance properties
beam.Color = ColorSequence.new({ -- a color sequence shifting from white to blue
ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 255, 255)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(0, 255, 255)),
})
beam.LightEmission = 1 -- use additive blending
beam.LightInfluence = 0 -- beam not influenced by light
beam.Texture = "rbxasset://textures/particles/sparkles_main.dds" -- a built in sparkle texture
beam.TextureMode = Enum.TextureMode.Wrap -- wrap so length can be set by TextureLength
beam.TextureLength = 1 -- repeating texture is 1 stud long
beam.TextureSpeed = 1 -- slow texture speed
beam.Transparency = NumberSequence.new({ -- beam fades out at the end
NumberSequenceKeypoint.new(0, 0),
NumberSequenceKeypoint.new(0.8, 0),
NumberSequenceKeypoint.new(1, 1),
})
beam.ZOffset = 0 -- render at the position of the beam without offset
-- shape properties
beam.CurveSize0 = 2 -- create a curved beam
beam.CurveSize1 = -2 -- create a curved beam
beam.FaceCamera = true -- beam is visible from every angle
beam.Segments = 10 -- default curve resolution
beam.Width0 = 0.2 -- starts small
beam.Width1 = 2 -- ends big
-- parent beam
beam.Enabled = true
beam.Parent = att0
요약
속성
빔의 원본은 Attachment입니다.
Class.Attachment 빔은 끝에 도달합니다.
Class.Beam.LightInfluence|LightInfluence가 1보다 작으면 빔에서 방출되는 라이트의 크기를 조정합니다.
빔의 색을 결정합니다 Segments .
Class.Beam.Attach Class.Beam.附0|Attach0 와 함께 하여 빔의 비율 곡선에 대한 두 번째 제어 점의 위치를 결정합니다.
Class.Beam.Attach1|Attach1 와 함께 사용하면 빔의 비율 곡선에 따라 제어 점의 위치를 결정합니다.
빔이 보이거나 보이지 않도록 합니다.
빔의 Segments가 항상 카메라를 향할지 여부를 결정합니다. 이 경우 빔의 방향은 관계 없습니다.
빔의 색상이 뒤에 있는 색상과 얼마나 혼합되는지 결정합니다.
빔이 환경의 조명에 얼마나 영향을 받는지 결정합니다.
빔이 만들어지는 직선 부분의 수를 설정합니다.
빔에 표시할 텍스처의 ID입니다.
Class.Beam.TextureMode|TextureMode 에 따라 빔의 텍스처 길이를 설정합니다.
Class.Beam.Texture|Texture 스케일과 반복 방식을 결정합니다.
이미지가 빔을 따라 이동하는 속도를 결정합니다. Texture
빔의 각 세그먼트 간의 투명도를 결정합니다.
원래의 빔 너비(Attachment0), 스터드 단위의 빔 너비.
귀하의 범위 끝에 있는 빔의 너비(Attachment1), in studs.
Class.Workspace.CurrentCamera|CurrentCamera 에 대한 빔 표시의 거리, 스터드 단위의 거리는 상대적으로 Class.Workspace.CurrentCamera|CurrentCamera 에 대한 오프셋입니다.
메서드
빔 텍스처 사이클의 현재 오프셋을 설정합니다.
속성
Attachment0
이 지오메트리는 다음에서 온 것입니다. 이 지오메트리는 빔의 큐비츠 곡선의 첫 번째 컨트롤 포인트입니다. 빔의 방향, Attachment 속성과 함께, 이 지오메트리의 두 번째 컨트롤 포인트의 위치를 결정합니다.
빔이 끝나는 위치에 대해서는 Attachment 을 참조하십시오.
Attachment1
이 빔에는 끝점이 있습니다. 이 접착은 빔의 큐비츠 곡선의 4번째 및 마지막 컨트롤 점에 대한 것입니다. 이 속성과 함께 위치한 Attachment 속성은 세 번째 컨트롤 점의 위치를 결정합니다. 참조
빔 원래 지점에서 생성되는 경우 Attachment 참조.
Brightness
이 속성은 빔의 방출하는 빛을 조정하고, LightInfluence 가 1보다 작을 때 이 속성의 기본값은 1입니다. 이 속성은 범위 0에서 10000 사이의 모든 값에 설정할 수 있습니다. 빔
Color
빔의 색을 결정합니다. Segments 의 빔에 적용됩니다. if Texture 가 설정되면 이 색이 빔의 텍스처에 적용됩니다. if Texture 가 설정되
이 속성은 ColorSequence 이며, 색이 빔 길이 전체에 걸쳐 구성되도록 허용합니다. 다음 ColorSequence 를 빔에 적용하면 캐릭터가 표시된 결과를 생성합니다.
local colorSequence = ColorSequence.new({ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 0, 0)), -- 빨강ColorSequenceKeypoint.new(0.5, Color3.fromRGB(0, 188, 203)), -- 청록색ColorSequenceKeypoint.new(1, Color3.fromRGB(196, 0, 255)), -- 보라색})
또한 빔의 색상은 빔의 가진 수에 따라 변경될 수 있습니다. 각 빔 세그먼트는 최대
CurveSize0
Class.Beam.Attach Class.Beam.Attach 와 함께 하 는 빔의 곡선에서 두 번째 제어 점의 위치를 결정합니다. 자세한 내용은 Attachment0 을 참조하십시오.
이 점의 위치는 다음 식으로 결정할 수 있습니다:
local controlPoint2 = Beam.Attachment0.WorldPosition + (Beam.Attachment0.CFrame.RightVector * Beam.CurveSize0)
CurveSize1
결정은 빔의 비율 곡선에 따라 셋째 제어 점의 위치를 결정합니다. 자세한 내용은 빔을 참조하십시오.
이 점의 위치는 다음 식으로 결정할 수 있습니다:
local controlPoint3 = Beam.Attachment1.WorldPosition - (Beam.Attachment1.CFrame.RightVector * Beam.CurveSize1)
FaceCamera
Class.Beam 은 3D 공간에 존재하는 2D 프로젝션입니다. 즉, 모든 각도에서 볼 수 없습니다. FaceCamera 속성, 설정에 따라 true 면, 빔이 항상 1> Class.Workspace.CurrentCamera|CurrentCamera1> 를 향합니다. 독립적
LightEmission
빔의 색상이 뒤에 있는 색상과 얼마나 혼합되는지 결정합니다. 범위는 0에서 1로 설정해야 합니다. 0의 값은 일반적인 혼합 모드를 사용하고 1의 값은 추가 혼합 모드를 사용합니다.
이 속성은 LightInfluence 가 아닙니다. 이 속성은 빔이 환경 빛에 어떻게 영향을 받는지 결정합니다.
이 속성은 빔이 환경을 조명하지 않도록 합니다.
LightInfluence
0에서 1 사이의 환경 조명에 의해 빔이 얼마나 영향을 받는지 결정합니다. 0일 때 빔은 환경 조명에 영향을 받지 않습니다. 1일 때 빔은 클랩된 상태에서 완전히 영향을 받습니다.
또한 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상 섬유의 색상
LocalTransparencyModifier
Segments
완벽한 곡선이 아닌 대신, 빔은 직선 세그먼트로 구성됩니다. 더 많은 세그먼트는 빔의 해상도를 높이지만, 세그먼트 속성은 빔이 얼마나 많은 직선 세그먼트로 구성되는지 설정합니다. 기본값은 10입니다.
Class.Beam.Color|Color 및 Transparency 속성에는 빔의 Class.Beam
Texture
빔에 표시할 텍스처의 콘텐츠 ID입니다. 이 속성이 설정되지 않으면 빔이 고정 줄로 표시됩니다; 이는 텍스처가 잘못된 콘텐츠 ID로 설정되었거나 텍스처와 관련된 이미지가 아직 로드되지 않았을 때 모두 발생합니다.
텍스처의 모양은 Color 및 Transparency 등의 다른 빔 속성을 통해 더 수정할 수 있습니다.
텍스처의 크기는 TextureMode , Class.Beam.TextureLength|TextureLength , Class.Beam.Width0|Width0 , 및 1> Class.Beam.Width1|Width11> 속성에 따라 결정됩니다.
TextureMode
이 속성은 TextureLength 와 함께 빔의 Texture 반복을 결정합니다.
Class.Beam.TextureLength|TextureLength 을 제외하고 텍스처 반복은 빔의 전체 길이(in studs)를 나눈 값으로 일치합니다. 이 경우 Enum.TextureMode.Static 또는 TextureLength 이 됩니다.
설정된 경우 Enum.TextureMode.Stretch 및 전체 길이 TextureLength 의 경우 텍스처가 전체 길이 Class.Beam.TextureLength|TextureLength 의 경우 텍스처가 반복됩니다.
TextureSpeed
Class.Beam.Texture|Texture 이미지가 빔을 따라 이동하는 속도를 결정합니다. 이 속성이 양수 값인 경우 빔의 텍스처는 Attachment0에서 Attachment1 로 이동합니다. 이 방향은 속
Transparency
빔의 각 세그먼트 간의 투명도를 결정합니다. 이 속성은 NumberSequence 이며, 빔의 길이에 따라 투명도를 구성할 수 있습니다.
다음 NumberSequence 를 고려하십시오. 이 경우 빔에 적용되면 그림에 표시된 결과를 생성합니다.
local numberSequence = NumberSequence.new({NumberSequenceKeypoint.new(0, 0), -- 불투명NumberSequenceKeypoint.new(0.5, 1), -- 투명NumberSequenceKeypoint.new(1, 0), -- 불투명})
빔의 투명도는 또한 빔의 각 세그먼트에 있는 세그먼트 수에 따라 변경됩니다. 빔의 각 세그먼트는 최소 n개의 세그먼트 이상을 가질
Width1
빔의 끝(Attachment1), 스터드 단위의 빔 너비는 원래( Class.Beam.Width0|Width0) 빔 너비에서 직선적으로 변경됩니다( Class.Beam.Attach0|Attach0)).
ZOffset
범위, 인치, 빔 표시는 클래스 워크 스페이스 현재 카메라 | 현재 카메라 (Class.Workspace.CurrentCamera|CurrentCamera) 와 비교하여 표시됩니다. 0일 때 빔은 클래스 워크 스페이스 현재 카메라 | 클래스 워크 스페이스 현재 카메라
이 속성은 다음 Beams 에 대해 여러 개의 Attachments 을 사용할 때 특히 유용합니다.
코드 샘플
-- Create beams
local beam1 = Instance.new("Beam")
beam1.Color = ColorSequence.new(Color3.new(1, 0, 0))
beam1.FaceCamera = true
beam1.Width0 = 3
beam1.Width1 = 3
local beam2 = Instance.new("Beam")
beam2.Color = ColorSequence.new(Color3.new(0, 1, 0))
beam2.FaceCamera = true
beam2.Width0 = 2
beam2.Width1 = 2
local beam3 = Instance.new("Beam")
beam3.Color = ColorSequence.new(Color3.new(0, 0, 1))
beam3.FaceCamera = true
beam3.Width0 = 1
beam3.Width1 = 1
-- Layer beams
beam1.ZOffset = 0
beam2.ZOffset = 0.01
beam3.ZOffset = 0.02
-- Create attachments
local attachment0 = Instance.new("Attachment")
attachment0.Position = Vector3.new(0, -10, 0)
attachment0.Parent = workspace.Terrain
local attachment1 = Instance.new("Attachment")
attachment1.Position = Vector3.new(0, 10, 0)
attachment1.Parent = workspace.Terrain
-- Connect beams
beam1.Attachment0 = attachment0
beam1.Attachment1 = attachment1
beam2.Attachment0 = attachment0
beam2.Attachment1 = attachment1
beam3.Attachment0 = attachment0
beam3.Attachment1 = attachment1
-- Parent beams
beam1.Parent = workspace
beam2.Parent = workspace
beam3.Parent = workspace
메서드
SetTextureOffset
빔의 텍스처 사이클의 오프셋은 텍스처 애니메이션의 진행 상황을 나타냅니다. 이 메서드는 빔의 텍스처 사이클의 현재 오프셋을 설정하므로 텍스처 애니메이션을 재설정하려면 빔의 텍스처 사이클을 0 으로 전달하여 사이클을 재설정할 수 있습니다
노트
- 지정된 offset 매개 변수는 0에서 1 사이의 값이어야 하지만 더 큰 값을 사용할 수 있습니다.
- 텍스처 사이클은 0과 1에 감싸여 있으므로 오프셋이 0이거나 1인 경우 텍스처가 동일한 위치에 있습니다.
- Class.Beam.Texture|Texture 속성이 설정되지 않으면 이 메서드는 작동하지 않습니다.
- 오프셋을 증가하면 TextureSpeed 속성으로 반대 방향으로 이동하여 텍스처를 반대 방향으로 애니메이션할 수 있습니다. 이는 오프셋이 TextureSpeed 보다 크면 텍스처를 더 작은 방향으로 애니메이션할 수 있음을 의미합니다.
매개 변수
텍스처 사이클의 원하는 오프셋.