Bir lazer ışını, bir ışık ışınıdır. Gerçek hayatta nadiren tehlikeli olsalar da, bilim kurgu oyunları genellikle lazer ışınlarını oyunculara çarpışmada zarar vermek için bir mekanizma olarak kullanır. Ancak, çok yönlülükleri ve gelecekteki medyadaki belirginlikleri nedeniyle, lazer ışınları blaster silahları, bulmacalar, engeller ve çevre estetiği gibi her türlü oyun mekaniği için faydalıdır.
Bir örnek Lazer Işığı Blaster modeli kullanarak, bu eğitimde bir lazer ışını özel efekti oluşturmayı ve çarpışmada oyuncunun sağlığını sıfıra ayarlamak için isteğe bağlı bir script eklemeyi göstereceğiz. Aşağıdaki konularda rehberlik sağlanacaktır:
- Bir oyuncunun lazer ışını ile çarpıştığında algılayan görünmez bir çarpışma kutusu kurma.
- Lazer ışınının yayılımını temsil eden eklemeleri yapılandırma.
- Gelecekçi bir lazer ışınının görsel özelliklerini taklit eden bir ışın özelleştirme.
- Oyuncunun karakterine zarar veren çarpışma kutusu için davranış scripti yazma.
Blaster varlığını edinin
Yaratıcı Mağaza, projelerinizde kullanılmak üzere Roblox ve Roblox topluluğu tarafından oluşturulan tüm varlıkları bulmak için kullanabileceğiniz Araç Kutusu'nun bir sekmesidir. Model, resim, ağ, ses, eklenti, video ve yazı tipi varlıklarını içerir. Yaratıcı Mağaza'yı kullanarak bir bireysel varlığı veya varlık kütüphanesini doğrudan açık bir oyuna ekleyebilirsiniz.
Bu eğitim, aşağıdaki bölümlerde her adımı tekrarlarken kullanabileceğiniz yüksek kaliteli bir lazer ışını blaster modeli referans alır.

Bu blaster varlığını envanterinizden oyununuza almak için:
Blaster'ı envanterinize ekleyin.
- Varlığın detaylar sayfasına gidin.
- Sağ üst köşede, Modeli Al butonuna tıklayın. Blaster varlığı artık envanterinizde ve platformdaki herhangi bir projede yeniden kullanabilirsiniz.
Studio'da, Ana Sayfa sekmesine gidin, ardından Araç Kutusu butonuna tıklayın. Araç Kutusu penceresi açılır.

Araç Kutusu penceresinde, Envanter sekmesine tıklayın. Modellerim sıralaması görüntülenir.

Lazer Işığı Blaster karosuna tıklayın. Model, görünüm alanınızda görüntülenir.
Çarpışma kutusunu ayarlayın
Oyuncuların çarpışmada sağlıklarını sıfıra ayarlayan tam lazer ışını, oyuncuların lazerle çarpıştıklarında algılayabilmelidir. Beam nesneleri varsayılan çarpışma algılama yeteneklerine sahip olmadığından, temel parçalarla çarpışma algılamayı ayarlamanız gerekir.
Örneğin, bu eğitimde, bir karakterin Humanoid nesnesinin lazer ışınına dokunduğunda algılayan bir çarpışma kutusu olarak bir Beam nesnesi ile birlikte görünmez bir blok parçası kullanılır. Eğitimin son bölümünde, bu bilgiyi kullanarak oyuncunun sağlığına zarar vermek için bir script oluşturacaksınız.
Çarpışma kutusunu ayarlamak için:
LaserBeamBlaster'a bir blok parçası ekleyin.

Parçayı seçin, ardından Özellikler penceresinde,
- Ad'ı CollisionBox olarak ayarlayın. Parçanın adı ve yazım stili, eğitimin ilerleyen bölümlerinde script için önemlidir.
- Oyun başladığında fizik sisteminin parçayı hareket ettirmemesi için Sabit'i etkinleştirin.
CollisionBox'ı lazer ışınının blasterdan ne kadar uzakta patlayacağını istediğiniz uzunluğa ölçeklendirin. Örneğin, bu eğitimde, blaster ile aynı uzunlukta olacak şekilde ölçeklendirilmiştir.

CollisionBox'ı blasterın emici ampulünden uzanan bir konuma taşıyın. Artık çarpışma kutunuz, blasterdan lazer ışınının patlama mesafesini temsil ediyor.

Eklemeleri yapılandırın
Blasterınıza bir Beam nesnesi eklemeden önce, blasterın emici ampulünden lazerin yayılımını temsil etmek için 3D alanda iki Attachment nesnesini yapılandırmak önemlidir. Işınlar, eklemeler arasında bir doku render ederek çalışır, bu nedenle ışının referans alabileceği eklemeler yoksa, hiç çalışamaz.
Lazer ışını için eklemeleri yapılandırmak için:
Eklemleri görünür hale getirmek için, Studio'nun Görünüm menüsünden Kısıtlama Ayrıntılarını Göster'i etkinleştirin.
Çarpışma kutusuna iki ekleme ekleyin.
- Keşfedicisi penceresinde, CollisionBox'ın üzerine gelin, ardından ⊕ simgesine tıklayın. Bir bağlam menüsü görüntülenir.
- Bağlam menüsünden bir Ekleme ekleyin.
- Bu işlemi tekrarlayarak CollisionBox'ın iki ekleme nesnesine sahip olmasını sağlayın.
- Her iki eklemeyi sırasıyla StartAttachment ve EndAttachment olarak yeniden adlandırın.

StartAttachment'ı emici ampul ile örtüşen CollisionBox'ın kenarına taşıyın, ardından EndAttachment'ı lazer ışınının ulaşımını temsil eden CollisionBox'ın kenarına taşıyın.

CollisionBox'ı şeffaf hale getirin, böylece eklemeler arasında ışının render ettiği dokuyu engellenmeden görebilirsiniz.
- Keşfedicisi penceresinde, CollisionBox'ı seçin.
- Özellikler penceresinde, parçayı tamamen şeffaf hale getirmek için Şeffaflık'ı 1 olarak ayarlayın.

Işını özelleştirin
Artık 3D alanda Attachment nesnelerine sahip olduğunuza göre, lazer ışınının görsel özelliklerini taklit etmek için bir Beam nesnesi ekleyebilir ve özelleştirebilirsiniz. Bu eğitim, hızlı bir şekilde animasyon yapan geleceğe ait, parlak pembe bir ışın oluşturma konusunda rehberlik sağlar, ancak aynı özelliklerle deneme yaparak farklı özel efektler oluşturabilirsiniz.
Işını özelleştirmek için:
CollisionBox'a bir ışın ekleyin.
- Keşfedicisi penceresinde, CollisionBox'ın üzerine gelin, ardından ⊕ simgesine tıklayın. Bir bağlam menüsü görüntülenir.
- Bağlam menüsünden bir Işın ekleyin.
Çarpışma kutusunun eklemelerini yeni Beam nesnesine atayın.
- Keşfedicisi penceresinde, ışını seçin.
- Özellikler penceresinde,
- Attachment0'ı StartAttachment olarak ayarlayın.
- Attachment1'i EndAttachment olarak ayarlayın. Işın, iki ekleme arasında varsayılan dokusunu render eder.

Işının görsel görünümünü, geleceğe ait bir lazer ışını gibi görünmesi için özelleştirin.
- Keşfedicisi penceresinde, ışının hala seçili olduğunu doğrulayın.
- Özellikler penceresinde,
- Doku'yu rbxassetid://6060542021 olarak ayarlayın, böylece lazer ışını gibi görünen yeni bir doku render edilir.
- Renk'i 255, 47, 137 olarak ayarlayın, böylece lazer parlak pembe olur.
- Işık Yayılımı'nı 0.5 olarak ayarlayın, böylece lazere hafif bir parıltı eklenir.
- Genişlik0 ve Genişlik1'i 4 olarak ayarlayın, böylece lazer genişler.
- Doku Hızı'nı 2 olarak ayarlayın, böylece lazer daha hızlı animasyon yapar.
- Kameraya Yüz'ü etkinleştirin, böylece lazer, oyuncunun lazerle olan açısına bakılmaksızın görünür.
Zarar verme davranışını scriptle
Lazer ışınınız şu anda çevresi için estetik olarak hoş, ancak bir blaster silahı olarak tamamen zararsız. Lazer blaster'ı, oyunculara zarar verecek şekilde değiştirmek için, bu davranışı tetikleyen çarpışma kutusuna bir script eklemeniz gerekir.
Örnek script, çarpışma kutusuna hangi nesnelerin dokunduğunu görmek için bekleyerek çalışır. Eğer çarpışma kutusuna dokunan bir nesne, bir çocuk Humanoid nesnesi içeriyorsa, script bu nesnenin Health özelliğini 0 olarak ayarlar. Varsayılan olarak, her oyuncu karakteri bir Humanoid nesnesi içerir, bu nedenle bir oyuncu çarpışma kutusuna her dokunduğunda, script anında sağlıklarını sıfıra ayarlar ve karakter parçalanır.
Oyuncuya zarar veren davranışı scriptlemek için:
LaserBeamBlaster'a bir script ekleyin.
- Keşfedicisi penceresinde, LaserBeamBlaster'ın üzerine gelin, ardından ⊕ simgesine tıklayın. Bir bağlam menüsü görüntülenir.
- Bağlam menüsünden bir Script ekleyin.
Varsayılan kodu aşağıdaki kod ile değiştirin:
local laserTrap = script.Parentlocal collisionBox = laserTrap.CollisionBoxlocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid thenhumanoid.Health = 0endendcollisionBox.Touched:Connect(onTouch)Davranışı test etmek için lazer ışınına yürüyün.
Aşağı açılır menüden Test'i seçin ve sağındaki Oyna butonuna tıklayarak oyun testini başlatın.

Karakterinizin parçalanmasını görmek için lazer ışınına yürüyün. İşiniz bittiğinde, Durdur butonuna tıklayın. Studio, oyun test modundan çıkar.

Artık tehlikeli bir lazer ışını blaster'ınız var! Bu eğitimdeki becerileri kullanarak, parlayan güç alanları, hızlı şelaleler ve hız rampaları gibi her türlü ışın özel efektini özelleştirebilirsiniz. Örneğin, CurveSize0 ve CurveSize1 gibi ek ışın özellikleri ile deneme yapabilir, dışa aktarın kendi dokularınızı ekleyebilir ve ışınları diğer özel efektlerle birleştirebilirsiniz, örneğin Parçacık Yayıcıları ve Işık Kaynakları. İyi yaratımlar!