Download Lua/Classes/RenderFeaturesParams.lua from sirnii/myspace: direct link, hf CLI and curl.
- Browser
- Download file 9.59 kB
-
https://huggingface.co/spaces/sirnii/myspace/resolve/main/Lua/Classes/RenderFeaturesParams.lua
- Command line
-
hf download hf://spaces/sirnii/myspace/Lua/Classes/RenderFeaturesParams.lua
-
curl -L -o RenderFeaturesParams.lua https://huggingface.co/spaces/sirnii/myspace/resolve/main/Lua/Classes/RenderFeaturesParams.lua
9.59 kB
| if FirstLoad then -- hopefully noone changes those before us, so we can fetch them safely | |
| ThreePointLightingDefaults = {} | |
| ThreePointLightingDefaults.KeyLightAngle = hr.KeyLightAngle | |
| ThreePointLightingDefaults.KeyLightDirX = hr.KeyLightDirX | |
| ThreePointLightingDefaults.KeyLightDirY = hr.KeyLightDirY | |
| ThreePointLightingDefaults.KeyLightDirZ = hr.KeyLightDirZ | |
| ThreePointLightingDefaults.KeyLightColor = hr.KeyLightColor | |
| ThreePointLightingDefaults.KeyLightIntensity = hr.KeyLightIntensity | |
| ThreePointLightingDefaults.FillLightAngle = hr.FillLightAngle | |
| ThreePointLightingDefaults.FillLightDirX = hr.FillLightDirX | |
| ThreePointLightingDefaults.FillLightDirY = hr.FillLightDirY | |
| ThreePointLightingDefaults.FillLightDirZ = hr.FillLightDirZ | |
| ThreePointLightingDefaults.FillLightColor = hr.FillLightColor | |
| ThreePointLightingDefaults.FillLightIntensity = hr.FillLightIntensity | |
| ThreePointLightingDefaults.BackLightAngle = hr.BackLightAngle | |
| ThreePointLightingDefaults.BackLightDirX = hr.BackLightDirX | |
| ThreePointLightingDefaults.BackLightDirY = hr.BackLightDirY | |
| ThreePointLightingDefaults.BackLightDirZ = hr.BackLightDirZ | |
| ThreePointLightingDefaults.BackLightColor = hr.BackLightColor | |
| ThreePointLightingDefaults.BackLightIntensity = hr.BackLightIntensity | |
| ThreePointLightingDefaults.TPLCameraAngle = hr.TPLCameraAngle | |
| ThreePointLightingDefaults.TPLCameraDirX = hr.TPLCameraDirX | |
| ThreePointLightingDefaults.TPLCameraDirY = hr.TPLCameraDirY | |
| ThreePointLightingDefaults.TPLCameraDirZ = hr.TPLCameraDirZ | |
| end | |
| DefineClass.ThreePointLighting = { | |
| __parents = {"PersistedRenderVars"}, | |
| group = "ThreePointLightingRenderVars", | |
| StoreAsTable = false, | |
| PresetClass = "ThreePointLighting", | |
| EditorMenubarName = "ThreePointLighting", | |
| properties = { | |
| { hr = true, name = "Angle", id = "KeyLightAngle", category = "Key Light", editor = "number", default = ThreePointLightingDefaults.KeyLightAngle, read_only = true }, | |
| { hr = true, name = "Direction X", id = "KeyLightDirX", category = "Key Light", editor = "number", default = ThreePointLightingDefaults.KeyLightDirX, read_only = true }, | |
| { hr = true, name = "Direction Y", id = "KeyLightDirY", category = "Key Light", editor = "number", default = ThreePointLightingDefaults.KeyLightDirY, read_only = true }, | |
| { hr = true, name = "Direction Z", id = "KeyLightDirZ", category = "Key Light", editor = "number", default = ThreePointLightingDefaults.KeyLightDirZ, read_only = true }, | |
| { hr = true, name = "Color", id = "KeyLightColor", category = "Key Light", editor = "color", default = ThreePointLightingDefaults.KeyLightColor, alpha = false }, | |
| { hr = true, name = "Intensity", id = "KeyLightIntensity", category = "Key Light", editor = "number", default = ThreePointLightingDefaults.KeyLightIntensity, slider = true, min = 0, max = 255, scale = 255 }, | |
| { hr = true, name = "Angle", id = "FillLightAngle", category = "Fill Light", editor = "number", default = ThreePointLightingDefaults.FillLightAngle, read_only = true }, | |
| { hr = true, name = "Direction X", id = "FillLightDirX", category = "Fill Light", editor = "number", default = ThreePointLightingDefaults.FillLightDirX, read_only = true }, | |
| { hr = true, name = "Direction Y", id = "FillLightDirY", category = "Fill Light", editor = "number", default = ThreePointLightingDefaults.FillLightDirY, read_only = true }, | |
| { hr = true, name = "Direction Z", id = "FillLightDirZ", category = "Fill Light", editor = "number", default = ThreePointLightingDefaults.FillLightDirZ, read_only = true }, | |
| { hr = true, name = "Color", id = "FillLightColor", category = "Fill Light", editor = "color", default = ThreePointLightingDefaults.FillLightColor, alpha = false }, | |
| { hr = true, name = "Intensity", id = "FillLightIntensity", category = "Fill Light", editor = "number", default = ThreePointLightingDefaults.FillLightIntensity, slider = true, min = 0, max = 255, scale = 255 }, | |
| { hr = true, name = "Angle", id = "BackLightAngle", category = "Back Light", editor = "number", default = ThreePointLightingDefaults.BackLightAngle, read_only = true }, | |
| { hr = true, name = "Direction X", id = "BackLightDirX", category = "Back Light", editor = "number", default = ThreePointLightingDefaults.BackLightDirX, read_only = true }, | |
| { hr = true, name = "Direction Y", id = "BackLightDirY", category = "Back Light", editor = "number", default = ThreePointLightingDefaults.BackLightDirY, read_only = true }, | |
| { hr = true, name = "Direction Z", id = "BackLightDirZ", category = "Back Light", editor = "number", default = ThreePointLightingDefaults.BackLightDirZ, read_only = true }, | |
| { hr = true, name = "Color", id = "BackLightColor", category = "Back Light", editor = "color", default = ThreePointLightingDefaults.BackLightColor, alpha = false }, | |
| { hr = true, name = "Intensity", id = "BackLightIntensity", category = "Back Light", editor = "number", default = ThreePointLightingDefaults.BackLightIntensity, slider = true, min = 0, max = 255, scale = 255 }, | |
| { name = "View Type", id = "ViewType", category = "Camera", editor = "choice", default = 2, items = { { text = "Disable", value = 0 }, { text = "Camera", value = 1 }, { text = "Reference", value = 2 } }, dont_save = true }, | |
| { hr = true, name = "Angle", id = "TPLCameraAngle", category = "Camera", editor = "number", default = ThreePointLightingDefaults.TPLCameraAngle, read_only = true }, | |
| { hr = true, name = "Direction X", id = "TPLCameraDirX", category = "Camera", editor = "number", default = ThreePointLightingDefaults.TPLCameraDirX, read_only = true }, | |
| { hr = true, name = "Direction Y", id = "TPLCameraDirY", category = "Camera", editor = "number", default = ThreePointLightingDefaults.TPLCameraDirY, read_only = true }, | |
| { hr = true, name = "Direction Z", id = "TPLCameraDirZ", category = "Camera", editor = "number", default = ThreePointLightingDefaults.TPLCameraDirZ, read_only = true }, | |
| }, | |
| KeyLight = false, | |
| FillLight = false, | |
| BackLight = false, | |
| Camera = false, | |
| Model1 = false, | |
| Model2 = false, | |
| } | |
| DefineClass.TPLControlObj = { | |
| __parents = { "EditorVisibleObject", "EditorCallbackObject", "Object" }, | |
| entity = "PointLight", | |
| Name = "" | |
| } | |
| if FirstLoad then | |
| g_TPLEditor = false | |
| g_LastViewType = 2 | |
| end | |
| function TPLControlObj:Init() | |
| if IsEditorActive() then | |
| self:EditorEnter() | |
| else | |
| self:EditorExit() | |
| end | |
| self:SetScale(40) | |
| self:SetAxis( | |
| g_TPLEditor:GetProperty(self.Name .. "DirX"), | |
| g_TPLEditor:GetProperty(self.Name .. "DirY"), | |
| g_TPLEditor:GetProperty(self.Name .. "DirZ") | |
| ) | |
| self:SetAngle( | |
| g_TPLEditor:GetProperty(self.Name .. "Angle") | |
| ) | |
| end | |
| function TPLControlObj:EditorCallbackRotate() | |
| g_TPLEditor:SetProperty(self.Name .. "DirX", self:GetAxis():x()) | |
| g_TPLEditor:SetProperty(self.Name .. "DirY", self:GetAxis():y()) | |
| g_TPLEditor:SetProperty(self.Name .. "DirZ", self:GetAxis():z()) | |
| g_TPLEditor:SetProperty(self.Name .. "Angle", self:GetAngle()) | |
| g_TPLEditor:Apply() | |
| ObjModified(g_TPLEditor) | |
| end | |
| function OnMsg.AfterLightmodelChange(_, lightmodel, _, prev_lightmodel) | |
| if g_TPLEditor then | |
| g_TPLEditor:Apply() | |
| end | |
| end | |
| function ThreePointLighting:OnEditorSelect(selected) | |
| if selected then | |
| g_TPLEditor = self | |
| self:Apply() | |
| self.ViewType = g_LastViewType | |
| table.change(hr, "ThreePointLighting", { | |
| EnableThreePointLighting = self.ViewType | |
| }) | |
| local central_pos = GetTerrainCursorXY(UIL.GetScreenSize()/2) | |
| self.KeyLight = PlaceObject("TPLControlObj", { Name = "KeyLight" }) | |
| self.KeyLight:SetPos(central_pos + point(-2, -2, 1) * guim) | |
| local key_light_text = Text:new{ editor_ignore = true } | |
| key_light_text:SetText("Key Light") | |
| self.KeyLight:Attach(key_light_text) | |
| self.FillLight = PlaceObject("TPLControlObj", { Name = "FillLight" }) | |
| self.FillLight:SetPos(central_pos + point(2, -2, 1) * guim) | |
| local fill_light_text = Text:new{ editor_ignore = true } | |
| fill_light_text:SetText("Fill Light") | |
| self.FillLight:Attach(fill_light_text) | |
| self.BackLight = PlaceObject("TPLControlObj", { Name = "BackLight" }) | |
| self.BackLight:SetPos(central_pos + point(0, 8, 1) * guim) | |
| local back_light_text = Text:new{ editor_ignore = true } | |
| back_light_text:SetText("Back Light") | |
| self.BackLight:Attach(back_light_text) | |
| self.Camera = PlaceObject("TPLControlObj", { Name = "TPLCamera" }) | |
| self.Camera:ChangeEntity("Camera") | |
| self.Camera:SetPos(central_pos + point(0, -2, 1) * guim) | |
| local camera_text = Text:new{ editor_ignore = true } | |
| camera_text:SetText("Camera") | |
| self.Camera:Attach(camera_text) | |
| local setup_model = function(model) | |
| model:SetAngle(-90 * 60) | |
| model:SetHierarchyGameFlags(const.gofUnitLighting) | |
| end | |
| self.Model1 = PlaceObject("AppearanceObject") | |
| self.Model1:ApplyAppearance("Barry") | |
| self.Model1:SetPos(central_pos + point(1, 0) * guim) | |
| self.Model1:SetAngle(-90 * 60) | |
| setup_model(self.Model1) | |
| self.Model2 = PlaceObject("AppearanceObject") | |
| self.Model2:ApplyAppearance("Buns") | |
| self.Model2:SetPos(central_pos + point(-1, 0) * guim) | |
| setup_model(self.Model2) | |
| else | |
| g_TPLEditor = false | |
| g_LastViewType = self.ViewType | |
| table.restore(hr, "ThreePointLighting") | |
| DoneObject(self.Camera) | |
| DoneObject(self.KeyLight) | |
| DoneObject(self.FillLight) | |
| DoneObject(self.BackLight) | |
| DoneObject(self.Model1) | |
| DoneObject(self.Model2) | |
| if LastSetLightmodel then | |
| SetLightmodel(1, LastSetLightmodel[1], 0) | |
| end | |
| end | |
| end | |
| function ThreePointLighting:SetViewType(value) | |
| self.ViewType = value | |
| table.restore(hr, "ThreePointLighting") | |
| table.change(hr, "ThreePointLighting", { | |
| EnableThreePointLighting = value | |
| }) | |
| end |