1
0
mirror of https://github.com/AcChosen/VR-Stage-Lighting.git synced 2024-11-23 23:21:07 +01:00

VRSL 2.4.1 Update

- Added Alternative Strobe texture settings. Toggle to switch from traditional dynamic DMX strobing to a 3 speed strobe channel. Affects all fixtures.
- Adjusted all VRSL materials and a few textures to prepare for GI release.
- Added ability to edit VRSL DMX Custom Render Textures in the VRSL Control Panel.
- Added ability to set 2D Noise Texture settings between high and medium modes for the spotlight and washlight volumetric DMX shaders.
This commit is contained in:
AcChosen 2023-08-08 17:15:42 -04:00
parent 209b4217a5
commit b360082e91
53 changed files with 891 additions and 384 deletions

View File

@ -104,6 +104,7 @@ public class VRSLInspector : ShaderGUI
MaterialProperty _NoiseTex = null;
MaterialProperty _NoiseTexHigh = null;
MaterialProperty _NoisePower = null;
MaterialProperty _Noise2X = null;
MaterialProperty _Noise2Y = null;
@ -135,7 +136,8 @@ public class VRSLInspector : ShaderGUI
MaterialProperty _MAGIC_NOISE_ON = null;
MaterialProperty _MAGIC_NOISE_ON_HIGH = null;
MaterialProperty _MAGIC_NOISE_ON_MED = null;
MaterialProperty _2D_NOISE_ON = null;
MaterialProperty _UseDepthLight = null;
MaterialProperty _PotatoMode = null;
@ -238,6 +240,10 @@ public class VRSLInspector : ShaderGUI
//Strobe RenderTexture
MaterialProperty _MaxStrobeFreq = null;
MaterialProperty _LowFrequency = null;
MaterialProperty _MedFrequency = null;
MaterialProperty _HighFrequency = null;
MaterialProperty _StrobeType = null;
//Texture Color Sampling Stuff
MaterialProperty _TextureColorSampleX = null;
@ -1297,8 +1303,17 @@ public class VRSLInspector : ShaderGUI
if((Mathf.FloorToInt(target.GetInt("_2D_NOISE_ON"))) == 1)
{
EditorGUI.indentLevel++;
matEditor.TexturePropertySingleLine(new GUIContent("Noise Texture", "Alpha Noise Texture used for adding variation to the cone."), _NoiseTex);
matEditor.TextureScaleOffsetProperty(_NoiseTex);
if(target.GetInt("_RenderMode") == 0)
{
matEditor.TexturePropertySingleLine(new GUIContent("Noise Texture HQ", "Alpha Noise Texture used for adding variation to the cone."), _NoiseTexHigh);
matEditor.TextureScaleOffsetProperty(_NoiseTexHigh);
}
else
{
matEditor.TexturePropertySingleLine(new GUIContent("Noise Texture", "Alpha Noise Texture used for adding variation to the cone."), _NoiseTex);
matEditor.TextureScaleOffsetProperty(_NoiseTex);
}
matEditor.ShaderProperty(_NoisePower, new GUIContent("Noise Strength", "Controls how much the noise texture affects the cone"));
EditorGUI.indentLevel--;
}
@ -1308,13 +1323,26 @@ public class VRSLInspector : ShaderGUI
//if(!isDMXCompatible)
//{
if((Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON"))) == 1)
string magicNoiseString = "_MAGIC_NOISE_ON_MED";
MaterialProperty magicNoiseProp = _MAGIC_NOISE_ON_MED;
string magicNoiseSuffix = "Transparent";
if(target.GetInt("_RenderMode") == 0)
{
magicNoiseString = "_MAGIC_NOISE_ON_HIGH";
magicNoiseProp = _MAGIC_NOISE_ON_HIGH;
magicNoiseSuffix = "HQTransparent";
}
if((Mathf.FloorToInt(target.GetInt(magicNoiseString))) == 1 && target.GetInt("_RenderMode") != 2)
{
matEditor.ShaderProperty(_MAGIC_NOISE_ON, new GUIContent("Enable Magic 3D Noise", "Enable Second layer of world space, faux 3D Noise"));
matEditor.ShaderProperty(magicNoiseProp, new GUIContent("Enable Magic 3D Noise For: " + magicNoiseSuffix, "Enable Second layer of world space, faux 3D Noise"));
EditorGUILayout.LabelField("Potato Mode is unavailable. Disable Magic 3D Noise to enable Potato Mode.");
matEditor.TexturePropertySingleLine(new GUIContent("Magic 3D Noise Texture", "A magical texture for generating 3D Perlin Noise at runtime! Code and texture based on https://www.shadertoy.com/view/4sfGzS by iq!"), _LightMainTex);
EditorGUI.indentLevel++;
matEditor.TexturePropertySingleLine(new GUIContent("Magic 3D Noise Texture", "A magical texture for generating 3D Perlin Noise at runtime! Code and texture based on https://www.shadertoy.com/view/4sfGzS by iq!"), _LightMainTex);
// if((Mathf.FloorToInt(target.GetInt("_PotatoMode"))) == 1)
// {
// EditorGUILayout.LabelField("HQ Mode is unavailable. Disable Potato Mode to enable Potato HQ.");
@ -1384,18 +1412,25 @@ public class VRSLInspector : ShaderGUI
}
EditorGUI.indentLevel--;
}
else if((Mathf.FloorToInt(target.GetInt("_PotatoMode"))) == 1)
else if((Mathf.FloorToInt(target.GetInt("_PotatoMode"))) == 1 && target.GetInt("_RenderMode") != 2)
{
EditorGUILayout.LabelField("Magic 3D Noise is unavailable. Disable Potato Mode to enable Magic 3D Noise.");
matEditor.ShaderProperty(_PotatoMode, new GUIContent("Potato Mode", "Reduces the overhead on the fragment shader by removing both noise components to extra texture sampling."));
}
else if(target.GetInt("_RenderMode") ==2)
{
EditorGUILayout.LabelField("Magic 3D Noise is unavailable. Use Transparent or HQTransparent Render Mode to enable Magic 3D Noise.");
}
else
{
matEditor.ShaderProperty(_MAGIC_NOISE_ON, new GUIContent("Enable Magic 3D Noise", "Enable Second layer of world space, faux 3D Noise"));
matEditor.ShaderProperty(magicNoiseProp, new GUIContent("Enable Magic 3D Noise For: " + magicNoiseSuffix, "Enable Second layer of world space, faux 3D Noise"));
matEditor.ShaderProperty(_PotatoMode, new GUIContent("Potato Mode", "Reduces the overhead on the fragment shader by removing both noise components to extra texture sampling."));
}
SetKeyword(target, "_MAGIC_NOISE_ON", (Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON"))) == 1 ? true : false);
SetKeyword(target, "_MAGIC_NOISE_ON_HIGH", (Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON_HIGH"))) == 1 ? true : false);
SetKeyword(target, "_MAGIC_NOISE_ON_MED", (Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON_MED"))) == 1 ? true : false);
SetKeyword(target, "_USE_DEPTH_LIGHT", (Mathf.FloorToInt(target.GetInt("_UseDepthLight"))) == 1 ? true : false);
SetKeyword(target, "_POTATO_MODE_ON", (Mathf.FloorToInt(target.GetInt("_PotatoMode"))) == 1 ? true : false);
SetKeyword(target, "_HQ_MODE", (Mathf.FloorToInt(target.GetInt("_HQMode"))) == 1 ? true : false);
@ -1739,7 +1774,22 @@ public class VRSLInspector : ShaderGUI
GUILayout.Space(5);
EditorGUI.indentLevel++;
matEditor.TexturePropertySingleLine(new GUIContent("DMX Grid Raw", "The raw DMX Render texture from the camera."),_DMXTexture);
matEditor.ShaderProperty(_MaxStrobeFreq, new GUIContent("Maximum Strobe Frequency", "The maximum strobing frequency of all fixtures."));
matEditor.ShaderProperty(_StrobeType, new GUIContent("Strobe Mode", "Choose between a smooth dynamic strobe rate or static pre set rates. Static rates are frame rate independent."));
SetKeyword(target, "_VRSL_STATICFREQUENCIES",target.GetInt("_StrobeType") == 1);
if(target.GetInt("_StrobeType") == 1)
{
EditorGUI.indentLevel++;
matEditor.ShaderProperty(_LowFrequency, new GUIContent("Low Frequency"));
matEditor.ShaderProperty(_MedFrequency, new GUIContent("Medium Frequency"));
matEditor.ShaderProperty(_HighFrequency, new GUIContent("High Frequency"));
EditorGUI.indentLevel--;
}
else
{
EditorGUI.indentLevel++;
matEditor.ShaderProperty(_MaxStrobeFreq, new GUIContent("Maximum Strobe Frequency", "The maximum strobing frequency of all fixtures."));
EditorGUI.indentLevel--;
}
matEditor.ShaderProperty(_NineUniverseMode, new GUIContent("Enable Extended Universe Mode", "Enables or Disables extended universe mode (9-universes via RGB)"));
matEditor.RenderQueueField();
EditorGUI.indentLevel--;

View File

@ -18,6 +18,7 @@ using System.Collections.Generic;
using System;
using System.Diagnostics.CodeAnalysis;
using System.Linq;
using UnityEngine.UIElements;
#endif
#if !COMPILER_UDONSHARP && UNITY_EDITOR
@ -262,6 +263,10 @@ public class DMXListItem
#pragma warning disable 0618 //suppressing obsoletion warnings
light.ApplyProxyModifications();
#pragma warning restore 0618 //suppressing obsoletion warnings
if(PrefabUtility.IsPartOfAnyPrefab(light))
{
PrefabUtility.RecordPrefabInstancePropertyModifications(light);
}
}
catch(Exception e)
{
@ -501,6 +506,10 @@ public class AudioLinkListItem
#pragma warning disable 0618 //suppressing obsoletion warnings
light.ApplyProxyModifications();
#pragma warning restore 0618 //suppressing obsoletion warnings
if(PrefabUtility.IsPartOfAnyPrefab(light))
{
PrefabUtility.RecordPrefabInstancePropertyModifications(light);
}
}
public void ApplyChanges(VRStageLighting_AudioLink_Laser li)
@ -566,6 +575,11 @@ public class AudioLinkListItem
#pragma warning disable 0618 //suppressing obsoletion warnings
laser.ApplyProxyModifications();
#pragma warning restore 0618 //suppressing obsoletion warnings
if(PrefabUtility.IsPartOfAnyPrefab(light))
{
PrefabUtility.RecordPrefabInstancePropertyModifications(light);
}
}
@ -607,6 +621,7 @@ public class VRSL_ManagerWindow : EditorWindow {
private static bool[] bandFold = new bool[4];
static GUIContent colorLabel;
private string[] dmxModes = new string[]{"Horizontal", "Vertical", "Legacy"};
private string[] materialChooserList = new string[]{"Off","Intensity+Color", "Movement", "Spin", "Strobe Timing", "Strobe Output", "AudioLink Interpolation"};
private string [] dmxGizmoInfo = new string[]{"None", "Channel Only", "Universe + Channel"};
private static UnityEngine.Object controlPanelUiPrefab, directionalLightPrefab, uDesktopHorizontalPrefab, uDesktopVerticalPrefab, uDesktopLegacyPrefab, uVidHorizontalPrefab, uVidVerticalPrefab, uVidLegacyPrefab,
audioLinkPrefab, audioLinkControllerPrefab, standardAudioLinkControllerPrefab, oscGridReaderHorizontalPrefab, oscGridReaderVerticalPrefab, audioLinkVRSLPrefab, cubeMask, cylinderMask, capsuleMask, sphereMask;
@ -626,9 +641,23 @@ public class VRSL_ManagerWindow : EditorWindow {
private static UnityEngine.Object laser_h, laser_v, laser_l, laser_a;
private static UnityEngine.Object sixFour_h, sixFour_v, sixFour_l;
private static UnityEngine.Object multiLightbar_h, multiLightbar_v, multiLightbar_l;
private Material dmx_H_CRT_Color_Mat, dmx_V_CRT_Color_Mat, dmx_L_CRT_Color_Mat,
dmx_H_CRT_Mvmt_Mat, dmx_V_CRT_Mvmt_Mat, dmx_L_CRT_Mvmt_Mat,
dmx_H_CRT_Spin_Mat,dmx_V_CRT_Spin_Mat,dmx_L_CRT_Spin_Mat,
dmx_H_CRT_StrobeTime_Mat, dmx_V_CRT_StrobeTime_Mat, dmx_L_CRT_StrobeTime_Mat,
dmx_H_CRT_StrobeOut_Mat, dmx_V_CRT_StrobeOut_Mat, dmx_L_CRT_StrobeOut_Mat,
audiolink_CRT_InterpolationMat;
private MaterialEditor _materialEditor;
private bool showMaterialEditor;
private static DMXListItem copyDMXListProx;
private static AudioLinkListItem copyAudioLinkListProx;
private static Shader GIDMXLightTextureShader;
private static bool hasDMXGI;
private int materialChooser;
// private float panRangeTarget = 90f;
// private float tiltRangeTarget = -90f;
@ -660,6 +689,7 @@ public class VRSL_ManagerWindow : EditorWindow {
ApplyChangesToFixtures(true, true, false);
}
hasDMXGI = CheckIfDMXGIAvailable();
window.minSize = new Vector2(925f, 700f);
@ -671,6 +701,21 @@ public class VRSL_ManagerWindow : EditorWindow {
}
static bool CheckIfDMXGIAvailable()
{
string path = "Packages/com.acchosen.vrsl-dmx-gi/Runtime/Shaders/VRSL_GI_LightTexture.shader";
bool wasSuccessful = false;
try{
GIDMXLightTextureShader = (Shader)AssetDatabase.LoadAssetAtPath(path, typeof(Shader));
wasSuccessful = true;
}
catch(Exception e)
{
wasSuccessful = false;
}
return wasSuccessful;
}
// static VRSL_ManagerWindow()
// {
@ -1273,6 +1318,8 @@ public class VRSL_ManagerWindow : EditorWindow {
EditorApplication.hierarchyChanged += HierarchyChanged;
// EditorApplication.playModeStateChanged += LogPlayModeState;
SceneView.duringSceneGui += this.OnSceneGUI;
LoadMaterials();
hasDMXGI = CheckIfDMXGIAvailable();
}
void OnDisable( )
{
@ -1283,6 +1330,11 @@ public class VRSL_ManagerWindow : EditorWindow {
{
if(panel.fixtureGizmos == 0)
SceneView.duringSceneGui -= this.OnSceneGUI;
}
if (_materialEditor != null)
{
// Free the memory used by default MaterialEditor
DestroyImmediate (_materialEditor);
}
}
private void HierarchyChanged()
@ -1889,6 +1941,101 @@ public class VRSL_ManagerWindow : EditorWindow {
Repaint();
}
private void LoadMaterials()
{
string dmx_H_CRT_Color_Mat_path = AssetDatabase.GUIDToAssetPath("c23ee34d1d3977548829651c8cceea33");
string dmx_V_CRT_Color_Mat_path = AssetDatabase.GUIDToAssetPath("d2a0ea204b6092d49971eacf996dcec3");
string dmx_L_CRT_Color_Mat_path = AssetDatabase.GUIDToAssetPath("9a42fdd188c84e542be2a455485423a8");
string dmx_H_CRT_Mvmt_Mat_path = AssetDatabase.GUIDToAssetPath("144ac9f77364a7d4ea6e607f40c31505");
string dmx_V_CRT_Mvmt_Mat_path = AssetDatabase.GUIDToAssetPath("a949afd894bf9384bb57422931f130fc");
string dmx_L_CRT_Mvmt_Mat_path = AssetDatabase.GUIDToAssetPath("e79b2b00c4751b74ea6dacd87a9f41dd");
string dmx_H_CRT_Spin_Mat_path = AssetDatabase.GUIDToAssetPath("0de093d844c8ac146b98341787214c64");
string dmx_V_CRT_Spin_Mat_path = AssetDatabase.GUIDToAssetPath("1e05cea1a32288a47b1612ca4725ae2e");
string dmx_L_CRT_Spin_Mat_path = AssetDatabase.GUIDToAssetPath("d80a528643bc1c2418a6986cd3cf0141");
string dmx_H_CRT_StrobeTime_Mat_path = AssetDatabase.GUIDToAssetPath("742ce52797fea8948a8f4c438b0c3b69");
string dmx_V_CRT_StrobeTime_Mat_path = AssetDatabase.GUIDToAssetPath("05d3c32dd6873684283c962951dc067a");
string dmx_L_CRT_StrobeTime_Mat_path = AssetDatabase.GUIDToAssetPath("0f235f1aadc897344a6c8b3301b6f79e");
string dmx_H_CRT_StrobeOut_Mat_path = AssetDatabase.GUIDToAssetPath("038cddd0ea70e1d41ad37272c1e7c31c");
string dmx_V_CRT_StrobeOut_Mat_path = AssetDatabase.GUIDToAssetPath("fafb9a56ddc548e4dafd9cb0befa0e2e");
string dmx_L_CRT_StrobeOut_Mat_path = AssetDatabase.GUIDToAssetPath("8af3b80e2a7dd3e458aacc6701d4c657");
string audiolink_CRT_InterpolationMat_path = AssetDatabase.GUIDToAssetPath("91f76b2e00433a141b2ad6ada0c59a80");
// switch(a)
// {
//horizontal
// case 0:
try{
dmx_H_CRT_Color_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_H_CRT_Color_Mat_path, typeof(Material));
dmx_H_CRT_Mvmt_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_H_CRT_Mvmt_Mat_path, typeof(Material));
dmx_H_CRT_Spin_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_H_CRT_Spin_Mat_path, typeof(Material));
dmx_H_CRT_StrobeTime_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_H_CRT_StrobeTime_Mat_path, typeof(Material));
dmx_H_CRT_StrobeOut_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_H_CRT_StrobeOut_Mat_path, typeof(Material));
}
catch(Exception e)
{
// loadSuccessful = false;
Debug.Log("Could not load fixture prefab!");
e.ToString();
}
// break;
//vertical
// case 1:
try{
dmx_V_CRT_Color_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_V_CRT_Color_Mat_path, typeof(Material));
dmx_V_CRT_Mvmt_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_V_CRT_Mvmt_Mat_path, typeof(Material));
dmx_V_CRT_Spin_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_V_CRT_Spin_Mat_path, typeof(Material));
dmx_V_CRT_StrobeTime_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_V_CRT_StrobeTime_Mat_path, typeof(Material));
dmx_V_CRT_StrobeOut_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_V_CRT_StrobeOut_Mat_path, typeof(Material));
}
catch(Exception e)
{
// loadSuccessful = false;
Debug.Log("Could not load fixture prefab!");
e.ToString();
}
// break;
//legacy
// case 2:
try{
dmx_L_CRT_Color_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_L_CRT_Color_Mat_path, typeof(Material));
dmx_L_CRT_Mvmt_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_L_CRT_Mvmt_Mat_path, typeof(Material));
dmx_L_CRT_Spin_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_L_CRT_Spin_Mat_path, typeof(Material));
dmx_L_CRT_StrobeTime_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_L_CRT_StrobeTime_Mat_path, typeof(Material));
dmx_L_CRT_StrobeOut_Mat = (Material)AssetDatabase.LoadAssetAtPath(dmx_L_CRT_StrobeOut_Mat_path, typeof(Material));
}
catch(Exception e)
{
// loadSuccessful = false;
Debug.Log("Could not load fixture prefab!");
e.ToString();
}
// break;
//audiolink
// case 3:
try{
audiolink_CRT_InterpolationMat = (Material)AssetDatabase.LoadAssetAtPath(audiolink_CRT_InterpolationMat_path, typeof(Material));
}
catch(Exception e)
{
// loadSuccessful = false;
Debug.Log("Could not load fixture prefab!");
e.ToString();
}
// break;
// default:
// break;
// }
}
private bool LoadFixturePrefabs(int a)
{
bool loadSuccessful = true;
@ -2078,7 +2225,10 @@ public class VRSL_ManagerWindow : EditorWindow {
string laser_v_path = AssetDatabase.GUIDToAssetPath("55058c5ef8c22d04991b48a99a10acfe");
string laser_l_path = AssetDatabase.GUIDToAssetPath("55ac9bf95dc63bb4fb6ba2095d73cde2");
string laser_a_path = AssetDatabase.GUIDToAssetPath("75c269de381facb4cae616c67f83f519");
switch(a)
{
@ -2170,6 +2320,68 @@ public class VRSL_ManagerWindow : EditorWindow {
return loadSuccessful;
}
public void CreateMaterialGUI(Material _material)
{
//_material = AssetDatabase.LoadAssetAtPath<Material>("Assets/Material.mat");
// if(_material == null)
// {
// Debug.Log("Material is empty!");
// }
// else
// {
// Debug.Log("Material found!");
// }
if (_materialEditor != null)
{
DestroyImmediate(_materialEditor);
}
_materialEditor = (MaterialEditor)Editor.CreateEditor(_material);
// if(_materialEditor != e)
// {
// // DestroyImmediate (_materialEditor);
// _materialEditor = e;
// }
// else
// {
// DestroyImmediate (e);
// }
if (_materialEditor != null)
{
// _container = new IMGUIContainer(() =>
// {
_materialEditor.DrawHeader();
// bool isDefaultMaterial = false;
// if(_material != null)
// {
// isDefaultMaterial = !AssetDatabase.GetAssetPath (_material).StartsWith ("Assets");
// }
EditorGUILayout.BeginVertical();
// using (new EditorGUI.DisabledGroupScope(isDefaultMaterial))
// {
_materialEditor.OnInspectorGUI();
// }
EditorGUILayout.EndVertical();
// });
// rootVisualElement.Add(_container);
}
}
GUIStyle LongLabel(int m)
{
GUIStyle output = new GUIStyle("Label");
// output.margin.left += m;
// output.margin.right += m;
// output.padding.left += m;
// output.padding.right += m;
output.clipping = TextClipping.Overflow;
return output;
}
void OnGUI() {
DrawLogo();
ShurikenHeaderCentered(ver);
@ -2261,9 +2473,11 @@ public class VRSL_ManagerWindow : EditorWindow {
EditorGUI.BeginDisabledGroup(!panel.isUsingDMX);
var so = new SerializedObject(panel);
so.FindProperty("DMXMode").intValue = EditorGUILayout.Popup(Label("DMX Grid Mode", "Choose what grid type textures should be enabled for DMX mode. Unused textures will be disabled to save editor performance!"),panel.DMXMode, dmxModes);
so.FindProperty("fixtureGizmos").intValue = EditorGUILayout.Popup(Label("Show DMX Info In Scene", "Display DMX Channel and/or Universe information above each fixture in the scene view!"), panel.fixtureGizmos, dmxGizmoInfo);
so.FindProperty("useExtendedUniverses").boolValue = EditorGUILayout.ToggleLeft(Label("Use RGB Extended Universes (9-Universe Mode)", "Enable Extended Universe Mode. This will convert all fixtures to read an RGB grid that contains 9 universes of information instead a grayscale grid with 3 universes." +
"This only applies to the Vertical and Horizontal grid modes."),panel.useExtendedUniverses);
so.ApplyModifiedProperties();
EditorGUI.EndDisabledGroup();
EditorGUILayout.EndVertical();
@ -2422,6 +2636,136 @@ public class VRSL_ManagerWindow : EditorWindow {
EditorGUILayout.EndHorizontal();
}
EditorGUILayout.Space(4);
string matEditorPrefix = showMaterialEditor ? "Hide " : "Show ";
showMaterialEditor = EditorGUILayout.BeginFoldoutHeaderGroup(showMaterialEditor,Label(matEditorPrefix + "CRT Material Editor", "Show/Hide VRSL CRT Material Editors. "));
EditorGUILayout.EndFoldoutHeaderGroup();
if(showMaterialEditor)
{
EditorGUILayout.Space(4);
EditorGUILayout.BeginVertical("box");
EditorGUI.indentLevel++;
EditorGUILayout.PrefixLabel("Select A Custom Render Texture",followingStyle: "Popup", labelStyle: LongLabel(-10));
materialChooser = EditorGUILayout.Popup(materialChooser,materialChooserList, GUILayout.MaxWidth(350f));
switch(so.FindProperty("DMXMode").intValue)
{
default:
switch(materialChooser)
{
default:
break;
case 1:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_H_CRT_Color_Mat);
EditorGUILayout.EndVertical();
break;
case 2:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_H_CRT_Mvmt_Mat);
EditorGUILayout.EndVertical();
break;
case 3:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_H_CRT_Spin_Mat);
EditorGUILayout.EndVertical();
break;
case 4:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_H_CRT_StrobeTime_Mat);
EditorGUILayout.EndVertical();
break;
case 5:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_H_CRT_StrobeOut_Mat);
EditorGUILayout.EndVertical();
break;
case 6:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(audiolink_CRT_InterpolationMat);
EditorGUILayout.EndVertical();
break;
}
break;
case 1:
switch(materialChooser)
{
default:
break;
case 1:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_V_CRT_Color_Mat);
EditorGUILayout.EndVertical();
break;
case 2:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_V_CRT_Mvmt_Mat);
EditorGUILayout.EndVertical();
break;
case 3:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_V_CRT_Spin_Mat);
EditorGUILayout.EndVertical();
break;
case 4:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_V_CRT_StrobeTime_Mat);
EditorGUILayout.EndVertical();
break;
case 5:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_V_CRT_StrobeOut_Mat);
EditorGUILayout.EndVertical();
break;
case 6:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(audiolink_CRT_InterpolationMat);
EditorGUILayout.EndVertical();
break;
}
break;
case 2:
switch(materialChooser)
{
default:
break;
case 1:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_L_CRT_Color_Mat);
EditorGUILayout.EndVertical();
break;
case 2:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_L_CRT_Mvmt_Mat);
EditorGUILayout.EndVertical();
break;
case 3:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_L_CRT_Spin_Mat);
EditorGUILayout.EndVertical();
break;
case 4:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_L_CRT_StrobeTime_Mat);
EditorGUILayout.EndVertical();
break;
case 5:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(dmx_L_CRT_StrobeOut_Mat);
EditorGUILayout.EndVertical();
break;
case 6:
EditorGUILayout.BeginVertical();
CreateMaterialGUI(audiolink_CRT_InterpolationMat);
EditorGUILayout.EndVertical();
break;
}
break;
}
EditorGUI.indentLevel--;
EditorGUILayout.EndVertical();
}
EditorGUILayout.EndVertical();
//EditorGUILayout.Space();
@ -2838,8 +3182,15 @@ public class VRSL_ManagerWindow : EditorWindow {
EditorGUILayout.EndHorizontal();
// panel.useLegacyStaticLights = so.FindProperty("useLegacyStaticLights").boolValue;
// panel.useLegacyStaticLights = EditorGUILayout.Toggle("Use Legacy Static Lights", panel.useLegacyStaticLights);
EditorGUILayout.BeginHorizontal();
soptr.FindProperty("useLegacyStaticLights").boolValue = EditorGUILayout.ToggleLeft("Use Old 13 Channel Static Lights (Not Recommended)", panel.useLegacyStaticLights);
// if(hasDMXGI)
// {
// soptr.FindProperty("useDMXGI").boolValue = EditorGUILayout.ToggleLeft("Enable DMX GI Prefabs", panel.useDMXGI);
// }
EditorGUILayout.EndHorizontal();
}
@ -3281,7 +3632,10 @@ public class VRSL_ManagerWindow : EditorWindow {
EditorGUILayout.EndFoldoutHeaderGroup();
//GUILayout.Space(2.0f);
if(PrefabUtility.IsPartOfAnyPrefab(fixture.light))
{
PrefabUtility.RecordPrefabInstancePropertyModifications(fixture.light);
}
}
// EditorGUILayout.EndVertical();
// EditorGUILayout.EndHorizontal();
@ -3587,6 +3941,10 @@ public class VRSL_ManagerWindow : EditorWindow {
EditorGUILayout.EndFoldoutHeaderGroup();
}
}
if(PrefabUtility.IsPartOfAnyPrefab(fixture.light))
{
PrefabUtility.RecordPrefabInstancePropertyModifications(fixture.light);
}
}
}

View File

@ -94,7 +94,7 @@ Material:
- _OcclusionStrength: 1
- _Parallax: 0.02
- _Sector: 0
- _SmoothValue: 0.6
- _SmoothValue: 0.755
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1

View File

@ -9,7 +9,7 @@ Material:
m_PrefabAsset: {fileID: 0}
m_Name: DMXRTMaterial-StrobeTimings-Horizontal
m_Shader: {fileID: 4800000, guid: 70d085252a756e54e96824cb28a38a48, type: 3}
m_ShaderKeywords: _NINEUNIVERSEMODE_ON
m_ShaderKeywords: _NINEUNIVERSEMODE_ON _VRSL_STATICFREQUENCIES
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
@ -32,7 +32,11 @@ Material:
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _MaxStrobeFreq: 75
- _HighFrequency: 75
- _LowFrequency: 40
- _MaxStrobeFreq: 185
- _MedFrequency: 60
- _NineUniverseMode: 0
- _SmoothValue: 0.5
- _StrobeType: 1
m_Colors: []

View File

@ -32,7 +32,11 @@ Material:
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _HighFrequency: 75
- _LowFrequency: 25
- _MaxStrobeFreq: 100
- _MedFrequency: 50
- _NineUniverseMode: 0
- _SmoothValue: 0.5
- _StrobeType: 0
m_Colors: []

View File

@ -10,8 +10,8 @@ Material:
m_Name: VRSL-AudioLink-StandardMover-VolumetricMat
m_Shader: {fileID: 4800000, guid: a9ae9924e60e8b04293b700af7aba257, type: 3}
m_ShaderKeywords: _2D_NOISE_ON _DNENABLER_NONE _ENABLEOSC_ON _ENABLESPIN_ON _GOBOBEAMSPLITENABLE_ON
_MAGIC_NOISE_ON _MAGIC_NOISE_ON_ON _TOGGLEMAGICNOISE_ON _USEDEPTHLIGHT_ON _USERAWGRID_ON
_USE_DEPTH_LIGHT
_MAGIC_NOISE_ON_HIGH _MAGIC_NOISE_ON_MED _MAGIC_NOISE_ON_ON _TOGGLEMAGICNOISE_ON
_USEDEPTHLIGHT_ON _USERAWGRID_ON _USE_DEPTH_LIGHT
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
@ -50,6 +50,10 @@ Material:
m_Texture: {fileID: 2800000, guid: 95dae414ef2ffd7438602114879b8b41, type: 3}
m_Scale: {x: 0.001, y: 5}
m_Offset: {x: 0, y: 0}
- _NoiseTexHigh:
m_Texture: {fileID: 2800000, guid: 95dae414ef2ffd7438602114879b8b41, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OSCGridRenderTexture:
m_Texture: {fileID: 8600000, guid: 85ba02ef33f4e4c4a94d9085f48ec5c1, type: 2}
m_Scale: {x: 1, y: 1}
@ -159,6 +163,8 @@ Material:
- _LensMaxBrightness: 3.66
- _LightProbeMethod: 0
- _MAGIC_NOISE_ON: 1
- _MAGIC_NOISE_ON_HIGH: 1
- _MAGIC_NOISE_ON_MED: 1
- _MagicNoiseScale: 2.5
- _MaxConeLength: 1
- _MaxMinPanAngle: 0

View File

@ -10,8 +10,8 @@ Material:
m_Name: VRSL-AudioLink-WashMover-VolumetricMat
m_Shader: {fileID: 4800000, guid: e94b1a2d8b9ef034da37a82c4fb64b60, type: 3}
m_ShaderKeywords: _2D_NOISE_ON _DNENABLER_NONE _ENABLECOLORTEXTURESAMPLE_ON _ENABLEOSC_ON
_ENABLESPIN_ON _GOBOBEAMSPLITENABLE_ON _HQMODE_ON _MAGIC_NOISE_ON _TOGGLEMAGICNOISE_ON
_USEDEPTHLIGHT_ON _USERAWGRID_ON _USE_DEPTH_LIGHT
_ENABLESPIN_ON _GOBOBEAMSPLITENABLE_ON _HQMODE_ON _MAGIC_NOISE_ON_HIGH _MAGIC_NOISE_ON_MED
_TOGGLEMAGICNOISE_ON _USEDEPTHLIGHT_ON _USERAWGRID_ON _USE_DEPTH_LIGHT
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
@ -159,6 +159,8 @@ Material:
- _LensMaxBrightness: 1
- _LightProbeMethod: 0
- _MAGIC_NOISE_ON: 1
- _MAGIC_NOISE_ON_HIGH: 1
- _MAGIC_NOISE_ON_MED: 1
- _MagicNoiseScale: 2.5
- _MaxConeLength: 1
- _MaxMinPanAngle: 0

View File

@ -10,7 +10,8 @@ Material:
m_Name: VRSL-StandardMover-VolumetricMat-HQ-Legacy
m_Shader: {fileID: 4800000, guid: 67a0beb6b3a31dc4e8b2d2344df6a994, type: 3}
m_ShaderKeywords: _2D_NOISE_ON _DNENABLER_NONE _ENABLECOMPATIBILITYMODE_ON _ENABLEOSC_ON
_GOBOBEAMSPLITENABLE_ON _MAGIC_NOISE_ON _TOGGLEMAGICNOISE_ON _USERAWGRID_ON _USE_DEPTH_LIGHT
_GOBOBEAMSPLITENABLE_ON _MAGIC_NOISE_ON_HIGH _MAGIC_NOISE_ON_MED _TOGGLEMAGICNOISE_ON
_USERAWGRID_ON _USE_DEPTH_LIGHT
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
@ -45,6 +46,10 @@ Material:
m_Texture: {fileID: 2800000, guid: 95dae414ef2ffd7438602114879b8b41, type: 3}
m_Scale: {x: 0.001, y: 5}
m_Offset: {x: 0, y: 0}
- _NoiseTexHigh:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OSCGridRenderTexture:
m_Texture: {fileID: 8600000, guid: 85ba02ef33f4e4c4a94d9085f48ec5c1, type: 2}
m_Scale: {x: 1, y: 1}
@ -153,11 +158,13 @@ Material:
- _LensMaxBrightness: 60
- _LightProbeMethod: 0
- _MAGIC_NOISE_ON: 1
- _MAGIC_NOISE_ON_HIGH: 1
- _MAGIC_NOISE_ON_MED: 1
- _MaxConeLength: 1
- _MaxMinPanAngle: 90
- _MaxMinTiltAngle: -90
- _Metallic: 0.501
- _MinimumBeamRadius: 1
- _MinimumBeamRadius: 0.95
- _ModX: 0
- _ModY: 0
- _NineUniverseMode: 0

View File

@ -14,7 +14,7 @@ Material:
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
m_CustomRenderQueue: 2451
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:

View File

@ -12,7 +12,7 @@ Material:
m_ShaderKeywords: _DNENABLER_NONE _ENABLEDMX_ON _ENABLESPIN_ON _ENABLESTROBE_ON
_LEGACYGOBORANGE_ON _NINEUNIVERSEMODE_ON _USERAWGRID_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3001
stringTagMap:
@ -170,14 +170,14 @@ Material:
- _ProjectionRotation: -180
- _ProjectionSelection: 0
- _ProjectionShadowHarshness: 0.9
- _ProjectionUVMod: 0.8
- _ProjectionUVMod2: 0.8
- _ProjectionUVMod3: 0.8
- _ProjectionUVMod4: 0.8
- _ProjectionUVMod5: 0.8
- _ProjectionUVMod6: 0.8
- _ProjectionUVMod7: 0.8
- _ProjectionUVMod8: 0.8
- _ProjectionUVMod: 0.75
- _ProjectionUVMod2: 0.75
- _ProjectionUVMod3: 0.75
- _ProjectionUVMod4: 0.75
- _ProjectionUVMod5: 0.75
- _ProjectionUVMod6: 0.75
- _ProjectionUVMod7: 0.75
- _ProjectionUVMod8: 0.75
- _PulseSpeed: 0
- _RTLMStrength: 1
- _RedMultiplier: 1

View File

@ -10,8 +10,8 @@ Material:
m_Name: VRSL-StandardMover-VolumetricMat-HQ-Horizontal
m_Shader: {fileID: 4800000, guid: 67a0beb6b3a31dc4e8b2d2344df6a994, type: 3}
m_ShaderKeywords: _2D_NOISE_ON _2D_NOISE_ON_ON _DNENABLER_NONE _ENABLEOSC_ON _GOBOBEAMSPLITENABLE_ON
_MAGIC_NOISE_ON _MAGIC_NOISE_ON_ON _TOGGLEMAGICNOISE_ON _USEDEPTHLIGHT_ON _USERAWGRID_ON
_USE_DEPTH_LIGHT
_MAGIC_NOISE_ON_HIGH _MAGIC_NOISE_ON_MED _MAGIC_NOISE_ON_MED_ON _MAGIC_NOISE_ON_ON
_TOGGLEMAGICNOISE_ON _USEDEPTHLIGHT_ON _USERAWGRID_ON _USE_DEPTH_LIGHT
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
@ -46,6 +46,10 @@ Material:
m_Texture: {fileID: 2800000, guid: 95dae414ef2ffd7438602114879b8b41, type: 3}
m_Scale: {x: 0.001, y: 5}
m_Offset: {x: 0, y: 0}
- _NoiseTexHigh:
m_Texture: {fileID: 2800000, guid: 95dae414ef2ffd7438602114879b8b41, type: 3}
m_Scale: {x: 0.001, y: 5}
m_Offset: {x: 0, y: 0}
- _OSCGridRenderTexture:
m_Texture: {fileID: 8600000, guid: 5225295a38260644c99eb0aebf544ec8, type: 2}
m_Scale: {x: 1, y: 1}
@ -154,13 +158,15 @@ Material:
- _LensMaxBrightness: 35
- _LightProbeMethod: 0
- _MAGIC_NOISE_ON: 1
- _MAGIC_NOISE_ON_HIGH: 1
- _MAGIC_NOISE_ON_MED: 1
- _MaxConeLength: 1
- _MaxMinPanAngle: 90
- _MaxMinPanAngleInstanced: 180
- _MaxMinTiltAngle: -90
- _MaxMinTiltAngleInstanced: 180
- _Metallic: 0.501
- _MinimumBeamRadius: 0.95
- _MinimumBeamRadius: 1
- _ModX: 0
- _ModY: 0
- _NineUniverseMode: 0

View File

@ -10,7 +10,8 @@ Material:
m_Name: VRSL-StandardMover-VolumetricMat-HQ-Vertical
m_Shader: {fileID: 4800000, guid: 67a0beb6b3a31dc4e8b2d2344df6a994, type: 3}
m_ShaderKeywords: _2D_NOISE_ON _DNENABLER_NONE _ENABLEOSC_ON _ENABLESPIN_ON _ENABLEVERTICALMODE_ON
_GOBOBEAMSPLITENABLE_ON _MAGIC_NOISE_ON _TOGGLEMAGICNOISE_ON _USERAWGRID_ON _USE_DEPTH_LIGHT
_GOBOBEAMSPLITENABLE_ON _MAGIC_NOISE_ON_HIGH _MAGIC_NOISE_ON_MED _TOGGLEMAGICNOISE_ON
_USERAWGRID_ON _USE_DEPTH_LIGHT
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
@ -45,6 +46,10 @@ Material:
m_Texture: {fileID: 2800000, guid: 95dae414ef2ffd7438602114879b8b41, type: 3}
m_Scale: {x: 0.001, y: 5}
m_Offset: {x: 0, y: 0}
- _NoiseTexHigh:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OSCGridRenderTexture:
m_Texture: {fileID: 8600000, guid: 3d0e5498d25faf34999f530603c36e4d, type: 2}
m_Scale: {x: 1, y: 1}
@ -153,11 +158,13 @@ Material:
- _LensMaxBrightness: 60
- _LightProbeMethod: 0
- _MAGIC_NOISE_ON: 1
- _MAGIC_NOISE_ON_HIGH: 1
- _MAGIC_NOISE_ON_MED: 1
- _MaxConeLength: 1
- _MaxMinPanAngle: 90
- _MaxMinTiltAngle: -90
- _Metallic: 0.501
- _MinimumBeamRadius: 1
- _MinimumBeamRadius: 0.95
- _ModX: 0
- _ModY: 0
- _NineUniverseMode: 0

View File

@ -10,7 +10,8 @@ Material:
m_Name: VRSL-WashMover-VolumetricMat-HQ-Legacy
m_Shader: {fileID: 4800000, guid: da75de52174b0924f9a93e9a37146aed, type: 3}
m_ShaderKeywords: _2D_NOISE_ON _DNENABLER_NONE _ENABLECOMPATIBILITYMODE_ON _ENABLEOSC_ON
_ENABLESPIN_ON _MAGIC_NOISE_ON _TOGGLEMAGICNOISE_ON _USERAWGRID_ON _USE_DEPTH_LIGHT
_ENABLESPIN_ON _MAGIC_NOISE_ON_HIGH _MAGIC_NOISE_ON_MED _TOGGLEMAGICNOISE_ON
_USERAWGRID_ON _USE_DEPTH_LIGHT
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
@ -153,6 +154,8 @@ Material:
- _LensMaxBrightness: 1
- _LightProbeMethod: 0
- _MAGIC_NOISE_ON: 1
- _MAGIC_NOISE_ON_HIGH: 1
- _MAGIC_NOISE_ON_MED: 1
- _MaxConeLength: 1
- _MaxMinPanAngle: 90
- _MaxMinTiltAngle: -90

View File

@ -159,7 +159,7 @@ Material:
- _NoisePower: 0.333
- _NoiseSeed: 420
- _PanInvert: 0
- _ProjectionCutoff: 0.12
- _ProjectionCutoff: 0.13
- _ProjectionDistanceFallOff: 0.01
- _ProjectionFade: 2.35
- _ProjectionFadeCurve: 1.99

View File

@ -9,8 +9,8 @@ Material:
m_PrefabAsset: {fileID: 0}
m_Name: VRSL-WashMover-VolumetricMat-HQ-Horizontal
m_Shader: {fileID: 4800000, guid: da75de52174b0924f9a93e9a37146aed, type: 3}
m_ShaderKeywords: _DNENABLER_NONE _ENABLEOSC_ON _ENABLESPIN_ON _HQMODE_ON _MAGIC_NOISE_ON
_TOGGLEMAGICNOISE_ON _USEDEPTHLIGHT_ON _USERAWGRID_ON _USE_DEPTH_LIGHT
m_ShaderKeywords: _DNENABLER_NONE _ENABLEOSC_ON _ENABLESPIN_ON _HQMODE_ON _MAGIC_NOISE_ON_HIGH
_MAGIC_NOISE_ON_MED _TOGGLEMAGICNOISE_ON _USEDEPTHLIGHT_ON _USERAWGRID_ON _USE_DEPTH_LIGHT
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
@ -45,6 +45,10 @@ Material:
m_Texture: {fileID: 2800000, guid: 95dae414ef2ffd7438602114879b8b41, type: 3}
m_Scale: {x: 0.001, y: 5}
m_Offset: {x: 0, y: 0}
- _NoiseTexHigh:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OSCGridRenderTexture:
m_Texture: {fileID: 8600000, guid: 5225295a38260644c99eb0aebf544ec8, type: 2}
m_Scale: {x: 1, y: 1}
@ -153,6 +157,8 @@ Material:
- _LensMaxBrightness: 1
- _LightProbeMethod: 0
- _MAGIC_NOISE_ON: 1
- _MAGIC_NOISE_ON_HIGH: 1
- _MAGIC_NOISE_ON_MED: 1
- _MaxConeLength: 4.97
- _MaxMinPanAngle: 90
- _MaxMinTiltAngle: -90

View File

@ -10,7 +10,8 @@ Material:
m_Name: VRSL-WashMover-VolumetricMat-HQ-Vertical
m_Shader: {fileID: 4800000, guid: da75de52174b0924f9a93e9a37146aed, type: 3}
m_ShaderKeywords: _2D_NOISE_ON _DNENABLER_NONE _ENABLEOSC_ON _ENABLESPIN_ON _ENABLEVERTICALMODE_ON
_MAGIC_NOISE_ON _TOGGLEMAGICNOISE_ON _USERAWGRID_ON _USE_DEPTH_LIGHT
_MAGIC_NOISE_ON_HIGH _MAGIC_NOISE_ON_MED _TOGGLEMAGICNOISE_ON _USERAWGRID_ON
_USE_DEPTH_LIGHT
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
@ -45,6 +46,10 @@ Material:
m_Texture: {fileID: 2800000, guid: 95dae414ef2ffd7438602114879b8b41, type: 3}
m_Scale: {x: 0.001, y: 5}
m_Offset: {x: 0, y: 0}
- _NoiseTexHigh:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OSCGridRenderTexture:
m_Texture: {fileID: 8600000, guid: 3d0e5498d25faf34999f530603c36e4d, type: 2}
m_Scale: {x: 1, y: 1}
@ -108,7 +113,7 @@ Material:
- _BlendDst: 1
- _BlendOp: 0
- _BlendSrc: 2
- _BlindingAngleMod: 1
- _BlindingAngleMod: 0.2
- _BlueMultiplier: 1
- _BumpScale: 1
- _ConeLength: 1
@ -117,7 +122,7 @@ Material:
- _DMXChannel: 0
- _DNEnabler: 0
- _Desaturate: 1
- _DistFade: 0.5
- _DistFade: 1
- _Divide: 11.6
- _DividePower: 0.043
- _EnableCompatibilityMode: 0
@ -130,12 +135,12 @@ Material:
- _EnableVerticalMode: 1
- _Fade: 1.5
- _FadeAmt: 95
- _FadeStrength: 12
- _FadeStrength: 12.77
- _FeatherOffset: 0.5
- _FinalIntensity: 1
- _FinalStrobeFreq: 0
- _FixtureBaseRotationY: 0
- _FixtureMaxIntensity: 0.5
- _FixtureMaxIntensity: 0.35
- _FixtureRotationX: 0
- _GlobalIntensity: 1
- _Glossiness: 1
@ -144,8 +149,8 @@ Material:
- _GradientModGOBO: 2.25
- _GreenMultiplier: 1
- _HQMode: 0
- _InnerFadeStrength: 12
- _InnerIntensityCurve: 20
- _InnerFadeStrength: 10
- _InnerIntensityCurve: 10
- _IntensityCutoff: 0
- _IsEven: 0
- _LMStrength: 1
@ -153,6 +158,8 @@ Material:
- _LensMaxBrightness: 1
- _LightProbeMethod: 0
- _MAGIC_NOISE_ON: 1
- _MAGIC_NOISE_ON_HIGH: 1
- _MAGIC_NOISE_ON_MED: 1
- _MaxConeLength: 1
- _MaxMinPanAngle: 90
- _MaxMinTiltAngle: -90
@ -162,19 +169,19 @@ Material:
- _ModY: 0
- _NineUniverseMode: 0
- _Noise2Power: 0.75
- _Noise2PowerDefault: 1
- _Noise2PowerDefault: 0.887
- _Noise2PowerPotato: 1
- _Noise2Stretch: 1
- _Noise2StretchDefault: 1
- _Noise2StretchDefault: 1.5
- _Noise2StretchInside: 1
- _Noise2StretchInsideDefault: 1
- _Noise2StretchInsideDefault: 1.5
- _Noise2StretchInsidePotato: 1
- _Noise2StretchPotato: 1
- _Noise2X: 0
- _Noise2XDefault: 1
- _Noise2XDefault: 0
- _Noise2XPotato: 1
- _Noise2Y: 7.5
- _Noise2YDefault: 1
- _Noise2YDefault: 7.5
- _Noise2YPotato: 1
- _Noise2Z: 1
- _Noise2ZDefault: 1

View File

@ -91,7 +91,7 @@ Material:
- _EndFadeinDistanceWorldUnit: 0.5
- _FadeAmt: 0.216
- _FinalIntensity: 1
- _FixtureMaxIntensity: 6
- _FixtureMaxIntensity: 2
- _FixutreIntensityMultiplier: 1
- _FlickResultIntensityLowestPoint: 0.5
- _FlickerAnimSpeed: 5

View File

@ -1,225 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: VRSL-LightBar-FixtureMat-Horizontal-5CH-Standard
m_Shader: {fileID: 4800000, guid: 323ff3e2b9a08514c99611b25f115f7e, type: 3}
m_ShaderKeywords: _5CH_MODE _FORWARD_Y _METALLICGLOSSMAP _NORMALMAP _STROBE_ON
_USERAWGRID_ON _USE_DEPTH_LIGHT _VRSL_GI _VRSL_MIX_MULT _VRSL_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AudioSpectrum:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 2800000, guid: 30883d403f58448469709a65b0f45736, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DMXEmissionMap:
m_Texture: {fileID: 2800000, guid: 4fed70ee86b71514aadfcd7054e2bcd7, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 2800000, guid: b4cb310d700df3f4a8145cae79a55d6a, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMask:
m_Texture: {fileID: 2800000, guid: 4fed70ee86b71514aadfcd7054e2bcd7, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _LightMainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 4b156bec52a041744bce7376441a23fb, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 2800000, guid: 1203e1ce9a1f8264ab985632f9e0ee0f, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicSmoothness:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _NormalMap:
m_Texture: {fileID: 2800000, guid: 30883d403f58448469709a65b0f45736, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OSCGridRenderTexture:
m_Texture: {fileID: 8600000, guid: 5225295a38260644c99eb0aebf544ec8, type: 2}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OSCGridRenderTextureRAW:
m_Texture: {fileID: 8600000, guid: 57481ad1fad57a247b2754e1469292a9, type: 2}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OSCGridStrobeTimer:
m_Texture: {fileID: 8600000, guid: fbbd57abbf5ece54c9996e59beb3dac1, type: 2}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ProjectionMainTex:
m_Texture: {fileID: 2800000, guid: 2e4e1fd2424262246bc882aa92947216, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ProjectionTex2:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ProjectionTex3:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ProjectionTex4:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ProjectionTex5:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ProjectionTex6:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SceneAlbedo:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SceneNormals:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- FinalStrobeFreq: 0
- _BlendDst: 1
- _BlendOp: 0
- _BlendSrc: 1
- _BulbMaxIntensity: 1
- _BumpScale: 1
- _ChannelMode: 2
- _ConeWidth: 0
- _CurveMod: 5
- _Cutoff: 0.5
- _DMXChannel: 0
- _DMXEmissionMapMix: 0
- _DetailNormalMapScale: 1
- _DistFade: 0.7
- _DstBlend: 0
- _EnableAudioReact: 0
- _EnableCompatibilityMode: 0
- _EnableDMX: 0
- _EnableOSC: 0
- _EnablePanMovement: 0
- _EnableSpin: 0
- _EnableStrobe: 1
- _EnableTiltMovement: 0
- _EnableVerticalMode: 0
- _Fade: 0.83
- _FadeAmt: 0.1
- _FadeStrength: 1
- _FeatherOffset: 0
- _FinalIntensity: 1
- _FinalStrobeFreq: 0
- _FixtureBaseRotationY: 0
- _FixtureMaxIntensity: 1000
- _FixtureRotationX: 0
- _FixutreIntensityMultiplier: 5
- _GlobalIntensity: 1
- _GlossMapScale: 1
- _Glossiness: 0.673
- _GlossyReflections: 1
- _LMStrength: 1
- _LightProbeMethod: 0
- _MaxMinPanAngle: 180
- _MaxMinTiltAngle: 180
- _Metallic: 0.781
- _ModX: -0.12
- _ModY: -0.37
- _Mode: 0
- _NineUniverseMode: 0
- _OcclusionStrength: 1
- _PanInvert: 0
- _Parallax: 0.02
- _ProjectionDistanceFallOff: 0
- _ProjectionFade: 1.73
- _ProjectionFadeCurve: 0.96
- _ProjectionIntensity: 0
- _ProjectionMaxIntensity: 0
- _ProjectionRange: 10
- _ProjectionRotation: 125
- _ProjectionSelection: 0
- _ProjectionUVMod: 0.312
- _ProjectionUVMod2: 0
- _ProjectionUVMod3: 0
- _ProjectionUVMod4: 0
- _ProjectionUVMod5: 0
- _ProjectionUVMod6: 0
- _PulseSpeed: 0
- _RTLMStrength: 1
- _Saturation: 0.95
- _Sector: 0
- _SmoothnessTextureChannel: 0
- _SpecLMOcclusionAdjust: 0.359
- _SpecularHighlights: 1
- _SpecularLMOcclusion: 0
- _SpinSpeed: 0
- _SrcBlend: 1
- _StrobeFreq: 12.76
- _TextureSampleMode: 0
- _ThirteenChannelMode: 0
- _TiltInvert: 0
- _TriplanarFalloff: 1
- _UVSec: 0
- _UniversalIntensity: 1
- _UseLegacyDMXTextures: 0
- _UseRawGrid: 1
- _UseWorldNorm: 0
- _VRSLGlossiness: 10
- _VRSLSpecularStrength: 0.5
- _VRSLToggle: 1
- _XOffset: -4.21
- _YOffset: 2.14
- _ZWrite: 1
- useVRSLGI: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _Emission: {r: 11.984314, g: 11.984314, b: 11.984314, a: 3}
- _EmissionColor: {r: 11.984314, g: 11.984314, b: 11.984314, a: 3}
- _EmissionDMX: {r: 1, g: 1, b: 1, a: 1}
- _FixtureRotationOrigin: {r: 0, g: 0.014709, b: -1.02868, a: 0}
- _ProjectionRangeOrigin: {r: 0, g: 0, b: 0, a: 0}

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 396b1e0270dcf49418b7eb47a2dce2b2
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -160,7 +160,7 @@ Material:
- _FinalIntensity: 1
- _FinalStrobeFreq: 0
- _FixtureBaseRotationY: 0
- _FixtureMaxIntensity: 12.79
- _FixtureMaxIntensity: 55
- _FixtureRotationX: 0
- _FixutreIntensityMultiplier: 15
- _GlobalIntensity: 0.84

View File

@ -9,7 +9,7 @@ Material:
m_PrefabAsset: {fileID: 0}
m_Name: VRSL-6x4StrobeLightMat
m_Shader: {fileID: 4800000, guid: f23016ddcd834d84c92028d893fd6558, type: 3}
m_ShaderKeywords: _EMISSION _METALLICGLOSSMAP _NORMALMAP _USERAWGRID_ON
m_ShaderKeywords: _5CH_MODE _EMISSION _METALLICGLOSSMAP _NORMALMAP _USERAWGRID_ON
m_LightmapFlags: 1
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
@ -122,6 +122,7 @@ Material:
- _BlendSrc: 1
- _BulbMaxIntensity: 1
- _BumpScale: 1
- _ChannelMode: 2
- _ConeWidth: 0
- _CurveMod: 50
- _Cutoff: 0.5
@ -130,6 +131,7 @@ Material:
- _DistFade: 0.7
- _DstBlend: 0
- _EnableCompatibilityMode: 0
- _EnableDMX: 0
- _EnableOSC: 0
- _EnableSpin: 0
- _EnableStrobe: 0
@ -156,6 +158,7 @@ Material:
- _ModX: -0.12
- _ModY: -0.37
- _Mode: 0
- _NineUniverseMode: 0
- _OcclusionStrength: 1
- _PanInvert: 0
- _Parallax: 0.02

View File

@ -9,7 +9,7 @@ Material:
m_PrefabAsset: {fileID: 0}
m_Name: VRSL-Horizontal-ExampleSurfaceShader-Cube
m_Shader: {fileID: 4800000, guid: f23016ddcd834d84c92028d893fd6558, type: 3}
m_ShaderKeywords: _ENABLEOSC_ON _ENABLESTROBE_ON
m_ShaderKeywords: _5CH_MODE _ENABLEOSC_ON _ENABLESTROBE_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
@ -81,6 +81,7 @@ Material:
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _ChannelMode: 2
- _CurveMod: 1
- _Cutoff: 0.5
- _DMXChannel: 0

View File

@ -9,7 +9,7 @@ Material:
m_PrefabAsset: {fileID: 0}
m_Name: VRSL-Legacy-ExampleSurfaceShader-Cube
m_Shader: {fileID: 4800000, guid: f23016ddcd834d84c92028d893fd6558, type: 3}
m_ShaderKeywords: _ENABLEOSC_ON _ENABLESTROBE_ON _ENABLEVERTICALMODE_ON
m_ShaderKeywords: _5CH_MODE _ENABLEOSC_ON _ENABLESTROBE_ON _ENABLEVERTICALMODE_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
@ -81,12 +81,14 @@ Material:
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _ChannelMode: 2
- _CurveMod: 1
- _Cutoff: 0.5
- _DMXChannel: 0
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _EnableCompatibilityMode: 0
- _EnableDMX: 0
- _EnableOSC: 1
- _EnableSpin: 0
- _EnableStrobe: 1
@ -99,6 +101,7 @@ Material:
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _NineUniverseMode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _Saturation: 0.95

View File

@ -36,7 +36,7 @@ Material:
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 2800000, guid: e5b174a8d905de44d938cdd3adf85546, type: 3}
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:

View File

@ -44,7 +44,7 @@ MonoBehaviour:
Data:
- Name:
Entry: 12
Data: 89
Data: 90
- Name:
Entry: 7
Data:
@ -4350,13 +4350,13 @@ MonoBehaviour:
Data:
- Name: $k
Entry: 1
Data: _volumetricNoise
Data: useDMXGI
- Name: $v
Entry: 7
Data: 210|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _volumetricNoise
Data: useDMXGI
- Name: <UserType>k__BackingField
Entry: 9
Data: 24
@ -4379,18 +4379,73 @@ MonoBehaviour:
Entry: 7
Data: 211|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
mscorlib
- Name:
Entry: 12
Data: 1
- Name:
Entry: 7
Data: 212|UnityEngine.HideInInspector, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data:
- Name: $k
Entry: 1
Data: _volumetricNoise
- Name: $v
Entry: 7
Data: 213|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _volumetricNoise
- Name: <UserType>k__BackingField
Entry: 9
Data: 24
- Name: <SystemType>k__BackingField
Entry: 9
Data: 24
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
- Name:
Entry: 6
Data:
- Name:
Entry: 8
Data:
- Name: <IsSerialized>k__BackingField
Entry: 5
Data: true
- Name: _fieldAttributes
Entry: 7
Data: 214|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
mscorlib
- Name:
Entry: 12
Data: 2
- Name:
Entry: 7
Data: 212|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime
Data: 215|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data: 213|UnityEngine.SerializeField, UnityEngine.CoreModule
Data: 216|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
@ -4414,7 +4469,7 @@ MonoBehaviour:
Data: _Udon_DMXGridRenderTexture
- Name: $v
Entry: 7
Data: 214|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
Data: 217|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _Udon_DMXGridRenderTexture
@ -4438,7 +4493,7 @@ MonoBehaviour:
Data: false
- Name: _fieldAttributes
Entry: 7
Data: 215|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
Data: 218|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
mscorlib
- Name:
Entry: 12
@ -4463,7 +4518,7 @@ MonoBehaviour:
Data: _Udon_DMXGridRenderTextureMovement
- Name: $v
Entry: 7
Data: 216|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
Data: 219|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _Udon_DMXGridRenderTextureMovement
@ -4487,7 +4542,7 @@ MonoBehaviour:
Data: false
- Name: _fieldAttributes
Entry: 7
Data: 217|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
Data: 220|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
mscorlib
- Name:
Entry: 12
@ -4512,7 +4567,7 @@ MonoBehaviour:
Data: _Udon_DMXGridSpinTimer
- Name: $v
Entry: 7
Data: 218|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
Data: 221|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _Udon_DMXGridSpinTimer
@ -4536,7 +4591,7 @@ MonoBehaviour:
Data: false
- Name: _fieldAttributes
Entry: 7
Data: 219|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
Data: 222|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
mscorlib
- Name:
Entry: 12
@ -4561,7 +4616,7 @@ MonoBehaviour:
Data: _Udon_DMXGridStrobeTimer
- Name: $v
Entry: 7
Data: 220|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
Data: 223|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _Udon_DMXGridStrobeTimer
@ -4585,7 +4640,7 @@ MonoBehaviour:
Data: false
- Name: _fieldAttributes
Entry: 7
Data: 221|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
Data: 224|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
mscorlib
- Name:
Entry: 12
@ -4610,7 +4665,7 @@ MonoBehaviour:
Data: _Udon_DMXGridStrobeOutput
- Name: $v
Entry: 7
Data: 222|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
Data: 225|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _Udon_DMXGridStrobeOutput
@ -4634,7 +4689,7 @@ MonoBehaviour:
Data: false
- Name: _fieldAttributes
Entry: 7
Data: 223|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
Data: 226|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
mscorlib
- Name:
Entry: 12
@ -4659,7 +4714,7 @@ MonoBehaviour:
Data: _requireDepthLight
- Name: $v
Entry: 7
Data: 224|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
Data: 227|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _requireDepthLight
@ -4683,20 +4738,20 @@ MonoBehaviour:
Data: true
- Name: _fieldAttributes
Entry: 7
Data: 225|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
Data: 228|System.Collections.Generic.List`1[[System.Attribute, mscorlib]],
mscorlib
- Name:
Entry: 12
Data: 2
- Name:
Entry: 7
Data: 226|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime
Data: 229|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data: 227|UnityEngine.SerializeField, UnityEngine.CoreModule
Data: 230|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name:
Entry: 8
Data:

View File

@ -133,6 +133,10 @@ namespace VRSL
public bool useLegacyStaticLights = false;
public bool useExtendedUniverses = false;
[HideInInspector]
public bool useDMXGI = false;
[FieldChangeCallback(nameof(VolumetricNoise)), SerializeField]
private bool _volumetricNoise = true;
int _Udon_DMXGridRenderTexture, _Udon_DMXGridRenderTextureMovement, _Udon_DMXGridSpinTimer, _Udon_DMXGridStrobeTimer, _Udon_DMXGridStrobeOutput;
@ -496,7 +500,8 @@ namespace VRSL
mat.SetInt("_PotatoMode", _volumetricNoise ? 0 : 1);
mat.SetInt("_UseDepthLight", _requireDepthLight ? 1 : 0);
SetKeyword(mat, "_USE_DEPTH_LIGHT", (Mathf.FloorToInt(mat.GetInt("_UseDepthLight"))) == 1 ? true : false);
SetKeyword(mat, "_MAGIC_NOISE_ON", (Mathf.FloorToInt(mat.GetInt("_MAGIC_NOISE_ON"))) == 1 ? true : false);
SetKeyword(mat, "_MAGIC_NOISE_ON_MED", (Mathf.FloorToInt(mat.GetInt("_MAGIC_NOISE_ON_MED"))) == 1 ? true : false);
SetKeyword(mat, "_MAGIC_NOISE_ON_HIGH", (Mathf.FloorToInt(mat.GetInt("_MAGIC_NOISE_ON_HIGH"))) == 1 ? true : false);
SetKeyword(mat, "_POTATO_MODE_ON", (Mathf.FloorToInt(mat.GetInt("_PotatoMode"))) == 1 ? true : false);
}
foreach(Material mat in projectionMaterials)
@ -826,7 +831,8 @@ namespace VRSL
target.SetInt("_AlphaToCoverage", 0);
target.SetInt("_HQMode", 1);
target.SetInt("_RenderMode", 0);
SetKeyword(target, "_MAGIC_NOISE_ON", (Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON"))) == 1 ? true : false);
SetKeyword(target, "_MAGIC_NOISE_ON_MED", (Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON_MED"))) == 1 ? true : false);
SetKeyword(target, "_MAGIC_NOISE_ON_HIGH", (Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON_HIGH"))) == 1 ? true : false);
SetKeyword(target, "_USE_DEPTH_LIGHT", (Mathf.FloorToInt(target.GetInt("_UseDepthLight"))) == 1 ? true : false);
SetKeyword(target, "_POTATO_MODE_ON", (Mathf.FloorToInt(target.GetInt("_PotatoMode"))) == 1 ? true : false);
SetKeyword(target, "_HQ_MODE", (Mathf.FloorToInt(target.GetInt("_HQMode"))) == 1 ? true : false);
@ -843,7 +849,8 @@ namespace VRSL
target.SetInt("_AlphaToCoverage", 0);
target.SetInt("_HQMode", 0);
target.SetInt("_RenderMode", 1);
SetKeyword(target, "_MAGIC_NOISE_ON", (Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON"))) == 1 ? true : false);
SetKeyword(target, "_MAGIC_NOISE_ON_MED", (Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON_MED"))) == 1 ? true : false);
SetKeyword(target, "_MAGIC_NOISE_ON_HIGH", (Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON_HIGH"))) == 1 ? true : false);
SetKeyword(target, "_USE_DEPTH_LIGHT", (Mathf.FloorToInt(target.GetInt("_UseDepthLight"))) == 1 ? true : false);
SetKeyword(target, "_POTATO_MODE_ON", (Mathf.FloorToInt(target.GetInt("_PotatoMode"))) == 1 ? true : false);
SetKeyword(target, "_HQ_MODE", (Mathf.FloorToInt(target.GetInt("_HQMode"))) == 1 ? true : false);
@ -860,7 +867,8 @@ namespace VRSL
target.SetInt("_AlphaToCoverage", 1);
target.SetInt("_HQMode", 0);
target.SetInt("_RenderMode", 2);
SetKeyword(target, "_MAGIC_NOISE_ON", (Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON"))) == 1 ? true : false);
SetKeyword(target, "_MAGIC_NOISE_ON_MED", (Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON_MED"))) == 1 ? true : false);
SetKeyword(target, "_MAGIC_NOISE_ON_HIGH", (Mathf.FloorToInt(target.GetInt("_MAGIC_NOISE_ON_HIGH"))) == 1 ? true : false);
SetKeyword(target, "_USE_DEPTH_LIGHT", (Mathf.FloorToInt(target.GetInt("_UseDepthLight"))) == 1 ? true : false);
SetKeyword(target, "_POTATO_MODE_ON", (Mathf.FloorToInt(target.GetInt("_PotatoMode"))) == 1 ? true : false);
SetKeyword(target, "_HQ_MODE", (Mathf.FloorToInt(target.GetInt("_HQMode"))) == 1 ? true : false);

View File

@ -268,6 +268,7 @@ namespace VRSL
props.SetFloat("_FixtureRotationX", tiltOffsetBlue);
props.SetFloat("_FixtureBaseRotationY", panOffsetBlueGreen);
props.SetColor("_Emission", lightColorTint);
props.SetColor("_EmissionDMX", lightColorTint);
props.SetFloat("_ConeWidth", coneWidth);
props.SetFloat("_GlobalIntensity", globalIntensity);
props.SetFloat("_FinalIntensity", finalIntensity);
@ -318,7 +319,7 @@ namespace VRSL
objRenderers[4].SetPropertyBlock(props);
break;
default:
Debug.Log("Too many mesh renderers for this fixture!");
Debug.Log("Too many mesh renderers for this fixture! " + objRenderers.Length);
break;
}
}
@ -365,6 +366,7 @@ namespace VRSL
props.SetFloat("_FixtureRotationX", tiltOffsetBlue);
props.SetFloat("_FixtureBaseRotationY", panOffsetBlueGreen);
props.SetColor("_Emission", lightColorTint);
props.SetColor("_EmissionDMX", lightColorTint);
props.SetFloat("_ConeWidth", coneWidth);
props.SetFloat("_GlobalIntensity", globalIntensity);
props.SetFloat("_FinalIntensity", finalIntensity);
@ -415,7 +417,7 @@ namespace VRSL
objRenderers[4].SetPropertyBlock(props);
break;
default:
Debug.Log("Too many mesh renderers for this fixture!");
Debug.Log("Too many mesh renderers for this fixture! " + objRenderers.Length);
break;
}
}

View File

@ -153,7 +153,7 @@
4.0 / 17.0, 12.0 / 17.0, 2.0 / 17.0, 10.0 / 17.0,
16.0 / 17.0, 8.0 / 17.0, 14.0 / 17.0, 6.0 / 17.0
};
int index = (int(pos.x) % 4) * 4 + int(pos.y) % 4;
int index = (int)((uint(pos.x) % 4) * 4 + uint(pos.y) % 4);
#endif
float4 depthdirect = i.worldDirection * (1.0f / i.vertex.w);
float sceneZ = SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, i.screenPos.xy / i.screenPos.w);

View File

@ -59,9 +59,11 @@
//[Header(VOLUMETRIC LIGHTING CONTROLS)]
_LightMainTex ("Light Texture", 2D) = "white" {}
_NoiseTex ("NoiseTex", 2D) = "white" {}
_NoiseTexHigh ("NoiseTexHigh", 2D) = "white" {}
_NoisePower("Noise Strength", Range(0, 1)) = 1
_NoiseSeed ("Noise Seed", float) = 0
[Toggle]_MAGIC_NOISE_ON ("Toggle Magic Noise", Int) = 1
[Toggle]_MAGIC_NOISE_ON_HIGH ("Toggle Magic Noise", Int) = 1
[Toggle]_MAGIC_NOISE_ON_MED ("Toggle Magic Noise", Int) = 1
[Toggle]_2D_NOISE_ON ("Toggle 2D Noise", Int) = 1
@ -165,7 +167,8 @@
#pragma vertex vert
#pragma fragment frag
//#pragma multi_compile_fog
#pragma multi_compile_local _ _MAGIC_NOISE_ON
#pragma multi_compile_local _ _MAGIC_NOISE_ON_HIGH
#pragma multi_compile_local _ _MAGIC_NOISE_ON_MED
#pragma multi_compile_local _ _USE_DEPTH_LIGHT
#pragma multi_compile_local _ _POTATO_MODE_ON
#pragma multi_compile_local _ _HQ_MODE

View File

@ -177,11 +177,11 @@
#else
float3 objPos : TEXCOORD7;
float3 objNormal : TEXCOORD8;
//SHADOW_COORDS(11)
SHADOW_COORDS(11)
#endif
float4 color : COLOR;
UNITY_VERTEX_INPUT_INSTANCE_ID
SHADOW_COORDS(11)
// SHADOW_COORDS(11)
UNITY_VERTEX_OUTPUT_STEREO
};

View File

@ -59,9 +59,11 @@
//[Header(VOLUMETRIC LIGHTING CONTROLS)]
_LightMainTex ("Light Texture", 2D) = "white" {}
_NoiseTex ("NoiseTex", 2D) = "white" {}
_NoiseTexHigh ("NoiseTexHigh", 2D) = "white" {}
_NoisePower("Noise Strength", Range(0, 1)) = 1
_NoiseSeed ("Noise Seed", float) = 0
[Toggle]_MAGIC_NOISE_ON ("Toggle Magic Noise", Int) = 1
[Toggle]_MAGIC_NOISE_ON_HIGH ("Toggle Magic Noise", Int) = 1
[Toggle]_MAGIC_NOISE_ON_MED ("Toggle Magic Noise", Int) = 1
[Toggle]_2D_NOISE_ON ("Toggle 2D Noise", Int) = 1
@ -165,7 +167,8 @@
#pragma vertex vert
#pragma fragment frag
//#pragma multi_compile_fog
#pragma multi_compile_local _ _MAGIC_NOISE_ON
#pragma multi_compile_local _ _MAGIC_NOISE_ON_HIGH
#pragma multi_compile_local _ _MAGIC_NOISE_ON_MED
#pragma multi_compile_local _ _USE_DEPTH_LIGHT
#pragma multi_compile_local _ _POTATO_MODE_ON
#pragma multi_compile_local _ _HQ_MODE

View File

@ -4,8 +4,12 @@
Properties
{
[NoScaleOffset]_DMXTexture("DMX Grid Render Texture (To Control Lights)", 2D) = "white" {}
_MaxStrobeFreq("Maximum Strobe Frequency", Range(1,100)) = 25
_MaxStrobeFreq("Maximum Strobe Frequency", Range(1,1000)) = 25
[Toggle] _NineUniverseMode ("Extended Universe Mode", Int) = 0
[Enum(Dyanmic Strobe Rate,0,Static Strobe Rate,1)] _StrobeType ("Strobe Type", Int) = 0
_LowFrequency("Low Frequency", Range(1,100)) = 25
_MedFrequency("Medium Frequency", Range(1,100)) = 50
_HighFrequency("High Frequency", Range(1,100)) = 75
}
SubShader
@ -30,6 +34,9 @@
SamplerState sampler_point_repeat;
half _MaxStrobeFreq;
uint _NineUniverseMode;
half _LowFrequency, _MedFrequency, _HighFrequency;
#pragma shader_feature_local _VRSL_STATICFREQUENCIES
@ -76,37 +83,58 @@
//T = CURRENT PHASE
if(_NineUniverseMode)
{
float3 t = float3(previousFrame.r, previousFrame.g, previousFrame.b);
//INCREMENT CURRENT PHASE CLOSER TO 2PI
t = t + (float3(dt, dt, dt) * (GetDMXValueRGB(currentFrame) * float3(_MaxStrobeFreq, _MaxStrobeFreq, _MaxStrobeFreq)));
#if _VRSL_STATICFREQUENCIES
//IF PHASE IS GREATER THAN OR EQUAL TO 2PI, RETURN TO 0, CAUSE SIN(2PI) == SIN(0)
// if (t >= 2*3.14159265)
// {
// t -= 2*3.14159265;
// }
t.r -= t.r >= 2*3.14159265 ? 2*3.14159265 : 0.0;
t.g -= t.g >= 2*3.14159265 ? 2*3.14159265 : 0.0;
t.b -= t.b >= 2*3.14159265 ? 2*3.14159265 : 0.0;
float3 t = float3(currentFrame.r, currentFrame.g, currentFrame.b);
float sinTime = sin(_Time.y);
float speed = (sinTime) * _LowFrequency;
t *= (GetDMXValueRGB(currentFrame) * float3(speed, speed, speed));
return float4(t, currentFrame.a);
#else
float3 t = float3(previousFrame.r, previousFrame.g, previousFrame.b);
//INCREMENT CURRENT PHASE CLOSER TO 2PI
t = t + (float3(dt, dt, dt) * (GetDMXValueRGB(currentFrame) * float3(_MaxStrobeFreq, _MaxStrobeFreq, _MaxStrobeFreq)));
t = float3(clamp(t.r, 0.0, 1000000.0), clamp(t.g, 0.0, 1000000.0), clamp(t.b, 0.0, 1000000.0));
//EZ CLAP
return float4(t, currentFrame.a);
//IF PHASE IS GREATER THAN OR EQUAL TO 2PI, RETURN TO 0, CAUSE SIN(2PI) == SIN(0)
// if (t >= 2*3.14159265)
// {
// t -= 2*3.14159265;
// }
t.r -= t.r >= 2*3.14159265 ? 2*3.14159265 : 0.0;
t.g -= t.g >= 2*3.14159265 ? 2*3.14159265 : 0.0;
t.b -= t.b >= 2*3.14159265 ? 2*3.14159265 : 0.0;
t = float3(clamp(t.r, 0.0, 1000000.0), clamp(t.g, 0.0, 1000000.0), clamp(t.b, 0.0, 1000000.0));
//EZ CLAP
return float4(t, currentFrame.a);
#endif
}
else
{
float t = previousFrame.r;
//INCREMENT CURRENT PHASE CLOSER TO 2PI
t = t + (dt * (GetDMXValue(currentFrame) * _MaxStrobeFreq));
#if _VRSL_STATICFREQUENCIES
float dmx = currentFrame.r;
float sinTime = _Time.y;
//sinTime -= sinTime >= 2*3.14159265 ? 2*3.14159265 : 0.0;
//IF PHASE IS GREATER THAN OR EQUAL TO 2PI, RETURN TO 0, CAUSE SIN(2PI) == SIN(0)
// if (t >= 2*3.14159265)
// {
// t -= 2*3.14159265;
// }
t -= t >= 2*3.14159265 ? 2*3.14159265 : 0.0;
//EZ CLAP
return clamp(t, 0.0, 1000000.0);
float speed = dmx > 0.2 ? _MedFrequency : _LowFrequency;
speed = dmx > 0.5 ? _HighFrequency : speed;
float t =((sinTime) * speed);
return clamp(t, 0.0, 1000000.0);
#else
float t = previousFrame.r;
//INCREMENT CURRENT PHASE CLOSER TO 2PI
t = t + (dt * (GetDMXValue(currentFrame) * _MaxStrobeFreq));
//IF PHASE IS GREATER THAN OR EQUAL TO 2PI, RETURN TO 0, CAUSE SIN(2PI) == SIN(0)
// if (t >= 2*3.14159265)
// {
// t -= 2*3.14159265;
// }
t -= t >= 2*3.14159265 ? 2*3.14159265 : 0.0;
//EZ CLAP
return clamp(t, 0.0, 1000000.0);
#endif
}
}

View File

@ -151,7 +151,7 @@
4.0 / 17.0, 12.0 / 17.0, 2.0 / 17.0, 10.0 / 17.0,
16.0 / 17.0, 8.0 / 17.0, 14.0 / 17.0, 6.0 / 17.0
};
int index = (int(pos.x) % 4) * 4 + int(pos.y) % 4;
int index = (int)((uint(pos.x) % 4) * 4 + uint(pos.y) % 4);
#endif
float4 depthdirect = i.worldDirection * (1.0f / i.vertex.w);
float sceneZ = SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, i.screenPos.xy / i.screenPos.w);

View File

@ -202,7 +202,7 @@ inline float CorrectedLinearEyeDepth(float z, float B)
4.0 / 17.0, 12.0 / 17.0, 2.0 / 17.0, 10.0 / 17.0,
16.0 / 17.0, 8.0 / 17.0, 14.0 / 17.0, 6.0 / 17.0
};
int index = (int(pos.x) % 4) * 4 + int(pos.y) % 4;
int index = (int)((uint(pos.x) % 4) * 4 + uint(pos.y) % 4);
#endif

View File

@ -497,7 +497,11 @@ v2f vert (appdata v)
// o.viewDir = ObjSpaceViewDir(v.vertex);
o.screenPos = ComputeScreenPos (o.pos);
//o.uvClone = v.uv2;
o.uv2 = TRANSFORM_TEX(v.uv2, _NoiseTex);
#ifdef _HQ_MODE
o.uv2 = TRANSFORM_TEX(v.uv2, _NoiseTexHigh);
#else
o.uv2 = TRANSFORM_TEX(v.uv2, _NoiseTex);
#endif
o.uv = TRANSFORM_TEX(v.uv, _LightMainTex);
//o.uv = UnityStereoScreenSpaceUVAdjust(uv, sb)
COMPUTE_EYEDEPTH(o.screenPos.z);
@ -718,7 +722,11 @@ v2f vert (appdata v)
o.screenPos = float4(0,0,0,0);
#endif
o.uvClone = v.uv2;
o.uv2 = TRANSFORM_TEX(v.uv2, _NoiseTex);
#ifdef _HQ_MODE
o.uv2 = TRANSFORM_TEX(v.uv2, _NoiseTexHigh);
#else
o.uv2 = TRANSFORM_TEX(v.uv2, _NoiseTex);
#endif
o.uv = TRANSFORM_TEX(v.uv, _LightMainTex);
//o.uv = UnityStereoScreenSpaceUVAdjust(uv, sb)
#if _USE_DEPTH_LIGHT

View File

@ -85,7 +85,7 @@ float4 VolumetricLightingBRDF(v2f i, fixed facePos)
4.0 / 17.0, 12.0 / 17.0, 2.0 / 17.0, 10.0 / 17.0,
16.0 / 17.0, 8.0 / 17.0, 14.0 / 17.0, 6.0 / 17.0
};
int index = (int(pos.x) % 4) * 4 + int(pos.y) % 4;
int index = (int)((uint(pos.x) % 4) * 4 + uint(pos.y) % 4);
#endif
@ -262,7 +262,11 @@ float4 VolumetricLightingBRDF(v2f i, fixed facePos)
texUV.x = (_Time.y*0.1) * 0.75f + texUV.x;
texUV.y = (_Time.y*0.1) * 0.10f + texUV.y;
float4 tex = tex2D(_NoiseTex, texUV);
#ifdef _HQ_MODE
float4 tex = tex2D(_NoiseTexHigh, texUV);
#else
float4 tex = tex2D(_NoiseTex, texUV);
#endif
#else
float4 tex = float4(1,1,1,1);
#endif
@ -272,7 +276,7 @@ float4 VolumetricLightingBRDF(v2f i, fixed facePos)
half np = 0.0f;
//If we are using 3D noise...
#ifdef _MAGIC_NOISE_ON
#if (defined(_MAGIC_NOISE_ON_HIGH) && defined(_HQ_MODE)) || (defined(_MAGIC_NOISE_ON_MED) && !defined(_HQ_MODE))
//if(_ToggleMagicNoise > 0)
//{
//Get vertex/frag position in worldspace

View File

@ -61,9 +61,11 @@
//[Header(VOLUMETRIC LIGHTING CONTROLS)]
_LightMainTex ("Light Texture", 2D) = "white" {}
_NoiseTex ("NoiseTex", 2D) = "white" {}
_NoiseTexHigh ("NoiseTexHigh", 2D) = "white" {}
_NoisePower("Noise Strength", Range(0, 1)) = 1
_NoiseSeed ("Noise Seed", float) = 0
[Toggle]_MAGIC_NOISE_ON ("Toggle Magic Noise", Int) = 1
[Toggle]_MAGIC_NOISE_ON_HIGH ("Toggle Magic Noise", Int) = 1
[Toggle]_MAGIC_NOISE_ON_MED ("Toggle Magic Noise", Int) = 1
[Toggle]_2D_NOISE_ON ("Toggle 2D Noise", Int) = 1
@ -164,7 +166,8 @@
//#pragma multi_compile_fog
#pragma multi_compile_instancing
#pragma instancing_options assumeuniformscaling
#pragma multi_compile_local _ _MAGIC_NOISE_ON
#pragma multi_compile_local _ _MAGIC_NOISE_ON_HIGH
#pragma multi_compile_local _ _MAGIC_NOISE_ON_MED
#pragma multi_compile_local _ _USE_DEPTH_LIGHT
#pragma multi_compile_local _ _POTATO_MODE_ON
#pragma multi_compile_local _ _HQ_MODE

View File

@ -59,9 +59,11 @@
//[Header(VOLUMETRIC LIGHTING CONTROLS)]
_LightMainTex ("Light Texture", 2D) = "white" {}
_NoiseTex ("NoiseTex", 2D) = "white" {}
_NoiseTexHigh ("NoiseTexHigh", 2D) = "white" {}
_NoisePower("Noise Strength", Range(0, 1)) = 1
_NoiseSeed ("Noise Seed", float) = 0
[ToggleUI]_MAGIC_NOISE_ON ("Toggle Magic Noise", Int) = 1
[Toggle]_MAGIC_NOISE_ON_HIGH ("Toggle Magic Noise", Int) = 1
[Toggle]_MAGIC_NOISE_ON_MED ("Toggle Magic Noise", Int) = 1
[Toggle]_2D_NOISE_ON ("Toggle 2D Noise", Int) = 1
_Noise2Stretch ("Outside Magic Noise Scale", Range(-10, 10)) = 1
_Noise2StretchInside ("Inside Magic Noise Scale", Range(-10, 10)) = 1
@ -162,7 +164,8 @@
//#pragma multi_compile_fog
#pragma multi_compile_instancing
#pragma instancing_options assumeuniformscaling
#pragma multi_compile_local _ _MAGIC_NOISE_ON
#pragma multi_compile_local _ _MAGIC_NOISE_ON_HIGH
#pragma multi_compile_local _ _MAGIC_NOISE_ON_MED
#pragma multi_compile_local _ _USE_DEPTH_LIGHT
#pragma multi_compile_local _ _POTATO_MODE_ON
#pragma multi_compile_local _ _HQ_MODE

View File

@ -292,6 +292,11 @@ float GetDMXIntensity(uint DMXChannel, float multiplier)
return getValueAtCoords(DMXChannel + 5, _Udon_DMXGridRenderTexture) * multiplier;
}
float GetDMXChannel(uint DMXChannel)
{
return getValueAtCoords(DMXChannel, _Udon_DMXGridRenderTexture);
}
//function for getting the Pan Value (Channel 2)
float GetFinePanValue(uint DMXChannel)
{

View File

@ -64,7 +64,13 @@ float _MinimumBeamRadius;
#if defined(VOLUMETRIC_YES)
sampler2D _NoiseTex;
#ifdef _HQ_MODE
sampler2D _NoiseTexHigh;
#else
sampler2D _NoiseTex;
#endif
float _Noise2StretchInside;
float _Noise2Stretch;
float _Noise2X;
@ -88,7 +94,13 @@ float _MinimumBeamRadius;
#endif
float4 _NoiseTex_ST;
#ifdef _HQ_MODE
float4 _NoiseTexHigh_ST;
#else
float4 _NoiseTex_ST;
#endif
float _NoisePower, _NoiseSeed;
uint _ToggleMagicNoise;

View File

@ -195,29 +195,33 @@
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); //Insert
uint dmx = getDMXChannel();
float intensity = 0.0f;
#if _1CH_MODE
half4 e =IF(isDMX() == 1, getValueAtCoords(dmx+1, _Udon_DMXGridRenderTexture) * getEmissionColor(), getEmissionColor());
intensity = GetDMXChannel(dmx);
#elif _4CH_MODE
float4 DMXcol = getEmissionColor();
DMXcol *= float4(getValueAtCoords(dmx+1, _Udon_DMXGridRenderTexture), getValueAtCoords(dmx+2, _Udon_DMXGridRenderTexture), getValueAtCoords(dmx+3, _Udon_DMXGridRenderTexture), 1);
float4 coll = IF(isDMX() == 1, DMXcol, getEmissionColor());
half4 e = coll;
intensity = GetDMXChannel(dmx);
#elif _5CH_MODE
float strobe = IF(isStrobe() == 1, GetStrobeOutputFiveCH(dmx), 1);
float4 DMXcol = getEmissionColor();
DMXcol *= float4(getValueAtCoords(dmx+1, _Udon_DMXGridRenderTexture), getValueAtCoords(dmx+2, _Udon_DMXGridRenderTexture), getValueAtCoords(dmx+3, _Udon_DMXGridRenderTexture), 1);
float4 coll = IF(isDMX() == 1, DMXcol, getEmissionColor());
half4 e = coll * strobe;
intensity = GetDMXChannel(dmx);
#elif _13CH_MODE
float strobe = IF(isStrobe() == 1, GetStrobeOutput(dmx), 1);
float4 DMXcol = getEmissionColor();
DMXcol *= GetDMXColor(dmx);
float4 coll = IF(isDMX() == 1, DMXcol, getEmissionColor());
half4 e = coll * strobe;
intensity = GetDMXIntensity(dmx, 1.0);
#endif
e = IF(isDMX() == 1,lerp(half4(-_CurveMod,-_CurveMod,-_CurveMod,1), e, pow(GetDMXIntensity(dmx, 1.0), 1.0)), e);
e = IF(isDMX() == 1,lerp(half4(-_CurveMod,-_CurveMod,-_CurveMod,1), e, pow(intensity, 1.0)), e);
e = clamp(e, half4(0,0,0,1), half4(_FixtureMaxIntensity*2,_FixtureMaxIntensity*2,_FixtureMaxIntensity*2,1));
#ifdef _ALPHATEST_ON
@ -371,7 +375,7 @@
4.0 / 17.0, 12.0 / 17.0, 2.0 / 17.0, 10.0 / 17.0,
16.0 / 17.0, 8.0 / 17.0, 14.0 / 17.0, 6.0 / 17.0
};
int index = (int(pos.x) % 4) * 4 + int(pos.y) % 4;
int index = (int)((uint(pos.x) % 4) * 4 + uint(pos.y) % 4);
float4 col = saturate(tex2D(_MainTex, i.uv ));
// col *= i.maskX;
//clip((col.a) - DITHER_THRESHOLDS[index]);

View File

@ -66,7 +66,7 @@
4.0 / 17.0, 12.0 / 17.0, 2.0 / 17.0, 10.0 / 17.0,
16.0 / 17.0, 8.0 / 17.0, 14.0 / 17.0, 6.0 / 17.0
};
int index = (int(pos.x) % 4) * 4 + int(pos.y) % 4;
int index = (int)((uint(pos.x) % 4) * 4 + uint(pos.y) % 4);
#endif
if(i.color.g != 0)

View File

@ -1,18 +1,26 @@
#define IF(a, b, c) lerp(b, c, step((fixed) (a), 0));
UNITY_INSTANCING_BUFFER_START(Props)
UNITY_DEFINE_INSTANCED_PROP(uint, _DMXChannel)
UNITY_DEFINE_INSTANCED_PROP(uint, _NineUniverseMode)
UNITY_DEFINE_INSTANCED_PROP(uint, _EnableDMX)
UNITY_DEFINE_INSTANCED_PROP(uint, _PanInvert)
UNITY_DEFINE_INSTANCED_PROP(uint, _LegacyGoboRange)
UNITY_DEFINE_INSTANCED_PROP(uint, _TiltInvert)
UNITY_DEFINE_INSTANCED_PROP(float4, _Emission)
UNITY_DEFINE_INSTANCED_PROP(float4, _EmissionDMX)
UNITY_DEFINE_INSTANCED_PROP(float, _GlobalIntensity)
UNITY_DEFINE_INSTANCED_PROP(float, _FinalIntensity)
UNITY_DEFINE_INSTANCED_PROP(uint, _EnableStrobe)
UNITY_DEFINE_INSTANCED_PROP(uint, _EnableSpin)
UNITY_DEFINE_INSTANCED_PROP(uint, _EnableDMX)
UNITY_DEFINE_INSTANCED_PROP(uint, _DMXChannel)
UNITY_DEFINE_INSTANCED_PROP(uint, _ProjectionSelection)
UNITY_DEFINE_INSTANCED_PROP(uint, _FixtureRotationX)
UNITY_DEFINE_INSTANCED_PROP(uint, _FixtureBaseRotationY)
UNITY_DEFINE_INSTANCED_PROP(float, _ConeWidth)
UNITY_DEFINE_INSTANCED_PROP(float4, _Emission)
UNITY_DEFINE_INSTANCED_PROP(float4, _EmissionDMX)
UNITY_DEFINE_INSTANCED_PROP(float, _ConeWidth)
UNITY_DEFINE_INSTANCED_PROP(float, _GlobalIntensity)
UNITY_DEFINE_INSTANCED_PROP(float, _FinalIntensity)
UNITY_DEFINE_INSTANCED_PROP(float, _ConeLength)
UNITY_DEFINE_INSTANCED_PROP(float, _MaxConeLength)
UNITY_DEFINE_INSTANCED_PROP(float, _MaxMinPanAngle)
UNITY_DEFINE_INSTANCED_PROP(float, _MaxMinTiltAngle)
UNITY_INSTANCING_BUFFER_END(Props)
#ifdef _VRSL_LEGACY_TEXTURES
@ -29,7 +37,7 @@ UNITY_INSTANCING_BUFFER_END(Props)
uint _EnableCompatibilityMode, _EnableVerticalMode;
half _MaxMinTiltAngle, _MaxMinPanAngle;
//half _MaxMinTiltAngle, _MaxMinPanAngle;
float VRSL_invLerp(float from, float to, float value)
{
@ -61,6 +69,15 @@ float getFinalIntensity()
return UNITY_ACCESS_INSTANCED_PROP(Props, _FinalIntensity);
}
float getMaxMinPanAngle()
{
return UNITY_ACCESS_INSTANCED_PROP(Props, _MaxMinPanAngle);
}
float getMaxMinTiltAngle()
{
return UNITY_ACCESS_INSTANCED_PROP(Props, _MaxMinTiltAngle);
}
uint isStrobe()
{
return UNITY_ACCESS_INSTANCED_PROP(Props,_EnableStrobe);
@ -76,6 +93,7 @@ uint GetDMXChannel()
return (uint) round(UNITY_ACCESS_INSTANCED_PROP(Props, _DMXChannel));
}
int ConvertToRawDMXChannel(int chan, int universe)
{
return abs(chan + ((universe-1) * 512) + ((universe-1) * 8));
@ -401,7 +419,7 @@ float GetPanValue(uint DMXChannel)
#else
float inputValue = ReadDMX(DMXChannel, _Udon_DMXGridRenderTextureMovement);
#endif
return ((_MaxMinPanAngle * 2) * (inputValue)) - _MaxMinPanAngle;
return ((getMaxMinPanAngle() * 2) * (inputValue)) - getMaxMinPanAngle();
}
float GetTiltValue(uint DMXChannel)
@ -411,5 +429,5 @@ float GetTiltValue(uint DMXChannel)
#else
float inputValue = ReadDMX(DMXChannel + 2, _Udon_DMXGridRenderTextureMovement);
#endif
return ((_MaxMinTiltAngle * 2) * (inputValue)) - _MaxMinTiltAngle;
return ((getMaxMinTiltAngle() * 2) * (inputValue)) - getMaxMinTiltAngle();
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 757 KiB

After

Width:  |  Height:  |  Size: 771 KiB

View File

@ -0,0 +1,116 @@
fileFormatVersion: 2
guid: 190adfa91484e5c4ea2dff8956a571be
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 1
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 1
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 1
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -71,6 +71,7 @@ Material:
- _MaxStrobeFreq: 27
- _Metallic: 0
- _Mode: 0
- _NineUniverseMode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0

View File

@ -45,7 +45,7 @@ CustomRenderTexture:
m_UpdateZoneSpace: 0
m_CurrentUpdateZoneSpace: 0
m_UpdateZones: []
m_UpdatePeriod: 0.01111111
m_UpdatePeriod: 0
m_ShaderPass: 0
m_CubemapFaceMask: 4294967295
m_DoubleBuffered: 1

View File

@ -45,7 +45,7 @@ CustomRenderTexture:
m_UpdateZoneSpace: 0
m_CurrentUpdateZoneSpace: 0
m_UpdateZones: []
m_UpdatePeriod: 0.01111111
m_UpdatePeriod: 0
m_ShaderPass: 0
m_CubemapFaceMask: 4294967295
m_DoubleBuffered: 1

View File

@ -45,7 +45,7 @@ CustomRenderTexture:
m_UpdateZoneSpace: 0
m_CurrentUpdateZoneSpace: 0
m_UpdateZones: []
m_UpdatePeriod: 0.01111111
m_UpdatePeriod: 0
m_ShaderPass: 0
m_CubemapFaceMask: 4294967295
m_DoubleBuffered: 1

View File

@ -7,7 +7,7 @@ TextureImporter:
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
sRGBTexture: 0
linearTexture: 0
fadeOut: 0
borderMipMap: 0
@ -51,7 +51,7 @@ TextureImporter:
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureType: 1
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0

View File

@ -7,7 +7,7 @@ TextureImporter:
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
sRGBTexture: 0
linearTexture: 0
fadeOut: 0
borderMipMap: 0
@ -51,7 +51,7 @@ TextureImporter:
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureType: 1
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0