Ну ок, другой пример. Мой проект на работе использует стороннюю библиотеку, которая находится в постоянном процессе допиливания. И мне надо каждый раз при ее обновлении проверять и править все изменения, которые коснулись моего проекта. Поэтому я забиваю на возможные глюки и дырки в безопасности в старых версиях и пользуюсь ими. На такой процесс у вас ответ найдется?
Ок. Мне вот, например, надо перевезти машину вещей на дачу. Теперь жду, что в следующей статье я найду ответ, как сделать эту задачу достаточно интересной, чтобы пересилить лень.
Спасибо за обзор. Все-таки такой подход браузер-ось пока выглядит для меня сомнительно. Кстати, интересно было бы узнать, что произойдет с вашим рабочим процессом, который вы описали, при отключении интернета?
Ну, может для планшета это и не так принципиально, но вообще, угол обзора скорее определяет механику управления движением, а не внешний вид, т.е. вы улучшается зрительное восприятие, но снижаете общее качество ощущений от игры. И если смена картинки является приемлемой и иногда встречается, то смену fov-а в процессе игры я никогда в конфигах не встречал.
Не по поводу реализации, а к самой идее. Use-case выглядит странным — даже если делается тонкая настройка для fov-а, например, при смене оружия, это обычно делается через зум. Т.е. смена fov-а в такой ситуации выглядит неестественно и неожиданно.
Очень полезно, спасибо. Например, ЗИПа нет под WP, пришлось брать реализацию из Скитовского же Reimplementing LINQ to Objects, а тут сразу такая библиотечка. Странно, что раньше ее не заметил.
Итого, программа для понтов. Настоящему геймеру требуется возможность указать фпс и чтобы программа выставила настройки так, чтобы этот фпс можно было выдать.
class Program
{
static void Main()
{
const int n = 4;
var listOfLists = new List<List>();
for (var i = 0; i < n; i++)
{
listOfLists.Add(new List());
}
var range = Enumerable.Range(0, n).ToList();
for (var i = 0; i < n; i++)
{
for (var j = 0; j < n; j++)
{
listOfLists[j].Add(range.Shuffle().Except(listOfLists[j]).First());
}
}
for (var i = 0; i < n; i++)
{
for (var j = 0; j < n; j++)
{
Console.Write(listOfLists[i][j] + " ");
}
Console.WriteLine();
}
Console.ReadLine();
}
}
public static class Extensions
{
public static List Shuffle(this IList collection)
{
var rng = new Random();
var n = collection.Count;
while (n-- > 1)
{
var k = rng.Next(n);
var value = collection[k];
collection[k] = collection[n];
collection[n] = value;
}
Видимо, поэтому у вас и нет 50и миллиардов долларов.
Enumerable.Range(2, (int)Math.Sqrt(N)).Any(n => N % n == 0)
Ну и, соответственно
Enumerable.Range(2, (int)Math.Sqrt(N)).AsParallel().Any(n => N % n == 0)
О: Может. Более того, он может ответить на него.
class Program
{
static void Main()
{
const int n = 4;
var listOfLists = new List<List>();
for (var i = 0; i < n; i++)
{
listOfLists.Add(new List());
}
var range = Enumerable.Range(0, n).ToList();
for (var i = 0; i < n; i++)
{
for (var j = 0; j < n; j++)
{
listOfLists[j].Add(range.Shuffle().Except(listOfLists[j]).First());
}
}
for (var i = 0; i < n; i++)
{
for (var j = 0; j < n; j++)
{
Console.Write(listOfLists[i][j] + " ");
}
Console.WriteLine();
}
Console.ReadLine();
}
}
public static class Extensions
{
public static List Shuffle(this IList collection)
{
var rng = new Random();
var n = collection.Count;
while (n-- > 1)
{
var k = rng.Next(n);
var value = collection[k];
collection[k] = collection[n];
collection[n] = value;
}
return collection.ToList();
}
}