public void DoPostProcess(GrassPhysicsArea grassPhysicsArea, ref Texture texture, float recoverySpeed) { postProcess.DoPostProcess(ref texture, grassPhysicsArea.areaSize, grassPhysicsArea.GetLastMovementVector(), recoverySpeed); }
public override void OnInspectorGUI() { serializedObject.Update(); myTarget = target as GrassPhysicsArea; Undo.RecordObject(myTarget, "Update in " + myTarget.name); EditorGUI.BeginChangeCheck(); ShowGUI(); if (EditorGUI.EndChangeCheck()) { EditorUtility.SetDirty(myTarget); } serializedObject.ApplyModifiedProperties(); }
public abstract void DoPostProcess(GrassPhysicsArea grassPhysicsArea, ref GrassPostProcessState state, ref Texture texture);
public abstract void Initialize(GrassPhysicsArea grassPhysicsArea, out GrassPostProcessState state);
public GrassTrailEffectState(GrassPhysicsArea grassPhysicsArea, Shader postProcessShader) { postProcess = new FragmentShaderTrailEffect(grassPhysicsArea.textureSize, postProcessShader); }
public override void DoPostProcess(GrassPhysicsArea grassPhysicsArea, ref GrassPostProcessState state, ref Texture texture) { (state as GrassTrailEffectState).DoPostProcess(grassPhysicsArea, ref texture, recoverySpeed); }
public override void Initialize(GrassPhysicsArea grassPhysicsArea, out GrassPostProcessState state) { state = new GrassTrailEffectState(grassPhysicsArea, postProcessShader); }
public GrassTrailEffectComputeState(GrassPhysicsArea grassPhysicsArea, ComputeShader computeShader) { postProcess = new ComputeShaderTrailEffect(computeShader, grassPhysicsArea.depthTexture, grassPhysicsArea.textureSize); }