Все больше игр поддерживают Nvidia RTX

Компания Nvidia начала активно продвигать свою новую перспективною, но невостребованную массами технологию RTX. На официальном канале компании каждый день появляются новые ролики с именитыми играми, которые демонстрируют поддержку технологии RTX.

По моему скромному мнению, таким образом, компания NVIDIA пытается увеличить продажи видеокарт 20-серии, так-как GPU данной серии, являются единственными картами с аппаратной поддержкой рейтресинга. Теперь обладатели карт с поддержкой RTX смогут полноценно насладиться преимуществом своих GPU.

Технологию Nvidia RTX уже поддержали такие игровые проекты как:

  • Minecraft
  • Call of Duty: Modern Warfare
  • Watch Dogs: Legion
  • SYNCED: Off-Planet
  • Control
  • Vampire: The Masquerade – Bloodlines 2

[MS SQL] Найти все таблицы содержащие колонку

Проводя анализ базы данных возникает потребность найти все столбы с определенным именем. Это может потребоваться для поиска связанных между собой таблиц. Например нам необходимо найти все таблицы в базе данных, которые имею в своём составе столбец с именем «ID_Channel».

Для это воспользуемся следующим скриптом.

Поиск всех таблиц по имени столбца.

SELECT 
  t1.table_name
FROM INFORMATION_SCHEMA.COLUMNS AS t1
WHERE
  t1.COLUMN_NAME LIKE 'ID_Channel'
ORDER BY
  t1.table_name

Поиск всех таблиц содержащих два столбца.

SELECT 
  t1.table_name, t2.table_name 
 
FROM INFORMATION_SCHEMA.COLUMNS AS t1 
 
  LEFT JOIN INFORMATION_SCHEMA.COLUMNS AS t2 
  ON  t1.table_name =  t2.table_name 
 
WHERE t1.COLUMN_NAME LIKE 'ID_Channel'  
  AND t2.COLUMN_NAME LIKE 'ID_M' 
 
ORDER BY 
  t1.table_name

Bright Memory поддержала технологию Nvidia RTX

Nvidia опубликовала на своем YouTube канале новый эксклюзивный трейлер игры Bright Memory, который демонстрирует поддержку технологии RTX. Смотрится довольно впечатляюще, жалко только не сообщается техническое оснащение ПК, который потянет всю эту красоту.

Встречаем Unity 2019.2

Друзья, хорошая новость!

Встречаем новую версию Unity 2019.2. В неё включили более 170 новых функция. Переработанный конвейер визуализации обещает лучшую производительность прямо из коробки, особенно это актуально для мобильных платформ.

Новый функционал не обошел стороной инструменты: художников, дизайнеров и программистов.

Обновление получили ProBuilder, Shader Graph, 2D Animation, Burst Compiler, UI Elements и другие.


Что-же изменилось для программистов?

В этом выпуске Burst Compiler 1.1 включает в себя несколько улучшений времени компиляции JIT и некоторые улучшения C #.

TypeCache обеспечивает быстрый способ доступа к типам или методам, отмеченным определенными атрибутами, а также типам, полученным из определенного класса или интерфейса. Он использует внутренний собственный кэш, который создается для всех сборок, загружаемых редактором.

Для разработчиков мобильных приложений добавлена возможность управление яркостью экрана с помощью нового свойства Screen.brightness (iOS и Android) и улучшили API ReplayKit (iOS).

Перенесена библиотека PhysX Cloth из предыдущей PxCloth в NvCloth в рамках перехода с физического движка PhysX 3.4 на PhysX 4.x.

В этом выпуске обновлены редакторы по умолчанию до Visual Studio 2019 и Visual Studio 2019 для Mac.

Удалена поддержка скриптов .NET 3.5. Любые проекты, использующие среду .NET 3.5, будут автоматически обновлены до .NET 4.x.

Дополнительный сборщик мусора, выпущенная как экспериментальная на некоторых платформах в версии Unity 2019.1, теперь поддерживается всеми платформами, кроме WebGL.

Более подробно познакомиться с функционалом по ссылке.


Что будет дальше в Unity?

Вам интересно, что будет в Unity 2019.3? Вы можете получить доступ к альфа-версии прямо сейчас или дождаться бета-версии. Релиз Unity 2019.3 запланирован на осень 2019 года.

[C#] Делегаты

Прежде чем начать разбираться, обратимся к официальному определению.

Делегат — это тип, который представляет ссылки на методы с определенным списком параметров и типом возвращаемого значения. При создании экземпляра делегата этот экземпляр можно связать с любым методом с совместимой сигнатурой и типом возвращаемого значения. Метод можно вызвать (активировать) с помощью экземпляра делегата.

Объявление делегата

public delegate int PerformCalculation(int x, int y);
public delegate void PerformCalculation();

Какие значения принимают делегаты?

Делегаты могут принимать любые методы из любого доступного класса. Метод должен быть статичным или быть методом экземпляра. Использование делегатов позволяет изменять программно методы и включать новый код в существующие классы.

Методы передаваемые в делегат должны иметь идентичные типы входящих параметров и возвращаемых значений. Это значит, что в делегат, возвращающий тип INT, мы не можем передать метод, возвращающий FLOAT.

ПРИМЕР:

 using System;
class Calc
{
    public int Add(int a, int b)
    {
        int result = a + b;
        return result;
    }
 
    public int AddThree(int a, int b, int c)
    {
        int result = a + b + c;
        return result;
    }
 
    public float Division(int a, int b)
    {
        float result = a / b;
        return result; 
    }
}  
 
class Program  
{ 
  public delegate int Operation(int x, int y);
 
	static void Main()  
    { 
	Calc calc  = new Calc();
	Operation operation;
        operation  = calc.Add;//ПРАВИЛЬНО
 
        operation  = calc.AddThree; //ОШИБКА! Больше параметров
        // чем в делегате
        operation  = calc.Division;//ОШИБКА! Возвращаемый тип не 
        // соответствует типу делегата
	Console.WriteLine("result=" + operation(3,4).ToString());
 
    }  
 
}

Официальная документация C#

[MS SQL] Добавление, Изменение, Удаление записи (INSERT, UPDATE, DELETE)

Insert — Добавление записи

Добавление записи в таблицу выполняется командой INSERT.

Способ 1. Добавление записи с последовательным перечисление значений

INSERT INTO [DATABASE].[dbo].[tableName]
 VALUES(values_1,values_2, ..., values_N);

Способ 2. Добавление записи с выборочным указанием значений

INSERT INTO [DATABASE].[dbo].[tableName](column_1, column_3, column_8) 
VALUES (values_1,values_3,values_8);

UPDATE — ИЗМЕНЕНИЕ записи

Изменение записи в таблице выполняется командой UPDATE.

Способ 1. Изменение значения поля

 UPDATE [DATABASE].[dbo].[tableName] SET column_1 = value1 WHERE column_ID = 1;

Способ 2. Изменение значения поля с применением математических операций. Возможно применять несколько операций к одному значению. Математические операция выполняются с лева на право.

UPDATE [DATABASE].[dbo].[tableName] 
SET column_1 = column_1 * value1 
WHERE column_ID = 1;

Пример применение нескольких математических операций к одной колонке.

UPDATE [DATABASE].[dbo].[tableName] 
SET colum1 = colum1 * value1 
WHERE columnID = 1;

DELETE — УДАЛЕНИЕ записи

Удаление записи в таблице выполняется командой DELETE.

Способ 1. Удаление строки из таблицы отвечающие отбору. Удаляться все строки у которых значение поле column_2 равно одному.

DELETE [DATABASE].[dbo].[tableName] WHERE column_2 = 1;

Способ 2. Удаление всех строк из таблицы.

DELETE [DATABASE].[dbo].[tableName]