[MeshBuilder] Added layout options for URL textures; Hack for texture link
This commit is contained in:
@@ -99,10 +99,18 @@ function MeshBuilder:_applyMeshes()
|
||||
end
|
||||
end
|
||||
|
||||
function MeshBuilder:_setTexture(mat, name, texture)
|
||||
function MeshBuilder:_setTexture(mat, name, texture, layoutOptions)
|
||||
if isURL(texture) then
|
||||
texture = texture .. "#hack" .. math.random(1337)
|
||||
layoutOptions = layoutOptions or {}
|
||||
|
||||
mat:setTextureURL(name, texture, function(_, _, _, _, layout)
|
||||
layout(0, 0, 1024, 1024)
|
||||
local x = layoutOptions.x or 0
|
||||
local y = layoutOptions.y or 0
|
||||
local w = layoutOptions.w or 1024
|
||||
local h = layoutOptions.h or 1024
|
||||
|
||||
layout(x, y, w, h)
|
||||
end)
|
||||
else
|
||||
mat:setTexture(name, texture)
|
||||
@@ -123,10 +131,10 @@ function MeshBuilder:_createMaterial(shader, basetexture, bumpmap, options)
|
||||
|
||||
local mat = material.create(shader)
|
||||
|
||||
self:_setTexture(mat, "$basetexture", basetexture)
|
||||
self:_setTexture(mat, "$basetexture", basetexture, options.baseLayout)
|
||||
|
||||
if bumpmap ~= "" then
|
||||
self:_setTexture(mat, "$bumpmap", bumpmap)
|
||||
self:_setTexture(mat, "$bumpmap", bumpmap, options.bumpLayout)
|
||||
end
|
||||
|
||||
for k, v in pairs(options) do
|
||||
|
||||
Reference in New Issue
Block a user