private void Update() { if ((this.prefabRendering != this.prefab) || !this.oi) { if (this.prefabRendering != null) { this.renderer = null; } if (this.prefab != null) { this.renderer = PrefabRenderer.GetOrCreateRender(this.prefab); } this.prefabRendering = this.prefab; this.oi = true; this.ApplyOverrides(); } if (this.renderer == null) { Debug.Log("None", this); } else { this.renderer.Render(null, base.transform.localToWorldMatrix, null, this.overrideMaterials); } }
public virtual void RenderDeployPreview(Vector3 point, Quaternion rot, TransCarrier carrier) { if (this._aimGizmo != null) { this._aimGizmo.rotation = rot; this._aimGizmo.position = point; } if (this._prefabRenderer == null) { DeployableObject objectToPlace = this.datablock.ObjectToPlace; if (!objectToPlace) { return; } this._prefabRenderer = PrefabRenderer.GetOrCreateRender(objectToPlace.gameObject); } Material material = (T)this.datablock.overrideMat; if (!material) { PrefabRenderer prefabRenderer = this._prefabRenderer; Camera camera = MountedCamera.main.camera; T t = this.datablock; prefabRenderer.Render(camera, Matrix4x4.TRS(point, rot, t.ObjectToPlace.transform.localScale), this._aimGizmo.propertyBlock, null); } else { PrefabRenderer prefabRenderer1 = this._prefabRenderer; Camera camera1 = MountedCamera.main.camera; T t1 = this.datablock; prefabRenderer1.RenderOneMaterial(camera1, Matrix4x4.TRS(point, rot, t1.ObjectToPlace.transform.localScale), this._aimGizmo.propertyBlock, material); } if (this._aimGizmo != null) { bool flag = false; if (carrier) { Renderer renderer = carrier.renderer; if (renderer is MeshRenderer && renderer && renderer.enabled) { flag = true; this._aimGizmo.carrierRenderer = (MeshRenderer)renderer; } } if (!flag) { this._aimGizmo.carrierRenderer = null; } } }
public virtual void RenderDeployPreview(Vector3 point, Quaternion rot, TransCarrier carrier) { if (this._aimGizmo != null) { this._aimGizmo.rotation = rot; this._aimGizmo.position = point; } if (this._prefabRenderer == null) { DeployableObject objectToPlace = base.datablock.ObjectToPlace; if (objectToPlace == null) { return; } this._prefabRenderer = PrefabRenderer.GetOrCreateRender(objectToPlace.gameObject); } Material overrideMat = base.datablock.overrideMat; if (overrideMat != null) { this._prefabRenderer.RenderOneMaterial(MountedCamera.main.camera, Matrix4x4.TRS(point, rot, base.datablock.ObjectToPlace.transform.localScale), this._aimGizmo.propertyBlock, overrideMat); } else { this._prefabRenderer.Render(MountedCamera.main.camera, Matrix4x4.TRS(point, rot, base.datablock.ObjectToPlace.transform.localScale), this._aimGizmo.propertyBlock, null); } if (this._aimGizmo != null) { bool flag = false; if (carrier != null) { Renderer renderer = carrier.renderer; if (((renderer is MeshRenderer) && (renderer != null)) && renderer.enabled) { flag = true; this._aimGizmo.carrierRenderer = (MeshRenderer)renderer; } } if (!flag) { this._aimGizmo.carrierRenderer = null; } } }
public virtual void RenderDeployPreview(Vector3 point, Quaternion rot) { if (this._prefabRenderer == null) { StructureComponent structureToPlacePrefab = base.datablock.structureToPlacePrefab; if (structureToPlacePrefab == null) { return; } this._prefabRenderer = PrefabRenderer.GetOrCreateRender(structureToPlacePrefab.gameObject); this._materialProps = new MaterialPropertyBlock(); } Material overrideMat = base.datablock.overrideMat; if (overrideMat != null) { this._prefabRenderer.RenderOneMaterial(MountedCamera.main.camera, Matrix4x4.TRS(point, rot, Vector3.one), this._materialProps, overrideMat); } else { this._prefabRenderer.Render(MountedCamera.main.camera, Matrix4x4.TRS(point, rot, Vector3.one), this._materialProps, null); } }