Давайте напишем ... MMO! Часть 4: Прозрачность

Опубликовано NowhereMan - пн, 05/11/2020 - 14:13

Текстуры, которые мы используем, задаются в красном, зеленом и синем каналах. Дисплей также поддерживает четвертый "альфа" канал, который может быть использован для реализации прозрачности. Библиотеки DirectX (и OpenGL) на самом деле поддерживают всевозможные правила для комбинирования новой текстуры с тем, что уже есть на экране, но, наиболее распространенным является линейное комбинирование умножением на альфа-значение.

Например, если бы альфа была 0.0, вы бы получили весь существующий пиксел экрана, и ничего из новой текстуры. Это можно использовать для маскировки нежелательных частей текстуры и превращения ее в полностью прозрачную. В другой крайности, значение 1.0 не будет использовать ни один из существующих пикселей экрана, зато возьмет всю новую текстуру, что сделает ее непрозрачной. Значения посередине дадут вам полупрозрачный эффект.

Давайте напишем ... MMO! Часть 3: Старая добрая 2D графика

Опубликовано NowhereMan - вс, 05/10/2020 - 19:59

Если вы загружали демо-версию, вы знаете, что текущий вид - это просто мир, выглядящий как на рисунке 1. Очевидно, что он как-то отличается от коммерческой игры... Я знаю! Нет ни здоровья, ни маны, ни состояния оружия, ни выбранной цели, ни мини-карты, ни текста квеста, ни текста в чате, ни сообщений о "входе в бой", ни открытых мешков, ни палитры заклинаний, ни окон помощи ... ни хлама по всему экрану! (см. Рисунок 2) Чтобы добавить это, нам нужна 2D-графика.

Давайте напишем ... MMO! Часть 2: Гуляем

Опубликовано NowhereMan - вс, 05/10/2020 - 18:25

В первой части я, возможно, создал два вводящих в заблуждение впечатления. Во-первых, вы могли подумать, что я опытный программист, показывающий вам лучший способ реализации простого мира блоков. Отнюдь не так! У меня большой опыт программирования систем, но мой опыт работы с 3d графикой во многом ограничен тем, что Вы уже видели. А мой опыт программирования игр состоит из личных проектов, сделанных более 30 лет назад. На этом проекте я буду учиться по ходу дела.

Во-вторых, вы могли подумать, что я просто хочу создать Minecraft с некоторыми незначительными вариациями. Это тоже неправда. Как написано на главной странице, я хочу создать "виртуальный мир от равного к равному, поддерживающий реальную среду программирования". Я выбрал кубический мир для реализации в качестве первого прохода, потому что это легко, и потому что Minecraft так популярен. Это также самый простой модифицируемый пользователем мир, который я могу придумать. Как только вы сможете добавлять и удалять блоки, вы сможете создавать всевозможные вещи. Минимальное количество кода, чтобы сделать это с любым другим миром (например, Second Life) было бы огромным.

Давайте напишем ... MMO! Часть 1

Опубликовано NowhereMan - вс, 05/10/2020 - 14:50

Меня зовут Майкл Гудфеллоу. Первый раз я дотронулся до компьютера где-то в 1971, и мне сразу захотелось знать как его программировать. Я работал в индустрии ПО с 1975 по 2005, когда вышел на пенсию по инвалидности. И да, я все еще пишу код. Кто знает зачем?

Я учился программировать, создавая компьютерные игры (в которые мы играли на похожих на печатные машинки терминалах, подключенных к большим мейнфреймам), но я не написал ни одной профессионально. Я много лет хотел написать игру. Я много раз застревал с этим. Но, перед тем, как мне удалось найти на это время, игры стали слишком хорошо выглядеть. Для человека без художественных способностей, это выглядит слишком сложно. Half-Life2 (или даже Half-Life) – это не то, что вы делаете в свободное время, днем занимаясь работой. Мои друзья, корпоративные программисты как и я, согласились. Когда я упомянул о написании игры (даже MMO!) они долго смеялись.

Но теперь вышел и стал хитом Minecraft - и это проект одного человека. Очевидно, для игр, которые не выглядят на миллион (или 20 миллионов) долларов все еще есть ниша. Так что я попробую.

Offline восстановление windows (кратко)

Опубликовано NowhereMan - пн, 01/27/2020 - 11:59

Из коммандной строки, загрузившись в recovery:

bcdedit

В разделе "Windows boot loader" находим букву диска и каталог windows. Дальше просто:

sfc /scannow /offbootdir=<Windows_Drive_Letter>:\ /offwindir=<Windows_Drive_Letter>:\windows

 

Dism /Image:C:\offline /Cleanup-Image /RestoreHealth /Source:e:\sources\install.esd

Dism /Image:C:\offline /Cleanup-Image /CheckHealth

Ошибка 0x800f081f означает несовпадение версии текущего образа и источника.

Теги

/usr/sbin/grub-probe:error:failed to get canonical path of /cow.

Опубликовано jeord - пт, 10/04/2019 - 11:49
mkdir /mnt/chrootdir
mount /dev/sda1 /mnt/chrootdir
for dir in proc dev sys etc bin sbin var usr lib lib64 tmp; do
    mkdir /mnt/chrootdir/$dir && mount --bind /$dir /mnt/chrootdir/$dir
done
chroot /mnt/chrootdir

Теги

N, K, KN редакции Windows

Опубликовано jeord - вт, 09/03/2019 - 15:27

N, K, KN редакции Windows обозначают отсутствие Windows Media Player и/или дрругих программ из семейства Windows Media.

---

The features in the N and KN Editions are the same as their equivalent full versions, but do not include Windows Media Player or other Windows Media-related technologies, such as Windows Media Center and Windows DVD Maker. The cost of the N and KN Editions are the same as the full versions, as the Media Feature Pack for Windows 7 N or Windows 7 KN can be downloaded without charge from Microsoft.

Теги

The Bat! Ожидание диспетчера писем.

Опубликовано jeord - ср, 08/07/2019 - 09:09

Цитата ответа от разработчиков, которая исправила проблему зависания диспетчера писем.

Окно диспетчера писем отображается в невидимой области, поэтому создаётся ложное ощущение, что диспетчер завис. Попробуйте, пожалуйста, следующее: 

1. Завершить работу The Bat!

2. Открыть редактор реестра при помощи "Пуск -> Выполнить -> regedit -> OK" и в разделе HKEY_CURRENT_USER\Software\RIT\The Bat!\.. .\ удалить ключ "Mail Dispatcher".

3. Запустить The Bat! и проверить работу диспетчера писем.

Теги

Рассмотреть. Решение конфликта Samba и Winbind

Опубликовано jeord - ср, 06/26/2019 - 15:41

взято с https://sysadmins.ru/topic181897.html

Мои действия для того чтобы сделать связку debian + winbindd для squid'а
Код:

# aptitude install samba
# aptitude install krb5-config

Правим /etc/krb5.conf
привожу только критичные места
Код:

[libdefaults]
default_realm = MCBFA.LOCAL
[realms]
MCBFA.LOCAL = {
kdc = orb.mcbfa.local
admin_server = orb.mcbfa.local
}

мой smb.conf
Код: