Terrain

Artık kullanılmayanları göster

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Oluşturulamaz

Terain, çok az gecikmeyle dinamik olarak şekillendirilebilir çevreler oluşturmanızı sağlar. Şu anda 4×4×4 çizgi üzerinde hücreler oluşturur, her hücrenin 0 ila 1 arasındaki bir sayısı vardır, bu sayısal geometrinin hücrenin içine ne kadar çok yer kaplayacağını temsil eder ve sonu

Daha fazla bilgi için, Araziyi Görüntüle bakın.

Özet

Özellikler

Şuradan alınan Özellikler: BasePartŞuradan alınan Özellikler: PVInstance

Yöntemler

Şuradan alınan Yöntemler: BasePartŞuradan alınan Yöntemler: PVInstance

Etkinlikler

Şuradan alınan Etkinlikler: BasePart

Özellikler

Decoration

Betiklenemez
Paralel oku

Mevcut, çimlerin çizgideki animasyonunu Çim zemin malzemesi üzerinde etkinleştirir veya devre dışı bırakır, ancak bu özellik gelecekteki değişiklikleri kontrol edebilir.

GrassLength

Betiklenemez
Paralel oku

Grass terreno malzemesi üzerindeki animasyon çiminin uzunluğunu belirtir, Class.Terrain.Decoration|Decoration etkinleştirilmiş olmasını varsayarak. Geçerli değerler 0,1 ile 1 arasındadır.

MaterialColors

BinaryString
Betiklenemez
Paralel oku

MaterialColors, Materyal Renk özellikiçin editori temsil eder ve skriptler tarafından düzenlenemez .

Bir malzemenin rengini almak için kullanın: Terrain:GetMaterialColor()

Bir malzemenin rengini ayarlamak için kullanın: Terrain:SetMaterialColor()

MaxExtents

Salt Okunur
Çoğaltılmamış
Paralel oku

En büyük düzenlenebilir bölgenin sınırlarını gösterir.

WaterColor

Paralel oku

Terrain suyunun tonu.

WaterReflectance

Paralel oku

Yerin su yansımalarının ne kadar opak olduğunu kontrol eder.

WaterTransparency

Paralel oku

Terrain suyunun transparansı.

WaterWaveSize

Paralel oku

Terrain su dalgalarının maksimum yüksekliğini altın olarak ayarlar. Bu, şu anda 0 ve 1 arasında sınırlıdır.

WaterWaveSpeed

Paralel oku

Terreno su dalgalarının her dakika yukarı veya aşağı hareket ettiğini ayarlar. Bu anda 0 ve 100 arasında sınırlıdır.

Yöntemler

CellCenterToWorld

Arazi hücresinin merkezindeki konumunu dünya pozisyonunu (x, y, z) iade eder.

Parametreler


Dönüşler

CellCornerToWorld

Ağ üzerindeki küçük kısma (x, y, z) sağ-gitti-önümüzdeki kısma döndürür.

Parametreler


Dönüşler

Clear

void

Araziyi temizler.


Dönüşler

void

CopyRegion

Terreno'nun bir kısmını bir TerrainRegion nesneye kaydeder, böylece daha sonra yeniden yüklenecek. Not: Terreno'nun verileri sunucu ve istemci arasında kopyalanmaz.

Parametreler

region: Region3int16

Dönüşler

Kod Örnekleri

Terrain:CopyRegion

local terrainRegion = workspace.Terrain:CopyRegion(workspace.Terrain.MaxExtents)
workspace.Terrain:Clear()
task.wait(5)
workspace.Terrain:PasteRegion(terrainRegion, workspace.Terrain.MaxExtents.Min, true)

CountCells

Terrain'da boş olmayan hücrelerin sayısını iade eder.


Dönüşler

FillBall

void

Verilen alanda düz bir top doldurur.

Parametreler

center: Vector3

Arazi topunun merkezindeki konum.

radius: number

Terren topunun stud'larındaki radius.

material: Enum.Material

Arazi topunun Enum.Material kümesi.


Dönüşler

void

Kod Örnekleri

Filling a Ball of Terrain

local Workspace = game:GetService("Workspace")
-- Creates a ball of grass at (0,0,-10) with a radius of 10 studs
Workspace.Terrain:FillBall(Vector3.new(0, 0, -10), 10, Enum.Material.Grass)

FillBlock

void

Verilen bir konum, dönme, boyut ve malzeme ile bir blok düz arazi doldurur.

Parametreler

cframe: CFrame

Terreno blokunun cframe (pozisyon ve yön)

size: Vector3

Kare bloğunun boyutları - yüksekliği ve genişliği.

material: Enum.Material

Arazi blokunun Enum.Material 'i.


Dönüşler

void

FillCylinder

void

Verilen alanda düz bir yerin silindirini doldurur. Alan CFrame, yükseklik ve çevre kullanılarak tanımlanır.

Kullanım


workspace.Terrain:FillCylinder(CFrame.new(0, 50, 0), 5, 30, Enum.Material.Asphalt)

Parametreler

cframe: CFrame

Terin küre (pozisyon ve yön) CFrame'i.

height: number

Terin kürevi yüksekliği.

radius: number

Terin küre silindirinin çevrelerindeki mesafe.

material: Enum.Material

Terin küre Enum.Material 'ı.


Dönüşler

void

FillRegion

void

Düz arazisi ile bir Region3 alanı doldurur.

Parametreler

region: Region3
resolution: number
material: Enum.Material

Dönüşler

void

FillWedge

void

FillWedge() bir Class.Terrain ile verilen şekilli bir hacim Terrain ile bir küme biçimindeki bir hacimle doldurur. Enum.Material ve bölgenin boyutu ile bölgeyi yönlendirir. 0> Class.WedgePart0> ile e

Parametreler

cframe: CFrame

Doldurulacak köşenin konumu ve yönü.

size: Vector3

Doldurmanız gereken köşenin boyutu.

material: Enum.Material

Kızakla doldurulacak malzeme.


Dönüşler

void

GetMaterialColor

Paralel yaz

Belirlenen yer malzemesi için mevcut yer malzemesi rengini iade eder.

Parametreler

material: Enum.Material

Dönüşler

PasteRegion

void

Terrain objesine bir kısım arazi uygulanır. Not: TerrainRegion verileri sunucu ve istemci arasında kopyalanmaz.

Parametreler

corner: Vector3int16
pasteEmptyCells: bool

Dönüşler

void

Kod Örnekleri

Create, Copy and Paste Terrain

--[[
Note: The use of int16 variants for these API is the result of legacy code.
The underlying voxel grid system uses Vector3int32 (Vector3).
]]
local Workspace = game:GetService("Workspace")
local Terrain = Workspace.Terrain
-- Create a simple terrain region (a 10x10x10 block of grass)
local initialRegion = Region3.new(Vector3.zero, Vector3.one * 10)
Terrain:FillRegion(initialRegion, 4, Enum.Material.Grass)
-- Copy the region using Terrain:CopyRegion
local copyRegion = Region3int16.new(Vector3int16.new(0, 0, 0), Vector3int16.new(10, 10, 10))
local copiedRegion = Terrain:CopyRegion(copyRegion)
-- Define where to paste the region (in this example, offsetting by 5 studs on the X-axis)
local newRegionCorner = Vector3int16.new(5, 0, 0)
-- Paste the region using Terrain:PasteRegion
Terrain:PasteRegion(copiedRegion, newRegionCorner, true)

ReadVoxelChannels

Paralel yaz

Kanal isimlerine dayanarak bir bölge topu verilerinin masa biçiminde döndürür.

Parametreler

region: Region3

Okuyacak hedef bölgesi. Voxel kümesine uymalıdır. Bölgenin çok büyük olduğu durumda bir hata oluşur; sınır şu anda 4194304 voxels³'dir.

resolution: number

Voxel özelliğinin çözünürlüğü. 4 olmalıdır.

channelIds: Array

Voxel verilerinden erişilecek kanal ID'leri (ip) gereken bir matrisi temsil eder. Her kanal ID'i, voxel'de depolanan bir tür veri temsil eder. Mevcut desteklenen ID'ler şunları temsil eder: {"SolidMaterial", "SolidOccupancy", "LiquidOccupancy"} .


Dönüşler

Geri bildirimdeki channelIds girişine dayanarak voxel verileri bir sözlük olarak döndürür. Anahtarlar, her bir kanal ID'sini kendi değerleri olarak bir 3D veri matrisi olarak temsil eder.

  • SolidMaterial — Voxel'in Enum.Material malzemesi. Not edin ki, artık Water desteklemiyor; yerine, su içeren bir voxel'in değeri 0> SolidMaterial0> olacaktır.
  • SolidOccupancy — Malzeme voxel'inin malzeme alanı, belirtilen SolidMaterial kanalındaki malzeme alanı. Bu, 0 (boş) ve 1 (tam) arasındaki bir değerdir.
  • LiquidOccupancyWater malzemesinin bir voxel olarak kapasitesini belirtir, 0 (su yok) ve 1 (su dolu) arasında bir değer olarak. SolidOccupancy 1 ve 0> SolidMaterial

Sözlük ayrıca her kanal verisinin 3D matrisi boyutunu temsil eden bir Size anahtarı içerir.

Kod Örnekleri

Terrain:ReadVoxelChannels()

local REGION_START = Vector3.new(-20, -20, -20)
local REGION_END = Vector3.new(20, 20, 20)
local function printRegion(terrain, region)
local channelOutput = terrain:ReadVoxelChannels(region, 4, {"SolidOccupancy", "SolidMaterial", "LiquidOccupancy"})
local size = channelOutput.Size
for x = 1, size.X do
for y = 1, size.Y do
for z = 1, size.Z do
print(("(%2i, %2i, %2i): %.2f %s %.2f"):format(x, y, z, channelOutput.SolidOccupancy[x][y][z], channelOutput.SolidMaterial[x][y][z].Name, channelOutput.LiquidOccupancy[x][y][z]))
end
end
end
end
local region = Region3.new(REGION_START, REGION_END)
printRegion(workspace.Terrain, region)

ReadVoxels

Paralel yaz

Tablo formatında belirli bir yumuşak yer bölgesi içerir.

Parametreler

region: Region3

Okuyacak hedef bölgesi. Voxel kümesine uymalıdır. Bölge çok büyükse bir hata oluşur. Sınır şu anda 4194304 voxels^3'tür.

resolution: number

Voxel özelliğinin çözünürlüğü. 4 olmalıdır.


Dönüşler

Raw voxel data'yı iki 3D阵 olarak iade eder.

  • materials - Enum.Material hedef alanındaki 3B matrisi. Ayrıca, katmanlı matrislerin boyutlarına eşit olan Boyut alanını içerir.
  • occupancies - Hedef alanındaki üstel sayıların değerleri için 3B matrisi. Ayrıca, boyut alanının üstel matrisi ile eşit.

Kod Örnekleri

Terrain:ReadVoxels() Code Example

local REGION_START = Vector3.new(-20, -20, -20)
local REGION_END = Vector3.new(20, 20, 20)
local function printRegion(terrain, region)
local materials, occupancies = terrain:ReadVoxels(region, 4)
local size = materials.Size -- Same as occupancies.Size
for x = 1, size.X, 1 do
for y = 1, size.Y, 1 do
for z = 1, size.Z, 1 do
print(("(%2i, %2i, %2i): %.2f %s"):format(x, y, z, occupancies[x][y][z], materials[x][y][z].Name))
end
end
end
end
local region = Region3.new(REGION_START, REGION_END)
printRegion(workspace.Terrain, region)

ReplaceMaterial

void

ReplaceMaterial, belli bir Enum.Material malzemesinin içindeki yerini başka bir malzemeyle değiştirir. Temel olarak, bu Region3 içindeki bir bul-ve değiştirme işlemdir.

Kısıtlamalar

Bu metodu çağırken, resolution parametresi kesin olarak 4 olmalıdır. Ayrıca, Region3'ün minimum ve maksimum noktalarının yerleştirilmesi için yüzdesi 4'e bölünmelidir. Bu nedenle, bir bölgeyi bu işlevle uyumlu hale getirmek için Region3:ExpandToGrid() kullan

Parametreler

region: Region3

Değiştirme işleminin meydana gelbölge.

resolution: number

Değiştirme işleminin dünyaçözünürlük; şu anda bunun doğru olması gerekir 4.

sourceMaterial: Enum.Material

Değiştirilecek eski malzeme.

targetMaterial: Enum.Material

Yeni malzeme.


Dönüşler

void

Kod Örnekleri

Terrain:ReplaceMaterial

local Workspace = game:GetService("Workspace")
local terrain = Workspace.Terrain
local region = Region3.new(Vector3.new(-20, -20, -20), Vector3.new(20, 20, 20))
local resolution = 4
local materialToReplace = Enum.Material.Grass
local replacementMaterial = Enum.Material.Asphalt
terrain:ReplaceMaterial(region, resolution, materialToReplace, replacementMaterial)

SetMaterialColor

void

Belirli bir arazi malzemesi için mevcut arazi malzemesi rengini belirler. Arazi malzemesi, temel rengini belirli renge değiştirir.

Parametreler

material: Enum.Material
value: Color3

Dönüşler

void

WorldToCell

Nokta pozisyonu içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren küçük hücreyi içeren

Parametreler

position: Vector3

Dönüşler

WorldToCellPreferEmpty

Position nokta pozisyonunu içeren küçük küçük hücreleri tercih ederken küçük küçük hücreleri tercih eder.

Parametreler

position: Vector3

Dönüşler

WorldToCellPreferSolid

Position置顶部时非空格位置的GridCells tercih ederken n空格位置のGridCells'i içeren grilleşme hücrelerinin yerini döndürür.

Parametreler

position: Vector3

Dönüşler

WriteVoxelChannels

void

Voxel kanalı verileri kullanarak bir bölge oluşturur.

Parametreler

region: Region3

Yazılacak hedef bölgesi. Voxel kafesiyle uyumlu olmalıdır. Bölge çok büyükse bir hata oluşur; sınır şu anda 4194304 voxels³'dir.

resolution: number

Voxel özelliğinin çözünürlüğü. 4 olmalıdır.

channels: Dictionary

Class.Terrain:ReadVoxelChannels()|ReadVoxelChannels() dönüş değerine benzer voxel verilerin sözlüğü. Anahtarlar, her bir kanal ID'ini kendi öz değer olarak bir 3D veri arayüzü olarak temsil eder. Sözlük tek veya çok kanal girişlerini destekleyebilir.

  • SolidMaterial — Voxel'in Enum.Material malzemesidir. Not edin ki, artık Water desteklenmiyor; yerine, sadece su içeren bir voxel girilmelidir; burada, 0> SolidMaterial = Enum.Material
  • SolidOccupancy — Malzeme SolidMaterial kanalında belirtilen malzeme kapasitesi. Bu, 0 (boş) ve 1 (dolu) arasında bir değer olmalıdır.
  • LiquidOccupancyWater malzemesinin bir voxel olarak kapasitesini belirtir, 0 (su yok) ve 1 (su dolu) arasında bir değer olarak. SolidOccupancy 1 ve 0> SolidMaterial

Dönüşler

void

Kod Örnekleri

Terrain:WriteVoxelChannels()

local region = Region3.new(Vector3.new(0, 0, 0), Vector3.new(64, 32, 64))
local RESOLUTION = 4
local OCC_EPSILON = 1/256
local function generateRandomTerrainInRegion(regionInput)
local region = regionInput:ExpandToGrid(4)
local size = region.Size / 4
local solidMaterials = {}
local solidOccupancies = {}
local waterOcc = {}
for x = 1, size.X do
table.insert(solidMaterials, {})
table.insert(solidOccupancies, {})
table.insert(waterOcc, {})
for y = 1, size.Y do
table.insert(solidMaterials[x], {})
table.insert(solidOccupancies[x], {})
table.insert(waterOcc[x], {})
for z = 1, size.Z do
local mat = if math.random() < 0.5 then Enum.Material.Air else Enum.Material.Sand
local occ = 0
local water = math.random()
if mat == Enum.Material.Sand then
occ = math.random() / 2 + 0.5
if occ > 1 - OCC_EPSILON then
water = 0 -- Solids cannot contain water
end
else
occ = 0
end
table.insert(solidMaterials[x][y], mat)
table.insert(solidOccupancies[x][y], occ)
table.insert(waterOcc[x][y], water)
end
end
end
return {SolidMaterial = solidMaterials, SolidOccupancy = solidOccupancies, LiquidOccupancy = waterOcc}
end
local regionContent = generateRandomTerrainInRegion(region)
workspace.Terrain:WriteVoxelChannels(region, 4, regionContent)

WriteVoxels

void

Tablo formatını kullanarak belli bir arazi bölgesini ayarlar.

Parametreler

region: Region3

Yazılacak hedef bölgesi. Voxel kaynağına uymalıdır. Bölgenin çok büyük olduğu durumda bir hata oluşur.

resolution: number

Voxel özelliğinin çözünürlüğü. 4 olmalıdır.

materials: Array

3DENSE Material.Dimensions matematiksel bölüm boyutu hedef bölgesinin büyüklüğüne eşdeğer olmalıdır.

occupancy: Array

3B voxel kapasitesi (0 ile 1 arasındaki numara) boyutları hedef bölgesinin boyutuna eşit olmalıdır.


Dönüşler

void

Kod Örnekleri

Example

local Workspace = game:GetService("Workspace")
local terrain = Workspace.Terrain
local resolution = 4
local region = Region3.new(Vector3.new(0, 0, 0), Vector3.new(16, 28, 20)):ExpandToGrid(resolution)
local materials = {
{
{
Enum.Material.CrackedLava,
Enum.Material.CrackedLava,
Enum.Material.CrackedLava,
Enum.Material.CrackedLava,
Enum.Material.CrackedLava,
},
{ Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock },
{ Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock },
{ Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand },
{ Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand },
{ Enum.Material.Mud, Enum.Material.Mud, Enum.Material.Mud, Enum.Material.Mud, Enum.Material.Mud },
{ Enum.Material.Air, Enum.Material.Air, Enum.Material.Air, Enum.Material.Air, Enum.Material.Air },
},
{
{
Enum.Material.CrackedLava,
Enum.Material.CrackedLava,
Enum.Material.CrackedLava,
Enum.Material.CrackedLava,
Enum.Material.CrackedLava,
},
{ Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock },
{ Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock },
{ Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand },
{ Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand },
{ Enum.Material.Mud, Enum.Material.Snow, Enum.Material.Snow, Enum.Material.Snow, Enum.Material.Mud },
{ Enum.Material.Air, Enum.Material.Snow, Enum.Material.Snow, Enum.Material.Snow, Enum.Material.Air },
},
{
{
Enum.Material.CrackedLava,
Enum.Material.Sand,
Enum.Material.Sand,
Enum.Material.Sand,
Enum.Material.CrackedLava,
},
{ Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock },
{ Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock },
{ Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand },
{ Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand },
{ Enum.Material.Mud, Enum.Material.Snow, Enum.Material.Snow, Enum.Material.Snow, Enum.Material.Mud },
{ Enum.Material.Air, Enum.Material.Snow, Enum.Material.Snow, Enum.Material.Snow, Enum.Material.Air },
},
{
{
Enum.Material.CrackedLava,
Enum.Material.CrackedLava,
Enum.Material.CrackedLava,
Enum.Material.CrackedLava,
Enum.Material.CrackedLava,
},
{ Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock },
{ Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock, Enum.Material.Rock },
{ Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand },
{ Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand, Enum.Material.Sand },
{ Enum.Material.Mud, Enum.Material.Mud, Enum.Material.Mud, Enum.Material.Mud, Enum.Material.Mud },
{ Enum.Material.Air, Enum.Material.Air, Enum.Material.Air, Enum.Material.Air, Enum.Material.Air },
},
}
local occupancies = {
{
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 0.5, 0.5, 0.5, 0.5, 0.5 },
{ 0, 0, 0, 0, 0 },
},
{
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 0.5, 1, 1, 1, 0.5 },
{ 0, 1, 1, 1, 0 },
},
{
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 0.5, 1, 1, 1, 0.5 },
{ 0, 1, 1, 1, 0 },
},
{
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 },
{ 0.5, 0.5, 0.5, 0.5, 0.5 },
{ 0, 0, 0, 0, 0 },
},
}
terrain:WriteVoxels(region, resolution, materials, occupancies)
Maximum Region Size

local REGION_START = Vector3.new(-20, -20, -20)
local REGION_END = Vector3.new(20, 20, 20)
local CFRAME = CFrame.new(0, 20, 0)
local SIZE = 50
local function getRegionVolumeVoxels(region)
local resolution = 4
local size = region.Size
return (size.x / resolution) * (size.y / resolution) * (size.z / resolution)
end
local function isRegionTooLargeForReadWriteVoxels(region)
return getRegionVolumeVoxels(region) > 4194304
end
local function isRegionTooLarge(region)
return getRegionVolumeVoxels(region) > 67108864
end
-- Helper function to get an axis-aligned Region3 from the given cframe and size
local function getAABBRegion(cframe, size)
local inv = cframe:Inverse()
local x = size * inv.RightVector
local y = size * inv.UpVector
local z = size * inv.LookVector
local w = math.abs(x.X) + math.abs(x.Y) + math.abs(x.Z)
local h = math.abs(y.X) + math.abs(y.Y) + math.abs(y.Z)
local d = math.abs(z.X) + math.abs(z.Y) + math.abs(z.Z)
local pos = cframe.Position
local halfSize = Vector3.new(w, h, d) / 2
return Region3.new(pos - halfSize, pos + halfSize):ExpandToGrid(4)
end
-- Specific functions for checking individual methods
local function isRegionTooLargeForFillBall(cframe, radius)
local diameter = radius * 2
return isRegionTooLarge(getAABBRegion(cframe, Vector3.new(diameter, diameter, diameter)))
end
local function isRegionTooLargeForFillBlock(cframe, size)
return isRegionTooLarge(getAABBRegion(cframe, size))
end
local function isRegionTooLargeForFillCylinder(cframe, height, radius)
local diameter = radius * 2
return isRegionTooLarge(getAABBRegion(cframe, Vector3.new(diameter, height, diameter)))
end
local function isRegionTooLargeForFillRegion(region)
return isRegionTooLarge(region)
end
local function isRegionTooLargeForFillWedge(cframe, size)
return isRegionTooLarge(getAABBRegion(cframe, size))
end
local function isRegionTooLargeForReplaceMaterial(region)
return isRegionTooLarge(region)
end
local region = Region3.new(REGION_START, REGION_END)
print(isRegionTooLargeForReadWriteVoxels(region))
print(isRegionTooLargeForFillBall(CFRAME, SIZE))
print(isRegionTooLargeForFillBlock(CFRAME, SIZE))
print(isRegionTooLargeForFillCylinder(CFRAME, SIZE, SIZE))
print(isRegionTooLargeForFillRegion(region))
print(isRegionTooLargeForFillWedge(CFRAME, SIZE))
print(isRegionTooLargeForReplaceMaterial(region))

Etkinlikler