public static void SetVolumeTexture(this Material material, string name, VolumeTexture vt) { material.SetVector(VolumePaintingPlugin.VOLUME_POSITION_N_SIZE, vt.PosNsize4Shader); material.SetVector(VolumePaintingPlugin.VOLUME_H_SLICES, vt.Slices4Shader); material.SetTexture(name, vt.ImageData.CurrentTexture()); }
public static void SetVolumeTexture(this List <Material> materials, string name, VolumeTexture vt) { if (vt == null || vt.ImageData == null) { return; } var PnS = vt.PosNsize4Shader; var VhS = vt.Slices4Shader; foreach (var m in materials) { if (m != null) { m.SetVector(VolumePaintingPlugin.VOLUME_POSITION_N_SIZE, PnS); m.SetVector(VolumePaintingPlugin.VOLUME_H_SLICES, VhS); m.SetTexture(name, vt.ImageData.CurrentTexture()); } } }
public void PrepareVolumeBlit(BrushConfig bc, ImageData id, float alpha, StrokeVector stroke, VolumeTexture volume) { PrepareBlit(bc, id, alpha, stroke); pos = (stroke.posFrom - volume.transform.position) / volume.size + 0.5f * Vector3.one; isVolumeBlit = true; slices = volume.h_slices; volHeight = volume.Height; texWidth = id.width; }