public ViewerEnvironment Clone() { // im lazy need to proper clone later OSD osd = ToOSD(); ViewerEnvironment VEnv = new ViewerEnvironment(); VEnv.FromOSD(osd); return(VEnv); }
public void FromWLOSD(string name, OSD osd) { Vector4 v4tmp; OSDMap map = osd as OSDMap; v4tmp = map["ambient"]; ambient = new Vector3(v4tmp.X, v4tmp.Y, v4tmp.Z); v4tmp = map["blue_density"]; blue_density = new Vector3(v4tmp.X, v4tmp.Y, v4tmp.Z); v4tmp = map["blue_horizon"]; blue_horizon = new Vector3(v4tmp.X, v4tmp.Y, v4tmp.Z); v4tmp = map["cloud_color"]; cloud_color = new Vector3(v4tmp.X, v4tmp.Y, v4tmp.Z); v4tmp = map["cloud_pos_density1"]; cloud_pos_density1 = new Vector3(v4tmp.X, v4tmp.Y, v4tmp.Z); v4tmp = map["cloud_pos_density2"]; cloud_pos_density2 = new Vector3(v4tmp.X, v4tmp.Y, v4tmp.Z); v4tmp = map["cloud_scale"]; cloud_scale = v4tmp.X; cloud_scroll_rate = map["cloud_scroll_rate"]; cloud_scroll_rate.X -= 10f; cloud_scroll_rate.Y -= 10f; v4tmp = map["cloud_shadow"]; cloud_shadow = v4tmp.X; v4tmp = map["density_multiplier"]; density_multiplier = v4tmp.X; v4tmp = map["distance_multiplier"]; distance_multiplier = v4tmp.X; Vector2 v2tmp = map["enable_cloud_scroll"]; if (v2tmp.X == 0) { cloud_scroll_rate.X = 0; } if (v2tmp.Y == 0) { cloud_scroll_rate.Y = 0; } v4tmp = map["gamma"]; gamma = v4tmp.X; v4tmp = map["glow"]; glow = new Vector3(v4tmp.X, v4tmp.Y, v4tmp.Z); v4tmp = map["haze_density"]; haze_density = v4tmp.X; v4tmp = map["haze_horizon"]; haze_horizon = v4tmp.X; //lightnorm = map["lightnorm"]; v4tmp = map["max_y"]; max_y = v4tmp.X; star_brightness = map["star_brightness"] * 250.0f; sunlight_color = map["sunlight_color"]; ViewerEnvironment.convertFromAngles(this, map["sun_angle"], map["east_angle"]); Name = name; }
public LandData() { _globalID = UUID.Random(); SeeAVs = true; AnyAVSounds = true; GroupAVSounds = true; LastDwellTimeMS = Util.GetTimeStampMS(); EnvironmentVersion = -1; Environment = null; }
public static ViewerEnvironment FromOSDString(string s) { try { OSD eosd = OSDParser.Deserialize(s); ViewerEnvironment VEnv = new ViewerEnvironment(); VEnv.FromOSD(eosd); return(VEnv); } catch { } return(null); }
public static string ToOSDString(ViewerEnvironment VEnv, bool xml = false) { try { OSD eosd = VEnv.ToOSD(); if (xml) { return(OSDParser.SerializeLLSDXmlString(eosd)); } else { return(OSDParser.SerializeLLSDNotationFull(eosd)); } } catch {} return(String.Empty); }
public OSD ToWLOSD() { OSDMap map = new OSDMap(); float sun_angle; float east_angle; Vector4 lightnorm; ViewerEnvironment.convertToAngles(this, out sun_angle, out east_angle, out lightnorm); map["ambient"] = new Vector4(ambient.X, ambient.Y, ambient.Z, 1); map["blue_density"] = new Vector4(blue_density.X, blue_density.Y, blue_density.Z, 1); map["blue_horizon"] = new Vector4(blue_horizon.X, blue_horizon.Y, blue_horizon.Z, 1); map["cloud_color"] = new Vector4(cloud_color.X, cloud_color.Y, cloud_color.Z, 1);; map["cloud_pos_density1"] = new Vector4(cloud_pos_density1.X, cloud_pos_density1.Y, cloud_pos_density1.Z, 1); map["cloud_pos_density2"] = new Vector4(cloud_pos_density2.X, cloud_pos_density2.Y, cloud_pos_density2.Z, 1); map["cloud_scale"] = new Vector4(cloud_scale, 0, 0, 1); map["cloud_scroll_rate"] = new Vector2(cloud_scroll_rate.X + 10f, cloud_scroll_rate.Y + 10f); map["cloud_shadow"] = new Vector4(cloud_shadow, 0, 0, 1); map["density_multiplier"] = new Vector4(density_multiplier, 0, 0, 1); map["distance_multiplier"] = new Vector4(distance_multiplier, 0, 0, 1); map["east_angle"] = east_angle; map["enable_cloud_scroll"] = new OSDArray { cloud_scroll_rate.X != 0, cloud_scroll_rate.Y != 0 }; map["gamma"] = new Vector4(gamma, 0, 0, 1); map["glow"] = new Vector4(glow.X, glow.Y, glow.Z, 1); map["haze_density"] = new Vector4(haze_density, 0, 0, 1); map["haze_horizon"] = new Vector4(haze_horizon, 0, 0, 1); map["lightnorm"] = lightnorm; map["max_y"] = new Vector4(max_y, 0, 0, 1); map["name"] = Name; map["star_brightness"] = star_brightness / 250.0f; map["sun_angle"] = sun_angle; map["sunlight_color"] = sunlight_color; return(map); }