Поскольку вы используете новый стек постобработки, вы можете получить доступ к его компонентам с помощью директивы
using UnityEngine.Rendering.PostProcessing;
. Поэтому для виньетки вы должны использовать:
Vignette vignetteLayer = null;
vignetteLayer.intensity = new FloatParameter { value = 0 };
Проверить официальная документация для получения дополнительной информации, а также этот вопрос на форумах Unity для получения дополнительной информации о новом стеке постобработки
Я обычно делаю что-то вроде этого в своих хранимых процедурах. Это сохраняет вещи хорошими и безопасными и проводит любые ошибки, с которыми я встречаюсь.
SET XACT_ABORT ON;
BEGIN TRY
BEGIN TRANSACTION;
-- Code goes here
COMMIT TRANSACTION;
END TRY
BEGIN CATCH
IF @@TRANCOUNT > 0
ROLLBACK TRANSACTION;
DECLARE
@ERROR_SEVERITY INT,
@ERROR_STATE INT,
@ERROR_NUMBER INT,
@ERROR_LINE INT,
@ERROR_MESSAGE NVARCHAR(4000);
SELECT
@ERROR_SEVERITY = ERROR_SEVERITY(),
@ERROR_STATE = ERROR_STATE(),
@ERROR_NUMBER = ERROR_NUMBER(),
@ERROR_LINE = ERROR_LINE(),
@ERROR_MESSAGE = ERROR_MESSAGE();
RAISERROR('Msg %d, Line %d, :%s',
@ERROR_SEVERITY,
@ERROR_STATE,
@ERROR_NUMBER,
@ERROR_LINE,
@ERROR_MESSAGE);
END CATCH
да важно явно откатывать транзакцию в случае, что это не работает.
я обычно говорю моему сыну, что только необходимо нарисовать кистью зубы, которые Вы хотите держать.
В этом случае, только необходимо откатывать команды, которые Вы не хотите выполнять.
Это будет автоматически откатывать транзакцию в случае, если от ошибки
SET XACT_ABORT ON
BEGIN TRANSACTION
-- CODE HERE
COMMIT TRANSACTION
Для управления транзакциями Вы используете, начинают, фиксируют и откатывают. Вы начинаете транзакцию путем предоставления BEGIN TRANSACTION. Затем Вы помещаете различные SQL-операторы, в которых Вы нуждаетесь. Затем Вы заканчиваете транзакцию путем издания или фиксации или отката. ТРАНЗАКЦИЯ ФИКСАЦИИ будет фиксировать все изменения, которые Вы сделали к базе данных после оператора BEGIN и делаете их постоянными, так сказать. ROLLBACK TRANSACTION будет откатывать все изменения, которые Вы сделали к базе данных после оператора BEGIN. Однако это не изменит значения переменных.
Пример:
BEGIN TRANSACTION
UPDATE table SET column = 'ABC' WHERE column = '123'
COMMIT TRANSACTION
--//column now has a value of 'ABC'
BEGIN TRANSACTION
UPDATE table SET column = 'ABC' WHERE column = '123'
ROLLBACK TRANSACTION
--//column still has it's previous value ('123') No changes were made.