Skip to content

Commit 53a3cf2

Browse files
Fix #693 (error "Trying to create a material from string - this is no longer supported.")
1 parent e55430c commit 53a3cf2

File tree

3 files changed

+29
-6
lines changed

3 files changed

+29
-6
lines changed

src/RemoteTech/NetworkRenderer.cs

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ public MapFilter Filter {
4444
private readonly HashSet<BidirectionalEdge<ISatellite>> mEdges = new HashSet<BidirectionalEdge<ISatellite>>();
4545
private readonly List<NetworkLine> mLines = new List<NetworkLine>();
4646
private readonly List<NetworkCone> mCones = new List<NetworkCone>();
47+
private static float mLineWidth = 1f;
4748

4849
public bool ShowOmni { get { return (Filter & MapFilter.Omni) == MapFilter.Omni; } }
4950
public bool ShowDish { get { return (Filter & MapFilter.Dish) == MapFilter.Dish; } }
@@ -58,6 +59,22 @@ public MapFilter Filter {
5859
static NetworkRenderer()
5960
{
6061
RTUtil.LoadImage(out mTexMark, "mark");
62+
63+
if(Versioning.version_major == 1)
64+
{
65+
switch(Versioning.version_minor)
66+
{
67+
case 3:
68+
mLineWidth = 3f; //1f is too thin in 1.3
69+
break;
70+
case 4:
71+
mLineWidth = 1f; //1f is matching to CommNet's line width
72+
break;
73+
default:
74+
mLineWidth = 1f;
75+
break;
76+
}
77+
}
6178
}
6279

6380
public static NetworkRenderer CreateAndAttach()
@@ -237,8 +254,7 @@ private void UpdateNetworkCones()
237254
if (!center.HasValue) continue;
238255

239256
mCones[i] = mCones[i] ?? NetworkCone.Instantiate();
240-
mCones[i].Material = MapView.fetch.orbitLinesMaterial;
241-
mCones[i].LineWidth = 2.0f;
257+
mCones[i].LineWidth = mLineWidth;
242258
mCones[i].Antenna = antennas[i];
243259
mCones[i].Color = Color.gray;
244260
mCones[i].Active = ShowCone;
@@ -267,8 +283,7 @@ private void UpdateNetworkEdges()
267283
{
268284
it.MoveNext();
269285
mLines[i] = mLines[i] ?? NetworkLine.Instantiate();
270-
mLines[i].Material = MapView.fetch.orbitLinesMaterial;
271-
mLines[i].LineWidth = 3.0f;
286+
mLines[i].LineWidth = mLineWidth;
272287
mLines[i].Edge = it.Current;
273288
mLines[i].Color = CheckColor(it.Current);
274289
mLines[i].Active = true;

src/RemoteTech/UI/NetworkCone.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ namespace RemoteTech.UI
66
{
77
public class NetworkCone : MonoBehaviour
88
{
9+
private static Material CommNetMaterial = null;
10+
911
public Vector3d Center
1012
{
1113
set
@@ -55,11 +57,13 @@ public static NetworkCone Instantiate()
5557

5658
public void Awake()
5759
{
60+
if (CommNetMaterial == null) { CommNetMaterial = Resources.Load<Material>("Telemetry/TelemetryMaterial"); }
61+
5862
SetupMesh();
5963
gameObject.layer = 31;
6064
LineWidth = 1.0f;
6165
Color = Color.white;
62-
Material = new Material("Shader \"Vertex Colors/Alpha\" {Category{Tags {\"Queue\"=\"Transparent\" \"IgnoreProjector\"=\"True\" \"RenderType\"=\"Transparent\"}SubShader {Cull Off ZWrite On Blend SrcAlpha OneMinusSrcAlpha Pass {BindChannels {Bind \"Color\", color Bind \"Vertex\", vertex}}}}}");
66+
Material = CommNetMaterial;
6367
}
6468

6569
private void UpdateMesh(Vector3d center, IAntenna dish)

src/RemoteTech/UI/NetworkLine.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ namespace RemoteTech.UI
66
{
77
public class NetworkLine : MonoBehaviour
88
{
9+
private static Material CommNetMaterial = null;
10+
911
public BidirectionalEdge<ISatellite> Edge
1012
{
1113
set
@@ -53,11 +55,13 @@ public static NetworkLine Instantiate()
5355

5456
public void Awake()
5557
{
58+
if (CommNetMaterial == null) { CommNetMaterial = Resources.Load<Material>("Telemetry/TelemetryMaterial"); }
59+
5660
SetupMesh();
5761
gameObject.layer = 31;
5862
LineWidth = 1.0f;
5963
Color = Color.white;
60-
Material = new Material("Shader \"Vertex Colors/Alpha\" {Category{Tags {\"Queue\"=\"Transparent\" \"IgnoreProjector\"=\"True\" \"RenderType\"=\"Transparent\"}SubShader {Cull Off ZWrite On Blend SrcAlpha OneMinusSrcAlpha Pass {BindChannels {Bind \"Color\", color Bind \"Vertex\", vertex}}}}}");
64+
Material = CommNetMaterial;
6165
}
6266

6367
private void UpdateMesh(BidirectionalEdge<ISatellite> edge)

0 commit comments

Comments
 (0)