void Start() { _outputTex = new RenderTexture(size, size, 0, RenderTextureFormat.ARGB32, RenderTextureReadWrite.Linear); _outputTex.filterMode = FilterMode.Point; _outputTex.Create(); _xorwow = new XorwowService(size * size); GetComponent <Renderer>().sharedMaterial.mainTexture = _outputTex; }
void Start() { _xorwow = new XorwowService(size * size); _outputTex = new RenderTexture(size, size, 0, RenderTextureFormat.ARGB32, RenderTextureReadWrite.Linear); _outputTex.enableRandomWrite = true; _outputTex.filterMode = FilterMode.Point; _outputTex.Create(); _nGroups = size / CS_NUMTHREAD; GetComponent <Renderer>().sharedMaterial.mainTexture = _outputTex; }
void OnDestroy() { if (_xorwow != null) { _xorwow.Dispose(); _xorwow = null; } if (_outputTex != null) { Destroy(_outputTex); } }
public static void SetXorwowStateBuf(this Material mat, XorwowService xorwow) { SetXorwowStateBuf(mat, XorwowService.CS_XORWOW_STATE_BUF, xorwow); }
public static void SetXorwowStateBuf(this Material mat, string name, XorwowService xorwow) { mat.SetBuffer(name, xorwow.XorwowStateBuf); }
public static void SetXorwowStateBuf(this ComputeShader compute, int kernelIndex, XorwowService xorwow) { SetXorwowStateBuf(compute, kernelIndex, XorwowService.CS_XORWOW_STATE_BUF, xorwow); }
public static void SetXorwowStateBuf(this ComputeShader compute, int kernelIndex, string name, XorwowService xorwow) { compute.SetBuffer(kernelIndex, name, xorwow.XorwowStateBuf); }